diff --git a/.eslintignore b/.eslintignore index 1fa7e081e1..8b9c90264c 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,3 +1,4 @@ **/vendor/** +**/vendor-prefixed/** **/testBundles/** assets/js/src/newsletter_editor/tinymce/wplink/plugin.js diff --git a/.gitignore b/.gitignore index ca2d94dde3..015ef7ab41 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ TODO composer.phar /vendor +/vendor-prefixed /vendor_backup tests/_output/* tests/_support/_generated/* @@ -23,7 +24,6 @@ lang .mp_svn /nbproject/ tests/_data/acceptanceGenerated.sql -lib/Dependencies lib/DI/CachedContainer.php mozart/Dependencies mozart/Classes diff --git a/RoboFile.php b/RoboFile.php index d18089e801..7d528d851f 100644 --- a/RoboFile.php +++ b/RoboFile.php @@ -326,7 +326,7 @@ class RoboFile extends \Robo\Tasks { './vendor/bin/phpcs '. '--standard=./tasks/code_sniffer/MailPoet '. '--runtime-set testVersion 5.6-7.2 '. - '--ignore=./lib/Util/Sudzy/*,./lib/Util/CSS.php,./lib/Util/XLSXWriter.php,./lib/Dependencies/*,'. + '--ignore=./lib/Util/Sudzy/*,./lib/Util/CSS.php,./lib/Util/XLSXWriter.php,'. './lib/Util/pQuery/*,./lib/Config/PopulatorData/Templates/* '. 'lib/ '. $severityFlag diff --git a/build.sh b/build.sh index c30534b6d3..91c607e5db 100755 --- a/build.sh +++ b/build.sh @@ -30,6 +30,7 @@ echo '[BUILD] Building DI Container cache' # Production libraries. echo '[BUILD] Fetching production libraries' test -d vendor && rm -rf vendor +test -d vendor-prefixed && rm -rf vendor-prefixed ./composer.phar install --no-dev --prefer-dist --optimize-autoloader --no-scripts echo '[BUILD] Fetching mozart managed production libraries' @@ -41,6 +42,7 @@ cp -Rf lang $plugin_name cp -RfL assets $plugin_name cp -Rf lib $plugin_name cp -Rf vendor $plugin_name +cp -Rf vendor-prefixed $plugin_name cp -Rf views $plugin_name rm -Rf $plugin_name/assets/css/src rm -Rf $plugin_name/assets/js/src @@ -55,7 +57,7 @@ else findPreArgs='' findMidArgs=' -regextype posix-egrep ' fi -findDestinations="$plugin_name/vendor $plugin_name/lib/Dependencies" +findDestinations="$plugin_name/vendor $plugin_name/vendor-prefixed" echo '[BUILD] Removing obsolete files from vendor libraries' find $findPreArgs $findDestinations -type f $findMidArgs -iregex ".*\/*\.(markdown|md|txt)" -print0 | xargs -0 rm -f diff --git a/composer.json b/composer.json index 5058e7c6a3..db30d28097 100644 --- a/composer.json +++ b/composer.json @@ -42,6 +42,7 @@ "autoload": { "psr-4": { "MailPoet\\": "lib/", + "MailPoetVendor\\": "vendor-prefixed/", "Sudzy\\": "lib/Util/Sudzy" } }, diff --git a/lib/API/API.php b/lib/API/API.php index bc078bbd74..87274e4c78 100644 --- a/lib/API/API.php +++ b/lib/API/API.php @@ -2,8 +2,8 @@ namespace MailPoet\API; -use MailPoet\Dependencies\Symfony\Component\DependencyInjection\Container; -use MailPoet\Dependencies\Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException; +use MailPoetVendor\Symfony\Component\DependencyInjection\Container; +use MailPoetVendor\Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException; use MailPoet\DI\ContainerFactory; if(!defined('ABSPATH')) exit; diff --git a/lib/API/JSON/API.php b/lib/API/JSON/API.php index 19170453e6..1b631c3b52 100644 --- a/lib/API/JSON/API.php +++ b/lib/API/JSON/API.php @@ -2,8 +2,8 @@ namespace MailPoet\API\JSON; use MailPoet\Config\AccessControl; -use MailPoet\Dependencies\Symfony\Component\DependencyInjection\Container; -use MailPoet\Dependencies\Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException; +use MailPoetVendor\Symfony\Component\DependencyInjection\Container; +use MailPoetVendor\Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException; use MailPoet\Models\Setting; use MailPoet\Util\Helpers; use MailPoet\Util\Security; diff --git a/lib/Config/Initializer.php b/lib/Config/Initializer.php index 943aa0c072..4dc900d1bb 100644 --- a/lib/Config/Initializer.php +++ b/lib/Config/Initializer.php @@ -4,7 +4,7 @@ namespace MailPoet\Config; use MailPoet\API; use MailPoet\Cron\CronTrigger; -use MailPoet\Dependencies\Symfony\Component\DependencyInjection\Container; +use MailPoetVendor\Symfony\Component\DependencyInjection\Container; use MailPoet\DI\ContainerFactory; use MailPoet\Models\Setting; use MailPoet\Router; diff --git a/lib/DI/ContainerFactory.php b/lib/DI/ContainerFactory.php index 3e0e1fec42..1fe3cd012d 100644 --- a/lib/DI/ContainerFactory.php +++ b/lib/DI/ContainerFactory.php @@ -2,9 +2,9 @@ namespace MailPoet\DI; -use MailPoet\Dependencies\Symfony\Component\DependencyInjection\ContainerBuilder; -use MailPoet\Dependencies\Symfony\Component\DependencyInjection\Dumper\PhpDumper; -use MailPoet\Dependencies\Symfony\Component\DependencyInjection\Reference; +use MailPoetVendor\Symfony\Component\DependencyInjection\ContainerBuilder; +use MailPoetVendor\Symfony\Component\DependencyInjection\Dumper\PhpDumper; +use MailPoetVendor\Symfony\Component\DependencyInjection\Reference; class ContainerFactory { diff --git a/lib/Logging/LogHandler.php b/lib/Logging/LogHandler.php index 056b5b9bce..f8b193b225 100644 --- a/lib/Logging/LogHandler.php +++ b/lib/Logging/LogHandler.php @@ -3,7 +3,7 @@ namespace MailPoet\Logging; use Carbon\Carbon; -use MailPoet\Dependencies\Monolog\Handler\AbstractProcessingHandler; +use MailPoetVendor\Monolog\Handler\AbstractProcessingHandler; use MailPoet\Models\Log; class LogHandler extends AbstractProcessingHandler { diff --git a/lib/Logging/Logger.php b/lib/Logging/Logger.php index 3bec1aa954..3b6b6c5f9f 100644 --- a/lib/Logging/Logger.php +++ b/lib/Logging/Logger.php @@ -2,9 +2,9 @@ namespace MailPoet\Logging; -use MailPoet\Dependencies\Monolog\Processor\IntrospectionProcessor; -use MailPoet\Dependencies\Monolog\Processor\MemoryUsageProcessor; -use MailPoet\Dependencies\Monolog\Processor\WebProcessor; +use MailPoetVendor\Monolog\Processor\IntrospectionProcessor; +use MailPoetVendor\Monolog\Processor\MemoryUsageProcessor; +use MailPoetVendor\Monolog\Processor\WebProcessor; use MailPoet\Models\Setting; /** @@ -24,18 +24,18 @@ use MailPoet\Models\Setting; */ class Logger { - /** @var \MailPoet\Dependencies\Monolog\Logger[] */ + /** @var \MailPoetVendor\Monolog\Logger[] */ private static $instance = []; /** * @param string $name * @param bool $attach_processors * - * @return \MailPoet\Dependencies\Monolog\Logger + * @return \MailPoetVendor\Monolog\Logger */ public static function getLogger($name = 'MailPoet', $attach_processors = WP_DEBUG) { if(!isset(self::$instance[$name])) { - self::$instance[$name] = new \MailPoet\Dependencies\Monolog\Logger($name); + self::$instance[$name] = new \MailPoetVendor\Monolog\Logger($name); if($attach_processors) { // Adds the line/file/class/method from which the log call originated @@ -55,11 +55,11 @@ class Logger { $settings = Setting::getValue('logging', 'errors'); switch ($settings) { case 'everything': - return \MailPoet\Dependencies\Monolog\Logger::DEBUG; + return \MailPoetVendor\Monolog\Logger::DEBUG; case 'nothing': - return \MailPoet\Dependencies\Monolog\Logger::EMERGENCY; + return \MailPoetVendor\Monolog\Logger::EMERGENCY; default: - return \MailPoet\Dependencies\Monolog\Logger::ERROR; + return \MailPoetVendor\Monolog\Logger::ERROR; } } diff --git a/lib/Router/Router.php b/lib/Router/Router.php index 4ed64ee69b..0856d10eb5 100644 --- a/lib/Router/Router.php +++ b/lib/Router/Router.php @@ -3,7 +3,7 @@ namespace MailPoet\Router; use MailPoet\Config\AccessControl; -use MailPoet\Dependencies\Symfony\Component\DependencyInjection\Container; +use MailPoetVendor\Symfony\Component\DependencyInjection\Container; use MailPoet\Util\Helpers; if(!defined('ABSPATH')) exit; diff --git a/mozart/composer.json b/mozart/composer.json index b683a1cb20..d898571cb3 100644 --- a/mozart/composer.json +++ b/mozart/composer.json @@ -16,21 +16,21 @@ "@cleanup", "vendor/bin/mozart compose", "@unwantedDepsRemoval", - "mv ./Dependencies ../lib/" + "mv ./Dependencies ../vendor-prefixed" ], "post-install-cmd": [ "@cleanup", "vendor/bin/mozart compose", "@unwantedDepsRemoval", - "mv ./Dependencies ../lib/" + "mv ./Dependencies ../vendor-prefixed" ], - "cleanup": "rm -rf vendor/symfony/**/Tests;rm -rf ../lib/Dependencies", + "cleanup": "rm -rf vendor/symfony/**/Tests;rm -rf ../vendor-prefixed", "unwantedDepsRemoval": "rm -rf ./Dependencies/Symfony/Component/Finder" }, "extra": { "mozart": { - "dep_namespace": "MailPoet\\Dependencies\\", + "dep_namespace": "MailPoetVendor\\", "dep_directory": "/Dependencies/", "classmap_directory": "/Classes/", "classmap_prefix": "MP_", diff --git a/mozart/composer.lock b/mozart/composer.lock index 5538437c4d..95e6277eb9 100644 --- a/mozart/composer.lock +++ b/mozart/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "820c1c709d3e431b8ecce76380fb22c2", + "content-hash": "bd721d4b2eba193c88088baa6b5eef2f", "packages": [ { "name": "coenjacobs/mozart", diff --git a/tasks/phpstan/phpstan.neon b/tasks/phpstan/phpstan.neon index bd211ec89e..cb4c4cd38b 100644 --- a/tasks/phpstan/phpstan.neon +++ b/tasks/phpstan/phpstan.neon @@ -7,5 +7,4 @@ parameters: - '#Access to an undefined static property MailPoet\\Models\\Model::#' - '#Function members_register_.+ not found#' excludes_analyse: - - lib/Dependencies - lib/DI/CachedContainer.php diff --git a/tests/integration/API/JSON/APITest.php b/tests/integration/API/JSON/APITest.php index 75e24eea92..6fd4a0080d 100644 --- a/tests/integration/API/JSON/APITest.php +++ b/tests/integration/API/JSON/APITest.php @@ -12,7 +12,7 @@ use MailPoet\API\JSON\SuccessResponse; use MailPoet\API\JSON\v1\APITestNamespacedEndpointStubV1; use MailPoet\API\JSON\v2\APITestNamespacedEndpointStubV2; use MailPoet\Config\AccessControl; -use MailPoet\Dependencies\Symfony\Component\DependencyInjection\Container; +use MailPoetVendor\Symfony\Component\DependencyInjection\Container; use MailPoet\DI\ContainerFactory; use MailPoet\WP\Hooks; diff --git a/tests/integration/Logging/LogHandlerTest.php b/tests/integration/Logging/LogHandlerTest.php index c3f9845b15..0980a6ff1a 100644 --- a/tests/integration/Logging/LogHandlerTest.php +++ b/tests/integration/Logging/LogHandlerTest.php @@ -25,7 +25,7 @@ class LogHandlerTest extends \MailPoetTest { ]); $log_handler->handle([ - 'level' => \MailPoet\Dependencies\Monolog\Logger::EMERGENCY, + 'level' => \MailPoetVendor\Monolog\Logger::EMERGENCY, 'extra' => [], 'context' => [], 'channel' => 'name', @@ -47,7 +47,7 @@ class LogHandlerTest extends \MailPoetTest { $log_handler = new LogHandler(); $log_handler = Mock::double($log_handler, ['getRandom' => 0]); $log_handler->handle([ - 'level' => \MailPoet\Dependencies\Monolog\Logger::EMERGENCY, + 'level' => \MailPoetVendor\Monolog\Logger::EMERGENCY, 'extra' => [], 'context' => [], 'channel' => 'name', @@ -71,7 +71,7 @@ class LogHandlerTest extends \MailPoetTest { $log_handler = new LogHandler(); $log_handler = Mock::double($log_handler, ['getRandom' => 100]); $log_handler->handle([ - 'level' => \MailPoet\Dependencies\Monolog\Logger::EMERGENCY, + 'level' => \MailPoetVendor\Monolog\Logger::EMERGENCY, 'extra' => [], 'context' => [], 'channel' => 'name', diff --git a/tests/integration/Logging/LoggerTest.php b/tests/integration/Logging/LoggerTest.php index 37f18c9062..4bbf1d5a99 100644 --- a/tests/integration/Logging/LoggerTest.php +++ b/tests/integration/Logging/LoggerTest.php @@ -8,7 +8,7 @@ class LoggerTest extends \MailPoetTest { public function testItCreatesLogger() { $logger = Logger::getLogger('logger-name'); - expect($logger)->isInstanceOf(\MailPoet\Dependencies\Monolog\Logger::class); + expect($logger)->isInstanceOf(\MailPoetVendor\Monolog\Logger::class); } public function testItReturnsInstance() { @@ -41,28 +41,28 @@ class LoggerTest extends \MailPoetTest { Setting::setValue('logging', null); $logger1 = Logger::getLogger('logger-with-handler'); $handlers = $logger1->getHandlers(); - expect($handlers[0]->getLevel())->equals(\MailPoet\Dependencies\Monolog\Logger::ERROR); + expect($handlers[0]->getLevel())->equals(\MailPoetVendor\Monolog\Logger::ERROR); } public function testItSetsLoggingLevelForNothing() { Setting::setValue('logging', 'nothing'); $logger1 = Logger::getLogger('logger-for-nothing'); $handlers = $logger1->getHandlers(); - expect($handlers[0]->getLevel())->equals(\MailPoet\Dependencies\Monolog\Logger::EMERGENCY); + expect($handlers[0]->getLevel())->equals(\MailPoetVendor\Monolog\Logger::EMERGENCY); } public function testItSetsLoggingLevelForErrors() { Setting::setValue('logging', 'errors'); $logger1 = Logger::getLogger('logger-for-errors'); $handlers = $logger1->getHandlers(); - expect($handlers[0]->getLevel())->equals(\MailPoet\Dependencies\Monolog\Logger::ERROR); + expect($handlers[0]->getLevel())->equals(\MailPoetVendor\Monolog\Logger::ERROR); } public function testItSetsLoggingLevelForEverything() { Setting::setValue('logging', 'everything'); $logger1 = Logger::getLogger('logger-for-everything'); $handlers = $logger1->getHandlers(); - expect($handlers[0]->getLevel())->equals(\MailPoet\Dependencies\Monolog\Logger::DEBUG); + expect($handlers[0]->getLevel())->equals(\MailPoetVendor\Monolog\Logger::DEBUG); } } \ No newline at end of file diff --git a/tests/integration/Router/RouterTest.php b/tests/integration/Router/RouterTest.php index 8ef4e5c4c8..62038fdf06 100644 --- a/tests/integration/Router/RouterTest.php +++ b/tests/integration/Router/RouterTest.php @@ -5,7 +5,7 @@ namespace MailPoet\Test\Router; use Codeception\Stub; use Codeception\Stub\Expected; use MailPoet\Config\AccessControl; -use MailPoet\Dependencies\Symfony\Component\DependencyInjection\Container; +use MailPoetVendor\Symfony\Component\DependencyInjection\Container; use MailPoet\DI\ContainerFactory; use MailPoet\Router\Endpoints\RouterTestMockEndpoint; use MailPoet\Router\Router;