diff --git a/.travis.yml b/.travis.yml
index b1f04cbe847..0303f518eca 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -36,24 +36,24 @@ matrix:
fast_finish: true
include:
# PDO Mysql
- - php: 5.6
+ - php: 7.2
env: TEST_SUITE=SystemTestsCore MYSQL_ADAPTER=PDO_MYSQL
sudo: required
- - php: 5.6
+ - php: 7.2
env: TEST_SUITE=SystemTestsPlugins MYSQL_ADAPTER=PDO_MYSQL
sudo: required
- - php: 5.6
+ - php: 7.2
env: TEST_SUITE=IntegrationTestsCore MYSQL_ADAPTER=PDO_MYSQL
sudo: required
- - php: 5.6
+ - php: 7.2
env: TEST_SUITE=IntegrationTestsPlugins MYSQL_ADAPTER=PDO_MYSQL
sudo: required
- - php: 5.6
+ - php: 7.2
env: TEST_SUITE=UnitTests MYSQL_ADAPTER=PDO_MYSQL
sudo: false
addons: false
# Javascript tests
- - php: 5.6
+ - php: 7.2
env: TEST_SUITE=JavascriptTests MYSQL_ADAPTER=PDO_MYSQL
sudo: false
addons:
@@ -61,7 +61,7 @@ matrix:
packages:
- nginx
- realpath
- - php: 5.6
+ - php: 7.2
env: TEST_SUITE=AngularJSTests MYSQL_ADAPTER=PDO_MYSQL SKIP_COMPOSER_INSTALL=1
sudo: false
addons: false
@@ -73,10 +73,10 @@ matrix:
env: TEST_SUITE=AllTests MYSQL_ADAPTER=MYSQLI ALLTEST_EXTRA_OPTIONS="--run-second-half-only"
sudo: required
# UITests use a specific version because the default 5.5 (== 5.5.38) is missing FreeType support
- - php: 5.5.33
+ - php: 7.2
env: TEST_SUITE=UITests MYSQL_ADAPTER=PDO_MYSQL UITEST_EXTRA_OPTIONS="--run-first-half-only"
sudo: false
- - php: 5.5.33
+ - php: 7.2
env: TEST_SUITE=UITests MYSQL_ADAPTER=PDO_MYSQL UITEST_EXTRA_OPTIONS="--run-second-half-only"
sudo: false
diff --git a/composer.json b/composer.json
index bfbebb7ada6..2c4cfbe76d5 100644
--- a/composer.json
+++ b/composer.json
@@ -20,12 +20,12 @@
},
"config":{
"platform": {
- "php": "5.5.9"
+ "php": "7.2.0"
},
"prepend-autoloader": false
},
"require": {
- "php": ">=5.5.9",
+ "php": ">=7.2.0",
"twig/twig": "~1.0",
"leafo/lessphp": "dev-php74-compat",
"symfony/console": "~2.6.0",
diff --git a/config/global.ini.php b/config/global.ini.php
index 475d1e70ec3..38538c7c4d2 100755
--- a/config/global.ini.php
+++ b/config/global.ini.php
@@ -227,7 +227,7 @@
maintenance_mode = 0
; Defines the release channel that shall be used. Currently available values are:
-; "latest_stable", "latest_beta", "latest_3x_stable", "latest_3x_beta"
+; "latest_stable", "latest_beta", "latest_4x_stable", "latest_4x_beta"
release_channel = "latest_stable"
; character used to automatically create categories in the Actions > Pages, Outlinks and Downloads reports
diff --git a/core/Version.php b/core/Version.php
index ca16a10bc4d..3ed1f570a7e 100644
--- a/core/Version.php
+++ b/core/Version.php
@@ -20,7 +20,8 @@ final class Version
* The current Matomo version.
* @var string
*/
- const VERSION = '3.13.1-rc2';
+ const VERSION = '4.0.0-b1';
+ const MAJOR_VERSION = 4;
public function isStableVersion($version)
{
diff --git a/core/testMinimumPhpVersion.php b/core/testMinimumPhpVersion.php
index f79290c1fd3..4508fe9e825 100644
--- a/core/testMinimumPhpVersion.php
+++ b/core/testMinimumPhpVersion.php
@@ -21,7 +21,7 @@
// 2) tests/travis/generator/Generator.php
// 3) composer.json (in two places)
// 4) tests/PHPUnit/Integration/ReleaseCheckListTest.php
-$piwik_minimumPHPVersion = '5.5.9';
+$piwik_minimumPHPVersion = '7.2.0';
$piwik_currentPHPVersion = PHP_VERSION;
$minimumPhpInvalid = version_compare($piwik_minimumPHPVersion, $piwik_currentPHPVersion) > 0;
if ($minimumPhpInvalid) {
diff --git a/plugins/AnonymousPiwikUsageMeasurement b/plugins/AnonymousPiwikUsageMeasurement
index 4f57457a52b..66269ff14c3 160000
--- a/plugins/AnonymousPiwikUsageMeasurement
+++ b/plugins/AnonymousPiwikUsageMeasurement
@@ -1 +1 @@
-Subproject commit 4f57457a52bf6521fa662046f6585102245b7709
+Subproject commit 66269ff14c32ed433d86b46fb772e4082ac66cb5
diff --git a/plugins/Bandwidth b/plugins/Bandwidth
index de72a243e88..cf4bc330479 160000
--- a/plugins/Bandwidth
+++ b/plugins/Bandwidth
@@ -1 +1 @@
-Subproject commit de72a243e88779b550e8fd059be25af922a4464c
+Subproject commit cf4bc33047985ac8308ed0fc39f2a24d523cde48
diff --git a/plugins/CoreUpdater/ReleaseChannel/Latest3XBeta.php b/plugins/CoreUpdater/ReleaseChannel/LatestCurrentBeta.php
similarity index 80%
rename from plugins/CoreUpdater/ReleaseChannel/Latest3XBeta.php
rename to plugins/CoreUpdater/ReleaseChannel/LatestCurrentBeta.php
index e9f635f90ff..93767a12f8a 100644
--- a/plugins/CoreUpdater/ReleaseChannel/Latest3XBeta.php
+++ b/plugins/CoreUpdater/ReleaseChannel/LatestCurrentBeta.php
@@ -10,17 +10,18 @@
use Piwik\Piwik;
use Piwik\Plugins\CoreUpdater\ReleaseChannel;
+use Piwik\Version;
-class Latest3XBeta extends ReleaseChannel
+class LatestCurrentBeta extends ReleaseChannel
{
public function getId()
{
- return 'latest_3x_beta';
+ return 'latest_'. Version::MAJOR_VERSION . 'x_beta';
}
public function getName()
{
- return Piwik::translate('CoreUpdater_LatestXBetaRelease', '3.X');
+ return Piwik::translate('CoreUpdater_LatestXBetaRelease', Version::MAJOR_VERSION . '.X');
}
public function getDescription()
diff --git a/plugins/CoreUpdater/ReleaseChannel/Latest3XStable.php b/plugins/CoreUpdater/ReleaseChannel/LatestCurrentStable.php
similarity index 78%
rename from plugins/CoreUpdater/ReleaseChannel/Latest3XStable.php
rename to plugins/CoreUpdater/ReleaseChannel/LatestCurrentStable.php
index b11710dbb2d..acbd9014ed5 100644
--- a/plugins/CoreUpdater/ReleaseChannel/Latest3XStable.php
+++ b/plugins/CoreUpdater/ReleaseChannel/LatestCurrentStable.php
@@ -10,17 +10,18 @@
use Piwik\Piwik;
use Piwik\Plugins\CoreUpdater\ReleaseChannel;
+use Piwik\Version;
-class Latest3XStable extends ReleaseChannel
+class LatestCurrentStable extends ReleaseChannel
{
public function getId()
{
- return 'latest_3x_stable';
+ return 'latest_'.Version::MAJOR_VERSION.'x_stable';
}
public function getName()
{
- return Piwik::translate('CoreUpdater_LatestXStableRelease', '3.X');
+ return Piwik::translate('CoreUpdater_LatestXStableRelease', Version::MAJOR_VERSION . '.X');
}
public function getDescription()
diff --git a/plugins/CustomAlerts b/plugins/CustomAlerts
index 6c81ed2bd11..3a7e12db5c1 160000
--- a/plugins/CustomAlerts
+++ b/plugins/CustomAlerts
@@ -1 +1 @@
-Subproject commit 6c81ed2bd1125f0039d624c53110d64e6d25ddf8
+Subproject commit 3a7e12db5c150af6aa9060d1f8a1affe6040c5f9
diff --git a/plugins/CustomDimensions b/plugins/CustomDimensions
index 90717603607..bdef6c1ac8c 160000
--- a/plugins/CustomDimensions
+++ b/plugins/CustomDimensions
@@ -1 +1 @@
-Subproject commit 90717603607edfc0df076dea2878f66efdaf92c6
+Subproject commit bdef6c1ac8c2c4fe81dd7ba40a1b7bf342278bf3
diff --git a/plugins/DeviceDetectorCache b/plugins/DeviceDetectorCache
index ac154521da4..e69f4eb28ee 160000
--- a/plugins/DeviceDetectorCache
+++ b/plugins/DeviceDetectorCache
@@ -1 +1 @@
-Subproject commit ac154521da440e37378f674a87051512751005eb
+Subproject commit e69f4eb28eec088fce7062bc4041f644f1a251a8
diff --git a/plugins/ExampleLogTables/plugin.json b/plugins/ExampleLogTables/plugin.json
index 3e6442de068..c51c261e294 100644
--- a/plugins/ExampleLogTables/plugin.json
+++ b/plugins/ExampleLogTables/plugin.json
@@ -4,7 +4,7 @@
"version": "0.1.0",
"theme": false,
"require": {
- "piwik": ">=3.0.0-b1,<4.0.0-b1"
+ "piwik": ">=4.0.0-b1,<5.0.0-b1"
},
"authors": [
{
diff --git a/plugins/ExamplePlugin/plugin.json b/plugins/ExamplePlugin/plugin.json
index 54bece1d44e..1a1d6ad78c8 100644
--- a/plugins/ExamplePlugin/plugin.json
+++ b/plugins/ExamplePlugin/plugin.json
@@ -4,7 +4,7 @@
"version": "0.1.0",
"theme": false,
"require": {
- "piwik": ">=3.0.0-b1,<4.0.0-b1"
+ "piwik": ">=4.0.0-b1,<5.0.0-b1"
},
"authors": [
{
diff --git a/plugins/ExampleTheme/plugin.json b/plugins/ExampleTheme/plugin.json
index 5a6c26bcdd5..aa27c67db55 100644
--- a/plugins/ExampleTheme/plugin.json
+++ b/plugins/ExampleTheme/plugin.json
@@ -4,7 +4,7 @@
"version": "0.1.0",
"theme": true,
"require": {
- "piwik": ">=3.0.0-b1,<4.0.0-b1"
+ "piwik": ">=4.0.0-b1,<5.0.0-b1"
},
"stylesheet": "stylesheets/theme.less",
"homepage": "",
diff --git a/plugins/LogViewer b/plugins/LogViewer
index 0a69c2962e4..689930e54b9 160000
--- a/plugins/LogViewer
+++ b/plugins/LogViewer
@@ -1 +1 @@
-Subproject commit 0a69c2962e47a85fdae5bd20f467589d08cbe2ed
+Subproject commit 689930e54b95baa34b4221a769ed1ebedb410d20
diff --git a/plugins/LoginHttpAuth b/plugins/LoginHttpAuth
index 5e1a41a6b2b..8bd1e553b0c 160000
--- a/plugins/LoginHttpAuth
+++ b/plugins/LoginHttpAuth
@@ -1 +1 @@
-Subproject commit 5e1a41a6b2b94f7ed9442e35cf0b42ebdb03d80c
+Subproject commit 8bd1e553b0c5bdda244ec4a25576cbfeda1b80ef
diff --git a/plugins/LoginLdap b/plugins/LoginLdap
index 12f93c63c75..8c8e16cd01d 160000
--- a/plugins/LoginLdap
+++ b/plugins/LoginLdap
@@ -1 +1 @@
-Subproject commit 12f93c63c75f0c63b25ca749b268fcbb7b52c9d8
+Subproject commit 8c8e16cd01dcfc3363cbe43e135de60c6bc17f4d
diff --git a/plugins/MarketingCampaignsReporting b/plugins/MarketingCampaignsReporting
index a51d2262899..7131f1af70e 160000
--- a/plugins/MarketingCampaignsReporting
+++ b/plugins/MarketingCampaignsReporting
@@ -1 +1 @@
-Subproject commit a51d2262899c5adde96217d5b37e38d23335234d
+Subproject commit 7131f1af70ef02787db7d817d3f3f01dfe7c90fa
diff --git a/plugins/QueuedTracking b/plugins/QueuedTracking
index e1a74178aca..47db51bc239 160000
--- a/plugins/QueuedTracking
+++ b/plugins/QueuedTracking
@@ -1 +1 @@
-Subproject commit e1a74178aca6ee15bdf415af035cbafe51cf2223
+Subproject commit 47db51bc239324ea2f8665d650d07044cafdb951
diff --git a/plugins/SecurityInfo b/plugins/SecurityInfo
index 04b407f4022..e115d3cbcd6 160000
--- a/plugins/SecurityInfo
+++ b/plugins/SecurityInfo
@@ -1 +1 @@
-Subproject commit 04b407f40223c41bae90161ff9506a57c55aaa37
+Subproject commit e115d3cbcd60fab5b33ad8ec8f5af85df6962c4a
diff --git a/plugins/TagManager b/plugins/TagManager
index c707c81e26e..33d982fa055 160000
--- a/plugins/TagManager
+++ b/plugins/TagManager
@@ -1 +1 @@
-Subproject commit c707c81e26ef7f7c50244707798968bc599fbfa2
+Subproject commit 33d982fa055b3310548ad8fd0678d517b02077ec
diff --git a/plugins/TasksTimetable b/plugins/TasksTimetable
index d0f4d2ca109..30054d3bfeb 160000
--- a/plugins/TasksTimetable
+++ b/plugins/TasksTimetable
@@ -1 +1 @@
-Subproject commit d0f4d2ca1095b4dddb289dffc7f23297941add35
+Subproject commit 30054d3bfeb280c510eee5a60df335a20735bdd8
diff --git a/plugins/TreemapVisualization b/plugins/TreemapVisualization
index 56e080753f5..7beca7d8ba5 160000
--- a/plugins/TreemapVisualization
+++ b/plugins/TreemapVisualization
@@ -1 +1 @@
-Subproject commit 56e080753f5097b21fedfdc1b7fab51263a24333
+Subproject commit 7beca7d8ba5484864acc84982d891cddc5dd5f94
diff --git a/plugins/VisitorGenerator b/plugins/VisitorGenerator
index 5c0e707d112..39b582f7078 160000
--- a/plugins/VisitorGenerator
+++ b/plugins/VisitorGenerator
@@ -1 +1 @@
-Subproject commit 5c0e707d1123336c9ee95493feb3cc26f6526619
+Subproject commit 39b582f70784895649667c3464f120ccc6fe75ef
diff --git a/tests/PHPUnit/Integration/Plugin/ReleaseChannelsTest.php b/tests/PHPUnit/Integration/Plugin/ReleaseChannelsTest.php
index 3d2eae212bd..59a23fe7433 100644
--- a/tests/PHPUnit/Integration/Plugin/ReleaseChannelsTest.php
+++ b/tests/PHPUnit/Integration/Plugin/ReleaseChannelsTest.php
@@ -79,7 +79,7 @@ public function getTestValidReleaseChannelIds()
return array(
array($exists = true, $id = 'latest_stable'),
array($exists = true, $id = 'latest_beta'),
- array($exists = true, $id = 'latest_3x_stable'),
+ array($exists = true, $id = 'latest_4x_stable'),
array($exists = true, $id = 'laTest_stable'), // we do not check for exact match
array($exists = false, $id = ''),
array($exists = false, $id = 'latest'),
@@ -92,7 +92,7 @@ public function getTestActiveReleaseChannel()
{
return array(
array('latest_stable', 'latest_stable'),
- array('latest_3x_stable', 'latest_3x_stable'),
+ array('latest_4x_stable', 'latest_4x_stable'),
array('latest_beta', 'latest_beta'),
array('latest_beta', 'latEst_betA'),
array('latest_stable', ''), // if nothing configured should return default (the one with lowest order)
diff --git a/tests/PHPUnit/Integration/ReleaseCheckListTest.php b/tests/PHPUnit/Integration/ReleaseCheckListTest.php
index 0bc8438445b..af49877fc5e 100644
--- a/tests/PHPUnit/Integration/ReleaseCheckListTest.php
+++ b/tests/PHPUnit/Integration/ReleaseCheckListTest.php
@@ -28,7 +28,7 @@ class ReleaseCheckListTest extends \PHPUnit_Framework_TestCase
{
private $globalConfig;
- const MINIMUM_PHP_VERSION = '5.5.9';
+ const MINIMUM_PHP_VERSION = '7.2.0';
public function setUp()
{
diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__CorePluginsAdmin.getSystemSettings.xml b/tests/PHPUnit/System/expected/test_ImportLogs__CorePluginsAdmin.getSystemSettings.xml
index a234c57a469..57c2419562a 100644
--- a/tests/PHPUnit/System/expected/test_ImportLogs__CorePluginsAdmin.getSystemSettings.xml
+++ b/tests/PHPUnit/System/expected/test_ImportLogs__CorePluginsAdmin.getSystemSettings.xml
@@ -322,8 +322,8 @@
Latest stable release (Recommended)
Latest beta release
- Latest stable 3.X (Long Term Support version)
- Latest beta 3.X (Long Term Support version)
+ Latest stable 3.X (Long Term Support version)
+ Latest beta 3.X (Long Term Support version)
While our development process includes thousands of automated tests, Beta Testers play a key role in achieving the "No bug policy" in Matomo.<br/>If Matomo is a critical part of your business, we recommend you use the latest stable release. If you use the latest beta and you find a bug or have a suggestion, please <a target='_blank' rel='noreferrer noopener' href='https://developer.matomo.org/guides/core-team-workflow#influencing-piwik-development'>see here</a>.<br />LTS (Long Term Support) versions receive only security and bug fixes.
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__CorePluginsAdmin.getSystemSettings.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__CorePluginsAdmin.getSystemSettings.xml
index 5d30c8a96b3..645c6f15342 100644
--- a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__CorePluginsAdmin.getSystemSettings.xml
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__CorePluginsAdmin.getSystemSettings.xml
@@ -284,8 +284,8 @@
Latest stable release (Recommended)
Latest beta release
- Latest stable 3.X (Long Term Support version)
- Latest beta 3.X (Long Term Support version)
+ Latest stable 3.X (Long Term Support version)
+ Latest beta 3.X (Long Term Support version)
While our <a target='_blank' rel='noreferrer noopener' href='https://matomo.org/participate/development-process/'>development process</a> includes thousands of automated tests, Beta Testers play a key role in achieving the "No bug policy" in Matomo.<br/>If Matomo is a critical part of your business, we recommend you use the latest stable release. If you use the latest beta and you find a bug or have a suggestion, please <a target='_blank' rel='noreferrer noopener' href='https://developer.matomo.org/guides/core-team-workflow#influencing-piwik-development'>see here</a>.<br />LTS (Long Term Support) versions receive only security and bug fixes.
diff --git a/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__CorePluginsAdmin.getSystemSettings.xml b/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__CorePluginsAdmin.getSystemSettings.xml
index a234c57a469..57c2419562a 100644
--- a/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__CorePluginsAdmin.getSystemSettings.xml
+++ b/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__CorePluginsAdmin.getSystemSettings.xml
@@ -322,8 +322,8 @@
Latest stable release (Recommended)
Latest beta release
- Latest stable 3.X (Long Term Support version)
- Latest beta 3.X (Long Term Support version)
+ Latest stable 3.X (Long Term Support version)
+ Latest beta 3.X (Long Term Support version)
While our development process includes thousands of automated tests, Beta Testers play a key role in achieving the "No bug policy" in Matomo.<br/>If Matomo is a critical part of your business, we recommend you use the latest stable release. If you use the latest beta and you find a bug or have a suggestion, please <a target='_blank' rel='noreferrer noopener' href='https://developer.matomo.org/guides/core-team-workflow#influencing-piwik-development'>see here</a>.<br />LTS (Long Term Support) versions receive only security and bug fixes.
diff --git a/tests/PHPUnit/System/expected/test_noVisit__CorePluginsAdmin.getSystemSettings.xml b/tests/PHPUnit/System/expected/test_noVisit__CorePluginsAdmin.getSystemSettings.xml
index a234c57a469..57c2419562a 100644
--- a/tests/PHPUnit/System/expected/test_noVisit__CorePluginsAdmin.getSystemSettings.xml
+++ b/tests/PHPUnit/System/expected/test_noVisit__CorePluginsAdmin.getSystemSettings.xml
@@ -322,8 +322,8 @@
Latest stable release (Recommended)
Latest beta release
- Latest stable 3.X (Long Term Support version)
- Latest beta 3.X (Long Term Support version)
+ Latest stable 3.X (Long Term Support version)
+ Latest beta 3.X (Long Term Support version)
While our development process includes thousands of automated tests, Beta Testers play a key role in achieving the "No bug policy" in Matomo.<br/>If Matomo is a critical part of your business, we recommend you use the latest stable release. If you use the latest beta and you find a bug or have a suggestion, please <a target='_blank' rel='noreferrer noopener' href='https://developer.matomo.org/guides/core-team-workflow#influencing-piwik-development'>see here</a>.<br />LTS (Long Term Support) versions receive only security and bug fixes.
diff --git a/tests/resources/custompluginsdir/CustomDirPlugin/plugin.json b/tests/resources/custompluginsdir/CustomDirPlugin/plugin.json
index 2d4b3c19a29..ab0ee06dc52 100644
--- a/tests/resources/custompluginsdir/CustomDirPlugin/plugin.json
+++ b/tests/resources/custompluginsdir/CustomDirPlugin/plugin.json
@@ -4,7 +4,7 @@
"version": "0.1.0",
"theme": false,
"require": {
- "piwik": ">=3.8.1-stable,<4.0.0-b1"
+ "piwik": ">=4.0.0-b1,<5.0.0-b1"
},
"authors": [
{
diff --git a/tests/travis b/tests/travis
index fbc2a2c8711..8503a8c7dd2 160000
--- a/tests/travis
+++ b/tests/travis
@@ -1 +1 @@
-Subproject commit fbc2a2c87118febe8e73dc50aaa598bfe6c63e8b
+Subproject commit 8503a8c7dd271dd97a0a7bddac7bf54e476c7158