diff --git a/bin/doctrine_purge b/bin/doctrine_purge index 45813440..2f474e84 100755 --- a/bin/doctrine_purge +++ b/bin/doctrine_purge @@ -11,10 +11,14 @@ */ use Doctrine\Common\DataFixtures\Purger\ORMPurger; +use Doctrine\ORM\EntityManagerInterface; require_once __DIR__.'/../tests/Bridge/Doctrine/autoload.php'; -$purger = new ORMPurger($GLOBALS['entityManager']); +/** @var EntityManagerInterface $entityManager */ +$entityManager = $GLOBALS['entityManager']; + +$purger = new ORMPurger($entityManager); $purger->purge(); return 1; diff --git a/bin/eloquent_migrate b/bin/eloquent_migrate index 400305c5..b2e845a3 100755 --- a/bin/eloquent_migrate +++ b/bin/eloquent_migrate @@ -10,6 +10,17 @@ * file that was distributed with this source code. */ +use Illuminate\Database\Capsule\Manager; +use Illuminate\Database\Migrations\MigrationRepositoryInterface; +use Illuminate\Database\Migrations\Migrator; + require_once __DIR__.'/../tests/Bridge/Eloquent/autoload.php'; -$GLOBALS['migrator']->run('migrations'); +/** + * @var Manager $manager + * @var MigrationRepositoryInterface $repository + * @var Migrator $migrator + */ +[$manager, $repository, $migrator] = $GLOBALS['manager_repository_migrator_factory'](); + +$migrator->run('migrations'); diff --git a/bin/eloquent_rollback b/bin/eloquent_rollback index 65278db3..7bd5da00 100755 --- a/bin/eloquent_rollback +++ b/bin/eloquent_rollback @@ -10,6 +10,17 @@ * file that was distributed with this source code. */ +use Illuminate\Database\Capsule\Manager; +use Illuminate\Database\Migrations\MigrationRepositoryInterface; +use Illuminate\Database\Migrations\Migrator; + require_once __DIR__.'/../tests/Bridge/Eloquent/autoload.php'; -$GLOBALS['migrator']->rollback(); +/** + * @var Manager $manager + * @var MigrationRepositoryInterface $repository + * @var Migrator $migrator + */ +[$manager, $repository, $migrator] = $GLOBALS['manager_repository_migrator_factory'](); + +$migrator->rollback(); diff --git a/cli-config.php b/cli-config.php index 7752f079..e2af3c7d 100755 --- a/cli-config.php +++ b/cli-config.php @@ -10,7 +10,9 @@ */ use Doctrine\DBAL\DriverManager; +use Doctrine\ODM\PHPCR\DocumentManagerInterface as PHPCRDocumentManager; use Doctrine\ODM\PHPCR\Tools\Console\Helper\DocumentManagerHelper as PhpcrDocumentManagerHelperAlias; +use Doctrine\ORM\EntityManagerInterface as ORMEntityManager; use Doctrine\ORM\Tools\Console\ConsoleRunner as DoctrineORMConsoleRunner; use Jackalope\Tools\Console\Command\InitDoctrineDbalCommand as JackalopeInitDbalCommand; use Jackalope\Tools\Console\Helper\DoctrineDbalHelper as DoctrinePHPCRHelper; @@ -37,7 +39,10 @@ if ($isDoctrineORM) { require_once __DIR__.'/tests/Bridge/Doctrine/autoload.php'; - return DoctrineORMConsoleRunner::createHelperSet($GLOBALS['entity_manager']); + /** @var ORMEntityManager $entityManager */ + $entityManager = $GLOBALS['entity_manager_factory'](); + + return DoctrineORMConsoleRunner::createHelperSet($entityManager); } if ($isDoctrinePHPCR) { @@ -66,8 +71,9 @@ require_once __DIR__.'/tests/Bridge/DoctrinePhpCr/autoload.php'; - $session = $GLOBALS['session']; - $documentManager = $GLOBALS['document_manager']; + /** @var PHPCRDocumentManager $documentManager */ + $documentManager = $GLOBALS['document_manager_factory'](); + $session = $documentManager->getPhpcrSession(); $helperSet = new HelperSet([ 'phpcr' => new PhpcrHelper($session), diff --git a/composer.json b/composer.json index 8ef8c2c0..c550e4a3 100644 --- a/composer.json +++ b/composer.json @@ -68,7 +68,10 @@ "fixtures", "tests" ] - } + }, + "files": [ + "fixtures/get-param.php" + ] }, "config": { diff --git a/doctrine-odm-db-settings.php b/doctrine-odm-db-settings.php index 307c58cc..63627f0c 100644 --- a/doctrine-odm-db-settings.php +++ b/doctrine-odm-db-settings.php @@ -2,12 +2,6 @@ declare(strict_types=1); -function get_param(string $envName, $default) { - $env = getenv($envName); - - return false !== $env ? $env : $default; -} - // To keep in sync with docker-compose.yml return [ 'username' => get_param('DOCTRINE_ODM_DB_USER', 'root'), diff --git a/doctrine-orm-db-settings.php b/doctrine-orm-db-settings.php index 29b3c242..69794c66 100644 --- a/doctrine-orm-db-settings.php +++ b/doctrine-orm-db-settings.php @@ -2,12 +2,6 @@ declare(strict_types=1); -function get_param(string $envName, $default) { - $env = getenv($envName); - - return false !== $env ? $env : $default; -} - // To keep in sync with docker-compose.yml return [ 'driver' => get_param('DOCTRINE_ORM_DB_DRIVER', 'pdo_mysql'), diff --git a/doctrine-phpcr-db-settings.php b/doctrine-phpcr-db-settings.php index e90efbc9..96103106 100644 --- a/doctrine-phpcr-db-settings.php +++ b/doctrine-phpcr-db-settings.php @@ -2,12 +2,6 @@ declare(strict_types=1); -function get_param(string $envName, $default) { - $env = getenv($envName); - - return false !== $env ? $env : $default; -} - // To keep in sync with docker-compose.yml return [ 'driver' => get_param('DOCTRINE_PHPCR_DB_DRIVER', 'pdo_mysql'), diff --git a/eloquent-db-settings.php b/eloquent-db-settings.php index 31d29496..ba34207d 100644 --- a/eloquent-db-settings.php +++ b/eloquent-db-settings.php @@ -2,12 +2,6 @@ declare(strict_types=1); -function get_param(string $envName, $default) { - $env = getenv($envName); - - return false !== $env ? $env : $default; -} - // To keep in sync with docker-compose.yml return [ 'driver' => get_param('ELOQUENT_DB_DRIVER', 'mysql'), diff --git a/fixtures/get-param.php b/fixtures/get-param.php new file mode 100644 index 00000000..237ecaeb --- /dev/null +++ b/fixtures/get-param.php @@ -0,0 +1,19 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +declare(strict_types=1); + +function get_param(string $envName, $default) +{ + $env = getenv($envName); + + return false !== $env ? $env : $default; +} diff --git a/tests/Bridge/Doctrine/Persister/ObjectManagerPersisterTest.php b/tests/Bridge/Doctrine/Persister/ObjectManagerPersisterTest.php index 26a7e8b5..d3a0fbe8 100644 --- a/tests/Bridge/Doctrine/Persister/ObjectManagerPersisterTest.php +++ b/tests/Bridge/Doctrine/Persister/ObjectManagerPersisterTest.php @@ -13,7 +13,6 @@ namespace Fidry\AliceDataFixtures\Bridge\Doctrine\Persister; -use Doctrine\Common\DataFixtures\Purger\ORMPurger; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\ORMInvalidArgumentException; use Fidry\AliceDataFixtures\Bridge\Doctrine\Entity\Dummy; @@ -37,18 +36,18 @@ class ObjectManagerPersisterTest extends TestCase private EntityManagerInterface $entityManager; - private ORMPurger $purger; - public function setUp(): void { - $this->entityManager = $GLOBALS['entity_manager']; + $this->entityManager = $GLOBALS['entity_manager_factory'](); $this->persister = new ObjectManagerPersister($this->entityManager); - $this->purger = new ORMPurger($this->entityManager); + + $this->entityManager->getConnection()->beginTransaction(); } public function tearDown(): void { - $this->purger->purge(); + $this->entityManager->getConnection()->rollBack(); + $this->entityManager->clear(); } public function testIsAPersister(): void diff --git a/tests/Bridge/Doctrine/Purger/PurgerTest.php b/tests/Bridge/Doctrine/Purger/PurgerTest.php index 96806eba..576dc7b9 100644 --- a/tests/Bridge/Doctrine/Purger/PurgerTest.php +++ b/tests/Bridge/Doctrine/Purger/PurgerTest.php @@ -15,9 +15,9 @@ use Doctrine\Common\DataFixtures\Purger\ORMPurger as DoctrineOrmPurger; use Doctrine\DBAL\Connection; -use Doctrine\DBAL\Driver\AbstractMySQLDriver; use Doctrine\DBAL\Platforms\MySqlPlatform; use Doctrine\ORM\EntityManager; +use Doctrine\ORM\EntityManagerInterface; use Fidry\AliceDataFixtures\Bridge\Doctrine\Entity\Dummy; use Fidry\AliceDataFixtures\Bridge\Doctrine\ORM\FakeEntityManager; use Fidry\AliceDataFixtures\Persistence\PurgeMode; @@ -92,8 +92,8 @@ public function testDisableFKChecksOnDeleteIsPerformed(): void public function testEmptyDatabase(): void { - /** @var EntityManager $manager */ - $manager = $GLOBALS['entity_manager']; + /** @var EntityManagerInterface $manager */ + $manager = $GLOBALS['entity_manager_factory'](); $dummy = new Dummy(); $manager->persist($dummy); @@ -111,5 +111,8 @@ public function testEmptyDatabase(): void $manager->persist($dummy); $manager->flush(); self::assertCount(1, $manager->getRepository(Dummy::class)->findAll()); + + // TODO: move to a tearDown() + $manager->clear(); } } diff --git a/tests/Bridge/Doctrine/autoload.php b/tests/Bridge/Doctrine/autoload.php index 04ee63c6..45df3fab 100644 --- a/tests/Bridge/Doctrine/autoload.php +++ b/tests/Bridge/Doctrine/autoload.php @@ -23,9 +23,9 @@ true, ); -$entityManager = EntityManager::create( +$entityManagerFactory = static fn () => EntityManager::create( require ROOT.'/doctrine-orm-db-settings.php', $config, ); -$GLOBALS['entity_manager'] = $entityManager; +$GLOBALS['entity_manager_factory'] = $entityManagerFactory; diff --git a/tests/Bridge/DoctrineMongoDB/Persister/ObjectManagerPersisterTest.php b/tests/Bridge/DoctrineMongoDB/Persister/ObjectManagerPersisterTest.php index 4e704a77..3af6ed17 100644 --- a/tests/Bridge/DoctrineMongoDB/Persister/ObjectManagerPersisterTest.php +++ b/tests/Bridge/DoctrineMongoDB/Persister/ObjectManagerPersisterTest.php @@ -14,6 +14,7 @@ namespace Fidry\AliceDataFixtures\Bridge\DoctrineMongoDB\Persister; use Doctrine\Common\DataFixtures\Purger\MongoDBPurger; +use Doctrine\Common\DataFixtures\Purger\PurgerInterface; use Doctrine\ODM\MongoDB\DocumentManager; use Doctrine\ODM\MongoDB\MongoDBException; use Fidry\AliceDataFixtures\Bridge\Doctrine\MongoDocument\Dummy; @@ -38,11 +39,11 @@ class ObjectManagerPersisterTest extends TestCase private DocumentManager $documentManager; - private MongoDBPurger $purger; + private PurgerInterface $purger; public function setUp(): void { - $this->documentManager = $GLOBALS['document_manager']; + $this->documentManager = $GLOBALS['document_manager_factory'](); $this->persister = new ObjectManagerPersister($this->documentManager); $this->purger = new MongoDBPurger($this->documentManager); } @@ -50,6 +51,7 @@ public function setUp(): void public function tearDown(): void { $this->purger->purge(); + $this->documentManager->clear(); } public function testIsAPersister(): void diff --git a/tests/Bridge/DoctrineMongoDB/Purger/PurgerTest.php b/tests/Bridge/DoctrineMongoDB/Purger/PurgerTest.php index a3c3a563..3969e7e7 100644 --- a/tests/Bridge/DoctrineMongoDB/Purger/PurgerTest.php +++ b/tests/Bridge/DoctrineMongoDB/Purger/PurgerTest.php @@ -15,6 +15,7 @@ use Doctrine\Common\DataFixtures\Purger\MongoDBPurger; use Doctrine\ODM\MongoDB\DocumentManager; +use Doctrine\ODM\PHPCR\DocumentManagerInterface; use Fidry\AliceDataFixtures\Bridge\Doctrine\MongoDocument\Dummy; use Fidry\AliceDataFixtures\Bridge\Doctrine\Purger\Purger; use PHPUnit\Framework\TestCase; @@ -45,8 +46,8 @@ public function testCreatesADoctrineOdmPurgerWithTheAppropriateManager(): void public function testEmptyDatabase(): void { - /** @var DocumentManager $manager */ - $manager = $GLOBALS['document_manager']; + /** @var DocumentManagerInterface $manager */ + $manager = $GLOBALS['document_manager_factory'](); $dummy = new Dummy(); $manager->persist($dummy); @@ -64,5 +65,8 @@ public function testEmptyDatabase(): void $manager->persist($dummy); $manager->flush(); self::assertCount(1, $manager->getRepository(Dummy::class)->findAll()); + + // TODO: move to a tearDown() + $manager->clear(); } } diff --git a/tests/Bridge/DoctrineMongoDB/autoload.php b/tests/Bridge/DoctrineMongoDB/autoload.php index 1a5fea00..ee4b823c 100644 --- a/tests/Bridge/DoctrineMongoDB/autoload.php +++ b/tests/Bridge/DoctrineMongoDB/autoload.php @@ -43,7 +43,7 @@ $port, ); -$documentManager = DocumentManager::create( +$documentManagerFactory = static fn () => DocumentManager::create( new Client( $uri, [], @@ -52,4 +52,4 @@ $config, ); -$GLOBALS['document_manager'] = $documentManager; +$GLOBALS['document_manager_factory'] = $documentManagerFactory; diff --git a/tests/Bridge/DoctrinePhpCr/Persister/ObjectManagerPersisterTest.php b/tests/Bridge/DoctrinePhpCr/Persister/ObjectManagerPersisterTest.php index 43b82336..33f46252 100644 --- a/tests/Bridge/DoctrinePhpCr/Persister/ObjectManagerPersisterTest.php +++ b/tests/Bridge/DoctrinePhpCr/Persister/ObjectManagerPersisterTest.php @@ -15,7 +15,8 @@ use function bin2hex; use Doctrine\Common\DataFixtures\Purger\PHPCRPurger; -use Doctrine\ODM\PHPCR\DocumentManager; +use Doctrine\Common\DataFixtures\Purger\PurgerInterface; +use Doctrine\ODM\PHPCR\DocumentManagerInterface; use Doctrine\ODM\PHPCR\Exception\InvalidArgumentException; use Fidry\AliceDataFixtures\Bridge\Doctrine\Persister\ObjectManagerPersister; use Fidry\AliceDataFixtures\Bridge\Doctrine\PhpCrDocument\Dummy; @@ -33,13 +34,13 @@ class ObjectManagerPersisterTest extends TestCase { private ObjectManagerPersister $persister; - private DocumentManager $documentManager; + private DocumentManagerInterface $documentManager; - private PHPCRPurger $purger; + private PurgerInterface $purger; public function setUp(): void { - $this->documentManager = $GLOBALS['document_manager']; + $this->documentManager = $GLOBALS['document_manager_factory'](); $this->persister = new ObjectManagerPersister($this->documentManager); $this->purger = new PHPCRPurger($this->documentManager); } @@ -47,6 +48,7 @@ public function setUp(): void public function tearDown(): void { $this->purger->purge(); + $this->documentManager->clear(); } public function testIsAPersister(): void diff --git a/tests/Bridge/DoctrinePhpCr/Purger/PurgerTest.php b/tests/Bridge/DoctrinePhpCr/Purger/PurgerTest.php index 67fb2fdc..8d085a96 100644 --- a/tests/Bridge/DoctrinePhpCr/Purger/PurgerTest.php +++ b/tests/Bridge/DoctrinePhpCr/Purger/PurgerTest.php @@ -67,7 +67,7 @@ public function testCreatesADoctrineOrmPurgerWithTheAppropriateManagerAndPurgeMo public function testEmptyDatabase(): void { /** @var DocumentManager $manager */ - $manager = $GLOBALS['document_manager']; + $manager = $GLOBALS['document_manager_factory'](); $dummy = new Dummy(); $dummy->id = '/dummy_'.bin2hex(random_bytes(6)); @@ -87,5 +87,8 @@ public function testEmptyDatabase(): void $manager->persist($dummy); $manager->flush(); self::assertCount(1, $manager->getRepository(Dummy::class)->findAll()); + + // TODO: move to a tearDown() + $manager->clear(); } } diff --git a/tests/Bridge/DoctrinePhpCr/autoload.php b/tests/Bridge/DoctrinePhpCr/autoload.php index 5507de3b..97bfa542 100644 --- a/tests/Bridge/DoctrinePhpCr/autoload.php +++ b/tests/Bridge/DoctrinePhpCr/autoload.php @@ -24,38 +24,39 @@ use PHPCR\SessionInterface; use PHPCR\SimpleCredentials; -$session = (static function (): SessionInterface { - $connection = DriverManager::getConnection( - require ROOT.'/doctrine-phpcr-db-settings.php', - ); - $repositoryFactory = new RepositoryFactoryDoctrineDBAL(); - - $repository = $repositoryFactory->getRepository([ - 'jackalope.doctrine_dbal_connection' => $connection, - ]); - - return $repository->login( - new SimpleCredentials(null, null), - 'default', - ); -})(); - -$config = (static function (): Configuration { - $driver = new AnnotationDriver( - new AnnotationReader(), - [ - ROOT.'/vendor-bin/doctrine_phpcr/vendor/doctrine/phpcr-odm/lib/Doctrine/ODM/PHPCR/Document', - ROOT.'/fixtures/Bridge/Doctrine/PhpCrDocument', - ], - ); - - $config = new Configuration(); - $config->setMetadataDriverImpl($driver); - - return $config; -})(); - -$documentManager = DocumentManager::create($session, $config); - -$GLOBALS['session'] = $session; -$GLOBALS['document_manager'] = $documentManager; +$documentManagerFactory = static function () { + $session = (static function (): SessionInterface { + $connection = DriverManager::getConnection( + require ROOT.'/doctrine-phpcr-db-settings.php', + ); + $repositoryFactory = new RepositoryFactoryDoctrineDBAL(); + + $repository = $repositoryFactory->getRepository([ + 'jackalope.doctrine_dbal_connection' => $connection, + ]); + + return $repository->login( + new SimpleCredentials(null, null), + 'default', + ); + })(); + + $config = (static function (): Configuration { + $driver = new AnnotationDriver( + new AnnotationReader(), + [ + ROOT.'/vendor-bin/doctrine_phpcr/vendor/doctrine/phpcr-odm/lib/Doctrine/ODM/PHPCR/Document', + ROOT.'/fixtures/Bridge/Doctrine/PhpCrDocument', + ], + ); + + $config = new Configuration(); + $config->setMetadataDriverImpl($driver); + + return $config; + })(); + + return DocumentManager::create($session, $config); +}; + +$GLOBALS['document_manager_factory'] = $documentManagerFactory; diff --git a/tests/Bridge/Eloquent/Persister/ModelPersisterTest.php b/tests/Bridge/Eloquent/Persister/ModelPersisterTest.php index 7a947dc6..ce4f6fc0 100644 --- a/tests/Bridge/Eloquent/Persister/ModelPersisterTest.php +++ b/tests/Bridge/Eloquent/Persister/ModelPersisterTest.php @@ -16,6 +16,8 @@ use Fidry\AliceDataFixtures\Bridge\Eloquent\Model\AnotherDummy; use Fidry\AliceDataFixtures\Bridge\Eloquent\Model\Dummy; use Fidry\AliceDataFixtures\Persistence\PersisterInterface; +use Illuminate\Database\Capsule\Manager; +use Illuminate\Database\Migrations\MigrationRepositoryInterface; use Illuminate\Database\Migrations\Migrator; use InvalidArgumentException; use PHPUnit\Framework\TestCase; @@ -31,14 +33,21 @@ */ class ModelPersisterTest extends TestCase { - private ModelPersister $persister; + private PersisterInterface $persister; private Migrator $migrator; public function setUp(): void { - $this->migrator = $GLOBALS['migrator']; - $this->persister = new ModelPersister($GLOBALS['manager']->getDatabaseManager()); + /** + * @var Manager $manager + * @var MigrationRepositoryInterface $repository + * @var Migrator $migrator + */ + [$manager, $repository, $migrator] = $GLOBALS['manager_repository_migrator_factory'](); + + $this->migrator = $migrator; + $this->persister = new ModelPersister($manager->getDatabaseManager()); } public function tearDown(): void diff --git a/tests/Bridge/Eloquent/Purger/ModelPurgerTest.php b/tests/Bridge/Eloquent/Purger/ModelPurgerTest.php index cadfc54e..e0fdfa9b 100644 --- a/tests/Bridge/Eloquent/Purger/ModelPurgerTest.php +++ b/tests/Bridge/Eloquent/Purger/ModelPurgerTest.php @@ -18,6 +18,7 @@ use Fidry\AliceDataFixtures\Persistence\PurgeMode; use Fidry\AliceDataFixtures\Persistence\PurgerFactoryInterface; use Fidry\AliceDataFixtures\Persistence\PurgerInterface; +use Illuminate\Database\Capsule\Manager; use Illuminate\Database\Migrations\MigrationRepositoryInterface; use Illuminate\Database\Migrations\Migrator; use InvalidArgumentException; @@ -122,9 +123,7 @@ public function testCanCreateANewPurger(): void public function testCannotCreateANewPurgerWithTruncateMode(): void { - $expectedExceptionMessage = 'Cannot purge database in truncate mode with ' - .'"Fidry\AliceDataFixtures\Bridge\Eloquent\Purger\ModelPurger" (not supported).' - ; + $expectedExceptionMessage = 'Cannot purge database in truncate mode with "Fidry\AliceDataFixtures\Bridge\Eloquent\Purger\ModelPurger" (not supported).'; $migratorProphecy = $this->prophesize(Migrator::class); $migratorProphecy->reset(Argument::cetera())->shouldNotBeCalled(); @@ -155,7 +154,14 @@ public function testCannotCreateANewPurgerWithTruncateMode(): void */ public function testEmptyDatabase(): void { - $purger = new ModelPurger($GLOBALS['repository'], 'migrations', $GLOBALS['migrator']); + /** + * @var Manager $manager + * @var MigrationRepositoryInterface $repository + * @var Migrator $migrator + */ + [$manager, $repository, $migrator] = $GLOBALS['manager_repository_migrator_factory'](); + + $purger = new ModelPurger($repository, 'migrations', $migrator); // Doing a purge here is just to make the test slightly more robust when being run multiple times // The real purge test is done at the next one $purger->purge(); @@ -165,7 +171,7 @@ public function testEmptyDatabase(): void ]); self::assertEquals(1, AnotherDummy::all()->count()); - $purger = new ModelPurger($GLOBALS['repository'], 'migrations', $GLOBALS['migrator']); + $purger = new ModelPurger($repository, 'migrations', $migrator); $purger->purge(); self::assertEquals(0, AnotherDummy::all()->count()); diff --git a/tests/Bridge/Eloquent/autoload.php b/tests/Bridge/Eloquent/autoload.php index 3f7942c5..bf82bd48 100644 --- a/tests/Bridge/Eloquent/autoload.php +++ b/tests/Bridge/Eloquent/autoload.php @@ -23,36 +23,38 @@ use Illuminate\Database\Migrations\Migrator; use Illuminate\Filesystem\Filesystem; -$manager = (static function (): Manager { - $manager = new Manager(); - $manager->addConnection(require ROOT.'/eloquent-db-settings.php'); - $manager->bootEloquent(); - $manager->setAsGlobal(); - - return $manager; -})(); - -$resolver = (static function (Manager $manager): ConnectionResolverInterface { - $resolver = new ConnectionResolver([ - 'default' => $manager->getConnection(), - ]); - $resolver->setDefaultConnection('default'); - - return $resolver; -})($manager); - -$repository = (static function (ConnectionResolverInterface $resolver): MigrationRepositoryInterface { - $repository = new DatabaseMigrationRepository($resolver, 'migrations'); - - if (false === $repository->repositoryExists()) { - $repository->createRepository(); - } - - return $repository; -})($resolver); - -$GLOBALS['manager'] = $manager; -$GLOBALS['resolver'] = $resolver; -$GLOBALS['repository'] = $repository; -$GLOBALS['file_system'] = new Filesystem(); -$GLOBALS['migrator'] = new Migrator($repository, $resolver, new Filesystem()); +$managerRepositoryMigratorFactory = static function () { + $manager = (static function (): Manager { + $manager = new Manager(); + $manager->addConnection(require ROOT.'/eloquent-db-settings.php'); + $manager->bootEloquent(); + $manager->setAsGlobal(); + + return $manager; + })(); + + $resolver = (static function (Manager $manager): ConnectionResolverInterface { + $resolver = new ConnectionResolver([ + 'default' => $manager->getConnection(), + ]); + $resolver->setDefaultConnection('default'); + + return $resolver; + })($manager); + + $repository = (static function (ConnectionResolverInterface $resolver): MigrationRepositoryInterface { + $repository = new DatabaseMigrationRepository($resolver, 'migrations'); + + if (false === $repository->repositoryExists()) { + $repository->createRepository(); + } + + return $repository; + })($resolver); + + $migrator = new Migrator($repository, $resolver, new Filesystem()); + + return [$manager, $repository, $migrator]; +}; + +$GLOBALS['manager_repository_migrator_factory'] = $managerRepositoryMigratorFactory; diff --git a/tests/Bridge/Symfony/Doctrine/PhpcrLoaderIntegrationTest.php b/tests/Bridge/Symfony/Doctrine/PhpcrLoaderIntegrationTest.php index 01b404e0..d634adaf 100644 --- a/tests/Bridge/Symfony/Doctrine/PhpcrLoaderIntegrationTest.php +++ b/tests/Bridge/Symfony/Doctrine/PhpcrLoaderIntegrationTest.php @@ -19,10 +19,10 @@ use Fidry\AliceDataFixtures\Bridge\Symfony\PhpCrDocument\Dummy; use Fidry\AliceDataFixtures\Bridge\Symfony\SymfonyApp\DoctrinePhpcrKernel; use Fidry\AliceDataFixtures\LoaderInterface; +use const PHP_VERSION_ID; use PHPUnit\Framework\TestCase; use function random_bytes; use Symfony\Component\HttpKernel\KernelInterface; -use const PHP_VERSION_ID; /** * @coversNothing diff --git a/vendor-bin/covers-validator/composer.lock b/vendor-bin/covers-validator/composer.lock index bba91263..915e8da1 100644 --- a/vendor-bin/covers-validator/composer.lock +++ b/vendor-bin/covers-validator/composer.lock @@ -136,16 +136,16 @@ }, { "name": "nikic/php-parser", - "version": "v4.13.0", + "version": "v4.13.2", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "50953a2691a922aa1769461637869a0a2faa3f53" + "reference": "210577fe3cf7badcc5814d99455df46564f3c077" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/50953a2691a922aa1769461637869a0a2faa3f53", - "reference": "50953a2691a922aa1769461637869a0a2faa3f53", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/210577fe3cf7badcc5814d99455df46564f3c077", + "reference": "210577fe3cf7badcc5814d99455df46564f3c077", "shasum": "" }, "require": { @@ -186,22 +186,22 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.13.0" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.13.2" }, - "time": "2021-09-20T12:20:58+00:00" + "time": "2021-11-30T19:35:32+00:00" }, { "name": "ockcyp/covers-validator", - "version": "v1.3.3", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/oradwell/covers-validator.git", - "reference": "4cbf1ce7a08746de6d226bc8f95b6900560470e1" + "reference": "baa65a8a4e8b42785b22c647cb1441db14cb9725" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/oradwell/covers-validator/zipball/4cbf1ce7a08746de6d226bc8f95b6900560470e1", - "reference": "4cbf1ce7a08746de6d226bc8f95b6900560470e1", + "url": "https://api.github.com/repos/oradwell/covers-validator/zipball/baa65a8a4e8b42785b22c647cb1441db14cb9725", + "reference": "baa65a8a4e8b42785b22c647cb1441db14cb9725", "shasum": "" }, "require": { @@ -234,11 +234,16 @@ } ], "description": "Validates @covers tags in PHPUnit tests", + "keywords": [ + "coverage", + "phpunit", + "testing" + ], "support": { "issues": "https://github.com/oradwell/covers-validator/issues", - "source": "https://github.com/oradwell/covers-validator/tree/v1.3.3" + "source": "https://github.com/oradwell/covers-validator/tree/v1.4.0" }, - "time": "2020-12-17T09:55:05+00:00" + "time": "2021-12-11T11:31:32+00:00" }, { "name": "phar-io/manifest", @@ -406,16 +411,16 @@ }, { "name": "phpdocumentor/reflection-docblock", - "version": "5.2.2", + "version": "5.3.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556" + "reference": "622548b623e81ca6d78b721c5e029f4ce664f170" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/069a785b2141f5bcf49f3e353548dc1cce6df556", - "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/622548b623e81ca6d78b721c5e029f4ce664f170", + "reference": "622548b623e81ca6d78b721c5e029f4ce664f170", "shasum": "" }, "require": { @@ -426,7 +431,8 @@ "webmozart/assert": "^1.9.1" }, "require-dev": { - "mockery/mockery": "~1.3.2" + "mockery/mockery": "~1.3.2", + "psalm/phar": "^4.8" }, "type": "library", "extra": { @@ -456,9 +462,9 @@ "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", "support": { "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues", - "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/master" + "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.3.0" }, - "time": "2020-09-03T19:13:55+00:00" + "time": "2021-10-19T17:43:47+00:00" }, { "name": "phpdocumentor/type-resolver", @@ -512,16 +518,16 @@ }, { "name": "phpspec/prophecy", - "version": "1.14.0", + "version": "v1.15.0", "source": { "type": "git", "url": "https://github.com/phpspec/prophecy.git", - "reference": "d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e" + "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e", - "reference": "d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e", + "url": "https://api.github.com/repos/phpspec/prophecy/zipball/bbcd7380b0ebf3961ee21409db7b38bc31d69a13", + "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13", "shasum": "" }, "require": { @@ -573,9 +579,9 @@ ], "support": { "issues": "https://github.com/phpspec/prophecy/issues", - "source": "https://github.com/phpspec/prophecy/tree/1.14.0" + "source": "https://github.com/phpspec/prophecy/tree/v1.15.0" }, - "time": "2021-09-10T09:02:12+00:00" + "time": "2021-12-08T12:19:24+00:00" }, { "name": "phpspec/prophecy-phpunit", @@ -631,23 +637,23 @@ }, { "name": "phpunit/php-code-coverage", - "version": "9.2.7", + "version": "9.2.10", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "d4c798ed8d51506800b441f7a13ecb0f76f12218" + "reference": "d5850aaf931743067f4bfc1ae4cbd06468400687" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/d4c798ed8d51506800b441f7a13ecb0f76f12218", - "reference": "d4c798ed8d51506800b441f7a13ecb0f76f12218", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/d5850aaf931743067f4bfc1ae4cbd06468400687", + "reference": "d5850aaf931743067f4bfc1ae4cbd06468400687", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^4.12.0", + "nikic/php-parser": "^4.13.0", "php": ">=7.3", "phpunit/php-file-iterator": "^3.0.3", "phpunit/php-text-template": "^2.0.2", @@ -696,7 +702,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.7" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.10" }, "funding": [ { @@ -704,20 +710,20 @@ "type": "github" } ], - "time": "2021-09-17T05:39:03+00:00" + "time": "2021-12-05T09:12:13+00:00" }, { "name": "phpunit/php-file-iterator", - "version": "3.0.5", + "version": "3.0.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "aa4be8575f26070b100fccb67faabb28f21f66f8" + "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/aa4be8575f26070b100fccb67faabb28f21f66f8", - "reference": "aa4be8575f26070b100fccb67faabb28f21f66f8", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", + "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", "shasum": "" }, "require": { @@ -756,7 +762,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", - "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.5" + "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.6" }, "funding": [ { @@ -764,7 +770,7 @@ "type": "github" } ], - "time": "2020-09-28T05:57:25+00:00" + "time": "2021-12-02T12:48:52+00:00" }, { "name": "phpunit/php-invoker", @@ -1052,20 +1058,20 @@ }, { "name": "psr/container", - "version": "1.1.1", + "version": "1.1.2", "source": { "type": "git", "url": "https://github.com/php-fig/container.git", - "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf" + "reference": "513e0666f7216c7459170d56df27dfcefe1689ea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf", - "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf", + "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea", + "reference": "513e0666f7216c7459170d56df27dfcefe1689ea", "shasum": "" }, "require": { - "php": ">=7.2.0" + "php": ">=7.4.0" }, "type": "library", "autoload": { @@ -1094,9 +1100,9 @@ ], "support": { "issues": "https://github.com/php-fig/container/issues", - "source": "https://github.com/php-fig/container/tree/1.1.1" + "source": "https://github.com/php-fig/container/tree/1.1.2" }, - "time": "2021-03-05T17:36:06+00:00" + "time": "2021-11-05T16:50:12+00:00" }, { "name": "sebastian/cli-parser", @@ -1527,16 +1533,16 @@ }, { "name": "sebastian/exporter", - "version": "4.0.3", + "version": "4.0.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65" + "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/d89cc98761b8cb5a1a235a6b703ae50d34080e65", - "reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/65e8b7db476c5dd267e65eea9cab77584d3cfff9", + "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9", "shasum": "" }, "require": { @@ -1585,14 +1591,14 @@ } ], "description": "Provides the functionality to export PHP variables for visualization", - "homepage": "http://www.github.com/sebastianbergmann/exporter", + "homepage": "https://www.github.com/sebastianbergmann/exporter", "keywords": [ "export", "exporter" ], "support": { "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.3" + "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.4" }, "funding": [ { @@ -1600,7 +1606,7 @@ "type": "github" } ], - "time": "2020-09-28T05:24:23+00:00" + "time": "2021-11-11T14:18:36+00:00" }, { "name": "sebastian/global-state", @@ -1951,7 +1957,6 @@ "type": "github" } ], - "abandoned": true, "time": "2020-09-28T06:45:17+00:00" }, { @@ -2065,26 +2070,26 @@ }, { "name": "symfony/console", - "version": "v5.3.7", + "version": "v5.4.1", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "8b1008344647462ae6ec57559da166c2bfa5e16a" + "reference": "9130e1a0fc93cb0faadca4ee917171bd2ca9e5f4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/8b1008344647462ae6ec57559da166c2bfa5e16a", - "reference": "8b1008344647462ae6ec57559da166c2bfa5e16a", + "url": "https://api.github.com/repos/symfony/console/zipball/9130e1a0fc93cb0faadca4ee917171bd2ca9e5f4", + "reference": "9130e1a0fc93cb0faadca4ee917171bd2ca9e5f4", "shasum": "" }, "require": { "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1", + "symfony/deprecation-contracts": "^2.1|^3", "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php73": "^1.8", + "symfony/polyfill-php73": "^1.9", "symfony/polyfill-php80": "^1.16", - "symfony/service-contracts": "^1.1|^2", - "symfony/string": "^5.1" + "symfony/service-contracts": "^1.1|^2|^3", + "symfony/string": "^5.1|^6.0" }, "conflict": { "psr/log": ">=3", @@ -2099,12 +2104,12 @@ }, "require-dev": { "psr/log": "^1|^2", - "symfony/config": "^4.4|^5.0", - "symfony/dependency-injection": "^4.4|^5.0", - "symfony/event-dispatcher": "^4.4|^5.0", - "symfony/lock": "^4.4|^5.0", - "symfony/process": "^4.4|^5.0", - "symfony/var-dumper": "^4.4|^5.0" + "symfony/config": "^4.4|^5.0|^6.0", + "symfony/dependency-injection": "^4.4|^5.0|^6.0", + "symfony/event-dispatcher": "^4.4|^5.0|^6.0", + "symfony/lock": "^4.4|^5.0|^6.0", + "symfony/process": "^4.4|^5.0|^6.0", + "symfony/var-dumper": "^4.4|^5.0|^6.0" }, "suggest": { "psr/log": "For using the console logger", @@ -2144,7 +2149,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.3.7" + "source": "https://github.com/symfony/console/tree/v5.4.1" }, "funding": [ { @@ -2160,20 +2165,20 @@ "type": "tidelift" } ], - "time": "2021-08-25T20:02:16+00:00" + "time": "2021-12-09T11:22:43+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v2.4.0", + "version": "v2.5.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "5f38c8804a9e97d23e0c8d63341088cd8a22d627" + "reference": "6f981ee24cf69ee7ce9736146d1c57c2780598a8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5f38c8804a9e97d23e0c8d63341088cd8a22d627", - "reference": "5f38c8804a9e97d23e0c8d63341088cd8a22d627", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/6f981ee24cf69ee7ce9736146d1c57c2780598a8", + "reference": "6f981ee24cf69ee7ce9736146d1c57c2780598a8", "shasum": "" }, "require": { @@ -2182,7 +2187,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.4-dev" + "dev-main": "2.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -2211,7 +2216,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v2.4.0" + "source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.0" }, "funding": [ { @@ -2227,7 +2232,7 @@ "type": "tidelift" } ], - "time": "2021-03-23T23:28:01+00:00" + "time": "2021-07-12T14:48:14+00:00" }, { "name": "symfony/polyfill-ctype", @@ -2717,21 +2722,25 @@ }, { "name": "symfony/service-contracts", - "version": "v2.4.0", + "version": "v2.5.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "f040a30e04b57fbcc9c6cbcf4dbaa96bd318b9bb" + "reference": "1ab11b933cd6bc5464b08e81e2c5b07dec58b0fc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/f040a30e04b57fbcc9c6cbcf4dbaa96bd318b9bb", - "reference": "f040a30e04b57fbcc9c6cbcf4dbaa96bd318b9bb", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/1ab11b933cd6bc5464b08e81e2c5b07dec58b0fc", + "reference": "1ab11b933cd6bc5464b08e81e2c5b07dec58b0fc", "shasum": "" }, "require": { "php": ">=7.2.5", - "psr/container": "^1.1" + "psr/container": "^1.1", + "symfony/deprecation-contracts": "^2.1" + }, + "conflict": { + "ext-psr": "<1.1|>=2" }, "suggest": { "symfony/service-implementation": "" @@ -2739,7 +2748,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.4-dev" + "dev-main": "2.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -2776,7 +2785,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v2.4.0" + "source": "https://github.com/symfony/service-contracts/tree/v2.5.0" }, "funding": [ { @@ -2792,20 +2801,20 @@ "type": "tidelift" } ], - "time": "2021-04-01T10:43:52+00:00" + "time": "2021-11-04T16:48:04+00:00" }, { "name": "symfony/string", - "version": "v5.3.7", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "8d224396e28d30f81969f083a58763b8b9ceb0a5" + "reference": "9ffaaba53c61ba75a3c7a3a779051d1e9ec4fd2d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/8d224396e28d30f81969f083a58763b8b9ceb0a5", - "reference": "8d224396e28d30f81969f083a58763b8b9ceb0a5", + "url": "https://api.github.com/repos/symfony/string/zipball/9ffaaba53c61ba75a3c7a3a779051d1e9ec4fd2d", + "reference": "9ffaaba53c61ba75a3c7a3a779051d1e9ec4fd2d", "shasum": "" }, "require": { @@ -2816,11 +2825,14 @@ "symfony/polyfill-mbstring": "~1.0", "symfony/polyfill-php80": "~1.15" }, + "conflict": { + "symfony/translation-contracts": ">=3.0" + }, "require-dev": { - "symfony/error-handler": "^4.4|^5.0", - "symfony/http-client": "^4.4|^5.0", + "symfony/error-handler": "^4.4|^5.0|^6.0", + "symfony/http-client": "^4.4|^5.0|^6.0", "symfony/translation-contracts": "^1.1|^2", - "symfony/var-exporter": "^4.4|^5.0" + "symfony/var-exporter": "^4.4|^5.0|^6.0" }, "type": "library", "autoload": { @@ -2859,7 +2871,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.3.7" + "source": "https://github.com/symfony/string/tree/v5.4.0" }, "funding": [ { @@ -2875,7 +2887,7 @@ "type": "tidelift" } ], - "time": "2021-08-26T08:00:08+00:00" + "time": "2021-11-24T10:02:00+00:00" }, { "name": "theseer/tokenizer", diff --git a/vendor-bin/doctrine/composer.json b/vendor-bin/doctrine/composer.json index 2a1ce7cf..71b4032b 100644 --- a/vendor-bin/doctrine/composer.json +++ b/vendor-bin/doctrine/composer.json @@ -8,6 +8,6 @@ }, "config": { "bin-dir": "bin", - "sort-packages": true + "sort-packagces": true } } diff --git a/vendor-bin/php-cs-fixer/composer.lock b/vendor-bin/php-cs-fixer/composer.lock index afe36b31..422146e3 100644 --- a/vendor-bin/php-cs-fixer/composer.lock +++ b/vendor-bin/php-cs-fixer/composer.lock @@ -7,18 +7,89 @@ "content-hash": "afbb2dec878898133753608e8bcea93e", "packages": [], "packages-dev": [ + { + "name": "composer/pcre", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/composer/pcre.git", + "reference": "3d322d715c43a1ac36c7fe215fa59336265500f2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/pcre/zipball/3d322d715c43a1ac36c7fe215fa59336265500f2", + "reference": "3d322d715c43a1ac36c7fe215fa59336265500f2", + "shasum": "" + }, + "require": { + "php": "^5.3.2 || ^7.0 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^1", + "phpstan/phpstan-strict-rules": "^1.1", + "symfony/phpunit-bridge": "^4.2 || ^5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Composer\\Pcre\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" + } + ], + "description": "PCRE wrapping library that offers type-safe preg_* replacements.", + "keywords": [ + "PCRE", + "preg", + "regex", + "regular expression" + ], + "support": { + "issues": "https://github.com/composer/pcre/issues", + "source": "https://github.com/composer/pcre/tree/1.0.0" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "time": "2021-12-06T15:17:27+00:00" + }, { "name": "composer/semver", - "version": "3.2.5", + "version": "3.2.6", "source": { "type": "git", "url": "https://github.com/composer/semver.git", - "reference": "31f3ea725711245195f62e54ffa402d8ef2fdba9" + "reference": "83e511e247de329283478496f7a1e114c9517506" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/semver/zipball/31f3ea725711245195f62e54ffa402d8ef2fdba9", - "reference": "31f3ea725711245195f62e54ffa402d8ef2fdba9", + "url": "https://api.github.com/repos/composer/semver/zipball/83e511e247de329283478496f7a1e114c9517506", + "reference": "83e511e247de329283478496f7a1e114c9517506", "shasum": "" }, "require": { @@ -70,7 +141,7 @@ "support": { "irc": "irc://irc.freenode.org/composer", "issues": "https://github.com/composer/semver/issues", - "source": "https://github.com/composer/semver/tree/3.2.5" + "source": "https://github.com/composer/semver/tree/3.2.6" }, "funding": [ { @@ -86,29 +157,31 @@ "type": "tidelift" } ], - "time": "2021-05-24T12:41:47+00:00" + "time": "2021-10-25T11:34:17+00:00" }, { "name": "composer/xdebug-handler", - "version": "2.0.2", + "version": "2.0.3", "source": { "type": "git", "url": "https://github.com/composer/xdebug-handler.git", - "reference": "84674dd3a7575ba617f5a76d7e9e29a7d3891339" + "reference": "6555461e76962fd0379c444c46fd558a0fcfb65e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/84674dd3a7575ba617f5a76d7e9e29a7d3891339", - "reference": "84674dd3a7575ba617f5a76d7e9e29a7d3891339", + "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/6555461e76962fd0379c444c46fd558a0fcfb65e", + "reference": "6555461e76962fd0379c444c46fd558a0fcfb65e", "shasum": "" }, "require": { + "composer/pcre": "^1", "php": "^5.3.2 || ^7.0 || ^8.0", "psr/log": "^1 || ^2 || ^3" }, "require-dev": { - "phpstan/phpstan": "^0.12.55", - "symfony/phpunit-bridge": "^4.2 || ^5" + "phpstan/phpstan": "^1.0", + "phpstan/phpstan-strict-rules": "^1.1", + "symfony/phpunit-bridge": "^4.2 || ^5.0 || ^6.0" }, "type": "library", "autoload": { @@ -134,7 +207,7 @@ "support": { "irc": "irc://irc.freenode.org/composer", "issues": "https://github.com/composer/xdebug-handler/issues", - "source": "https://github.com/composer/xdebug-handler/tree/2.0.2" + "source": "https://github.com/composer/xdebug-handler/tree/2.0.3" }, "funding": [ { @@ -150,7 +223,7 @@ "type": "tidelift" } ], - "time": "2021-07-31T17:03:58+00:00" + "time": "2021-12-08T13:07:32+00:00" }, { "name": "doctrine/annotations", @@ -306,16 +379,16 @@ }, { "name": "friendsofphp/php-cs-fixer", - "version": "v3.2.1", + "version": "v3.4.0", "source": { "type": "git", "url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git", - "reference": "13ae36a76b6e329e44ca3cafaa784ea02db9ff14" + "reference": "47177af1cfb9dab5d1cc4daf91b7179c2efe7fad" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/13ae36a76b6e329e44ca3cafaa784ea02db9ff14", - "reference": "13ae36a76b6e329e44ca3cafaa784ea02db9ff14", + "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/47177af1cfb9dab5d1cc4daf91b7179c2efe7fad", + "reference": "47177af1cfb9dab5d1cc4daf91b7179c2efe7fad", "shasum": "" }, "require": { @@ -324,39 +397,38 @@ "doctrine/annotations": "^1.12", "ext-json": "*", "ext-tokenizer": "*", - "php": "^7.2 || ^8.0", + "php": "^7.2.5 || ^8.0", "php-cs-fixer/diff": "^2.0", - "symfony/console": "^4.4.20 || ^5.1.3", - "symfony/event-dispatcher": "^4.4.20 || ^5.0", - "symfony/filesystem": "^4.4.20 || ^5.0", - "symfony/finder": "^4.4.20 || ^5.0", - "symfony/options-resolver": "^4.4.20 || ^5.0", - "symfony/polyfill-php72": "^1.23", + "symfony/console": "^4.4.20 || ^5.1.3 || ^6.0", + "symfony/event-dispatcher": "^4.4.20 || ^5.0 || ^6.0", + "symfony/filesystem": "^4.4.20 || ^5.0 || ^6.0", + "symfony/finder": "^4.4.20 || ^5.0 || ^6.0", + "symfony/options-resolver": "^4.4.20 || ^5.0 || ^6.0", + "symfony/polyfill-mbstring": "^1.23", "symfony/polyfill-php80": "^1.23", "symfony/polyfill-php81": "^1.23", - "symfony/process": "^4.4.20 || ^5.0", - "symfony/stopwatch": "^4.4.20 || ^5.0" + "symfony/process": "^4.4.20 || ^5.0 || ^6.0", + "symfony/stopwatch": "^4.4.20 || ^5.0 || ^6.0" }, "require-dev": { "justinrainbow/json-schema": "^5.2", "keradus/cli-executor": "^1.5", "mikey179/vfsstream": "^1.6.8", - "php-coveralls/php-coveralls": "^2.4.3", + "php-coveralls/php-coveralls": "^2.5.2", "php-cs-fixer/accessible-object": "^1.1", "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.2", "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.2.1", - "phpspec/prophecy": "^1.10.3", + "phpspec/prophecy": "^1.15", "phpspec/prophecy-phpunit": "^1.1 || ^2.0", - "phpunit/phpunit": "^7.5.20 || ^8.5.14 || ^9.5", + "phpunit/phpunit": "^8.5.21 || ^9.5", "phpunitgoodpractices/polyfill": "^1.5", "phpunitgoodpractices/traits": "^1.9.1", - "symfony/phpunit-bridge": "^5.2.4", - "symfony/yaml": "^4.4.20 || ^5.0" + "symfony/phpunit-bridge": "^5.2.4 || ^6.0", + "symfony/yaml": "^4.4.20 || ^5.0 || ^6.0" }, "suggest": { "ext-dom": "For handling output formats in XML", - "ext-mbstring": "For handling non-UTF8 characters.", - "symfony/polyfill-mbstring": "When enabling `ext-mbstring` is not possible." + "ext-mbstring": "For handling non-UTF8 characters." }, "bin": [ "php-cs-fixer" @@ -384,7 +456,7 @@ "description": "A tool to automatically fix PHP code style", "support": { "issues": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/issues", - "source": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/tree/v3.2.1" + "source": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/tree/v3.4.0" }, "funding": [ { @@ -392,7 +464,7 @@ "type": "github" } ], - "time": "2021-10-05T08:12:17+00:00" + "time": "2021-12-11T16:25:08+00:00" }, { "name": "php-cs-fixer/diff", @@ -497,20 +569,20 @@ }, { "name": "psr/container", - "version": "1.1.1", + "version": "1.1.2", "source": { "type": "git", "url": "https://github.com/php-fig/container.git", - "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf" + "reference": "513e0666f7216c7459170d56df27dfcefe1689ea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf", - "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf", + "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea", + "reference": "513e0666f7216c7459170d56df27dfcefe1689ea", "shasum": "" }, "require": { - "php": ">=7.2.0" + "php": ">=7.4.0" }, "type": "library", "autoload": { @@ -539,9 +611,9 @@ ], "support": { "issues": "https://github.com/php-fig/container/issues", - "source": "https://github.com/php-fig/container/tree/1.1.1" + "source": "https://github.com/php-fig/container/tree/1.1.2" }, - "time": "2021-03-05T17:36:06+00:00" + "time": "2021-11-05T16:50:12+00:00" }, { "name": "psr/event-dispatcher", @@ -645,26 +717,26 @@ }, { "name": "symfony/console", - "version": "v5.3.7", + "version": "v5.4.1", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "8b1008344647462ae6ec57559da166c2bfa5e16a" + "reference": "9130e1a0fc93cb0faadca4ee917171bd2ca9e5f4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/8b1008344647462ae6ec57559da166c2bfa5e16a", - "reference": "8b1008344647462ae6ec57559da166c2bfa5e16a", + "url": "https://api.github.com/repos/symfony/console/zipball/9130e1a0fc93cb0faadca4ee917171bd2ca9e5f4", + "reference": "9130e1a0fc93cb0faadca4ee917171bd2ca9e5f4", "shasum": "" }, "require": { "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1", + "symfony/deprecation-contracts": "^2.1|^3", "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php73": "^1.8", + "symfony/polyfill-php73": "^1.9", "symfony/polyfill-php80": "^1.16", - "symfony/service-contracts": "^1.1|^2", - "symfony/string": "^5.1" + "symfony/service-contracts": "^1.1|^2|^3", + "symfony/string": "^5.1|^6.0" }, "conflict": { "psr/log": ">=3", @@ -679,12 +751,12 @@ }, "require-dev": { "psr/log": "^1|^2", - "symfony/config": "^4.4|^5.0", - "symfony/dependency-injection": "^4.4|^5.0", - "symfony/event-dispatcher": "^4.4|^5.0", - "symfony/lock": "^4.4|^5.0", - "symfony/process": "^4.4|^5.0", - "symfony/var-dumper": "^4.4|^5.0" + "symfony/config": "^4.4|^5.0|^6.0", + "symfony/dependency-injection": "^4.4|^5.0|^6.0", + "symfony/event-dispatcher": "^4.4|^5.0|^6.0", + "symfony/lock": "^4.4|^5.0|^6.0", + "symfony/process": "^4.4|^5.0|^6.0", + "symfony/var-dumper": "^4.4|^5.0|^6.0" }, "suggest": { "psr/log": "For using the console logger", @@ -724,7 +796,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.3.7" + "source": "https://github.com/symfony/console/tree/v5.4.1" }, "funding": [ { @@ -740,20 +812,20 @@ "type": "tidelift" } ], - "time": "2021-08-25T20:02:16+00:00" + "time": "2021-12-09T11:22:43+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v2.4.0", + "version": "v2.5.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "5f38c8804a9e97d23e0c8d63341088cd8a22d627" + "reference": "6f981ee24cf69ee7ce9736146d1c57c2780598a8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5f38c8804a9e97d23e0c8d63341088cd8a22d627", - "reference": "5f38c8804a9e97d23e0c8d63341088cd8a22d627", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/6f981ee24cf69ee7ce9736146d1c57c2780598a8", + "reference": "6f981ee24cf69ee7ce9736146d1c57c2780598a8", "shasum": "" }, "require": { @@ -762,7 +834,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.4-dev" + "dev-main": "2.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -791,7 +863,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v2.4.0" + "source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.0" }, "funding": [ { @@ -807,26 +879,26 @@ "type": "tidelift" } ], - "time": "2021-03-23T23:28:01+00:00" + "time": "2021-07-12T14:48:14+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v5.3.7", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "ce7b20d69c66a20939d8952b617506a44d102130" + "reference": "27d39ae126352b9fa3be5e196ccf4617897be3eb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/ce7b20d69c66a20939d8952b617506a44d102130", - "reference": "ce7b20d69c66a20939d8952b617506a44d102130", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/27d39ae126352b9fa3be5e196ccf4617897be3eb", + "reference": "27d39ae126352b9fa3be5e196ccf4617897be3eb", "shasum": "" }, "require": { "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1", - "symfony/event-dispatcher-contracts": "^2", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/event-dispatcher-contracts": "^2|^3", "symfony/polyfill-php80": "^1.16" }, "conflict": { @@ -838,13 +910,13 @@ }, "require-dev": { "psr/log": "^1|^2|^3", - "symfony/config": "^4.4|^5.0", - "symfony/dependency-injection": "^4.4|^5.0", - "symfony/error-handler": "^4.4|^5.0", - "symfony/expression-language": "^4.4|^5.0", - "symfony/http-foundation": "^4.4|^5.0", - "symfony/service-contracts": "^1.1|^2", - "symfony/stopwatch": "^4.4|^5.0" + "symfony/config": "^4.4|^5.0|^6.0", + "symfony/dependency-injection": "^4.4|^5.0|^6.0", + "symfony/error-handler": "^4.4|^5.0|^6.0", + "symfony/expression-language": "^4.4|^5.0|^6.0", + "symfony/http-foundation": "^4.4|^5.0|^6.0", + "symfony/service-contracts": "^1.1|^2|^3", + "symfony/stopwatch": "^4.4|^5.0|^6.0" }, "suggest": { "symfony/dependency-injection": "", @@ -876,7 +948,7 @@ "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v5.3.7" + "source": "https://github.com/symfony/event-dispatcher/tree/v5.4.0" }, "funding": [ { @@ -892,20 +964,20 @@ "type": "tidelift" } ], - "time": "2021-08-04T21:20:46+00:00" + "time": "2021-11-23T10:19:22+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v2.4.0", + "version": "v2.5.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "69fee1ad2332a7cbab3aca13591953da9cdb7a11" + "reference": "66bea3b09be61613cd3b4043a65a8ec48cfa6d2a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/69fee1ad2332a7cbab3aca13591953da9cdb7a11", - "reference": "69fee1ad2332a7cbab3aca13591953da9cdb7a11", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/66bea3b09be61613cd3b4043a65a8ec48cfa6d2a", + "reference": "66bea3b09be61613cd3b4043a65a8ec48cfa6d2a", "shasum": "" }, "require": { @@ -918,7 +990,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.4-dev" + "dev-main": "2.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -955,7 +1027,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v2.4.0" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v2.5.0" }, "funding": [ { @@ -971,25 +1043,26 @@ "type": "tidelift" } ], - "time": "2021-03-23T23:28:01+00:00" + "time": "2021-07-12T14:48:14+00:00" }, { "name": "symfony/filesystem", - "version": "v5.3.4", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "343f4fe324383ca46792cae728a3b6e2f708fb32" + "reference": "731f917dc31edcffec2c6a777f3698c33bea8f01" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/343f4fe324383ca46792cae728a3b6e2f708fb32", - "reference": "343f4fe324383ca46792cae728a3b6e2f708fb32", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/731f917dc31edcffec2c6a777f3698c33bea8f01", + "reference": "731f917dc31edcffec2c6a777f3698c33bea8f01", "shasum": "" }, "require": { "php": ">=7.2.5", "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-mbstring": "~1.8", "symfony/polyfill-php80": "^1.16" }, "type": "library", @@ -1018,7 +1091,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.3.4" + "source": "https://github.com/symfony/filesystem/tree/v5.4.0" }, "funding": [ { @@ -1034,24 +1107,25 @@ "type": "tidelift" } ], - "time": "2021-07-21T12:40:44+00:00" + "time": "2021-10-28T13:39:27+00:00" }, { "name": "symfony/finder", - "version": "v5.3.7", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "a10000ada1e600d109a6c7632e9ac42e8bf2fb93" + "reference": "d2f29dac98e96a98be467627bd49c2efb1bc2590" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/a10000ada1e600d109a6c7632e9ac42e8bf2fb93", - "reference": "a10000ada1e600d109a6c7632e9ac42e8bf2fb93", + "url": "https://api.github.com/repos/symfony/finder/zipball/d2f29dac98e96a98be467627bd49c2efb1bc2590", + "reference": "d2f29dac98e96a98be467627bd49c2efb1bc2590", "shasum": "" }, "require": { "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1|^3", "symfony/polyfill-php80": "^1.16" }, "type": "library", @@ -1080,7 +1154,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v5.3.7" + "source": "https://github.com/symfony/finder/tree/v5.4.0" }, "funding": [ { @@ -1096,25 +1170,25 @@ "type": "tidelift" } ], - "time": "2021-08-04T21:20:46+00:00" + "time": "2021-11-28T15:25:38+00:00" }, { "name": "symfony/options-resolver", - "version": "v5.3.7", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "4b78e55b179003a42523a362cc0e8327f7a69b5e" + "reference": "b0fb78576487af19c500aaddb269fd36701d4847" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/4b78e55b179003a42523a362cc0e8327f7a69b5e", - "reference": "4b78e55b179003a42523a362cc0e8327f7a69b5e", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/b0fb78576487af19c500aaddb269fd36701d4847", + "reference": "b0fb78576487af19c500aaddb269fd36701d4847", "shasum": "" }, "require": { "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1", + "symfony/deprecation-contracts": "^2.1|^3", "symfony/polyfill-php73": "~1.0", "symfony/polyfill-php80": "^1.16" }, @@ -1149,7 +1223,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v5.3.7" + "source": "https://github.com/symfony/options-resolver/tree/v5.4.0" }, "funding": [ { @@ -1165,7 +1239,7 @@ "type": "tidelift" } ], - "time": "2021-08-04T21:20:46+00:00" + "time": "2021-11-23T10:19:22+00:00" }, { "name": "symfony/polyfill-ctype", @@ -1491,82 +1565,6 @@ ], "time": "2021-05-27T12:26:48+00:00" }, - { - "name": "symfony/polyfill-php72", - "version": "v1.23.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php72.git", - "reference": "9a142215a36a3888e30d0a9eeea9766764e96976" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/9a142215a36a3888e30d0a9eeea9766764e96976", - "reference": "9a142215a36a3888e30d0a9eeea9766764e96976", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.23-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php72\\": "" - }, - "files": [ - "bootstrap.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php72/tree/v1.23.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2021-05-27T09:17:38+00:00" - }, { "name": "symfony/polyfill-php73", "version": "v1.23.0", @@ -1810,16 +1808,16 @@ }, { "name": "symfony/process", - "version": "v5.3.7", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "38f26c7d6ed535217ea393e05634cb0b244a1967" + "reference": "5be20b3830f726e019162b26223110c8f47cf274" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/38f26c7d6ed535217ea393e05634cb0b244a1967", - "reference": "38f26c7d6ed535217ea393e05634cb0b244a1967", + "url": "https://api.github.com/repos/symfony/process/zipball/5be20b3830f726e019162b26223110c8f47cf274", + "reference": "5be20b3830f726e019162b26223110c8f47cf274", "shasum": "" }, "require": { @@ -1852,7 +1850,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.3.7" + "source": "https://github.com/symfony/process/tree/v5.4.0" }, "funding": [ { @@ -1868,25 +1866,29 @@ "type": "tidelift" } ], - "time": "2021-08-04T21:20:46+00:00" + "time": "2021-11-28T15:25:38+00:00" }, { "name": "symfony/service-contracts", - "version": "v2.4.0", + "version": "v2.5.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "f040a30e04b57fbcc9c6cbcf4dbaa96bd318b9bb" + "reference": "1ab11b933cd6bc5464b08e81e2c5b07dec58b0fc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/f040a30e04b57fbcc9c6cbcf4dbaa96bd318b9bb", - "reference": "f040a30e04b57fbcc9c6cbcf4dbaa96bd318b9bb", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/1ab11b933cd6bc5464b08e81e2c5b07dec58b0fc", + "reference": "1ab11b933cd6bc5464b08e81e2c5b07dec58b0fc", "shasum": "" }, "require": { "php": ">=7.2.5", - "psr/container": "^1.1" + "psr/container": "^1.1", + "symfony/deprecation-contracts": "^2.1" + }, + "conflict": { + "ext-psr": "<1.1|>=2" }, "suggest": { "symfony/service-implementation": "" @@ -1894,7 +1896,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.4-dev" + "dev-main": "2.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -1931,7 +1933,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v2.4.0" + "source": "https://github.com/symfony/service-contracts/tree/v2.5.0" }, "funding": [ { @@ -1947,25 +1949,25 @@ "type": "tidelift" } ], - "time": "2021-04-01T10:43:52+00:00" + "time": "2021-11-04T16:48:04+00:00" }, { "name": "symfony/stopwatch", - "version": "v5.3.4", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "b24c6a92c6db316fee69e38c80591e080e41536c" + "reference": "208ef96122bfed82a8f3a61458a07113a08bdcfe" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/b24c6a92c6db316fee69e38c80591e080e41536c", - "reference": "b24c6a92c6db316fee69e38c80591e080e41536c", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/208ef96122bfed82a8f3a61458a07113a08bdcfe", + "reference": "208ef96122bfed82a8f3a61458a07113a08bdcfe", "shasum": "" }, "require": { "php": ">=7.2.5", - "symfony/service-contracts": "^1.0|^2" + "symfony/service-contracts": "^1|^2|^3" }, "type": "library", "autoload": { @@ -1993,7 +1995,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v5.3.4" + "source": "https://github.com/symfony/stopwatch/tree/v5.4.0" }, "funding": [ { @@ -2009,20 +2011,20 @@ "type": "tidelift" } ], - "time": "2021-07-10T08:58:57+00:00" + "time": "2021-11-23T10:19:22+00:00" }, { "name": "symfony/string", - "version": "v5.3.7", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "8d224396e28d30f81969f083a58763b8b9ceb0a5" + "reference": "9ffaaba53c61ba75a3c7a3a779051d1e9ec4fd2d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/8d224396e28d30f81969f083a58763b8b9ceb0a5", - "reference": "8d224396e28d30f81969f083a58763b8b9ceb0a5", + "url": "https://api.github.com/repos/symfony/string/zipball/9ffaaba53c61ba75a3c7a3a779051d1e9ec4fd2d", + "reference": "9ffaaba53c61ba75a3c7a3a779051d1e9ec4fd2d", "shasum": "" }, "require": { @@ -2033,11 +2035,14 @@ "symfony/polyfill-mbstring": "~1.0", "symfony/polyfill-php80": "~1.15" }, + "conflict": { + "symfony/translation-contracts": ">=3.0" + }, "require-dev": { - "symfony/error-handler": "^4.4|^5.0", - "symfony/http-client": "^4.4|^5.0", + "symfony/error-handler": "^4.4|^5.0|^6.0", + "symfony/http-client": "^4.4|^5.0|^6.0", "symfony/translation-contracts": "^1.1|^2", - "symfony/var-exporter": "^4.4|^5.0" + "symfony/var-exporter": "^4.4|^5.0|^6.0" }, "type": "library", "autoload": { @@ -2076,7 +2081,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.3.7" + "source": "https://github.com/symfony/string/tree/v5.4.0" }, "funding": [ { @@ -2092,7 +2097,7 @@ "type": "tidelift" } ], - "time": "2021-08-26T08:00:08+00:00" + "time": "2021-11-24T10:02:00+00:00" } ], "aliases": [],