diff --git a/.castor/qa.php b/.castor/qa.php
index 7dd1404..07cbcf2 100644
--- a/.castor/qa.php
+++ b/.castor/qa.php
@@ -48,13 +48,13 @@ function update(): void
#[AsTask(description: 'Runs PHPUnit', aliases: ['phpunit'])]
function phpunit(#[AsRawTokens] array $rawTokens = []): int
{
- if (!is_file(variable('root_dir') . '/bin/phpunit')) {
+ if (!is_file(variable('root_dir') . '/vendor/bin/phpunit')) {
return 0;
}
io()->section('Running PHPUnit...');
- return docker_exit_code('bin/phpunit ' . implode(' ', $rawTokens));
+ return docker_exit_code('vendor/bin/phpunit ' . implode(' ', $rawTokens));
}
#[AsTask(description: 'Runs PHPStan', aliases: ['phpstan'])]
diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 0000000..6699076
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,17 @@
+# editorconfig.org
+
+root = true
+
+[*]
+charset = utf-8
+end_of_line = lf
+indent_size = 4
+indent_style = space
+insert_final_newline = true
+trim_trailing_whitespace = true
+
+[{compose.yaml,compose.*.yaml}]
+indent_size = 2
+
+[*.md]
+trim_trailing_whitespace = false
diff --git a/.env b/.env
index ffa3ca2..f1b6a66 100644
--- a/.env
+++ b/.env
@@ -16,18 +16,26 @@
###> symfony/framework-bundle ###
APP_ENV=dev
-APP_SECRET=870686bf53a35819535f3c8158327e28
+APP_SECRET=
+APP_SHARE_DIR=var/share
###< symfony/framework-bundle ###
###> doctrine/doctrine-bundle ###
# Format described at https://www.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/configuration.html#connecting-using-a-url
# IMPORTANT: You MUST configure your server version, either here or in config/packages/doctrine.yaml
#
-# DATABASE_URL="sqlite:///%kernel.project_dir%/var/data.db"
-# DATABASE_URL="mysql://app:!ChangeMe!@127.0.0.1:3306/app?serverVersion=8&charset=utf8mb4"
-DATABASE_URL="postgresql://app:app@postgres:5432/app?serverVersion=14&charset=utf8"
+# DATABASE_URL="sqlite:///%kernel.project_dir%/var/data_%kernel.environment%.db"
+# DATABASE_URL="mysql://app:!ChangeMe!@127.0.0.1:3306/app?serverVersion=8.0.32&charset=utf8mb4"
+# DATABASE_URL="mysql://app:!ChangeMe!@127.0.0.1:3306/app?serverVersion=10.11.2-MariaDB&charset=utf8mb4"
+DATABASE_URL="postgresql://app:app@postgres:5432/app?serverVersion=16&charset=utf8"
###< doctrine/doctrine-bundle ###
+###> symfony/routing ###
+# Configure how to generate URLs in non-HTTP contexts, such as CLI commands.
+# See https://symfony.com/doc/current/routing.html#generating-urls-in-commands
+DEFAULT_URI=http://localhost
+###< symfony/routing ###
+
TIMEZONE=Europe/Paris
SLACK_CHANNEL=FIXME
diff --git a/.env.dev b/.env.dev
new file mode 100644
index 0000000..6b3e5cd
--- /dev/null
+++ b/.env.dev
@@ -0,0 +1,4 @@
+
+###> symfony/framework-bundle ###
+APP_SECRET=18491e180aaaa3d37c87ac8bb089d260
+###< symfony/framework-bundle ###
diff --git a/.gitignore b/.gitignore
index d457d1f..f649d06 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,11 +9,10 @@
/vendor/
###< symfony/framework-bundle ###
-###> symfony/phpunit-bridge ###
-.phpunit
-.phpunit.result.cache
+###> phpunit/phpunit ###
/phpunit.xml
-###< symfony/phpunit-bridge ###
+/.phpunit.cache/
+###< phpunit/phpunit ###
###> friendsofphp/php-cs-fixer ###
/.php-cs-fixer.cache
@@ -27,3 +26,4 @@
###< infrastructure ###
.twig-cs-fixer.cache
+
diff --git a/bin/console b/bin/console
index 8fe9d49..d8d530e 100755
--- a/bin/console
+++ b/bin/console
@@ -3,41 +3,19 @@
use App\Kernel;
use Symfony\Bundle\FrameworkBundle\Console\Application;
-use Symfony\Component\Console\Input\ArgvInput;
-use Symfony\Component\Dotenv\Dotenv;
-use Symfony\Component\ErrorHandler\Debug;
-if (!in_array(PHP_SAPI, ['cli', 'phpdbg', 'embed'], true)) {
- echo 'Warning: The console should be invoked via the CLI version of PHP, not the '.PHP_SAPI.' SAPI'.PHP_EOL;
+if (!is_dir(dirname(__DIR__).'/vendor')) {
+ throw new LogicException('Dependencies are missing. Try running "composer install".');
}
-set_time_limit(0);
-
-require dirname(__DIR__).'/vendor/autoload.php';
-
-if (!class_exists(Application::class) || !class_exists(Dotenv::class)) {
- throw new LogicException('You need to add "symfony/framework-bundle" and "symfony/dotenv" as Composer dependencies.');
-}
-
-$input = new ArgvInput();
-if (null !== $env = $input->getParameterOption(['--env', '-e'], null, true)) {
- putenv('APP_ENV='.$_SERVER['APP_ENV'] = $_ENV['APP_ENV'] = $env);
+if (!is_file(dirname(__DIR__).'/vendor/autoload_runtime.php')) {
+ throw new LogicException('Symfony Runtime is missing. Try running "composer require symfony/runtime".');
}
-if ($input->hasParameterOption('--no-debug', true)) {
- putenv('APP_DEBUG='.$_SERVER['APP_DEBUG'] = $_ENV['APP_DEBUG'] = '0');
-}
-
-(new Dotenv())->bootEnv(dirname(__DIR__).'/.env');
+require_once dirname(__DIR__).'/vendor/autoload_runtime.php';
-if ($_SERVER['APP_DEBUG']) {
- umask(0000);
-
- if (class_exists(Debug::class)) {
- Debug::enable();
- }
-}
+return function (array $context) {
+ $kernel = new Kernel($context['APP_ENV'], (bool) $context['APP_DEBUG']);
-$kernel = new Kernel($_SERVER['APP_ENV'], (bool) $_SERVER['APP_DEBUG']);
-$application = new Application($kernel);
-$application->run($input);
+ return new Application($kernel);
+};
diff --git a/bin/phpunit b/bin/phpunit
deleted file mode 100755
index 4d1ed05..0000000
--- a/bin/phpunit
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/usr/bin/env php
-=8.3",
+ "php": ">=8.5",
"ext-ctype": "*",
"ext-iconv": "*",
- "doctrine/doctrine-bundle": "^2.18.2",
- "doctrine/doctrine-migrations-bundle": "^3.7.0",
+ "doctrine/doctrine-bundle": "^3",
+ "doctrine/doctrine-migrations-bundle": "^4",
"doctrine/orm": "^3.6.7",
- "symfony/console": "^7.4.13",
- "symfony/dotenv": "^7.4.11",
+ "symfony/console": "^8.1",
+ "symfony/dotenv": "^8.1",
"symfony/flex": "^2.10.0",
- "symfony/framework-bundle": "^7.4.13",
- "symfony/http-client": "^7.4.13",
+ "symfony/framework-bundle": "^8.1",
+ "symfony/http-client": "^8.1",
"symfony/monolog-bundle": "^4.0.2",
- "symfony/runtime": "^7.4.13",
- "symfony/security-bundle": "^7.4.13",
- "symfony/twig-bundle": "^7.4.8",
- "symfony/yaml": "^7.4.13"
+ "symfony/runtime": "^8.1",
+ "symfony/security-bundle": "^8.1",
+ "symfony/twig-bundle": "^8.1",
+ "symfony/yaml": "^8.1"
},
"require-dev": {
- "symfony/browser-kit": "^7.4.8",
- "symfony/css-selector": "^7.4.9",
- "symfony/debug-bundle": "^7.4.8",
+ "phpunit/phpunit": "^13.1",
+ "symfony/browser-kit": "^8.1",
+ "symfony/css-selector": "^8.1",
+ "symfony/debug-bundle": "^8.1",
"symfony/maker-bundle": "^1.67",
- "symfony/phpunit-bridge": "^8.0.8",
- "symfony/stopwatch": "^7.4.8",
- "symfony/web-profiler-bundle": "^7.4.13"
+ "symfony/stopwatch": "^8.1",
+ "symfony/web-profiler-bundle": "^8.1"
},
"replace": {
"paragonie/random_compat": "2.*",
"symfony/polyfill-ctype": "*",
"symfony/polyfill-iconv": "*",
- "symfony/polyfill-php82": "*",
- "symfony/polyfill-php81": "*",
- "symfony/polyfill-php80": "*",
- "symfony/polyfill-php74": "*",
- "symfony/polyfill-php73": "*",
- "symfony/polyfill-php72": "*",
- "symfony/polyfill-php71": "*",
+ "symfony/polyfill-php56": "*",
"symfony/polyfill-php70": "*",
- "symfony/polyfill-php56": "*"
+ "symfony/polyfill-php71": "*",
+ "symfony/polyfill-php72": "*",
+ "symfony/polyfill-php73": "*",
+ "symfony/polyfill-php74": "*",
+ "symfony/polyfill-php80": "*",
+ "symfony/polyfill-php81": "*",
+ "symfony/polyfill-php82": "*",
+ "symfony/polyfill-php83": "*",
+ "symfony/polyfill-php84": "*",
+ "symfony/polyfill-php85": "*"
},
"conflict": {
"symfony/symfony": "*"
@@ -50,7 +53,8 @@
"extra": {
"symfony": {
"allow-contrib": false,
- "require": "^7.4"
+ "require": "^8.1",
+ "docker": false
}
},
"autoload": {
diff --git a/composer.lock b/composer.lock
index d5b0e35..52ca247 100644
--- a/composer.lock
+++ b/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": "53fddf17e1690ba74b40d2f57ad3f5d9",
+ "content-hash": "393086f7d2a753c3cd3c61981597bde2",
"packages": [
{
"name": "doctrine/collections",
@@ -248,63 +248,57 @@
},
{
"name": "doctrine/doctrine-bundle",
- "version": "2.18.2",
+ "version": "3.2.2",
"source": {
"type": "git",
"url": "https://github.com/doctrine/DoctrineBundle.git",
- "reference": "0ff098b29b8b3c68307c8987dcaed7fd829c6546"
+ "reference": "af84173db6978c3d2688ea3bcf3a91720b0704ce"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/DoctrineBundle/zipball/0ff098b29b8b3c68307c8987dcaed7fd829c6546",
- "reference": "0ff098b29b8b3c68307c8987dcaed7fd829c6546",
+ "url": "https://api.github.com/repos/doctrine/DoctrineBundle/zipball/af84173db6978c3d2688ea3bcf3a91720b0704ce",
+ "reference": "af84173db6978c3d2688ea3bcf3a91720b0704ce",
"shasum": ""
},
"require": {
- "doctrine/dbal": "^3.7.0 || ^4.0",
+ "doctrine/dbal": "^4.0",
"doctrine/deprecations": "^1.0",
- "doctrine/persistence": "^3.1 || ^4",
+ "doctrine/persistence": "^4",
"doctrine/sql-formatter": "^1.0.1",
- "php": "^8.1",
- "symfony/cache": "^6.4 || ^7.0",
- "symfony/config": "^6.4 || ^7.0",
- "symfony/console": "^6.4 || ^7.0",
- "symfony/dependency-injection": "^6.4 || ^7.0",
- "symfony/doctrine-bridge": "^6.4.3 || ^7.0.3",
- "symfony/framework-bundle": "^6.4 || ^7.0",
- "symfony/service-contracts": "^2.5 || ^3"
+ "php": "^8.4",
+ "symfony/cache": "^6.4 || ^7.0 || ^8.0",
+ "symfony/config": "^6.4 || ^7.0 || ^8.0",
+ "symfony/console": "^6.4 || ^7.0 || ^8.0",
+ "symfony/dependency-injection": "^6.4 || ^7.0 || ^8.0",
+ "symfony/doctrine-bridge": "^6.4.3 || ^7.0.3 || ^8.0",
+ "symfony/framework-bundle": "^6.4 || ^7.0 || ^8.0",
+ "symfony/service-contracts": "^3"
},
"conflict": {
- "doctrine/annotations": ">=3.0",
- "doctrine/cache": "< 1.11",
- "doctrine/orm": "<2.17 || >=4.0",
- "symfony/var-exporter": "< 6.4.1 || 7.0.0",
- "twig/twig": "<2.13 || >=3.0 <3.0.4"
+ "doctrine/orm": "<3.0 || >=4.0",
+ "twig/twig": "<3.0.4"
},
"require-dev": {
- "doctrine/annotations": "^1 || ^2",
- "doctrine/cache": "^1.11 || ^2.0",
"doctrine/coding-standard": "^14",
- "doctrine/orm": "^2.17 || ^3.1",
- "friendsofphp/proxy-manager-lts": "^1.0",
+ "doctrine/orm": "^3.4.4",
"phpstan/phpstan": "2.1.1",
"phpstan/phpstan-phpunit": "2.0.3",
"phpstan/phpstan-strict-rules": "^2",
- "phpunit/phpunit": "^10.5.53 || ^12.3.10",
- "psr/log": "^1.1.4 || ^2.0 || ^3.0",
- "symfony/doctrine-messenger": "^6.4 || ^7.0",
- "symfony/expression-language": "^6.4 || ^7.0",
- "symfony/messenger": "^6.4 || ^7.0",
- "symfony/property-info": "^6.4 || ^7.0",
- "symfony/security-bundle": "^6.4 || ^7.0",
- "symfony/stopwatch": "^6.4 || ^7.0",
- "symfony/string": "^6.4 || ^7.0",
- "symfony/twig-bridge": "^6.4 || ^7.0",
- "symfony/validator": "^6.4 || ^7.0",
- "symfony/var-exporter": "^6.4.1 || ^7.0.1",
- "symfony/web-profiler-bundle": "^6.4 || ^7.0",
- "symfony/yaml": "^6.4 || ^7.0",
- "twig/twig": "^2.14.7 || ^3.0.4"
+ "phpstan/phpstan-symfony": "^2.0",
+ "phpunit/phpunit": "^12.3.10",
+ "psr/log": "^3.0",
+ "symfony/doctrine-messenger": "^6.4 || ^7.0 || ^8.0",
+ "symfony/expression-language": "^6.4 || ^7.0 || ^8.0",
+ "symfony/messenger": "^6.4 || ^7.0 || ^8.0",
+ "symfony/property-info": "^6.4 || ^7.0 || ^8.0",
+ "symfony/security-bundle": "^6.4 || ^7.0 || ^8.0",
+ "symfony/stopwatch": "^6.4 || ^7.0 || ^8.0",
+ "symfony/string": "^6.4 || ^7.0 || ^8.0",
+ "symfony/twig-bridge": "^6.4 || ^7.0 || ^8.0",
+ "symfony/validator": "^6.4 || ^7.0 || ^8.0",
+ "symfony/web-profiler-bundle": "^6.4 || ^7.0 || ^8.0",
+ "symfony/yaml": "^6.4 || ^7.0 || ^8.0",
+ "twig/twig": "^3.21.1"
},
"suggest": {
"doctrine/orm": "The Doctrine ORM integration is optional in the bundle.",
@@ -349,7 +343,7 @@
],
"support": {
"issues": "https://github.com/doctrine/DoctrineBundle/issues",
- "source": "https://github.com/doctrine/DoctrineBundle/tree/2.18.2"
+ "source": "https://github.com/doctrine/DoctrineBundle/tree/3.2.2"
},
"funding": [
{
@@ -365,41 +359,48 @@
"type": "tidelift"
}
],
- "time": "2025-12-20T21:35:32+00:00"
+ "time": "2025-12-24T12:24:29+00:00"
},
{
"name": "doctrine/doctrine-migrations-bundle",
- "version": "3.7.0",
+ "version": "4.0.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/DoctrineMigrationsBundle.git",
- "reference": "1e380c6dd8ac8488217f39cff6b77e367f1a644b"
+ "reference": "20505da78735744fb4a42a3bb9a416b345ad6f7c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/DoctrineMigrationsBundle/zipball/1e380c6dd8ac8488217f39cff6b77e367f1a644b",
- "reference": "1e380c6dd8ac8488217f39cff6b77e367f1a644b",
+ "url": "https://api.github.com/repos/doctrine/DoctrineMigrationsBundle/zipball/20505da78735744fb4a42a3bb9a416b345ad6f7c",
+ "reference": "20505da78735744fb4a42a3bb9a416b345ad6f7c",
"shasum": ""
},
"require": {
- "doctrine/doctrine-bundle": "^2.4 || ^3.0",
+ "doctrine/dbal": "^4",
+ "doctrine/doctrine-bundle": "^3",
"doctrine/migrations": "^3.2",
- "php": "^7.2 || ^8.0",
- "symfony/deprecation-contracts": "^2.1 || ^3",
- "symfony/framework-bundle": "^5.4 || ^6.0 || ^7.0 || ^8.0"
+ "php": "^8.4",
+ "psr/log": "^3",
+ "symfony/config": "^6.4 || ^7.0 || ^8.0",
+ "symfony/console": "^6.4 || ^7.0 || ^8.0",
+ "symfony/dependency-injection": "^6.4 || ^7.0 || ^8.0",
+ "symfony/deprecation-contracts": "^3",
+ "symfony/framework-bundle": "^6.4 || ^7.0 || ^8.0",
+ "symfony/http-foundation": "^6.4 || ^7.0 || ^8.0",
+ "symfony/http-kernel": "^6.4 || ^7.0 || ^8.0",
+ "symfony/service-contracts": "^3.0"
},
"require-dev": {
"composer/semver": "^3.0",
- "doctrine/coding-standard": "^12 || ^14",
- "doctrine/orm": "^2.6 || ^3",
- "phpstan/phpstan": "^1.4 || ^2",
- "phpstan/phpstan-deprecation-rules": "^1 || ^2",
- "phpstan/phpstan-phpunit": "^1 || ^2",
- "phpstan/phpstan-strict-rules": "^1.1 || ^2",
- "phpstan/phpstan-symfony": "^1.3 || ^2",
- "phpunit/phpunit": "^8.5 || ^9.5",
- "symfony/phpunit-bridge": "^6.3 || ^7 || ^8",
- "symfony/var-exporter": "^5.4 || ^6 || ^7 || ^8"
+ "doctrine/coding-standard": "^14",
+ "doctrine/orm": "^3",
+ "phpstan/phpstan": "^2",
+ "phpstan/phpstan-deprecation-rules": "^2",
+ "phpstan/phpstan-phpunit": "^2",
+ "phpstan/phpstan-strict-rules": "^2",
+ "phpstan/phpstan-symfony": "^2",
+ "phpunit/phpunit": "^12.5",
+ "symfony/var-exporter": "^6.4 || ^7 || ^8"
},
"type": "symfony-bundle",
"autoload": {
@@ -434,7 +435,7 @@
],
"support": {
"issues": "https://github.com/doctrine/DoctrineMigrationsBundle/issues",
- "source": "https://github.com/doctrine/DoctrineMigrationsBundle/tree/3.7.0"
+ "source": "https://github.com/doctrine/DoctrineMigrationsBundle/tree/4.0.0"
},
"funding": [
{
@@ -450,7 +451,7 @@
"type": "tidelift"
}
],
- "time": "2025-11-15T19:02:59+00:00"
+ "time": "2025-12-05T08:14:38+00:00"
},
{
"name": "doctrine/event-manager",
@@ -635,30 +636,29 @@
},
{
"name": "doctrine/instantiator",
- "version": "2.0.0",
+ "version": "2.1.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/instantiator.git",
- "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0"
+ "reference": "23da848e1a2308728fe5fdddabf4be17ff9720c7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/c6222283fa3f4ac679f8b9ced9a4e23f163e80d0",
- "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0",
+ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/23da848e1a2308728fe5fdddabf4be17ff9720c7",
+ "reference": "23da848e1a2308728fe5fdddabf4be17ff9720c7",
"shasum": ""
},
"require": {
- "php": "^8.1"
+ "php": "^8.4"
},
"require-dev": {
- "doctrine/coding-standard": "^11",
+ "doctrine/coding-standard": "^14",
"ext-pdo": "*",
"ext-phar": "*",
"phpbench/phpbench": "^1.2",
- "phpstan/phpstan": "^1.9.4",
- "phpstan/phpstan-phpunit": "^1.3",
- "phpunit/phpunit": "^9.5.27",
- "vimeo/psalm": "^5.4"
+ "phpstan/phpstan": "^2.1",
+ "phpstan/phpstan-phpunit": "^2.0",
+ "phpunit/phpunit": "^10.5.58"
},
"type": "library",
"autoload": {
@@ -685,7 +685,7 @@
],
"support": {
"issues": "https://github.com/doctrine/instantiator/issues",
- "source": "https://github.com/doctrine/instantiator/tree/2.0.0"
+ "source": "https://github.com/doctrine/instantiator/tree/2.1.0"
},
"funding": [
{
@@ -701,7 +701,7 @@
"type": "tidelift"
}
],
- "time": "2022-12-30T00:23:10+00:00"
+ "time": "2026-01-05T06:47:08+00:00"
},
{
"name": "doctrine/lexer",
@@ -1475,34 +1475,29 @@
},
{
"name": "symfony/cache",
- "version": "v7.4.13",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/cache.git",
- "reference": "4c09e18a92cce126cc0d1155825279fca8cd0673"
+ "reference": "ba62e0ed9ea9bc26142844a891d4a3dfceb24aed"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/cache/zipball/4c09e18a92cce126cc0d1155825279fca8cd0673",
- "reference": "4c09e18a92cce126cc0d1155825279fca8cd0673",
+ "url": "https://api.github.com/repos/symfony/cache/zipball/ba62e0ed9ea9bc26142844a891d4a3dfceb24aed",
+ "reference": "ba62e0ed9ea9bc26142844a891d4a3dfceb24aed",
"shasum": ""
},
"require": {
- "php": ">=8.2",
+ "php": ">=8.4.1",
"psr/cache": "^2.0|^3.0",
"psr/log": "^1.1|^2|^3",
"symfony/cache-contracts": "^3.6",
- "symfony/deprecation-contracts": "^2.5|^3",
"symfony/service-contracts": "^2.5|^3",
- "symfony/var-exporter": "^6.4|^7.0|^8.0"
+ "symfony/var-exporter": "^8.1"
},
"conflict": {
- "doctrine/dbal": "<3.6",
"ext-redis": "<6.1",
- "ext-relay": "<0.12.1",
- "symfony/dependency-injection": "<6.4",
- "symfony/http-kernel": "<6.4",
- "symfony/var-dumper": "<6.4"
+ "ext-relay": "<0.12.1"
},
"provide": {
"psr/cache-implementation": "2.0|3.0",
@@ -1511,16 +1506,16 @@
},
"require-dev": {
"cache/integration-tests": "dev-master",
- "doctrine/dbal": "^3.6|^4",
+ "doctrine/dbal": "^4.3",
"predis/predis": "^1.1|^2.0",
"psr/simple-cache": "^1.0|^2.0|^3.0",
- "symfony/clock": "^6.4|^7.0|^8.0",
- "symfony/config": "^6.4|^7.0|^8.0",
- "symfony/dependency-injection": "^6.4|^7.0|^8.0",
- "symfony/filesystem": "^6.4|^7.0|^8.0",
- "symfony/http-kernel": "^6.4|^7.0|^8.0",
- "symfony/messenger": "^6.4|^7.0|^8.0",
- "symfony/var-dumper": "^6.4|^7.0|^8.0"
+ "symfony/clock": "^7.4|^8.0",
+ "symfony/config": "^7.4|^8.0",
+ "symfony/dependency-injection": "^7.4|^8.0",
+ "symfony/filesystem": "^7.4|^8.0",
+ "symfony/http-kernel": "^7.4|^8.0",
+ "symfony/messenger": "^7.4|^8.0",
+ "symfony/var-dumper": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -1555,7 +1550,7 @@
"psr6"
],
"support": {
- "source": "https://github.com/symfony/cache/tree/v7.4.13"
+ "source": "https://github.com/symfony/cache/tree/v8.1.0"
},
"funding": [
{
@@ -1575,7 +1570,7 @@
"type": "tidelift"
}
],
- "time": "2026-05-24T08:43:14+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/cache-contracts",
@@ -1659,22 +1654,21 @@
},
{
"name": "symfony/clock",
- "version": "v7.4.8",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/clock.git",
- "reference": "674fa3b98e21531dd040e613479f5f6fa8f32111"
+ "reference": "701ef4de9705d6c32292ebee5e8044094a09fbf6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/clock/zipball/674fa3b98e21531dd040e613479f5f6fa8f32111",
- "reference": "674fa3b98e21531dd040e613479f5f6fa8f32111",
+ "url": "https://api.github.com/repos/symfony/clock/zipball/701ef4de9705d6c32292ebee5e8044094a09fbf6",
+ "reference": "701ef4de9705d6c32292ebee5e8044094a09fbf6",
"shasum": ""
},
"require": {
- "php": ">=8.2",
- "psr/clock": "^1.0",
- "symfony/polyfill-php83": "^1.28"
+ "php": ">=8.4.1",
+ "psr/clock": "^1.0"
},
"provide": {
"psr/clock-implementation": "1.0"
@@ -1713,7 +1707,7 @@
"time"
],
"support": {
- "source": "https://github.com/symfony/clock/tree/v7.4.8"
+ "source": "https://github.com/symfony/clock/tree/v8.1.0"
},
"funding": [
{
@@ -1733,38 +1727,37 @@
"type": "tidelift"
}
],
- "time": "2026-03-24T13:12:05+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/config",
- "version": "v7.4.10",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/config.git",
- "reference": "d91b6c7cd2a8c9a9c2b8d26c8f5ed48edf99ef57"
+ "reference": "429783a0c649696f2058ea5ab5315f082dba6de9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/config/zipball/d91b6c7cd2a8c9a9c2b8d26c8f5ed48edf99ef57",
- "reference": "d91b6c7cd2a8c9a9c2b8d26c8f5ed48edf99ef57",
+ "url": "https://api.github.com/repos/symfony/config/zipball/429783a0c649696f2058ea5ab5315f082dba6de9",
+ "reference": "429783a0c649696f2058ea5ab5315f082dba6de9",
"shasum": ""
},
"require": {
- "php": ">=8.2",
+ "php": ">=8.4.1",
"symfony/deprecation-contracts": "^2.5|^3",
- "symfony/filesystem": "^7.1|^8.0",
- "symfony/polyfill-ctype": "~1.8"
+ "symfony/filesystem": "^7.4|^8.0",
+ "symfony/polyfill-ctype": "^1.8"
},
"conflict": {
- "symfony/finder": "<6.4",
"symfony/service-contracts": "<2.5"
},
"require-dev": {
- "symfony/event-dispatcher": "^6.4|^7.0|^8.0",
- "symfony/finder": "^6.4|^7.0|^8.0",
- "symfony/messenger": "^6.4|^7.0|^8.0",
+ "symfony/event-dispatcher": "^7.4|^8.0",
+ "symfony/finder": "^7.4|^8.0",
+ "symfony/messenger": "^7.4|^8.0",
"symfony/service-contracts": "^2.5|^3",
- "symfony/yaml": "^6.4|^7.0|^8.0"
+ "symfony/yaml": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -1792,7 +1785,7 @@
"description": "Helps you find, load, combine, autofill and validate configuration values of any kind",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/config/tree/v7.4.10"
+ "source": "https://github.com/symfony/config/tree/v8.1.0"
},
"funding": [
{
@@ -1812,51 +1805,53 @@
"type": "tidelift"
}
],
- "time": "2026-05-03T14:20:49+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/console",
- "version": "v7.4.13",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "85095d2573eaefaf35e40b9513a9bf09f72cd217"
+ "reference": "f5a856c6ecb56b3c21ed94a5b7bf940d857d110a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/85095d2573eaefaf35e40b9513a9bf09f72cd217",
- "reference": "85095d2573eaefaf35e40b9513a9bf09f72cd217",
+ "url": "https://api.github.com/repos/symfony/console/zipball/f5a856c6ecb56b3c21ed94a5b7bf940d857d110a",
+ "reference": "f5a856c6ecb56b3c21ed94a5b7bf940d857d110a",
"shasum": ""
},
"require": {
- "php": ">=8.2",
+ "php": ">=8.4.1",
"symfony/deprecation-contracts": "^2.5|^3",
- "symfony/polyfill-mbstring": "~1.0",
+ "symfony/polyfill-mbstring": "^1.0",
+ "symfony/polyfill-php85": "^1.32",
"symfony/service-contracts": "^2.5|^3",
- "symfony/string": "^7.2|^8.0"
+ "symfony/string": "^7.4.6|^8.0.6"
},
"conflict": {
- "symfony/dependency-injection": "<6.4",
- "symfony/dotenv": "<6.4",
- "symfony/event-dispatcher": "<6.4",
- "symfony/lock": "<6.4",
- "symfony/process": "<6.4"
+ "symfony/dependency-injection": "<8.1",
+ "symfony/event-dispatcher": "<8.1"
},
"provide": {
"psr/log-implementation": "1.0|2.0|3.0"
},
"require-dev": {
"psr/log": "^1|^2|^3",
- "symfony/config": "^6.4|^7.0|^8.0",
- "symfony/dependency-injection": "^6.4|^7.0|^8.0",
- "symfony/event-dispatcher": "^6.4|^7.0|^8.0",
- "symfony/http-foundation": "^6.4|^7.0|^8.0",
- "symfony/http-kernel": "^6.4|^7.0|^8.0",
- "symfony/lock": "^6.4|^7.0|^8.0",
- "symfony/messenger": "^6.4|^7.0|^8.0",
- "symfony/process": "^6.4|^7.0|^8.0",
- "symfony/stopwatch": "^6.4|^7.0|^8.0",
- "symfony/var-dumper": "^6.4|^7.0|^8.0"
+ "symfony/config": "^7.4|^8.0",
+ "symfony/dependency-injection": "^8.1",
+ "symfony/event-dispatcher": "^8.1",
+ "symfony/filesystem": "^7.4|^8.0",
+ "symfony/http-foundation": "^7.4|^8.0",
+ "symfony/http-kernel": "^7.4|^8.0",
+ "symfony/lock": "^7.4|^8.0",
+ "symfony/messenger": "^7.4|^8.0",
+ "symfony/mime": "^7.4|^8.0",
+ "symfony/process": "^7.4|^8.0",
+ "symfony/stopwatch": "^7.4|^8.0",
+ "symfony/uid": "^7.4|^8.0",
+ "symfony/validator": "^7.4|^8.0",
+ "symfony/var-dumper": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -1890,7 +1885,7 @@
"terminal"
],
"support": {
- "source": "https://github.com/symfony/console/tree/v7.4.13"
+ "source": "https://github.com/symfony/console/tree/v8.1.0"
},
"funding": [
{
@@ -1910,43 +1905,40 @@
"type": "tidelift"
}
],
- "time": "2026-05-24T08:56:14+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/dependency-injection",
- "version": "v7.4.13",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/dependency-injection.git",
- "reference": "f299e20ce983be6c0744952533c6dfeaaa1448e2"
+ "reference": "b6ba1f45127106885de4b77558c5ecca8feb1e1b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/f299e20ce983be6c0744952533c6dfeaaa1448e2",
- "reference": "f299e20ce983be6c0744952533c6dfeaaa1448e2",
+ "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/b6ba1f45127106885de4b77558c5ecca8feb1e1b",
+ "reference": "b6ba1f45127106885de4b77558c5ecca8feb1e1b",
"shasum": ""
},
"require": {
- "php": ">=8.2",
+ "php": ">=8.4.1",
"psr/container": "^1.1|^2.0",
"symfony/deprecation-contracts": "^2.5|^3",
"symfony/service-contracts": "^3.6",
- "symfony/var-exporter": "^6.4.20|^7.2.5|^8.0"
+ "symfony/var-exporter": "^8.1"
},
"conflict": {
- "ext-psr": "<1.1|>=2",
- "symfony/config": "<6.4",
- "symfony/finder": "<6.4",
- "symfony/yaml": "<6.4"
+ "ext-psr": "<1.1|>=2"
},
"provide": {
"psr/container-implementation": "1.1|2.0",
"symfony/service-implementation": "1.1|2.0|3.0"
},
"require-dev": {
- "symfony/config": "^6.4|^7.0|^8.0",
- "symfony/expression-language": "^6.4|^7.0|^8.0",
- "symfony/yaml": "^6.4|^7.0|^8.0"
+ "symfony/config": "^7.4|^8.0",
+ "symfony/expression-language": "^7.4|^8.0",
+ "symfony/yaml": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -1974,7 +1966,7 @@
"description": "Allows you to standardize and centralize the way objects are constructed in your application",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/dependency-injection/tree/v7.4.13"
+ "source": "https://github.com/symfony/dependency-injection/tree/v8.1.0"
},
"funding": [
{
@@ -1994,7 +1986,7 @@
"type": "tidelift"
}
],
- "time": "2026-05-20T14:07:29+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/deprecation-contracts",
@@ -2069,68 +2061,59 @@
},
{
"name": "symfony/doctrine-bridge",
- "version": "v7.4.9",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/doctrine-bridge.git",
- "reference": "7a87c85853f3069e3657a823c62b02952de46b0a"
+ "reference": "80daf848dd39d9ff5a0f39aa6f2bf5448aa662c5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/doctrine-bridge/zipball/7a87c85853f3069e3657a823c62b02952de46b0a",
- "reference": "7a87c85853f3069e3657a823c62b02952de46b0a",
+ "url": "https://api.github.com/repos/symfony/doctrine-bridge/zipball/80daf848dd39d9ff5a0f39aa6f2bf5448aa662c5",
+ "reference": "80daf848dd39d9ff5a0f39aa6f2bf5448aa662c5",
"shasum": ""
},
"require": {
"doctrine/event-manager": "^2",
"doctrine/persistence": "^3.1|^4",
- "php": ">=8.2",
+ "php": ">=8.4.1",
"symfony/deprecation-contracts": "^2.5|^3",
- "symfony/polyfill-ctype": "~1.8",
- "symfony/polyfill-mbstring": "~1.0",
+ "symfony/polyfill-ctype": "^1.8",
+ "symfony/polyfill-mbstring": "^1.0",
"symfony/service-contracts": "^2.5|^3"
},
"conflict": {
"doctrine/collections": "<1.8",
- "doctrine/dbal": "<3.6",
+ "doctrine/dbal": "<4.3",
"doctrine/lexer": "<1.1",
- "doctrine/orm": "<2.15",
- "symfony/cache": "<6.4",
- "symfony/dependency-injection": "<6.4",
- "symfony/form": "<6.4.6|>=7,<7.0.6",
- "symfony/http-foundation": "<6.4",
- "symfony/http-kernel": "<6.4",
- "symfony/lock": "<6.4",
- "symfony/messenger": "<6.4",
- "symfony/property-info": "<6.4",
- "symfony/security-bundle": "<6.4",
- "symfony/security-core": "<6.4",
- "symfony/validator": "<7.4"
+ "doctrine/orm": "<3.4",
+ "symfony/property-info": "<8.0"
},
"require-dev": {
"doctrine/collections": "^1.8|^2.0",
"doctrine/data-fixtures": "^1.1|^2",
- "doctrine/dbal": "^3.6|^4",
- "doctrine/orm": "^2.15|^3",
+ "doctrine/dbal": "^4.3",
+ "doctrine/orm": "^3.4",
"psr/log": "^1|^2|^3",
- "symfony/cache": "^6.4|^7.0|^8.0",
- "symfony/config": "^6.4|^7.0|^8.0",
- "symfony/dependency-injection": "^6.4|^7.0|^8.0",
- "symfony/doctrine-messenger": "^6.4|^7.0|^8.0",
- "symfony/expression-language": "^6.4|^7.0|^8.0",
- "symfony/form": "^7.2|^8.0",
- "symfony/http-kernel": "^6.4|^7.0|^8.0",
- "symfony/lock": "^6.4|^7.0|^8.0",
- "symfony/messenger": "^6.4|^7.0|^8.0",
- "symfony/property-access": "^6.4|^7.0|^8.0",
- "symfony/property-info": "^6.4|^7.0|^8.0",
- "symfony/security-core": "^6.4|^7.0|^8.0",
- "symfony/stopwatch": "^6.4|^7.0|^8.0",
- "symfony/translation": "^6.4|^7.0|^8.0",
- "symfony/type-info": "^7.1.8|^8.0",
- "symfony/uid": "^6.4|^7.0|^8.0",
+ "symfony/cache": "^7.4|^8.0",
+ "symfony/config": "^7.4|^8.0",
+ "symfony/console": "^8.1",
+ "symfony/dependency-injection": "^7.4|^8.0",
+ "symfony/doctrine-messenger": "^7.4|^8.0",
+ "symfony/expression-language": "^7.4|^8.0",
+ "symfony/form": "^7.4|^8.0",
+ "symfony/http-kernel": "^7.4|^8.0",
+ "symfony/lock": "^7.4|^8.0",
+ "symfony/messenger": "^7.4|^8.0",
+ "symfony/property-access": "^7.4|^8.0",
+ "symfony/property-info": "^8.0",
+ "symfony/security-core": "^7.4|^8.0",
+ "symfony/stopwatch": "^7.4|^8.0",
+ "symfony/translation": "^7.4|^8.0",
+ "symfony/type-info": "^7.4|^8.0",
+ "symfony/uid": "^7.4|^8.0",
"symfony/validator": "^7.4|^8.0",
- "symfony/var-dumper": "^6.4|^7.0|^8.0"
+ "symfony/var-dumper": "^7.4|^8.0"
},
"type": "symfony-bridge",
"autoload": {
@@ -2158,7 +2141,7 @@
"description": "Provides integration for Doctrine with various Symfony components",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/doctrine-bridge/tree/v7.4.9"
+ "source": "https://github.com/symfony/doctrine-bridge/tree/v8.1.0"
},
"funding": [
{
@@ -2178,32 +2161,28 @@
"type": "tidelift"
}
],
- "time": "2026-04-29T14:19:39+00:00"
+ "time": "2026-05-29T05:18:49+00:00"
},
{
"name": "symfony/dotenv",
- "version": "v7.4.11",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/dotenv.git",
- "reference": "82e9b1355c68ef7b96397dbd34cc75a92eebae7c"
+ "reference": "7ed4e3a11e3c98235c70ded047d7ddf9e6ae854c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/dotenv/zipball/82e9b1355c68ef7b96397dbd34cc75a92eebae7c",
- "reference": "82e9b1355c68ef7b96397dbd34cc75a92eebae7c",
+ "url": "https://api.github.com/repos/symfony/dotenv/zipball/7ed4e3a11e3c98235c70ded047d7ddf9e6ae854c",
+ "reference": "7ed4e3a11e3c98235c70ded047d7ddf9e6ae854c",
"shasum": ""
},
"require": {
- "php": ">=8.2"
- },
- "conflict": {
- "symfony/console": "<6.4",
- "symfony/process": "<6.4"
+ "php": ">=8.4.1"
},
"require-dev": {
- "symfony/console": "^6.4|^7.0|^8.0",
- "symfony/process": "^6.4|^7.0|^8.0"
+ "symfony/console": "^7.4|^8.0",
+ "symfony/process": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -2236,7 +2215,7 @@
"environment"
],
"support": {
- "source": "https://github.com/symfony/dotenv/tree/v7.4.11"
+ "source": "https://github.com/symfony/dotenv/tree/v8.1.0"
},
"funding": [
{
@@ -2256,37 +2235,36 @@
"type": "tidelift"
}
],
- "time": "2026-05-11T13:02:51+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/error-handler",
- "version": "v7.4.8",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/error-handler.git",
- "reference": "8dd79d8af777ee6cba2fd4d98da6ffb839f3c0fa"
+ "reference": "d8aeb1abd3fef84795567850d3a567bdb5945ee5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/error-handler/zipball/8dd79d8af777ee6cba2fd4d98da6ffb839f3c0fa",
- "reference": "8dd79d8af777ee6cba2fd4d98da6ffb839f3c0fa",
+ "url": "https://api.github.com/repos/symfony/error-handler/zipball/d8aeb1abd3fef84795567850d3a567bdb5945ee5",
+ "reference": "d8aeb1abd3fef84795567850d3a567bdb5945ee5",
"shasum": ""
},
"require": {
- "php": ">=8.2",
+ "php": ">=8.4.1",
"psr/log": "^1|^2|^3",
"symfony/polyfill-php85": "^1.32",
- "symfony/var-dumper": "^6.4|^7.0|^8.0"
+ "symfony/var-dumper": "^7.4|^8.0"
},
"conflict": {
- "symfony/deprecation-contracts": "<2.5",
- "symfony/http-kernel": "<6.4"
+ "symfony/deprecation-contracts": "<2.5"
},
"require-dev": {
- "symfony/console": "^6.4|^7.0|^8.0",
+ "symfony/console": "^7.4|^8.0",
"symfony/deprecation-contracts": "^2.5|^3",
- "symfony/http-kernel": "^6.4|^7.0|^8.0",
- "symfony/serializer": "^6.4|^7.0|^8.0",
+ "symfony/http-kernel": "^7.4|^8.0",
+ "symfony/serializer": "^7.4|^8.0",
"symfony/webpack-encore-bundle": "^1.0|^2.0"
},
"bin": [
@@ -2318,7 +2296,7 @@
"description": "Provides tools to manage errors and ease debugging PHP code",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/error-handler/tree/v7.4.8"
+ "source": "https://github.com/symfony/error-handler/tree/v8.1.0"
},
"funding": [
{
@@ -2338,28 +2316,29 @@
"type": "tidelift"
}
],
- "time": "2026-03-24T13:12:05+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/event-dispatcher",
- "version": "v7.4.9",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "e4a2e29753c7801f7a8340e066cfa788f3bc8101"
+ "reference": "f249ae3f680958b6f1f9dd76e5747cf0695b4102"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/e4a2e29753c7801f7a8340e066cfa788f3bc8101",
- "reference": "e4a2e29753c7801f7a8340e066cfa788f3bc8101",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/f249ae3f680958b6f1f9dd76e5747cf0695b4102",
+ "reference": "f249ae3f680958b6f1f9dd76e5747cf0695b4102",
"shasum": ""
},
"require": {
- "php": ">=8.2",
+ "php": ">=8.4.1",
+ "symfony/deprecation-contracts": "^2.5|^3",
"symfony/event-dispatcher-contracts": "^2.5|^3"
},
"conflict": {
- "symfony/dependency-injection": "<6.4",
+ "symfony/security-http": "<7.4",
"symfony/service-contracts": "<2.5"
},
"provide": {
@@ -2368,14 +2347,14 @@
},
"require-dev": {
"psr/log": "^1|^2|^3",
- "symfony/config": "^6.4|^7.0|^8.0",
- "symfony/dependency-injection": "^6.4|^7.0|^8.0",
- "symfony/error-handler": "^6.4|^7.0|^8.0",
- "symfony/expression-language": "^6.4|^7.0|^8.0",
- "symfony/framework-bundle": "^6.4|^7.0|^8.0",
- "symfony/http-foundation": "^6.4|^7.0|^8.0",
+ "symfony/config": "^7.4|^8.0",
+ "symfony/dependency-injection": "^7.4|^8.0",
+ "symfony/error-handler": "^7.4|^8.0",
+ "symfony/expression-language": "^7.4|^8.0",
+ "symfony/framework-bundle": "^7.4|^8.0",
+ "symfony/http-foundation": "^7.4|^8.0",
"symfony/service-contracts": "^2.5|^3",
- "symfony/stopwatch": "^6.4|^7.0|^8.0"
+ "symfony/stopwatch": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -2403,7 +2382,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/v7.4.9"
+ "source": "https://github.com/symfony/event-dispatcher/tree/v8.1.0"
},
"funding": [
{
@@ -2423,7 +2402,7 @@
"type": "tidelift"
}
],
- "time": "2026-04-18T13:18:21+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/event-dispatcher-contracts",
@@ -2507,25 +2486,26 @@
},
{
"name": "symfony/filesystem",
- "version": "v7.4.11",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
- "reference": "d721ea61b4a5fba8c5b6e7c1feda19efea144b50"
+ "reference": "99aec13b82b4967ec5088222c4a3ecca955949c2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/d721ea61b4a5fba8c5b6e7c1feda19efea144b50",
- "reference": "d721ea61b4a5fba8c5b6e7c1feda19efea144b50",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/99aec13b82b4967ec5088222c4a3ecca955949c2",
+ "reference": "99aec13b82b4967ec5088222c4a3ecca955949c2",
"shasum": ""
},
"require": {
- "php": ">=8.2",
+ "php": ">=8.4.1",
+ "symfony/deprecation-contracts": "^2.5|^3",
"symfony/polyfill-ctype": "~1.8",
"symfony/polyfill-mbstring": "~1.8"
},
"require-dev": {
- "symfony/process": "^6.4|^7.0|^8.0"
+ "symfony/process": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -2553,7 +2533,7 @@
"description": "Provides basic utilities for the filesystem",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/filesystem/tree/v7.4.11"
+ "source": "https://github.com/symfony/filesystem/tree/v8.1.0"
},
"funding": [
{
@@ -2573,27 +2553,27 @@
"type": "tidelift"
}
],
- "time": "2026-05-11T16:38:44+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/finder",
- "version": "v7.4.8",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
- "reference": "e0be088d22278583a82da281886e8c3592fbf149"
+ "reference": "58d2e767a66052c1487356f953445634a8194c64"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/e0be088d22278583a82da281886e8c3592fbf149",
- "reference": "e0be088d22278583a82da281886e8c3592fbf149",
+ "url": "https://api.github.com/repos/symfony/finder/zipball/58d2e767a66052c1487356f953445634a8194c64",
+ "reference": "58d2e767a66052c1487356f953445634a8194c64",
"shasum": ""
},
"require": {
- "php": ">=8.2"
+ "php": ">=8.4.1"
},
"require-dev": {
- "symfony/filesystem": "^6.4|^7.0|^8.0"
+ "symfony/filesystem": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -2621,7 +2601,7 @@
"description": "Finds files and directories via an intuitive fluent interface",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/finder/tree/v7.4.8"
+ "source": "https://github.com/symfony/finder/tree/v8.1.0"
},
"funding": [
{
@@ -2641,7 +2621,7 @@
"type": "tidelift"
}
],
- "time": "2026-03-24T13:12:05+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/flex",
@@ -2718,113 +2698,98 @@
},
{
"name": "symfony/framework-bundle",
- "version": "v7.4.13",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/framework-bundle.git",
- "reference": "8be39c7bf9e6f58fe49c07927572a9df7c961c95"
+ "reference": "6a0953f4fd8b51db6136c2628af99b7193e63256"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/8be39c7bf9e6f58fe49c07927572a9df7c961c95",
- "reference": "8be39c7bf9e6f58fe49c07927572a9df7c961c95",
+ "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/6a0953f4fd8b51db6136c2628af99b7193e63256",
+ "reference": "6a0953f4fd8b51db6136c2628af99b7193e63256",
"shasum": ""
},
"require": {
"composer-runtime-api": ">=2.1",
"ext-xml": "*",
- "php": ">=8.2",
- "symfony/cache": "^6.4.12|^7.0|^8.0",
+ "php": ">=8.4.1",
+ "symfony/cache": "^7.4|^8.0",
"symfony/config": "^7.4.4|^8.0.4",
- "symfony/dependency-injection": "^7.4.4|^8.0.4",
+ "symfony/dependency-injection": "^8.1",
"symfony/deprecation-contracts": "^2.5|^3",
- "symfony/error-handler": "^7.3|^8.0",
- "symfony/event-dispatcher": "^6.4|^7.0|^8.0",
- "symfony/filesystem": "^7.1|^8.0",
- "symfony/finder": "^6.4|^7.0|^8.0",
+ "symfony/error-handler": "^7.4|^8.0",
+ "symfony/event-dispatcher": "^8.1",
+ "symfony/filesystem": "^7.4|^8.0",
+ "symfony/finder": "^7.4|^8.0",
"symfony/http-foundation": "^7.4|^8.0",
- "symfony/http-kernel": "^7.4|^8.0",
- "symfony/polyfill-mbstring": "~1.0",
- "symfony/polyfill-php85": "^1.32",
- "symfony/routing": "^7.4|^8.0"
+ "symfony/http-kernel": "^8.1",
+ "symfony/polyfill-mbstring": "^1.0",
+ "symfony/polyfill-php85": "^1.33",
+ "symfony/routing": "^7.4|^8.0",
+ "symfony/service-contracts": "^3.7",
+ "symfony/var-exporter": "^8.1"
},
"conflict": {
"doctrine/persistence": "<1.3",
"phpdocumentor/reflection-docblock": "<5.2|>=7",
"phpdocumentor/type-resolver": "<1.5.1",
- "symfony/asset": "<6.4",
- "symfony/asset-mapper": "<6.4",
- "symfony/clock": "<6.4",
- "symfony/console": "<6.4",
- "symfony/dom-crawler": "<6.4",
- "symfony/dotenv": "<6.4",
+ "symfony/console": "<8.1",
"symfony/form": "<7.4",
- "symfony/http-client": "<6.4",
- "symfony/lock": "<6.4",
- "symfony/mailer": "<6.4",
- "symfony/messenger": "<7.4",
- "symfony/mime": "<6.4.37|>=7.0,<7.4.9|>=8.0,<8.0.9",
- "symfony/property-access": "<6.4",
- "symfony/property-info": "<6.4",
- "symfony/runtime": "<6.4.13|>=7.0,<7.1.6",
- "symfony/scheduler": "<6.4.4|>=7.0.0,<7.0.4",
- "symfony/security-core": "<6.4",
- "symfony/security-csrf": "<7.2",
- "symfony/serializer": "<7.2.5",
- "symfony/stopwatch": "<6.4",
- "symfony/translation": "<7.3",
- "symfony/twig-bridge": "<6.4",
- "symfony/twig-bundle": "<6.4",
- "symfony/validator": "<6.4",
- "symfony/web-profiler-bundle": "<6.4",
- "symfony/webhook": "<7.2",
+ "symfony/json-streamer": "<7.4",
+ "symfony/messenger": "<7.4.10|>=8.0,<8.0.10",
+ "symfony/mime": "<7.4.9|>=8.0,<8.0.9",
+ "symfony/security-csrf": "<7.4",
+ "symfony/serializer": "<7.4",
+ "symfony/translation": "<7.4",
+ "symfony/webhook": "<7.4",
"symfony/workflow": "<7.4"
},
"require-dev": {
"doctrine/persistence": "^1.3|^2|^3",
"dragonmantank/cron-expression": "^3.1",
"phpdocumentor/reflection-docblock": "^5.2|^6.0",
+ "phpstan/phpdoc-parser": "^1.0|^2.0",
"seld/jsonlint": "^1.10",
- "symfony/asset": "^6.4|^7.0|^8.0",
- "symfony/asset-mapper": "^6.4|^7.0|^8.0",
- "symfony/browser-kit": "^6.4|^7.0|^8.0",
- "symfony/clock": "^6.4|^7.0|^8.0",
- "symfony/console": "^6.4|^7.0|^8.0",
- "symfony/css-selector": "^6.4|^7.0|^8.0",
- "symfony/dom-crawler": "^6.4|^7.0|^8.0",
- "symfony/dotenv": "^6.4|^7.0|^8.0",
- "symfony/expression-language": "^6.4|^7.0|^8.0",
+ "symfony/asset": "^7.4|^8.0",
+ "symfony/asset-mapper": "^7.4|^8.0",
+ "symfony/browser-kit": "^7.4|^8.0",
+ "symfony/clock": "^7.4|^8.0",
+ "symfony/console": "^8.1",
+ "symfony/css-selector": "^7.4|^8.0",
+ "symfony/dom-crawler": "^7.4|^8.0",
+ "symfony/dotenv": "^7.4|^8.0",
+ "symfony/expression-language": "^7.4|^8.0",
"symfony/form": "^7.4|^8.0",
- "symfony/html-sanitizer": "^6.4|^7.0|^8.0",
- "symfony/http-client": "^6.4|^7.0|^8.0",
- "symfony/json-streamer": "^7.3|^8.0",
- "symfony/lock": "^6.4|^7.0|^8.0",
- "symfony/mailer": "^6.4|^7.0|^8.0",
- "symfony/messenger": "^7.4|^8.0",
- "symfony/mime": "^6.4.37|^7.4.9|^8.0.9",
- "symfony/notifier": "^6.4|^7.0|^8.0",
- "symfony/object-mapper": "^7.3|^8.0",
- "symfony/polyfill-intl-icu": "~1.0",
- "symfony/process": "^6.4|^7.0|^8.0",
- "symfony/property-info": "^6.4|^7.0|^8.0",
- "symfony/rate-limiter": "^6.4|^7.0|^8.0",
- "symfony/runtime": "^6.4.13|^7.1.6|^8.0",
- "symfony/scheduler": "^6.4.4|^7.0.4|^8.0",
- "symfony/security-bundle": "^6.4|^7.0|^8.0",
- "symfony/semaphore": "^6.4|^7.0|^8.0",
- "symfony/serializer": "^7.2.5|^8.0",
- "symfony/stopwatch": "^6.4|^7.0|^8.0",
- "symfony/string": "^6.4|^7.0|^8.0",
- "symfony/translation": "^7.3|^8.0",
- "symfony/twig-bundle": "^6.4|^7.0|^8.0",
- "symfony/type-info": "^7.1.8|^8.0",
- "symfony/uid": "^6.4|^7.0|^8.0",
+ "symfony/html-sanitizer": "^7.4|^8.0",
+ "symfony/http-client": "^7.4|^8.0",
+ "symfony/json-streamer": "^7.4|^8.0",
+ "symfony/lock": "^7.4|^8.0",
+ "symfony/mailer": "^7.4|^8.0",
+ "symfony/messenger": "^7.4.10|^8.0.10",
+ "symfony/mime": "^7.4.9|^8.0.9",
+ "symfony/notifier": "^7.4|^8.0",
+ "symfony/object-mapper": "^7.4.9|^8.0.9",
+ "symfony/polyfill-intl-icu": "^1.0",
+ "symfony/process": "^7.4|^8.0",
+ "symfony/property-info": "^7.4|^8.0",
+ "symfony/rate-limiter": "^7.4|^8.0",
+ "symfony/runtime": "^7.4|^8.0",
+ "symfony/scheduler": "^7.4|^8.0",
+ "symfony/security-bundle": "^7.4|^8.0",
+ "symfony/semaphore": "^7.4|^8.0",
+ "symfony/serializer": "^7.4|^8.0",
+ "symfony/stopwatch": "^7.4|^8.0",
+ "symfony/string": "^7.4|^8.0",
+ "symfony/translation": "^7.4|^8.0",
+ "symfony/twig-bundle": "^7.4|^8.0",
+ "symfony/type-info": "^7.4.1|^8.0.1",
+ "symfony/uid": "^7.4|^8.0",
"symfony/validator": "^7.4|^8.0",
- "symfony/web-link": "^6.4|^7.0|^8.0",
- "symfony/webhook": "^7.2|^8.0",
+ "symfony/web-link": "^7.4|^8.0",
+ "symfony/webhook": "^7.4|^8.0",
"symfony/workflow": "^7.4|^8.0",
- "symfony/yaml": "^7.3|^8.0",
- "twig/twig": "^3.12"
+ "symfony/yaml": "^7.4|^8.0"
},
"type": "symfony-bundle",
"autoload": {
@@ -2852,7 +2817,7 @@
"description": "Provides a tight integration between Symfony components and the Symfony full-stack framework",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/framework-bundle/tree/v7.4.13"
+ "source": "https://github.com/symfony/framework-bundle/tree/v8.1.0"
},
"funding": [
{
@@ -2872,35 +2837,32 @@
"type": "tidelift"
}
],
- "time": "2026-05-23T18:04:28+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/http-client",
- "version": "v7.4.13",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-client.git",
- "reference": "e8a112b8415707265a7e614278136a9d92989a6a"
+ "reference": "68a48e4c31f63fcd1bdff997a85a09e55efe8cdb"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-client/zipball/e8a112b8415707265a7e614278136a9d92989a6a",
- "reference": "e8a112b8415707265a7e614278136a9d92989a6a",
+ "url": "https://api.github.com/repos/symfony/http-client/zipball/68a48e4c31f63fcd1bdff997a85a09e55efe8cdb",
+ "reference": "68a48e4c31f63fcd1bdff997a85a09e55efe8cdb",
"shasum": ""
},
"require": {
- "php": ">=8.2",
+ "php": ">=8.4.1",
"psr/log": "^1|^2|^3",
- "symfony/deprecation-contracts": "^2.5|^3",
- "symfony/http-client-contracts": "~3.4.4|^3.5.2",
- "symfony/polyfill-php83": "^1.29",
+ "symfony/deprecation-contracts": "^2.5|^3.0",
+ "symfony/http-client-contracts": "^3.7",
"symfony/service-contracts": "^2.5|^3"
},
"conflict": {
- "amphp/amp": "<2.5",
- "amphp/socket": "<1.1",
- "php-http/discovery": "<1.15",
- "symfony/http-foundation": "<6.4"
+ "amphp/amp": "<3",
+ "php-http/discovery": "<1.15"
},
"provide": {
"php-http/async-client-implementation": "*",
@@ -2909,20 +2871,19 @@
"symfony/http-client-implementation": "3.0"
},
"require-dev": {
- "amphp/http-client": "^4.2.1|^5.0",
- "amphp/http-tunnel": "^1.0|^2.0",
- "guzzlehttp/promises": "^1.4|^2.0",
+ "amphp/http-client": "^5.3.2",
+ "amphp/http-tunnel": "^2.0",
+ "guzzlehttp/guzzle": "^7.10",
"nyholm/psr7": "^1.0",
"php-http/httplug": "^1.0|^2.0",
"psr/http-client": "^1.0",
- "symfony/amphp-http-client-meta": "^1.0|^2.0",
- "symfony/cache": "^6.4|^7.0|^8.0",
- "symfony/dependency-injection": "^6.4|^7.0|^8.0",
- "symfony/http-kernel": "^6.4|^7.0|^8.0",
- "symfony/messenger": "^6.4|^7.0|^8.0",
- "symfony/process": "^6.4|^7.0|^8.0",
- "symfony/rate-limiter": "^6.4|^7.0|^8.0",
- "symfony/stopwatch": "^6.4|^7.0|^8.0"
+ "symfony/cache": "^7.4|^8.0",
+ "symfony/dependency-injection": "^7.4|^8.0",
+ "symfony/http-kernel": "^7.4|^8.0",
+ "symfony/messenger": "^7.4|^8.0",
+ "symfony/process": "^7.4|^8.0",
+ "symfony/rate-limiter": "^7.4|^8.0",
+ "symfony/stopwatch": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -2953,7 +2914,7 @@
"http"
],
"support": {
- "source": "https://github.com/symfony/http-client/tree/v7.4.13"
+ "source": "https://github.com/symfony/http-client/tree/v8.1.0"
},
"funding": [
{
@@ -2973,7 +2934,7 @@
"type": "tidelift"
}
],
- "time": "2026-05-24T09:57:54+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/http-client-contracts",
@@ -3059,37 +3020,36 @@
},
{
"name": "symfony/http-foundation",
- "version": "v7.4.13",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-foundation.git",
- "reference": "bc354f47c62301e990b7874fa662326368508e2c"
+ "reference": "af11474600f06718086c2cda4fa6fa8d0a672e7e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/bc354f47c62301e990b7874fa662326368508e2c",
- "reference": "bc354f47c62301e990b7874fa662326368508e2c",
+ "url": "https://api.github.com/repos/symfony/http-foundation/zipball/af11474600f06718086c2cda4fa6fa8d0a672e7e",
+ "reference": "af11474600f06718086c2cda4fa6fa8d0a672e7e",
"shasum": ""
},
"require": {
- "php": ">=8.2",
+ "php": ">=8.4.1",
"symfony/deprecation-contracts": "^2.5|^3",
"symfony/polyfill-mbstring": "^1.1"
},
"conflict": {
- "doctrine/dbal": "<3.6",
- "symfony/cache": "<6.4.12|>=7.0,<7.1.5"
+ "doctrine/dbal": "<4.3"
},
"require-dev": {
- "doctrine/dbal": "^3.6|^4",
+ "doctrine/dbal": "^4.3",
"predis/predis": "^1.1|^2.0",
- "symfony/cache": "^6.4.12|^7.1.5|^8.0",
- "symfony/clock": "^6.4|^7.0|^8.0",
- "symfony/dependency-injection": "^6.4|^7.0|^8.0",
- "symfony/expression-language": "^6.4|^7.0|^8.0",
- "symfony/http-kernel": "^6.4|^7.0|^8.0",
- "symfony/mime": "^6.4|^7.0|^8.0",
- "symfony/rate-limiter": "^6.4|^7.0|^8.0"
+ "symfony/cache": "^7.4|^8.0",
+ "symfony/clock": "^7.4|^8.0",
+ "symfony/dependency-injection": "^7.4|^8.0",
+ "symfony/expression-language": "^7.4|^8.0",
+ "symfony/http-kernel": "^7.4|^8.0",
+ "symfony/mime": "^7.4|^8.0",
+ "symfony/rate-limiter": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -3117,7 +3077,7 @@
"description": "Defines an object-oriented layer for the HTTP specification",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/http-foundation/tree/v7.4.13"
+ "source": "https://github.com/symfony/http-foundation/tree/v8.1.0"
},
"funding": [
{
@@ -3137,78 +3097,68 @@
"type": "tidelift"
}
],
- "time": "2026-05-24T11:20:33+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/http-kernel",
- "version": "v7.4.13",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-kernel.git",
- "reference": "9df847980c436451f4f51d1284491bb4356dd989"
+ "reference": "cefeb37c82eed3e0c42fa25ba64cd3a908d90f39"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/9df847980c436451f4f51d1284491bb4356dd989",
- "reference": "9df847980c436451f4f51d1284491bb4356dd989",
+ "url": "https://api.github.com/repos/symfony/http-kernel/zipball/cefeb37c82eed3e0c42fa25ba64cd3a908d90f39",
+ "reference": "cefeb37c82eed3e0c42fa25ba64cd3a908d90f39",
"shasum": ""
},
"require": {
- "php": ">=8.2",
+ "php": ">=8.4.1",
"psr/log": "^1|^2|^3",
"symfony/deprecation-contracts": "^2.5|^3",
- "symfony/error-handler": "^6.4|^7.0|^8.0",
- "symfony/event-dispatcher": "^7.3|^8.0",
+ "symfony/error-handler": "^7.4|^8.0",
+ "symfony/event-dispatcher": "^7.4|^8.0",
"symfony/http-foundation": "^7.4|^8.0",
"symfony/polyfill-ctype": "^1.8"
},
"conflict": {
- "symfony/browser-kit": "<6.4",
- "symfony/cache": "<6.4",
- "symfony/config": "<6.4",
- "symfony/console": "<6.4",
- "symfony/dependency-injection": "<6.4",
- "symfony/doctrine-bridge": "<6.4",
+ "symfony/dependency-injection": "<8.1",
"symfony/flex": "<2.10",
- "symfony/form": "<6.4",
- "symfony/http-client": "<6.4",
"symfony/http-client-contracts": "<2.5",
- "symfony/mailer": "<6.4",
- "symfony/messenger": "<6.4",
- "symfony/translation": "<6.4",
"symfony/translation-contracts": "<2.5",
- "symfony/twig-bridge": "<6.4",
- "symfony/validator": "<6.4",
- "symfony/var-dumper": "<6.4",
- "twig/twig": "<3.12"
+ "symfony/var-dumper": "<8.1",
+ "symfony/web-profiler-bundle": "<8.1",
+ "twig/twig": "<3.21"
},
"provide": {
"psr/log-implementation": "1.0|2.0|3.0"
},
"require-dev": {
"psr/cache": "^1.0|^2.0|^3.0",
- "symfony/browser-kit": "^6.4|^7.0|^8.0",
- "symfony/clock": "^6.4|^7.0|^8.0",
- "symfony/config": "^6.4|^7.0|^8.0",
- "symfony/console": "^6.4|^7.0|^8.0",
- "symfony/css-selector": "^6.4|^7.0|^8.0",
- "symfony/dependency-injection": "^6.4.1|^7.0.1|^8.0",
- "symfony/dom-crawler": "^6.4|^7.0|^8.0",
- "symfony/expression-language": "^6.4|^7.0|^8.0",
- "symfony/finder": "^6.4|^7.0|^8.0",
+ "symfony/browser-kit": "^7.4|^8.0",
+ "symfony/clock": "^7.4|^8.0",
+ "symfony/config": "^7.4|^8.0",
+ "symfony/console": "^7.4|^8.0",
+ "symfony/css-selector": "^7.4|^8.0",
+ "symfony/dependency-injection": "^8.1",
+ "symfony/dom-crawler": "^7.4|^8.0",
+ "symfony/expression-language": "^7.4|^8.0",
+ "symfony/finder": "^7.4|^8.0",
"symfony/http-client-contracts": "^2.5|^3",
- "symfony/process": "^6.4|^7.0|^8.0",
- "symfony/property-access": "^7.1|^8.0",
- "symfony/routing": "^6.4|^7.0|^8.0",
- "symfony/serializer": "^7.1|^8.0",
- "symfony/stopwatch": "^6.4|^7.0|^8.0",
- "symfony/translation": "^6.4|^7.0|^8.0",
+ "symfony/process": "^7.4|^8.0",
+ "symfony/property-access": "^7.4|^8.0",
+ "symfony/rate-limiter": "^7.4|^8.0",
+ "symfony/routing": "^7.4|^8.0",
+ "symfony/serializer": "^7.4|^8.0",
+ "symfony/stopwatch": "^7.4|^8.0",
+ "symfony/translation": "^7.4|^8.0",
"symfony/translation-contracts": "^2.5|^3",
- "symfony/uid": "^6.4|^7.0|^8.0",
- "symfony/validator": "^6.4|^7.0|^8.0",
- "symfony/var-dumper": "^6.4|^7.0|^8.0",
- "symfony/var-exporter": "^6.4|^7.0|^8.0",
- "twig/twig": "^3.12"
+ "symfony/uid": "^7.4|^8.0",
+ "symfony/validator": "^7.4|^8.0",
+ "symfony/var-dumper": "^8.1",
+ "symfony/var-exporter": "^7.4|^8.0",
+ "twig/twig": "^3.21"
},
"type": "library",
"autoload": {
@@ -3236,7 +3186,7 @@
"description": "Provides a structured process for converting a Request into a Response",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/http-kernel/tree/v7.4.13"
+ "source": "https://github.com/symfony/http-kernel/tree/v8.1.0"
},
"funding": [
{
@@ -3256,42 +3206,36 @@
"type": "tidelift"
}
],
- "time": "2026-05-27T08:31:43+00:00"
+ "time": "2026-05-29T08:46:08+00:00"
},
{
"name": "symfony/monolog-bridge",
- "version": "v7.4.12",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/monolog-bridge.git",
- "reference": "20bb2345ac7a9dd57724b6b7ada92c6d7d67b4b8"
+ "reference": "38563fac41ede8521e5e3dc139a4f2b097471c8c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/20bb2345ac7a9dd57724b6b7ada92c6d7d67b4b8",
- "reference": "20bb2345ac7a9dd57724b6b7ada92c6d7d67b4b8",
+ "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/38563fac41ede8521e5e3dc139a4f2b097471c8c",
+ "reference": "38563fac41ede8521e5e3dc139a4f2b097471c8c",
"shasum": ""
},
"require": {
"monolog/monolog": "^3",
- "php": ">=8.2",
- "symfony/deprecation-contracts": "^2.5|^3",
- "symfony/http-kernel": "^6.4|^7.0|^8.0",
+ "php": ">=8.4.1",
+ "symfony/http-kernel": "^7.4|^8.0",
"symfony/service-contracts": "^2.5|^3"
},
- "conflict": {
- "symfony/console": "<6.4",
- "symfony/http-foundation": "<6.4",
- "symfony/security-core": "<6.4"
- },
"require-dev": {
- "symfony/console": "^6.4|^7.0|^8.0",
- "symfony/http-client": "^6.4|^7.0|^8.0",
- "symfony/mailer": "^6.4|^7.0|^8.0",
- "symfony/messenger": "^6.4|^7.0|^8.0",
- "symfony/mime": "^6.4|^7.0|^8.0",
- "symfony/security-core": "^6.4|^7.0|^8.0",
- "symfony/var-dumper": "^6.4|^7.0|^8.0"
+ "symfony/console": "^7.4|^8.0",
+ "symfony/http-client": "^7.4|^8.0",
+ "symfony/mailer": "^7.4|^8.0",
+ "symfony/messenger": "^7.4|^8.0",
+ "symfony/mime": "^7.4|^8.0",
+ "symfony/security-core": "^7.4|^8.0",
+ "symfony/var-dumper": "^7.4|^8.0"
},
"type": "symfony-bridge",
"autoload": {
@@ -3319,7 +3263,7 @@
"description": "Provides integration for Monolog with various Symfony components",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/monolog-bridge/tree/v7.4.12"
+ "source": "https://github.com/symfony/monolog-bridge/tree/v8.1.0"
},
"funding": [
{
@@ -3339,7 +3283,7 @@
"type": "tidelift"
}
],
- "time": "2026-05-20T07:20:23+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/monolog-bundle",
@@ -3422,27 +3366,24 @@
},
{
"name": "symfony/password-hasher",
- "version": "v7.4.8",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/password-hasher.git",
- "reference": "18a7d92126c95962f7efbcc9e421ba710a366847"
+ "reference": "6934d16beaa4677f2c4584229fff1b51099dd7af"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/password-hasher/zipball/18a7d92126c95962f7efbcc9e421ba710a366847",
- "reference": "18a7d92126c95962f7efbcc9e421ba710a366847",
+ "url": "https://api.github.com/repos/symfony/password-hasher/zipball/6934d16beaa4677f2c4584229fff1b51099dd7af",
+ "reference": "6934d16beaa4677f2c4584229fff1b51099dd7af",
"shasum": ""
},
"require": {
- "php": ">=8.2"
- },
- "conflict": {
- "symfony/security-core": "<6.4"
+ "php": ">=8.4.1"
},
"require-dev": {
- "symfony/console": "^6.4|^7.0|^8.0",
- "symfony/security-core": "^6.4|^7.0|^8.0"
+ "symfony/console": "^7.4|^8.0",
+ "symfony/security-core": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -3474,7 +3415,94 @@
"password"
],
"support": {
- "source": "https://github.com/symfony/password-hasher/tree/v7.4.8"
+ "source": "https://github.com/symfony/password-hasher/tree/v8.1.0"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-05-29T05:06:50+00:00"
+ },
+ {
+ "name": "symfony/polyfill-deepclone",
+ "version": "v1.37.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-deepclone.git",
+ "reference": "2ca9e9e75ead5174f2b44613a646bdc9338b8eb4"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-deepclone/zipball/2ca9e9e75ead5174f2b44613a646bdc9338b8eb4",
+ "reference": "2ca9e9e75ead5174f2b44613a646bdc9338b8eb4",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.1"
+ },
+ "provide": {
+ "ext-deepclone": "*"
+ },
+ "suggest": {
+ "ext-deepclone": "For best performance"
+ },
+ "type": "library",
+ "extra": {
+ "thanks": {
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
+ }
+ },
+ "autoload": {
+ "files": [
+ "bootstrap.php"
+ ],
+ "psr-4": {
+ "Symfony\\Polyfill\\DeepClone\\": ""
+ },
+ "classmap": [
+ "Resources/stubs"
+ ]
+ },
+ "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 for the deepclone extension",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "compatibility",
+ "deepclone",
+ "polyfill",
+ "portable",
+ "shim"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/polyfill-deepclone/tree/v1.37.0"
},
"funding": [
{
@@ -3494,7 +3522,7 @@
"type": "tidelift"
}
],
- "time": "2026-03-24T13:12:05+00:00"
+ "time": "2026-04-26T13:03:27+00:00"
},
{
"name": "symfony/polyfill-intl-grapheme",
@@ -3749,38 +3777,34 @@
"time": "2026-05-26T12:51:13+00:00"
},
{
- "name": "symfony/polyfill-php83",
- "version": "v1.38.1",
+ "name": "symfony/property-access",
+ "version": "v8.1.0",
"source": {
"type": "git",
- "url": "https://github.com/symfony/polyfill-php83.git",
- "reference": "8339098cae28673c15cce00d80734af0453054e2"
+ "url": "https://github.com/symfony/property-access.git",
+ "reference": "9261ef060f26cc7b728f67f141ba19b98a6209a9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/8339098cae28673c15cce00d80734af0453054e2",
- "reference": "8339098cae28673c15cce00d80734af0453054e2",
+ "url": "https://api.github.com/repos/symfony/property-access/zipball/9261ef060f26cc7b728f67f141ba19b98a6209a9",
+ "reference": "9261ef060f26cc7b728f67f141ba19b98a6209a9",
"shasum": ""
},
"require": {
- "php": ">=7.2"
+ "php": ">=8.4.1",
+ "symfony/property-info": "^7.4.4|^8.0.4"
},
- "type": "library",
- "extra": {
- "thanks": {
- "url": "https://github.com/symfony/polyfill",
- "name": "symfony/polyfill"
- }
+ "require-dev": {
+ "symfony/cache": "^7.4|^8.0",
+ "symfony/var-exporter": "^7.4|^8.0"
},
+ "type": "library",
"autoload": {
- "files": [
- "bootstrap.php"
- ],
"psr-4": {
- "Symfony\\Polyfill\\Php83\\": ""
+ "Symfony\\Component\\PropertyAccess\\": ""
},
- "classmap": [
- "Resources/stubs"
+ "exclude-from-classmap": [
+ "/Tests/"
]
},
"notification-url": "https://packagist.org/downloads/",
@@ -3789,24 +3813,29 @@
],
"authors": [
{
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Symfony polyfill backporting some PHP 8.3+ features to lower PHP versions",
+ "description": "Provides functions to read and write from/to an object or array using a simple string notation",
"homepage": "https://symfony.com",
"keywords": [
- "compatibility",
- "polyfill",
- "portable",
- "shim"
+ "access",
+ "array",
+ "extraction",
+ "index",
+ "injection",
+ "object",
+ "property",
+ "property-path",
+ "reflection"
],
"support": {
- "source": "https://github.com/symfony/polyfill-php83/tree/v1.38.1"
+ "source": "https://github.com/symfony/property-access/tree/v8.1.0"
},
"funding": [
{
@@ -3826,41 +3855,45 @@
"type": "tidelift"
}
],
- "time": "2026-05-26T12:51:13+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
- "name": "symfony/polyfill-php84",
- "version": "v1.38.1",
+ "name": "symfony/property-info",
+ "version": "v8.1.0",
"source": {
"type": "git",
- "url": "https://github.com/symfony/polyfill-php84.git",
- "reference": "f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa"
+ "url": "https://github.com/symfony/property-info.git",
+ "reference": "4721e8c56d0cd2378e0ef9a9899f810008b859f7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php84/zipball/f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa",
- "reference": "f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa",
+ "url": "https://api.github.com/repos/symfony/property-info/zipball/4721e8c56d0cd2378e0ef9a9899f810008b859f7",
+ "reference": "4721e8c56d0cd2378e0ef9a9899f810008b859f7",
"shasum": ""
},
"require": {
- "php": ">=7.2"
+ "php": ">=8.4.1",
+ "symfony/string": "^7.4|^8.0",
+ "symfony/type-info": "^7.4.7|^8.0.7"
},
- "type": "library",
- "extra": {
- "thanks": {
- "url": "https://github.com/symfony/polyfill",
- "name": "symfony/polyfill"
- }
+ "conflict": {
+ "phpdocumentor/reflection-docblock": "<5.2|>=7",
+ "phpdocumentor/type-resolver": "<1.5.1"
+ },
+ "require-dev": {
+ "phpdocumentor/reflection-docblock": "^5.2|^6.0",
+ "phpstan/phpdoc-parser": "^1.0|^2.0",
+ "symfony/cache": "^7.4|^8.0",
+ "symfony/dependency-injection": "^7.4|^8.0",
+ "symfony/serializer": "^7.4|^8.0"
},
+ "type": "library",
"autoload": {
- "files": [
- "bootstrap.php"
- ],
"psr-4": {
- "Symfony\\Polyfill\\Php84\\": ""
+ "Symfony\\Component\\PropertyInfo\\": ""
},
- "classmap": [
- "Resources/stubs"
+ "exclude-from-classmap": [
+ "/Tests/"
]
},
"notification-url": "https://packagist.org/downloads/",
@@ -3869,24 +3902,26 @@
],
"authors": [
{
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
+ "name": "Kévin Dunglas",
+ "email": "dunglas@gmail.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Symfony polyfill backporting some PHP 8.4+ features to lower PHP versions",
+ "description": "Extracts information about PHP class' properties using metadata of popular sources",
"homepage": "https://symfony.com",
"keywords": [
- "compatibility",
- "polyfill",
- "portable",
- "shim"
+ "doctrine",
+ "phpdoc",
+ "property",
+ "symfony",
+ "type",
+ "validator"
],
"support": {
- "source": "https://github.com/symfony/polyfill-php84/tree/v1.38.1"
+ "source": "https://github.com/symfony/property-info/tree/v8.1.0"
},
"funding": [
{
@@ -3906,41 +3941,41 @@
"type": "tidelift"
}
],
- "time": "2026-05-26T12:51:13+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
- "name": "symfony/polyfill-php85",
- "version": "v1.38.1",
+ "name": "symfony/routing",
+ "version": "v8.1.0",
"source": {
"type": "git",
- "url": "https://github.com/symfony/polyfill-php85.git",
- "reference": "ba2ba04f3352cfa2dcbbcb90aee13ed967f505b1"
+ "url": "https://github.com/symfony/routing.git",
+ "reference": "fe0bfec72c8a806109fb9c3a5f2b898fe0c76eb3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php85/zipball/ba2ba04f3352cfa2dcbbcb90aee13ed967f505b1",
- "reference": "ba2ba04f3352cfa2dcbbcb90aee13ed967f505b1",
+ "url": "https://api.github.com/repos/symfony/routing/zipball/fe0bfec72c8a806109fb9c3a5f2b898fe0c76eb3",
+ "reference": "fe0bfec72c8a806109fb9c3a5f2b898fe0c76eb3",
"shasum": ""
},
"require": {
- "php": ">=7.2"
+ "php": ">=8.4.1",
+ "symfony/deprecation-contracts": "^2.5|^3"
},
- "type": "library",
- "extra": {
- "thanks": {
- "url": "https://github.com/symfony/polyfill",
- "name": "symfony/polyfill"
- }
+ "require-dev": {
+ "psr/log": "^1|^2|^3",
+ "symfony/config": "^7.4|^8.0",
+ "symfony/dependency-injection": "^7.4|^8.0",
+ "symfony/expression-language": "^7.4|^8.0",
+ "symfony/http-foundation": "^7.4|^8.0",
+ "symfony/yaml": "^7.4|^8.0"
},
+ "type": "library",
"autoload": {
- "files": [
- "bootstrap.php"
- ],
"psr-4": {
- "Symfony\\Polyfill\\Php85\\": ""
+ "Symfony\\Component\\Routing\\": ""
},
- "classmap": [
- "Resources/stubs"
+ "exclude-from-classmap": [
+ "/Tests/"
]
},
"notification-url": "https://packagist.org/downloads/",
@@ -3949,24 +3984,24 @@
],
"authors": [
{
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Symfony polyfill backporting some PHP 8.5+ features to lower PHP versions",
+ "description": "Maps an HTTP request to a set of configuration variables",
"homepage": "https://symfony.com",
"keywords": [
- "compatibility",
- "polyfill",
- "portable",
- "shim"
+ "router",
+ "routing",
+ "uri",
+ "url"
],
"support": {
- "source": "https://github.com/symfony/polyfill-php85/tree/v1.38.1"
+ "source": "https://github.com/symfony/routing/tree/v8.1.0"
},
"funding": [
{
@@ -3986,34 +4021,45 @@
"type": "tidelift"
}
],
- "time": "2026-05-26T02:25:22+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
- "name": "symfony/property-access",
- "version": "v7.4.8",
+ "name": "symfony/runtime",
+ "version": "v8.1.0",
"source": {
"type": "git",
- "url": "https://github.com/symfony/property-access.git",
- "reference": "b7dad9dae8b8a47ef7ecc76c8569e7d8c7d90cfc"
+ "url": "https://github.com/symfony/runtime.git",
+ "reference": "b7ea1abe04561e814b3134db0f56c287cedb35cc"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/property-access/zipball/b7dad9dae8b8a47ef7ecc76c8569e7d8c7d90cfc",
- "reference": "b7dad9dae8b8a47ef7ecc76c8569e7d8c7d90cfc",
+ "url": "https://api.github.com/repos/symfony/runtime/zipball/b7ea1abe04561e814b3134db0f56c287cedb35cc",
+ "reference": "b7ea1abe04561e814b3134db0f56c287cedb35cc",
"shasum": ""
},
"require": {
- "php": ">=8.2",
- "symfony/property-info": "^6.4.32|~7.3.10|^7.4.4|^8.0.4"
+ "composer-plugin-api": "^1.0|^2.0",
+ "php": ">=8.4.1"
+ },
+ "conflict": {
+ "symfony/error-handler": "<7.4"
},
"require-dev": {
- "symfony/cache": "^6.4|^7.0|^8.0",
- "symfony/var-exporter": "^6.4.1|^7.0.1|^8.0"
+ "composer/composer": "^2.6",
+ "symfony/console": "^7.4|^8.0",
+ "symfony/dependency-injection": "^7.4|^8.0",
+ "symfony/dotenv": "^7.4|^8.0",
+ "symfony/http-foundation": "^7.4|^8.0",
+ "symfony/http-kernel": "^7.4|^8.0"
+ },
+ "type": "composer-plugin",
+ "extra": {
+ "class": "Symfony\\Component\\Runtime\\Internal\\ComposerPlugin"
},
- "type": "library",
"autoload": {
"psr-4": {
- "Symfony\\Component\\PropertyAccess\\": ""
+ "Symfony\\Component\\Runtime\\": "",
+ "Symfony\\Runtime\\Symfony\\Component\\": "Internal/"
},
"exclude-from-classmap": [
"/Tests/"
@@ -4025,29 +4071,21 @@
],
"authors": [
{
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Provides functions to read and write from/to an object or array using a simple string notation",
+ "description": "Enables decoupling PHP applications from global state",
"homepage": "https://symfony.com",
"keywords": [
- "access",
- "array",
- "extraction",
- "index",
- "injection",
- "object",
- "property",
- "property-path",
- "reflection"
+ "runtime"
],
"support": {
- "source": "https://github.com/symfony/property-access/tree/v7.4.8"
+ "source": "https://github.com/symfony/runtime/tree/v8.1.0"
},
"funding": [
{
@@ -4067,46 +4105,65 @@
"type": "tidelift"
}
],
- "time": "2026-03-24T13:12:05+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
- "name": "symfony/property-info",
- "version": "v7.4.8",
+ "name": "symfony/security-bundle",
+ "version": "v8.1.0",
"source": {
"type": "git",
- "url": "https://github.com/symfony/property-info.git",
- "reference": "ac5e82528b986c4f7cfccbf7764b5d2e824d6175"
+ "url": "https://github.com/symfony/security-bundle.git",
+ "reference": "0489a6247f729652db9b9ff408f69ac3bee3589e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/property-info/zipball/ac5e82528b986c4f7cfccbf7764b5d2e824d6175",
- "reference": "ac5e82528b986c4f7cfccbf7764b5d2e824d6175",
+ "url": "https://api.github.com/repos/symfony/security-bundle/zipball/0489a6247f729652db9b9ff408f69ac3bee3589e",
+ "reference": "0489a6247f729652db9b9ff408f69ac3bee3589e",
"shasum": ""
},
"require": {
- "php": ">=8.2",
- "symfony/deprecation-contracts": "^2.5|^3",
- "symfony/string": "^6.4|^7.0|^8.0",
- "symfony/type-info": "^7.4.7|^8.0.7"
- },
- "conflict": {
- "phpdocumentor/reflection-docblock": "<5.2|>=7",
- "phpdocumentor/type-resolver": "<1.5.1",
- "symfony/cache": "<6.4",
- "symfony/dependency-injection": "<6.4",
- "symfony/serializer": "<6.4"
+ "composer-runtime-api": ">=2.1",
+ "ext-xml": "*",
+ "php": ">=8.4.1",
+ "symfony/clock": "^7.4|^8.0",
+ "symfony/config": "^7.4|^8.0",
+ "symfony/dependency-injection": "^7.4|^8.0",
+ "symfony/event-dispatcher": "^7.4|^8.0",
+ "symfony/http-foundation": "^7.4|^8.0",
+ "symfony/http-kernel": "^7.4|^8.0",
+ "symfony/password-hasher": "^7.4|^8.0",
+ "symfony/security-core": "^7.4|^8.0",
+ "symfony/security-csrf": "^7.4|^8.0",
+ "symfony/security-http": "^8.1",
+ "symfony/service-contracts": "^2.5|^3"
},
"require-dev": {
- "phpdocumentor/reflection-docblock": "^5.2|^6.0",
- "phpstan/phpdoc-parser": "^1.0|^2.0",
- "symfony/cache": "^6.4|^7.0|^8.0",
- "symfony/dependency-injection": "^6.4|^7.0|^8.0",
- "symfony/serializer": "^6.4|^7.0|^8.0"
+ "symfony/asset": "^7.4|^8.0",
+ "symfony/browser-kit": "^7.4|^8.0",
+ "symfony/console": "^7.4|^8.0",
+ "symfony/css-selector": "^7.4|^8.0",
+ "symfony/dom-crawler": "^7.4|^8.0",
+ "symfony/expression-language": "^7.4|^8.0",
+ "symfony/form": "^7.4|^8.0",
+ "symfony/framework-bundle": "^7.4|^8.0",
+ "symfony/http-client": "^7.4|^8.0",
+ "symfony/ldap": "^7.4|^8.0",
+ "symfony/process": "^7.4|^8.0",
+ "symfony/property-info": "^7.4|^8.0",
+ "symfony/rate-limiter": "^7.4|^8.0",
+ "symfony/runtime": "^7.4|^8.0",
+ "symfony/serializer": "^7.4|^8.0",
+ "symfony/translation": "^7.4|^8.0",
+ "symfony/twig-bridge": "^7.4|^8.0",
+ "symfony/twig-bundle": "^7.4|^8.0",
+ "symfony/validator": "^7.4|^8.0",
+ "symfony/yaml": "^7.4|^8.0",
+ "web-token/jwt-library": "^3.3.2|^4.0"
},
- "type": "library",
+ "type": "symfony-bundle",
"autoload": {
"psr-4": {
- "Symfony\\Component\\PropertyInfo\\": ""
+ "Symfony\\Bundle\\SecurityBundle\\": ""
},
"exclude-from-classmap": [
"/Tests/"
@@ -4118,26 +4175,18 @@
],
"authors": [
{
- "name": "Kévin Dunglas",
- "email": "dunglas@gmail.com"
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Extracts information about PHP class' properties using metadata of popular sources",
+ "description": "Provides a tight integration of the Security component into the Symfony full-stack framework",
"homepage": "https://symfony.com",
- "keywords": [
- "doctrine",
- "phpdoc",
- "property",
- "symfony",
- "type",
- "validator"
- ],
"support": {
- "source": "https://github.com/symfony/property-info/tree/v7.4.8"
+ "source": "https://github.com/symfony/security-bundle/tree/v8.1.0"
},
"funding": [
{
@@ -4157,43 +4206,47 @@
"type": "tidelift"
}
],
- "time": "2026-03-24T13:12:05+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
- "name": "symfony/routing",
- "version": "v7.4.13",
+ "name": "symfony/security-core",
+ "version": "v8.1.0",
"source": {
"type": "git",
- "url": "https://github.com/symfony/routing.git",
- "reference": "3a162171bb008e5e0f15dce6581373a4c0e8390d"
+ "url": "https://github.com/symfony/security-core.git",
+ "reference": "a8239abe61dafdd0c01c0b4019138b2855717f97"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/3a162171bb008e5e0f15dce6581373a4c0e8390d",
- "reference": "3a162171bb008e5e0f15dce6581373a4c0e8390d",
+ "url": "https://api.github.com/repos/symfony/security-core/zipball/a8239abe61dafdd0c01c0b4019138b2855717f97",
+ "reference": "a8239abe61dafdd0c01c0b4019138b2855717f97",
"shasum": ""
},
"require": {
- "php": ">=8.2",
- "symfony/deprecation-contracts": "^2.5|^3"
- },
- "conflict": {
- "symfony/config": "<6.4",
- "symfony/dependency-injection": "<6.4",
- "symfony/yaml": "<6.4"
+ "php": ">=8.4.1",
+ "symfony/event-dispatcher-contracts": "^2.5|^3",
+ "symfony/password-hasher": "^7.4|^8.0",
+ "symfony/service-contracts": "^2.5|^3"
},
"require-dev": {
+ "psr/cache": "^1.0|^2.0|^3.0",
+ "psr/container": "^1.1|^2.0",
"psr/log": "^1|^2|^3",
- "symfony/config": "^6.4|^7.0|^8.0",
- "symfony/dependency-injection": "^6.4|^7.0|^8.0",
- "symfony/expression-language": "^6.4|^7.0|^8.0",
- "symfony/http-foundation": "^6.4|^7.0|^8.0",
- "symfony/yaml": "^6.4|^7.0|^8.0"
+ "symfony/cache": "^7.4|^8.0",
+ "symfony/dependency-injection": "^7.4|^8.0",
+ "symfony/event-dispatcher": "^7.4|^8.0",
+ "symfony/expression-language": "^7.4|^8.0",
+ "symfony/http-foundation": "^7.4|^8.0",
+ "symfony/ldap": "^7.4|^8.0",
+ "symfony/property-access": "^7.4|^8.0",
+ "symfony/string": "^7.4|^8.0",
+ "symfony/translation": "^7.4|^8.0",
+ "symfony/validator": "^7.4|^8.0"
},
"type": "library",
"autoload": {
"psr-4": {
- "Symfony\\Component\\Routing\\": ""
+ "Symfony\\Component\\Security\\Core\\": ""
},
"exclude-from-classmap": [
"/Tests/"
@@ -4213,16 +4266,10 @@
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Maps an HTTP request to a set of configuration variables",
+ "description": "Symfony Security Component - Core Library",
"homepage": "https://symfony.com",
- "keywords": [
- "router",
- "routing",
- "uri",
- "url"
- ],
"support": {
- "source": "https://github.com/symfony/routing/tree/v7.4.13"
+ "source": "https://github.com/symfony/security-core/tree/v8.1.0"
},
"funding": [
{
@@ -4242,45 +4289,36 @@
"type": "tidelift"
}
],
- "time": "2026-05-24T11:20:33+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
- "name": "symfony/runtime",
- "version": "v7.4.13",
+ "name": "symfony/security-csrf",
+ "version": "v8.1.0",
"source": {
"type": "git",
- "url": "https://github.com/symfony/runtime.git",
- "reference": "1a24cf8aab3a9378117718b35525c4126ad3adec"
+ "url": "https://github.com/symfony/security-csrf.git",
+ "reference": "c865a8ee0d30b14545d7e5349b8e443f4fa9dc3f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/runtime/zipball/1a24cf8aab3a9378117718b35525c4126ad3adec",
- "reference": "1a24cf8aab3a9378117718b35525c4126ad3adec",
+ "url": "https://api.github.com/repos/symfony/security-csrf/zipball/c865a8ee0d30b14545d7e5349b8e443f4fa9dc3f",
+ "reference": "c865a8ee0d30b14545d7e5349b8e443f4fa9dc3f",
"shasum": ""
},
"require": {
- "composer-plugin-api": "^1.0|^2.0",
- "php": ">=8.2"
- },
- "conflict": {
- "symfony/dotenv": "<6.4"
+ "php": ">=8.4.1",
+ "symfony/deprecation-contracts": "^2.5|^3",
+ "symfony/security-core": "^7.4|^8.0"
},
"require-dev": {
- "composer/composer": "^2.6",
- "symfony/console": "^6.4|^7.0|^8.0",
- "symfony/dependency-injection": "^6.4|^7.0|^8.0",
- "symfony/dotenv": "^6.4|^7.0|^8.0",
- "symfony/http-foundation": "^6.4|^7.0|^8.0",
- "symfony/http-kernel": "^6.4|^7.0|^8.0"
- },
- "type": "composer-plugin",
- "extra": {
- "class": "Symfony\\Component\\Runtime\\Internal\\ComposerPlugin"
+ "psr/log": "^1|^2|^3",
+ "symfony/http-foundation": "^7.4|^8.0",
+ "symfony/http-kernel": "^7.4|^8.0"
},
+ "type": "library",
"autoload": {
"psr-4": {
- "Symfony\\Component\\Runtime\\": "",
- "Symfony\\Runtime\\Symfony\\Component\\": "Internal/"
+ "Symfony\\Component\\Security\\Csrf\\": ""
},
"exclude-from-classmap": [
"/Tests/"
@@ -4292,21 +4330,18 @@
],
"authors": [
{
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Enables decoupling PHP applications from global state",
+ "description": "Symfony Security Component - CSRF Library",
"homepage": "https://symfony.com",
- "keywords": [
- "runtime"
- ],
"support": {
- "source": "https://github.com/symfony/runtime/tree/v7.4.13"
+ "source": "https://github.com/symfony/security-csrf/tree/v8.1.0"
},
"funding": [
{
@@ -4326,76 +4361,52 @@
"type": "tidelift"
}
],
- "time": "2026-05-23T18:04:28+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
- "name": "symfony/security-bundle",
- "version": "v7.4.13",
+ "name": "symfony/security-http",
+ "version": "v8.1.0",
"source": {
"type": "git",
- "url": "https://github.com/symfony/security-bundle.git",
- "reference": "0cbc6528aa583795ab44e43b4e92a09acf927c6f"
+ "url": "https://github.com/symfony/security-http.git",
+ "reference": "e0e6c7b9e80eec37248b92359cbd6938c7086f4b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/security-bundle/zipball/0cbc6528aa583795ab44e43b4e92a09acf927c6f",
- "reference": "0cbc6528aa583795ab44e43b4e92a09acf927c6f",
+ "url": "https://api.github.com/repos/symfony/security-http/zipball/e0e6c7b9e80eec37248b92359cbd6938c7086f4b",
+ "reference": "e0e6c7b9e80eec37248b92359cbd6938c7086f4b",
"shasum": ""
},
"require": {
- "composer-runtime-api": ">=2.1",
- "ext-xml": "*",
- "php": ">=8.2",
- "symfony/clock": "^6.4|^7.0|^8.0",
- "symfony/config": "^7.4|^8.0",
- "symfony/dependency-injection": "^6.4.11|^7.1.4|^8.0",
+ "php": ">=8.4.1",
"symfony/deprecation-contracts": "^2.5|^3",
- "symfony/event-dispatcher": "^6.4|^7.0|^8.0",
- "symfony/http-foundation": "^6.4|^7.0|^8.0",
- "symfony/http-kernel": "^6.4.13|^7.1.6|^8.0",
- "symfony/password-hasher": "^6.4|^7.0|^8.0",
+ "symfony/http-foundation": "^7.4|^8.0",
+ "symfony/http-kernel": "^8.1",
+ "symfony/polyfill-mbstring": "^1.0",
+ "symfony/property-access": "^7.4|^8.0",
"symfony/security-core": "^7.4|^8.0",
- "symfony/security-csrf": "^6.4|^7.0|^8.0",
- "symfony/security-http": "^7.4|^8.0",
"symfony/service-contracts": "^2.5|^3"
},
"conflict": {
- "symfony/browser-kit": "<6.4",
- "symfony/console": "<6.4",
- "symfony/framework-bundle": "<6.4",
- "symfony/http-client": "<6.4",
- "symfony/ldap": "<6.4",
- "symfony/serializer": "<6.4",
- "symfony/twig-bundle": "<6.4",
- "symfony/validator": "<6.4"
+ "symfony/http-client-contracts": "<3.0"
},
"require-dev": {
- "symfony/asset": "^6.4|^7.0|^8.0",
- "symfony/browser-kit": "^6.4|^7.0|^8.0",
- "symfony/console": "^6.4|^7.0|^8.0",
- "symfony/css-selector": "^6.4|^7.0|^8.0",
- "symfony/dom-crawler": "^6.4|^7.0|^8.0",
- "symfony/expression-language": "^6.4|^7.0|^8.0",
- "symfony/form": "^6.4|^7.0|^8.0",
- "symfony/framework-bundle": "^6.4.13|^7.1.6|^8.0",
- "symfony/http-client": "^6.4|^7.0|^8.0",
- "symfony/ldap": "^6.4|^7.0|^8.0",
- "symfony/process": "^6.4|^7.0|^8.0",
- "symfony/rate-limiter": "^6.4|^7.0|^8.0",
- "symfony/runtime": "^6.4.13|^7.1.6|^8.0",
- "symfony/serializer": "^6.4|^7.0|^8.0",
- "symfony/translation": "^6.4|^7.0|^8.0",
- "symfony/twig-bridge": "^6.4|^7.0|^8.0",
- "symfony/twig-bundle": "^6.4|^7.0|^8.0",
- "symfony/validator": "^6.4|^7.0|^8.0",
- "symfony/yaml": "^6.4|^7.0|^8.0",
- "twig/twig": "^3.15",
+ "psr/log": "^1|^2|^3",
+ "symfony/cache": "^7.4|^8.0",
+ "symfony/clock": "^7.4|^8.0",
+ "symfony/expression-language": "^7.4|^8.0",
+ "symfony/http-client": "^7.4|^8.0",
+ "symfony/http-client-contracts": "^3.0",
+ "symfony/rate-limiter": "^7.4|^8.0",
+ "symfony/routing": "^7.4|^8.0",
+ "symfony/security-csrf": "^7.4|^8.0",
+ "symfony/translation": "^7.4|^8.0",
"web-token/jwt-library": "^3.3.2|^4.0"
},
- "type": "symfony-bundle",
+ "type": "library",
"autoload": {
"psr-4": {
- "Symfony\\Bundle\\SecurityBundle\\": ""
+ "Symfony\\Component\\Security\\Http\\": ""
},
"exclude-from-classmap": [
"/Tests/"
@@ -4415,10 +4426,10 @@
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Provides a tight integration of the Security component into the Symfony full-stack framework",
+ "description": "Symfony Security Component - HTTP Integration",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/security-bundle/tree/v7.4.13"
+ "source": "https://github.com/symfony/security-http/tree/v8.1.0"
},
"funding": [
{
@@ -4438,58 +4449,46 @@
"type": "tidelift"
}
],
- "time": "2026-05-23T16:05:06+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
- "name": "symfony/security-core",
- "version": "v7.4.13",
+ "name": "symfony/service-contracts",
+ "version": "v3.7.0",
"source": {
"type": "git",
- "url": "https://github.com/symfony/security-core.git",
- "reference": "25db686fcf2a3fe00e1cf6dcab1fcb7aac71ba9b"
+ "url": "https://github.com/symfony/service-contracts.git",
+ "reference": "d25d82433a80eba6aa0e6c24b61d7370d99e444a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/security-core/zipball/25db686fcf2a3fe00e1cf6dcab1fcb7aac71ba9b",
- "reference": "25db686fcf2a3fe00e1cf6dcab1fcb7aac71ba9b",
+ "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d25d82433a80eba6aa0e6c24b61d7370d99e444a",
+ "reference": "d25d82433a80eba6aa0e6c24b61d7370d99e444a",
"shasum": ""
},
"require": {
- "php": ">=8.2",
- "symfony/deprecation-contracts": "^2.5|^3",
- "symfony/event-dispatcher-contracts": "^2.5|^3",
- "symfony/password-hasher": "^6.4|^7.0|^8.0",
- "symfony/service-contracts": "^2.5|^3"
+ "php": ">=8.1",
+ "psr/container": "^1.1|^2.0",
+ "symfony/deprecation-contracts": "^2.5|^3"
},
"conflict": {
- "symfony/dependency-injection": "<6.4",
- "symfony/event-dispatcher": "<6.4",
- "symfony/http-foundation": "<6.4",
- "symfony/ldap": "<6.4",
- "symfony/translation": "<6.4.3|>=7.0,<7.0.3",
- "symfony/validator": "<6.4"
- },
- "require-dev": {
- "psr/cache": "^1.0|^2.0|^3.0",
- "psr/container": "^1.1|^2.0",
- "psr/log": "^1|^2|^3",
- "symfony/cache": "^6.4|^7.0|^8.0",
- "symfony/dependency-injection": "^6.4|^7.0|^8.0",
- "symfony/event-dispatcher": "^6.4|^7.0|^8.0",
- "symfony/expression-language": "^6.4|^7.0|^8.0",
- "symfony/http-foundation": "^6.4|^7.0|^8.0",
- "symfony/ldap": "^6.4|^7.0|^8.0",
- "symfony/string": "^6.4|^7.0|^8.0",
- "symfony/translation": "^6.4.3|^7.0.3|^8.0",
- "symfony/validator": "^6.4|^7.0|^8.0"
+ "ext-psr": "<1.1|>=2"
},
"type": "library",
+ "extra": {
+ "thanks": {
+ "url": "https://github.com/symfony/contracts",
+ "name": "symfony/contracts"
+ },
+ "branch-alias": {
+ "dev-main": "3.7-dev"
+ }
+ },
"autoload": {
"psr-4": {
- "Symfony\\Component\\Security\\Core\\": ""
+ "Symfony\\Contracts\\Service\\": ""
},
"exclude-from-classmap": [
- "/Tests/"
+ "/Test/"
]
},
"notification-url": "https://packagist.org/downloads/",
@@ -4498,18 +4497,26 @@
],
"authors": [
{
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Symfony Security Component - Core Library",
+ "description": "Generic abstractions related to writing services",
"homepage": "https://symfony.com",
+ "keywords": [
+ "abstractions",
+ "contracts",
+ "decoupling",
+ "interfaces",
+ "interoperability",
+ "standards"
+ ],
"support": {
- "source": "https://github.com/symfony/security-core/tree/v7.4.13"
+ "source": "https://github.com/symfony/service-contracts/tree/v3.7.0"
},
"funding": [
{
@@ -4529,277 +4536,24 @@
"type": "tidelift"
}
],
- "time": "2026-05-23T16:05:06+00:00"
+ "time": "2026-03-28T09:44:51+00:00"
},
{
- "name": "symfony/security-csrf",
- "version": "v7.4.8",
+ "name": "symfony/stopwatch",
+ "version": "v8.1.0",
"source": {
"type": "git",
- "url": "https://github.com/symfony/security-csrf.git",
- "reference": "16b3aa2f67d02fb0dbd013a8759bbe90daaa9c5d"
+ "url": "https://github.com/symfony/stopwatch.git",
+ "reference": "21c07b026905d596e8379caeb115d87aa479499d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/security-csrf/zipball/16b3aa2f67d02fb0dbd013a8759bbe90daaa9c5d",
- "reference": "16b3aa2f67d02fb0dbd013a8759bbe90daaa9c5d",
+ "url": "https://api.github.com/repos/symfony/stopwatch/zipball/21c07b026905d596e8379caeb115d87aa479499d",
+ "reference": "21c07b026905d596e8379caeb115d87aa479499d",
"shasum": ""
},
"require": {
- "php": ">=8.2",
- "symfony/security-core": "^6.4|^7.0|^8.0"
- },
- "conflict": {
- "symfony/http-foundation": "<6.4"
- },
- "require-dev": {
- "psr/log": "^1|^2|^3",
- "symfony/http-foundation": "^6.4|^7.0|^8.0",
- "symfony/http-kernel": "^6.4|^7.0|^8.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Security\\Csrf\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Security Component - CSRF Library",
- "homepage": "https://symfony.com",
- "support": {
- "source": "https://github.com/symfony/security-csrf/tree/v7.4.8"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://github.com/nicolas-grekas",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2026-03-24T13:12:05+00:00"
- },
- {
- "name": "symfony/security-http",
- "version": "v7.4.13",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/security-http.git",
- "reference": "da3c28025a664e6a88e1af104a74457d99301161"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/security-http/zipball/da3c28025a664e6a88e1af104a74457d99301161",
- "reference": "da3c28025a664e6a88e1af104a74457d99301161",
- "shasum": ""
- },
- "require": {
- "php": ">=8.2",
- "symfony/deprecation-contracts": "^2.5|^3",
- "symfony/event-dispatcher": "^6.4|^7.0",
- "symfony/http-foundation": "^6.4|^7.0|^8.0",
- "symfony/http-kernel": "^6.4|^7.0|^8.0",
- "symfony/polyfill-mbstring": "~1.0",
- "symfony/property-access": "^6.4|^7.0|^8.0",
- "symfony/security-core": "^7.3|^8.0",
- "symfony/service-contracts": "^2.5|^3"
- },
- "conflict": {
- "symfony/clock": "<6.4",
- "symfony/http-client-contracts": "<3.0",
- "symfony/security-bundle": "<6.4",
- "symfony/security-csrf": "<6.4"
- },
- "require-dev": {
- "psr/log": "^1|^2|^3",
- "symfony/cache": "^6.4|^7.0|^8.0",
- "symfony/clock": "^6.4|^7.0|^8.0",
- "symfony/expression-language": "^6.4|^7.0|^8.0",
- "symfony/http-client": "^6.4|^7.0|^8.0",
- "symfony/http-client-contracts": "^3.0",
- "symfony/rate-limiter": "^6.4|^7.0|^8.0",
- "symfony/routing": "^6.4|^7.0|^8.0",
- "symfony/security-csrf": "^6.4|^7.0|^8.0",
- "symfony/translation": "^6.4|^7.0|^8.0",
- "web-token/jwt-library": "^3.3.2|^4.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Security\\Http\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Security Component - HTTP Integration",
- "homepage": "https://symfony.com",
- "support": {
- "source": "https://github.com/symfony/security-http/tree/v7.4.13"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://github.com/nicolas-grekas",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2026-05-25T06:06:12+00:00"
- },
- {
- "name": "symfony/service-contracts",
- "version": "v3.7.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/service-contracts.git",
- "reference": "d25d82433a80eba6aa0e6c24b61d7370d99e444a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d25d82433a80eba6aa0e6c24b61d7370d99e444a",
- "reference": "d25d82433a80eba6aa0e6c24b61d7370d99e444a",
- "shasum": ""
- },
- "require": {
- "php": ">=8.1",
- "psr/container": "^1.1|^2.0",
- "symfony/deprecation-contracts": "^2.5|^3"
- },
- "conflict": {
- "ext-psr": "<1.1|>=2"
- },
- "type": "library",
- "extra": {
- "thanks": {
- "url": "https://github.com/symfony/contracts",
- "name": "symfony/contracts"
- },
- "branch-alias": {
- "dev-main": "3.7-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Contracts\\Service\\": ""
- },
- "exclude-from-classmap": [
- "/Test/"
- ]
- },
- "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": "Generic abstractions related to writing services",
- "homepage": "https://symfony.com",
- "keywords": [
- "abstractions",
- "contracts",
- "decoupling",
- "interfaces",
- "interoperability",
- "standards"
- ],
- "support": {
- "source": "https://github.com/symfony/service-contracts/tree/v3.7.0"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://github.com/nicolas-grekas",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2026-03-28T09:44:51+00:00"
- },
- {
- "name": "symfony/stopwatch",
- "version": "v7.4.8",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/stopwatch.git",
- "reference": "70a852d72fec4d51efb1f48dcd968efcaf5ccb89"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/stopwatch/zipball/70a852d72fec4d51efb1f48dcd968efcaf5ccb89",
- "reference": "70a852d72fec4d51efb1f48dcd968efcaf5ccb89",
- "shasum": ""
- },
- "require": {
- "php": ">=8.2",
+ "php": ">=8.4.1",
"symfony/service-contracts": "^2.5|^3"
},
"type": "library",
@@ -4828,7 +4582,7 @@
"description": "Provides a way to profile code",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/stopwatch/tree/v7.4.8"
+ "source": "https://github.com/symfony/stopwatch/tree/v8.1.0"
},
"funding": [
{
@@ -4848,39 +4602,38 @@
"type": "tidelift"
}
],
- "time": "2026-03-24T13:12:05+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/string",
- "version": "v7.4.13",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
- "reference": "961683010db3b27ec6ebcd7308e6e1ee8fa7ffde"
+ "reference": "afd5944f4005862d961efb85c8bbd5c523c4e3c9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/string/zipball/961683010db3b27ec6ebcd7308e6e1ee8fa7ffde",
- "reference": "961683010db3b27ec6ebcd7308e6e1ee8fa7ffde",
+ "url": "https://api.github.com/repos/symfony/string/zipball/afd5944f4005862d961efb85c8bbd5c523c4e3c9",
+ "reference": "afd5944f4005862d961efb85c8bbd5c523c4e3c9",
"shasum": ""
},
"require": {
- "php": ">=8.2",
- "symfony/deprecation-contracts": "^2.5|^3.0",
- "symfony/polyfill-ctype": "~1.8",
- "symfony/polyfill-intl-grapheme": "~1.33",
- "symfony/polyfill-intl-normalizer": "~1.0",
- "symfony/polyfill-mbstring": "~1.0"
+ "php": ">=8.4.1",
+ "symfony/polyfill-ctype": "^1.8",
+ "symfony/polyfill-intl-grapheme": "^1.33",
+ "symfony/polyfill-intl-normalizer": "^1.0",
+ "symfony/polyfill-mbstring": "^1.0"
},
"conflict": {
"symfony/translation-contracts": "<2.5"
},
"require-dev": {
- "symfony/emoji": "^7.1|^8.0",
- "symfony/http-client": "^6.4|^7.0|^8.0",
- "symfony/intl": "^6.4|^7.0|^8.0",
+ "symfony/emoji": "^7.4|^8.0",
+ "symfony/http-client": "^7.4|^8.0",
+ "symfony/intl": "^7.4|^8.0",
"symfony/translation-contracts": "^2.5|^3.0",
- "symfony/var-exporter": "^6.4|^7.0|^8.0"
+ "symfony/var-exporter": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -4919,7 +4672,7 @@
"utf8"
],
"support": {
- "source": "https://github.com/symfony/string/tree/v7.4.13"
+ "source": "https://github.com/symfony/string/tree/v8.1.0"
},
"funding": [
{
@@ -4939,7 +4692,7 @@
"type": "tidelift"
}
],
- "time": "2026-05-23T15:23:29+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/translation-contracts",
@@ -5025,67 +4778,60 @@
},
{
"name": "symfony/twig-bridge",
- "version": "v7.4.12",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/twig-bridge.git",
- "reference": "81663873d946531129c76c65e80b681ce99c0e89"
+ "reference": "25bb8c01edaab85e13142f6010df09b990388343"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/81663873d946531129c76c65e80b681ce99c0e89",
- "reference": "81663873d946531129c76c65e80b681ce99c0e89",
+ "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/25bb8c01edaab85e13142f6010df09b990388343",
+ "reference": "25bb8c01edaab85e13142f6010df09b990388343",
"shasum": ""
},
"require": {
- "php": ">=8.2",
- "symfony/deprecation-contracts": "^2.5|^3",
+ "php": ">=8.4.1",
"symfony/translation-contracts": "^2.5|^3",
- "twig/twig": "^3.21"
+ "twig/twig": "^3.25"
},
"conflict": {
"phpdocumentor/reflection-docblock": "<5.2|>=7",
"phpdocumentor/type-resolver": "<1.5.1",
- "symfony/console": "<6.4",
- "symfony/form": "<6.4.32|>7,<7.3.10|>7.4,<7.4.4|>8.0,<8.0.4",
- "symfony/http-foundation": "<6.4",
- "symfony/http-kernel": "<6.4",
- "symfony/mime": "<6.4.37|>7,<7.4.9|>8.0,<8.0.9",
- "symfony/serializer": "<6.4",
- "symfony/translation": "<6.4",
- "symfony/workflow": "<6.4"
+ "symfony/form": "<7.4.4|>8.0,<8.0.4",
+ "symfony/mime": "<7.4.9|>8.0,<8.0.9"
},
"require-dev": {
"egulias/email-validator": "^2.1.10|^3|^4",
"league/html-to-markdown": "^5.0",
"phpdocumentor/reflection-docblock": "^5.2|^6.0",
- "symfony/asset": "^6.4|^7.0|^8.0",
- "symfony/asset-mapper": "^6.4|^7.0|^8.0",
- "symfony/console": "^6.4|^7.0|^8.0",
- "symfony/dependency-injection": "^6.4|^7.0|^8.0",
- "symfony/emoji": "^7.1|^8.0",
- "symfony/expression-language": "^6.4|^7.0|^8.0",
- "symfony/finder": "^6.4|^7.0|^8.0",
- "symfony/form": "^6.4.32|~7.3.10|^7.4.4|^8.0.4",
- "symfony/html-sanitizer": "^6.4|^7.0|^8.0",
- "symfony/http-foundation": "^7.3|^8.0",
- "symfony/http-kernel": "^6.4|^7.0|^8.0",
- "symfony/intl": "^6.4|^7.0|^8.0",
- "symfony/mime": "^6.4.37|^7.4.9|^8.0.9",
- "symfony/polyfill-intl-icu": "~1.0",
- "symfony/property-info": "^6.4|^7.0|^8.0",
- "symfony/routing": "^6.4|^7.0|^8.0",
+ "symfony/asset": "^7.4|^8.0",
+ "symfony/asset-mapper": "^7.4|^8.0",
+ "symfony/console": "^7.4|^8.0",
+ "symfony/dependency-injection": "^7.4|^8.0",
+ "symfony/emoji": "^7.4|^8.0",
+ "symfony/expression-language": "^7.4|^8.0",
+ "symfony/finder": "^7.4|^8.0",
+ "symfony/form": "^7.4.4|^8.0.4",
+ "symfony/html-sanitizer": "^7.4|^8.0",
+ "symfony/http-foundation": "^7.4|^8.0",
+ "symfony/http-kernel": "^7.4|^8.0",
+ "symfony/intl": "^7.4|^8.0",
+ "symfony/mime": "^7.4.9|^8.0.9",
+ "symfony/polyfill-intl-icu": "^1.0",
+ "symfony/property-info": "^7.4|^8.0",
+ "symfony/routing": "^7.4|^8.0",
"symfony/security-acl": "^2.8|^3.0",
- "symfony/security-core": "^6.4|^7.0|^8.0",
- "symfony/security-csrf": "^6.4|^7.0|^8.0",
- "symfony/security-http": "^6.4|^7.0|^8.0",
- "symfony/serializer": "^6.4.3|^7.0.3|^8.0",
- "symfony/stopwatch": "^6.4|^7.0|^8.0",
- "symfony/translation": "^6.4|^7.0|^8.0",
- "symfony/validator": "^6.4|^7.0|^8.0",
- "symfony/web-link": "^6.4|^7.0|^8.0",
- "symfony/workflow": "^6.4|^7.0|^8.0",
- "symfony/yaml": "^6.4|^7.0|^8.0",
+ "symfony/security-core": "^7.4|^8.0",
+ "symfony/security-csrf": "^7.4|^8.0",
+ "symfony/security-http": "^7.4|^8.0",
+ "symfony/serializer": "^7.4|^8.0",
+ "symfony/stopwatch": "^7.4|^8.0",
+ "symfony/translation": "^7.4|^8.0",
+ "symfony/validator": "^7.4|^8.0",
+ "symfony/web-link": "^7.4|^8.0",
+ "symfony/workflow": "^7.4|^8.0",
+ "symfony/yaml": "^7.4|^8.0",
"twig/cssinliner-extra": "^3",
"twig/inky-extra": "^3",
"twig/markdown-extra": "^3"
@@ -5116,7 +4862,7 @@
"description": "Provides integration for Twig with various Symfony components",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/twig-bridge/tree/v7.4.12"
+ "source": "https://github.com/symfony/twig-bridge/tree/v8.1.0"
},
"funding": [
{
@@ -5136,49 +4882,43 @@
"type": "tidelift"
}
],
- "time": "2026-04-29T17:13:54+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/twig-bundle",
- "version": "v7.4.8",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/twig-bundle.git",
- "reference": "ba1e06d7ff1ebb1d1799b6608d925f4eaba88d95"
+ "reference": "b7f4a471a07b8b52174d153e4db12f46954192ed"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/twig-bundle/zipball/ba1e06d7ff1ebb1d1799b6608d925f4eaba88d95",
- "reference": "ba1e06d7ff1ebb1d1799b6608d925f4eaba88d95",
+ "url": "https://api.github.com/repos/symfony/twig-bundle/zipball/b7f4a471a07b8b52174d153e4db12f46954192ed",
+ "reference": "b7f4a471a07b8b52174d153e4db12f46954192ed",
"shasum": ""
},
"require": {
"composer-runtime-api": ">=2.1",
- "php": ">=8.2",
+ "php": ">=8.4.1",
"symfony/config": "^7.4|^8.0",
- "symfony/dependency-injection": "^6.4|^7.0|^8.0",
- "symfony/deprecation-contracts": "^2.5|^3",
- "symfony/http-foundation": "^6.4|^7.0|^8.0",
- "symfony/http-kernel": "^6.4.13|^7.1.6|^8.0",
- "symfony/twig-bridge": "^7.3|^8.0",
- "twig/twig": "^3.12"
- },
- "conflict": {
- "symfony/framework-bundle": "<6.4",
- "symfony/translation": "<6.4"
+ "symfony/dependency-injection": "^7.4|^8.0",
+ "symfony/http-foundation": "^7.4|^8.0",
+ "symfony/http-kernel": "^7.4|^8.0",
+ "symfony/twig-bridge": "^7.4|^8.0"
},
"require-dev": {
- "symfony/asset": "^6.4|^7.0|^8.0",
- "symfony/expression-language": "^6.4|^7.0|^8.0",
- "symfony/finder": "^6.4|^7.0|^8.0",
- "symfony/form": "^6.4|^7.0|^8.0",
- "symfony/framework-bundle": "^6.4.13|^7.1.6|^8.0",
- "symfony/routing": "^6.4|^7.0|^8.0",
- "symfony/runtime": "^6.4.13|^7.1.6",
- "symfony/stopwatch": "^6.4|^7.0|^8.0",
- "symfony/translation": "^6.4|^7.0|^8.0",
- "symfony/web-link": "^6.4|^7.0|^8.0",
- "symfony/yaml": "^6.4|^7.0|^8.0"
+ "symfony/asset": "^7.4|^8.0",
+ "symfony/expression-language": "^7.4|^8.0",
+ "symfony/finder": "^7.4|^8.0",
+ "symfony/form": "^7.4|^8.0",
+ "symfony/framework-bundle": "^7.4|^8.0",
+ "symfony/routing": "^7.4|^8.0",
+ "symfony/runtime": "^7.4|^8.0",
+ "symfony/stopwatch": "^7.4|^8.0",
+ "symfony/translation": "^7.4|^8.0",
+ "symfony/web-link": "^7.4|^8.0",
+ "symfony/yaml": "^7.4|^8.0"
},
"type": "symfony-bundle",
"autoload": {
@@ -5206,7 +4946,7 @@
"description": "Provides a tight integration of Twig into the Symfony full-stack framework",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/twig-bundle/tree/v7.4.8"
+ "source": "https://github.com/symfony/twig-bundle/tree/v8.1.0"
},
"funding": [
{
@@ -5226,26 +4966,25 @@
"type": "tidelift"
}
],
- "time": "2026-03-24T13:12:05+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/type-info",
- "version": "v7.4.9",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/type-info.git",
- "reference": "cafeedbf157b890e94ac5b83eaed85595106d5d6"
+ "reference": "9f24df8a79781b9b9f030fea7dfd2f3bd1e7e7e7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/type-info/zipball/cafeedbf157b890e94ac5b83eaed85595106d5d6",
- "reference": "cafeedbf157b890e94ac5b83eaed85595106d5d6",
+ "url": "https://api.github.com/repos/symfony/type-info/zipball/9f24df8a79781b9b9f030fea7dfd2f3bd1e7e7e7",
+ "reference": "9f24df8a79781b9b9f030fea7dfd2f3bd1e7e7e7",
"shasum": ""
},
"require": {
- "php": ">=8.2",
- "psr/container": "^1.1|^2.0",
- "symfony/deprecation-contracts": "^2.5|^3"
+ "php": ">=8.4.1",
+ "psr/container": "^1.1|^2.0"
},
"conflict": {
"phpstan/phpdoc-parser": "<1.30"
@@ -5289,7 +5028,7 @@
"type"
],
"support": {
- "source": "https://github.com/symfony/type-info/tree/v7.4.9"
+ "source": "https://github.com/symfony/type-info/tree/v8.1.0"
},
"funding": [
{
@@ -5309,35 +5048,35 @@
"type": "tidelift"
}
],
- "time": "2026-04-22T15:21:55+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/var-dumper",
- "version": "v7.4.8",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-dumper.git",
- "reference": "9510c3966f749a1d1ff0059e1eabef6cc621e7fd"
+ "reference": "c2c4df1d21477cc21c9f6dc1b14d07c3abc4963e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/var-dumper/zipball/9510c3966f749a1d1ff0059e1eabef6cc621e7fd",
- "reference": "9510c3966f749a1d1ff0059e1eabef6cc621e7fd",
+ "url": "https://api.github.com/repos/symfony/var-dumper/zipball/c2c4df1d21477cc21c9f6dc1b14d07c3abc4963e",
+ "reference": "c2c4df1d21477cc21c9f6dc1b14d07c3abc4963e",
"shasum": ""
},
"require": {
- "php": ">=8.2",
- "symfony/deprecation-contracts": "^2.5|^3",
- "symfony/polyfill-mbstring": "~1.0"
+ "php": ">=8.4.1",
+ "symfony/polyfill-mbstring": "^1.0"
},
"conflict": {
- "symfony/console": "<6.4"
+ "symfony/console": "<7.4",
+ "symfony/error-handler": "<7.4"
},
"require-dev": {
- "symfony/console": "^6.4|^7.0|^8.0",
- "symfony/http-kernel": "^6.4|^7.0|^8.0",
- "symfony/process": "^6.4|^7.0|^8.0",
- "symfony/uid": "^6.4|^7.0|^8.0",
+ "symfony/console": "^7.4|^8.0",
+ "symfony/http-kernel": "^7.4|^8.0",
+ "symfony/process": "^7.4|^8.0",
+ "symfony/uid": "^7.4|^8.0",
"twig/twig": "^3.12"
},
"bin": [
@@ -5376,7 +5115,7 @@
"dump"
],
"support": {
- "source": "https://github.com/symfony/var-dumper/tree/v7.4.8"
+ "source": "https://github.com/symfony/var-dumper/tree/v8.1.0"
},
"funding": [
{
@@ -5396,30 +5135,31 @@
"type": "tidelift"
}
],
- "time": "2026-03-30T13:44:50+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/var-exporter",
- "version": "v7.4.9",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-exporter.git",
- "reference": "22e03a49c95ef054a43601cd159b222bfab1c701"
+ "reference": "2dd18582c5f6c024db9fc0ff9c76d873af726f34"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/var-exporter/zipball/22e03a49c95ef054a43601cd159b222bfab1c701",
- "reference": "22e03a49c95ef054a43601cd159b222bfab1c701",
+ "url": "https://api.github.com/repos/symfony/var-exporter/zipball/2dd18582c5f6c024db9fc0ff9c76d873af726f34",
+ "reference": "2dd18582c5f6c024db9fc0ff9c76d873af726f34",
"shasum": ""
},
"require": {
- "php": ">=8.2",
- "symfony/deprecation-contracts": "^2.5|^3"
+ "php": ">=8.4.1",
+ "symfony/deprecation-contracts": "^2.5|^3",
+ "symfony/polyfill-deepclone": "^1.37"
},
"require-dev": {
- "symfony/property-access": "^6.4|^7.0|^8.0",
- "symfony/serializer": "^6.4|^7.0|^8.0",
- "symfony/var-dumper": "^6.4|^7.0|^8.0"
+ "symfony/property-access": "^7.4|^8.0",
+ "symfony/serializer": "^7.4|^8.0",
+ "symfony/var-dumper": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -5444,11 +5184,12 @@
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Allows exporting any serializable PHP data structure to plain PHP code",
+ "description": "Provides tools to export, instantiate, hydrate, clone and lazy-load PHP objects",
"homepage": "https://symfony.com",
"keywords": [
"clone",
"construct",
+ "deep-clone",
"export",
"hydrate",
"instantiate",
@@ -5457,7 +5198,7 @@
"serialize"
],
"support": {
- "source": "https://github.com/symfony/var-exporter/tree/v7.4.9"
+ "source": "https://github.com/symfony/var-exporter/tree/v8.1.0"
},
"funding": [
{
@@ -5477,315 +5218,1989 @@
"type": "tidelift"
}
],
- "time": "2026-04-18T13:18:21+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/yaml",
- "version": "v7.4.13",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
- "reference": "a7ec3b1156faf8815db7683ec7c1e7338e6f977c"
+ "reference": "efb42bd2c6f4f3ccfd4683583449938b5fc146b0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/a7ec3b1156faf8815db7683ec7c1e7338e6f977c",
- "reference": "a7ec3b1156faf8815db7683ec7c1e7338e6f977c",
+ "url": "https://api.github.com/repos/symfony/yaml/zipball/efb42bd2c6f4f3ccfd4683583449938b5fc146b0",
+ "reference": "efb42bd2c6f4f3ccfd4683583449938b5fc146b0",
"shasum": ""
},
"require": {
- "php": ">=8.2",
- "symfony/deprecation-contracts": "^2.5|^3",
+ "php": ">=8.4.1",
"symfony/polyfill-ctype": "^1.8"
},
"conflict": {
- "symfony/console": "<6.4"
+ "symfony/console": "<7.4"
},
"require-dev": {
- "symfony/console": "^6.4|^7.0|^8.0"
+ "symfony/console": "^7.4|^8.0",
+ "yaml/yaml-test-suite": "*"
},
"bin": [
"Resources/bin/yaml-lint"
],
"type": "library",
"autoload": {
- "psr-4": {
- "Symfony\\Component\\Yaml\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
+ "psr-4": {
+ "Symfony\\Component\\Yaml\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Loads and dumps YAML files",
+ "homepage": "https://symfony.com",
+ "support": {
+ "source": "https://github.com/symfony/yaml/tree/v8.1.0"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-05-29T05:06:50+00:00"
+ },
+ {
+ "name": "twig/twig",
+ "version": "v3.27.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/twigphp/Twig.git",
+ "reference": "04ae1bfe9463c816cf72ca0abe7eae2c77a9a9ed"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/twigphp/Twig/zipball/04ae1bfe9463c816cf72ca0abe7eae2c77a9a9ed",
+ "reference": "04ae1bfe9463c816cf72ca0abe7eae2c77a9a9ed",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.1.0",
+ "symfony/deprecation-contracts": "^2.5|^3",
+ "symfony/polyfill-ctype": "^1.8",
+ "symfony/polyfill-mbstring": "^1.3"
+ },
+ "require-dev": {
+ "php-cs-fixer/shim": "^3.0@stable",
+ "phpstan/phpstan": "^2.0@stable",
+ "psr/container": "^1.0|^2.0",
+ "symfony/phpunit-bridge": "^5.4.9|^6.4|^7.0"
+ },
+ "type": "library",
+ "autoload": {
+ "files": [
+ "src/Resources/core.php",
+ "src/Resources/debug.php",
+ "src/Resources/escaper.php",
+ "src/Resources/string_loader.php"
+ ],
+ "psr-4": {
+ "Twig\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com",
+ "homepage": "http://fabien.potencier.org",
+ "role": "Lead Developer"
+ },
+ {
+ "name": "Twig Team",
+ "role": "Contributors"
+ },
+ {
+ "name": "Armin Ronacher",
+ "email": "armin.ronacher@active-4.com",
+ "role": "Project Founder"
+ }
+ ],
+ "description": "Twig, the flexible, fast, and secure template language for PHP",
+ "homepage": "https://twig.symfony.com",
+ "keywords": [
+ "templating"
+ ],
+ "support": {
+ "issues": "https://github.com/twigphp/Twig/issues",
+ "source": "https://github.com/twigphp/Twig/tree/v3.27.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/twig/twig",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-05-27T13:05:51+00:00"
+ }
+ ],
+ "packages-dev": [
+ {
+ "name": "myclabs/deep-copy",
+ "version": "1.13.4",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/myclabs/DeepCopy.git",
+ "reference": "07d290f0c47959fd5eed98c95ee5602db07e0b6a"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/07d290f0c47959fd5eed98c95ee5602db07e0b6a",
+ "reference": "07d290f0c47959fd5eed98c95ee5602db07e0b6a",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^7.1 || ^8.0"
+ },
+ "conflict": {
+ "doctrine/collections": "<1.6.8",
+ "doctrine/common": "<2.13.3 || >=3 <3.2.2"
+ },
+ "require-dev": {
+ "doctrine/collections": "^1.6.8",
+ "doctrine/common": "^2.13.3 || ^3.2.2",
+ "phpspec/prophecy": "^1.10",
+ "phpunit/phpunit": "^7.5.20 || ^8.5.23 || ^9.5.13"
+ },
+ "type": "library",
+ "autoload": {
+ "files": [
+ "src/DeepCopy/deep_copy.php"
+ ],
+ "psr-4": {
+ "DeepCopy\\": "src/DeepCopy/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "description": "Create deep copies (clones) of your objects",
+ "keywords": [
+ "clone",
+ "copy",
+ "duplicate",
+ "object",
+ "object graph"
+ ],
+ "support": {
+ "issues": "https://github.com/myclabs/DeepCopy/issues",
+ "source": "https://github.com/myclabs/DeepCopy/tree/1.13.4"
+ },
+ "funding": [
+ {
+ "url": "https://tidelift.com/funding/github/packagist/myclabs/deep-copy",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2025-08-01T08:46:24+00:00"
+ },
+ {
+ "name": "nikic/php-parser",
+ "version": "v5.7.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/nikic/PHP-Parser.git",
+ "reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/dca41cd15c2ac9d055ad70dbfd011130757d1f82",
+ "reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82",
+ "shasum": ""
+ },
+ "require": {
+ "ext-ctype": "*",
+ "ext-json": "*",
+ "ext-tokenizer": "*",
+ "php": ">=7.4"
+ },
+ "require-dev": {
+ "ircmaxell/php-yacc": "^0.0.7",
+ "phpunit/phpunit": "^9.0"
+ },
+ "bin": [
+ "bin/php-parse"
+ ],
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "5.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "PhpParser\\": "lib/PhpParser"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Nikita Popov"
+ }
+ ],
+ "description": "A PHP parser written in PHP",
+ "keywords": [
+ "parser",
+ "php"
+ ],
+ "support": {
+ "issues": "https://github.com/nikic/PHP-Parser/issues",
+ "source": "https://github.com/nikic/PHP-Parser/tree/v5.7.0"
+ },
+ "time": "2025-12-06T11:56:16+00:00"
+ },
+ {
+ "name": "phar-io/manifest",
+ "version": "2.0.4",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/phar-io/manifest.git",
+ "reference": "54750ef60c58e43759730615a392c31c80e23176"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/phar-io/manifest/zipball/54750ef60c58e43759730615a392c31c80e23176",
+ "reference": "54750ef60c58e43759730615a392c31c80e23176",
+ "shasum": ""
+ },
+ "require": {
+ "ext-dom": "*",
+ "ext-libxml": "*",
+ "ext-phar": "*",
+ "ext-xmlwriter": "*",
+ "phar-io/version": "^3.0.1",
+ "php": "^7.2 || ^8.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.0.x-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Arne Blankerts",
+ "email": "arne@blankerts.de",
+ "role": "Developer"
+ },
+ {
+ "name": "Sebastian Heuer",
+ "email": "sebastian@phpeople.de",
+ "role": "Developer"
+ },
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "Developer"
+ }
+ ],
+ "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
+ "support": {
+ "issues": "https://github.com/phar-io/manifest/issues",
+ "source": "https://github.com/phar-io/manifest/tree/2.0.4"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/theseer",
+ "type": "github"
+ }
+ ],
+ "time": "2024-03-03T12:33:53+00:00"
+ },
+ {
+ "name": "phar-io/version",
+ "version": "3.2.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/phar-io/version.git",
+ "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/phar-io/version/zipball/4f7fd7836c6f332bb2933569e566a0d6c4cbed74",
+ "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^7.2 || ^8.0"
+ },
+ "type": "library",
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Arne Blankerts",
+ "email": "arne@blankerts.de",
+ "role": "Developer"
+ },
+ {
+ "name": "Sebastian Heuer",
+ "email": "sebastian@phpeople.de",
+ "role": "Developer"
+ },
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "Developer"
+ }
+ ],
+ "description": "Library for handling version information and constraints",
+ "support": {
+ "issues": "https://github.com/phar-io/version/issues",
+ "source": "https://github.com/phar-io/version/tree/3.2.1"
+ },
+ "time": "2022-02-21T01:04:05+00:00"
+ },
+ {
+ "name": "phpunit/php-code-coverage",
+ "version": "14.1.9",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
+ "reference": "655533a65696bbc4231cd8027af150dadc40ec88"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/655533a65696bbc4231cd8027af150dadc40ec88",
+ "reference": "655533a65696bbc4231cd8027af150dadc40ec88",
+ "shasum": ""
+ },
+ "require": {
+ "ext-dom": "*",
+ "ext-libxml": "*",
+ "ext-mbstring": "*",
+ "ext-xmlwriter": "*",
+ "nikic/php-parser": "^5.7.0",
+ "php": ">=8.4",
+ "phpunit/php-text-template": "^6.0",
+ "sebastian/complexity": "^6.0",
+ "sebastian/environment": "^9.2",
+ "sebastian/git-state": "^1.0",
+ "sebastian/lines-of-code": "^5.0",
+ "sebastian/version": "^7.0",
+ "theseer/tokenizer": "^2.0.1"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^13.1"
+ },
+ "suggest": {
+ "ext-pcov": "PHP extension that provides line coverage",
+ "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "14.1.x-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
+ "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
+ "keywords": [
+ "coverage",
+ "testing",
+ "xunit"
+ ],
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
+ "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy",
+ "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/14.1.9"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/phpunit/php-code-coverage",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-05-16T05:16:14+00:00"
+ },
+ {
+ "name": "phpunit/php-file-iterator",
+ "version": "7.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
+ "reference": "6e5aa1fb0a95b1703d83e721299ee18bb4e2de50"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/6e5aa1fb0a95b1703d83e721299ee18bb4e2de50",
+ "reference": "6e5aa1fb0a95b1703d83e721299ee18bb4e2de50",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.4"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^13.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "7.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "FilterIterator implementation that filters files based on a list of suffixes.",
+ "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
+ "keywords": [
+ "filesystem",
+ "iterator"
+ ],
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues",
+ "security": "https://github.com/sebastianbergmann/php-file-iterator/security/policy",
+ "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/7.0.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/phpunit/php-file-iterator",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-02-06T04:33:26+00:00"
+ },
+ {
+ "name": "phpunit/php-invoker",
+ "version": "7.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/php-invoker.git",
+ "reference": "42e5c5cae0c65df12d1b1a3ab52bf3f50f244d88"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/42e5c5cae0c65df12d1b1a3ab52bf3f50f244d88",
+ "reference": "42e5c5cae0c65df12d1b1a3ab52bf3f50f244d88",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.4"
+ },
+ "require-dev": {
+ "ext-pcntl": "*",
+ "phpunit/phpunit": "^13.0"
+ },
+ "suggest": {
+ "ext-pcntl": "*"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "7.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Invoke callables with a timeout",
+ "homepage": "https://github.com/sebastianbergmann/php-invoker/",
+ "keywords": [
+ "process"
+ ],
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/php-invoker/issues",
+ "security": "https://github.com/sebastianbergmann/php-invoker/security/policy",
+ "source": "https://github.com/sebastianbergmann/php-invoker/tree/7.0.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/phpunit/php-invoker",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-02-06T04:34:47+00:00"
+ },
+ {
+ "name": "phpunit/php-text-template",
+ "version": "6.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/php-text-template.git",
+ "reference": "a47af19f93f76aa3368303d752aa5272ca3299f4"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/a47af19f93f76aa3368303d752aa5272ca3299f4",
+ "reference": "a47af19f93f76aa3368303d752aa5272ca3299f4",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.4"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^13.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "6.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Simple template engine.",
+ "homepage": "https://github.com/sebastianbergmann/php-text-template/",
+ "keywords": [
+ "template"
+ ],
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/php-text-template/issues",
+ "security": "https://github.com/sebastianbergmann/php-text-template/security/policy",
+ "source": "https://github.com/sebastianbergmann/php-text-template/tree/6.0.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/phpunit/php-text-template",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-02-06T04:36:37+00:00"
+ },
+ {
+ "name": "phpunit/php-timer",
+ "version": "9.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/php-timer.git",
+ "reference": "a0e12065831f6ab0d83120dc61513eb8d9a966f6"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/a0e12065831f6ab0d83120dc61513eb8d9a966f6",
+ "reference": "a0e12065831f6ab0d83120dc61513eb8d9a966f6",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.4"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^13.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "9.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Utility class for timing",
+ "homepage": "https://github.com/sebastianbergmann/php-timer/",
+ "keywords": [
+ "timer"
+ ],
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/php-timer/issues",
+ "security": "https://github.com/sebastianbergmann/php-timer/security/policy",
+ "source": "https://github.com/sebastianbergmann/php-timer/tree/9.0.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/phpunit/php-timer",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-02-06T04:37:53+00:00"
+ },
+ {
+ "name": "phpunit/phpunit",
+ "version": "13.1.13",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/phpunit.git",
+ "reference": "ddf7f25d9ee9652b464475d7f3bacde2613e355e"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/ddf7f25d9ee9652b464475d7f3bacde2613e355e",
+ "reference": "ddf7f25d9ee9652b464475d7f3bacde2613e355e",
+ "shasum": ""
+ },
+ "require": {
+ "ext-dom": "*",
+ "ext-json": "*",
+ "ext-libxml": "*",
+ "ext-mbstring": "*",
+ "ext-xml": "*",
+ "ext-xmlwriter": "*",
+ "myclabs/deep-copy": "^1.13.4",
+ "phar-io/manifest": "^2.0.4",
+ "phar-io/version": "^3.2.1",
+ "php": ">=8.4.1",
+ "phpunit/php-code-coverage": "^14.1.9",
+ "phpunit/php-file-iterator": "^7.0.0",
+ "phpunit/php-invoker": "^7.0.0",
+ "phpunit/php-text-template": "^6.0.0",
+ "phpunit/php-timer": "^9.0.0",
+ "sebastian/cli-parser": "^5.0.0",
+ "sebastian/comparator": "^8.2.1",
+ "sebastian/diff": "^8.3.0",
+ "sebastian/environment": "^9.3.2",
+ "sebastian/exporter": "^8.1.0",
+ "sebastian/git-state": "^1.0",
+ "sebastian/global-state": "^9.0.0",
+ "sebastian/object-enumerator": "^8.0.0",
+ "sebastian/recursion-context": "^8.0.0",
+ "sebastian/type": "^7.0.1",
+ "sebastian/version": "^7.0.0",
+ "staabm/side-effects-detector": "^1.0.5"
+ },
+ "bin": [
+ "phpunit"
+ ],
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "13.1-dev"
+ }
+ },
+ "autoload": {
+ "files": [
+ "src/Framework/Assert/Functions.php"
+ ],
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "The PHP Unit Testing framework.",
+ "homepage": "https://phpunit.de/",
+ "keywords": [
+ "phpunit",
+ "testing",
+ "xunit"
+ ],
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/phpunit/issues",
+ "security": "https://github.com/sebastianbergmann/phpunit/security/policy",
+ "source": "https://github.com/sebastianbergmann/phpunit/tree/13.1.13"
+ },
+ "funding": [
+ {
+ "url": "https://phpunit.de/sponsoring.html",
+ "type": "other"
+ }
+ ],
+ "time": "2026-05-27T14:03:08+00:00"
+ },
+ {
+ "name": "sebastian/cli-parser",
+ "version": "5.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/cli-parser.git",
+ "reference": "48a4654fa5e48c1c81214e9930048a572d4b23ca"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/48a4654fa5e48c1c81214e9930048a572d4b23ca",
+ "reference": "48a4654fa5e48c1c81214e9930048a572d4b23ca",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.4"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^13.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "5.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Library for parsing CLI options",
+ "homepage": "https://github.com/sebastianbergmann/cli-parser",
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/cli-parser/issues",
+ "security": "https://github.com/sebastianbergmann/cli-parser/security/policy",
+ "source": "https://github.com/sebastianbergmann/cli-parser/tree/5.0.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/cli-parser",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-02-06T04:39:44+00:00"
+ },
+ {
+ "name": "sebastian/comparator",
+ "version": "8.2.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/comparator.git",
+ "reference": "ce999bf08b2c387a5423fe56961c32eed3f88089"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/ce999bf08b2c387a5423fe56961c32eed3f88089",
+ "reference": "ce999bf08b2c387a5423fe56961c32eed3f88089",
+ "shasum": ""
+ },
+ "require": {
+ "ext-dom": "*",
+ "ext-mbstring": "*",
+ "php": ">=8.4",
+ "sebastian/diff": "^8.3",
+ "sebastian/exporter": "^8.0.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^13.1.10"
+ },
+ "suggest": {
+ "ext-bcmath": "For comparing BcMath\\Number objects"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "8.2-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ },
+ {
+ "name": "Jeff Welch",
+ "email": "whatthejeff@gmail.com"
+ },
+ {
+ "name": "Volker Dusch",
+ "email": "github@wallbash.com"
+ },
+ {
+ "name": "Bernhard Schussek",
+ "email": "bschussek@2bepublished.at"
+ }
+ ],
+ "description": "Provides the functionality to compare PHP values for equality",
+ "homepage": "https://github.com/sebastianbergmann/comparator",
+ "keywords": [
+ "comparator",
+ "compare",
+ "equality"
+ ],
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/comparator/issues",
+ "security": "https://github.com/sebastianbergmann/comparator/security/policy",
+ "source": "https://github.com/sebastianbergmann/comparator/tree/8.2.1"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/comparator",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-05-21T04:46:40+00:00"
+ },
+ {
+ "name": "sebastian/complexity",
+ "version": "6.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/complexity.git",
+ "reference": "c5651c795c98093480df79350cb050813fc7a2f3"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/c5651c795c98093480df79350cb050813fc7a2f3",
+ "reference": "c5651c795c98093480df79350cb050813fc7a2f3",
+ "shasum": ""
+ },
+ "require": {
+ "nikic/php-parser": "^5.0",
+ "php": ">=8.4"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^13.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "6.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Library for calculating the complexity of PHP code units",
+ "homepage": "https://github.com/sebastianbergmann/complexity",
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/complexity/issues",
+ "security": "https://github.com/sebastianbergmann/complexity/security/policy",
+ "source": "https://github.com/sebastianbergmann/complexity/tree/6.0.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/complexity",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-02-06T04:41:32+00:00"
+ },
+ {
+ "name": "sebastian/diff",
+ "version": "8.3.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/diff.git",
+ "reference": "b36d33b6e796513de7cb7df053afb3f55eefcd47"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/b36d33b6e796513de7cb7df053afb3f55eefcd47",
+ "reference": "b36d33b6e796513de7cb7df053afb3f55eefcd47",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.4"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^13.0",
+ "symfony/process": "^7.2"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "8.3-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ },
+ {
+ "name": "Kore Nordmann",
+ "email": "mail@kore-nordmann.de"
+ }
+ ],
+ "description": "Diff implementation",
+ "homepage": "https://github.com/sebastianbergmann/diff",
+ "keywords": [
+ "diff",
+ "udiff",
+ "unidiff",
+ "unified diff"
+ ],
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/diff/issues",
+ "security": "https://github.com/sebastianbergmann/diff/security/policy",
+ "source": "https://github.com/sebastianbergmann/diff/tree/8.3.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/diff",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-05-15T04:58:09+00:00"
+ },
+ {
+ "name": "sebastian/environment",
+ "version": "9.3.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/environment.git",
+ "reference": "6c9e487c9eb706a8d258102a1c0b0a3e53e86c2e"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6c9e487c9eb706a8d258102a1c0b0a3e53e86c2e",
+ "reference": "6c9e487c9eb706a8d258102a1c0b0a3e53e86c2e",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.4"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^13.1.11"
+ },
+ "suggest": {
+ "ext-posix": "*"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "9.3-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ }
+ ],
+ "description": "Provides functionality to handle HHVM/PHP environments",
+ "homepage": "https://github.com/sebastianbergmann/environment",
+ "keywords": [
+ "Xdebug",
+ "environment",
+ "hhvm"
+ ],
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/environment/issues",
+ "security": "https://github.com/sebastianbergmann/environment/security/policy",
+ "source": "https://github.com/sebastianbergmann/environment/tree/9.3.2"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/environment",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-05-25T13:41:38+00:00"
+ },
+ {
+ "name": "sebastian/exporter",
+ "version": "8.1.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/exporter.git",
+ "reference": "c0d29a945f8cf82f300a05e69874508e307ca4c6"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/c0d29a945f8cf82f300a05e69874508e307ca4c6",
+ "reference": "c0d29a945f8cf82f300a05e69874508e307ca4c6",
+ "shasum": ""
+ },
+ "require": {
+ "ext-mbstring": "*",
+ "php": ">=8.4",
+ "sebastian/recursion-context": "^8.0"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^13.1.10"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "8.1-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ },
+ {
+ "name": "Jeff Welch",
+ "email": "whatthejeff@gmail.com"
+ },
+ {
+ "name": "Volker Dusch",
+ "email": "github@wallbash.com"
+ },
+ {
+ "name": "Adam Harvey",
+ "email": "aharvey@php.net"
+ },
+ {
+ "name": "Bernhard Schussek",
+ "email": "bschussek@gmail.com"
+ }
+ ],
+ "description": "Provides the functionality to export PHP variables for visualization",
+ "homepage": "https://www.github.com/sebastianbergmann/exporter",
+ "keywords": [
+ "export",
+ "exporter"
+ ],
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/exporter/issues",
+ "security": "https://github.com/sebastianbergmann/exporter/security/policy",
+ "source": "https://github.com/sebastianbergmann/exporter/tree/8.1.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/exporter",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-05-21T11:50:56+00:00"
+ },
+ {
+ "name": "sebastian/git-state",
+ "version": "1.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/git-state.git",
+ "reference": "792a952e0eba55b6960a48aeceb9f371aad1f76b"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/git-state/zipball/792a952e0eba55b6960a48aeceb9f371aad1f76b",
+ "reference": "792a952e0eba55b6960a48aeceb9f371aad1f76b",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.4"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^13.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "1.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Library for describing the state of a Git checkout",
+ "homepage": "https://github.com/sebastianbergmann/git-state",
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/git-state/issues",
+ "security": "https://github.com/sebastianbergmann/git-state/security/policy",
+ "source": "https://github.com/sebastianbergmann/git-state/tree/1.0.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/git-state",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-03-21T12:54:28+00:00"
+ },
+ {
+ "name": "sebastian/global-state",
+ "version": "9.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/global-state.git",
+ "reference": "e52e3dc22441e6218c710afe72c3042f8fc41ea7"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/e52e3dc22441e6218c710afe72c3042f8fc41ea7",
+ "reference": "e52e3dc22441e6218c710afe72c3042f8fc41ea7",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.4",
+ "sebastian/object-reflector": "^6.0",
+ "sebastian/recursion-context": "^8.0"
+ },
+ "require-dev": {
+ "ext-dom": "*",
+ "phpunit/phpunit": "^13.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "9.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ }
+ ],
+ "description": "Snapshotting of global state",
+ "homepage": "https://www.github.com/sebastianbergmann/global-state",
+ "keywords": [
+ "global state"
+ ],
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/global-state/issues",
+ "security": "https://github.com/sebastianbergmann/global-state/security/policy",
+ "source": "https://github.com/sebastianbergmann/global-state/tree/9.0.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/global-state",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-02-06T04:45:13+00:00"
+ },
+ {
+ "name": "sebastian/lines-of-code",
+ "version": "5.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/lines-of-code.git",
+ "reference": "d2cff273a90c79b0eb590baa682d4b5c318bdbb7"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/d2cff273a90c79b0eb590baa682d4b5c318bdbb7",
+ "reference": "d2cff273a90c79b0eb590baa682d4b5c318bdbb7",
+ "shasum": ""
+ },
+ "require": {
+ "nikic/php-parser": "^5.7.0",
+ "php": ">=8.4"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^13.1.10"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "5.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Library for counting the lines of code in PHP source code",
+ "homepage": "https://github.com/sebastianbergmann/lines-of-code",
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/lines-of-code/issues",
+ "security": "https://github.com/sebastianbergmann/lines-of-code/security/policy",
+ "source": "https://github.com/sebastianbergmann/lines-of-code/tree/5.0.1"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/lines-of-code",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-05-19T16:23:37+00:00"
+ },
+ {
+ "name": "sebastian/object-enumerator",
+ "version": "8.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/object-enumerator.git",
+ "reference": "b39ab125fd9a7434b0ecbc4202eebce11a98cfc5"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/b39ab125fd9a7434b0ecbc4202eebce11a98cfc5",
+ "reference": "b39ab125fd9a7434b0ecbc4202eebce11a98cfc5",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.4",
+ "sebastian/object-reflector": "^6.0",
+ "sebastian/recursion-context": "^8.0"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^13.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "8.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ }
+ ],
+ "description": "Traverses array structures and object graphs to enumerate all referenced objects",
+ "homepage": "https://github.com/sebastianbergmann/object-enumerator/",
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/object-enumerator/issues",
+ "security": "https://github.com/sebastianbergmann/object-enumerator/security/policy",
+ "source": "https://github.com/sebastianbergmann/object-enumerator/tree/8.0.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/object-enumerator",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-02-06T04:46:36+00:00"
+ },
+ {
+ "name": "sebastian/object-reflector",
+ "version": "6.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/object-reflector.git",
+ "reference": "3ca042c2c60b0eab094f8a1b6a7093f4d4c72200"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/3ca042c2c60b0eab094f8a1b6a7093f4d4c72200",
+ "reference": "3ca042c2c60b0eab094f8a1b6a7093f4d4c72200",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.4"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^13.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "6.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ }
+ ],
+ "description": "Allows reflection of object attributes, including inherited and non-public ones",
+ "homepage": "https://github.com/sebastianbergmann/object-reflector/",
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/object-reflector/issues",
+ "security": "https://github.com/sebastianbergmann/object-reflector/security/policy",
+ "source": "https://github.com/sebastianbergmann/object-reflector/tree/6.0.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/object-reflector",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-02-06T04:47:13+00:00"
+ },
+ {
+ "name": "sebastian/recursion-context",
+ "version": "8.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/recursion-context.git",
+ "reference": "74c5af21f6a5833e91767ca068c4d3dfec15317e"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/74c5af21f6a5833e91767ca068c4d3dfec15317e",
+ "reference": "74c5af21f6a5833e91767ca068c4d3dfec15317e",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.4"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^13.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "8.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
- "MIT"
+ "BSD-3-Clause"
],
"authors": [
{
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
},
{
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
+ "name": "Jeff Welch",
+ "email": "whatthejeff@gmail.com"
+ },
+ {
+ "name": "Adam Harvey",
+ "email": "aharvey@php.net"
}
],
- "description": "Loads and dumps YAML files",
- "homepage": "https://symfony.com",
+ "description": "Provides functionality to recursively process PHP variables",
+ "homepage": "https://github.com/sebastianbergmann/recursion-context",
"support": {
- "source": "https://github.com/symfony/yaml/tree/v7.4.13"
+ "issues": "https://github.com/sebastianbergmann/recursion-context/issues",
+ "security": "https://github.com/sebastianbergmann/recursion-context/security/policy",
+ "source": "https://github.com/sebastianbergmann/recursion-context/tree/8.0.0"
},
"funding": [
{
- "url": "https://symfony.com/sponsor",
- "type": "custom"
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
},
{
- "url": "https://github.com/fabpot",
- "type": "github"
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
},
{
- "url": "https://github.com/nicolas-grekas",
- "type": "github"
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
},
{
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/recursion-context",
"type": "tidelift"
}
],
- "time": "2026-05-25T06:06:12+00:00"
+ "time": "2026-02-06T04:51:28+00:00"
},
{
- "name": "twig/twig",
- "version": "v3.27.0",
+ "name": "sebastian/type",
+ "version": "7.0.1",
"source": {
"type": "git",
- "url": "https://github.com/twigphp/Twig.git",
- "reference": "04ae1bfe9463c816cf72ca0abe7eae2c77a9a9ed"
+ "url": "https://github.com/sebastianbergmann/type.git",
+ "reference": "fee0309275847fefd7636167085e379c1dbf6990"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/twigphp/Twig/zipball/04ae1bfe9463c816cf72ca0abe7eae2c77a9a9ed",
- "reference": "04ae1bfe9463c816cf72ca0abe7eae2c77a9a9ed",
+ "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/fee0309275847fefd7636167085e379c1dbf6990",
+ "reference": "fee0309275847fefd7636167085e379c1dbf6990",
"shasum": ""
},
"require": {
- "php": ">=8.1.0",
- "symfony/deprecation-contracts": "^2.5|^3",
- "symfony/polyfill-ctype": "^1.8",
- "symfony/polyfill-mbstring": "^1.3"
+ "php": ">=8.4"
},
"require-dev": {
- "php-cs-fixer/shim": "^3.0@stable",
- "phpstan/phpstan": "^2.0@stable",
- "psr/container": "^1.0|^2.0",
- "symfony/phpunit-bridge": "^5.4.9|^6.4|^7.0"
+ "phpunit/phpunit": "^13.1.10"
},
"type": "library",
- "autoload": {
- "files": [
- "src/Resources/core.php",
- "src/Resources/debug.php",
- "src/Resources/escaper.php",
- "src/Resources/string_loader.php"
- ],
- "psr-4": {
- "Twig\\": "src/"
+ "extra": {
+ "branch-alias": {
+ "dev-main": "7.0-dev"
}
},
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
"notification-url": "https://packagist.org/downloads/",
"license": [
"BSD-3-Clause"
],
"authors": [
{
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com",
- "homepage": "http://fabien.potencier.org",
- "role": "Lead Developer"
- },
- {
- "name": "Twig Team",
- "role": "Contributors"
- },
- {
- "name": "Armin Ronacher",
- "email": "armin.ronacher@active-4.com",
- "role": "Project Founder"
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
}
],
- "description": "Twig, the flexible, fast, and secure template language for PHP",
- "homepage": "https://twig.symfony.com",
- "keywords": [
- "templating"
- ],
+ "description": "Collection of value objects that represent the types of the PHP type system",
+ "homepage": "https://github.com/sebastianbergmann/type",
"support": {
- "issues": "https://github.com/twigphp/Twig/issues",
- "source": "https://github.com/twigphp/Twig/tree/v3.27.0"
+ "issues": "https://github.com/sebastianbergmann/type/issues",
+ "security": "https://github.com/sebastianbergmann/type/security/policy",
+ "source": "https://github.com/sebastianbergmann/type/tree/7.0.1"
},
"funding": [
{
- "url": "https://github.com/fabpot",
+ "url": "https://github.com/sebastianbergmann",
"type": "github"
},
{
- "url": "https://tidelift.com/funding/github/packagist/twig/twig",
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/type",
"type": "tidelift"
}
],
- "time": "2026-05-27T13:05:51+00:00"
- }
- ],
- "packages-dev": [
+ "time": "2026-05-20T06:49:11+00:00"
+ },
{
- "name": "masterminds/html5",
- "version": "2.10.0",
+ "name": "sebastian/version",
+ "version": "7.0.0",
"source": {
"type": "git",
- "url": "https://github.com/Masterminds/html5-php.git",
- "reference": "fcf91eb64359852f00d921887b219479b4f21251"
+ "url": "https://github.com/sebastianbergmann/version.git",
+ "reference": "ad37a5552c8e2b88572249fdc19b6da7792e021b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Masterminds/html5-php/zipball/fcf91eb64359852f00d921887b219479b4f21251",
- "reference": "fcf91eb64359852f00d921887b219479b4f21251",
+ "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/ad37a5552c8e2b88572249fdc19b6da7792e021b",
+ "reference": "ad37a5552c8e2b88572249fdc19b6da7792e021b",
"shasum": ""
},
"require": {
- "ext-dom": "*",
- "php": ">=5.3.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.8.35 || ^5.7.21 || ^6 || ^7 || ^8 || ^9"
+ "php": ">=8.4"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.7-dev"
+ "dev-main": "7.0-dev"
}
},
"autoload": {
- "psr-4": {
- "Masterminds\\": "src"
- }
+ "classmap": [
+ "src/"
+ ]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
- "MIT"
+ "BSD-3-Clause"
],
"authors": [
{
- "name": "Matt Butcher",
- "email": "technosophos@gmail.com"
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Library that helps with managing the version number of Git-hosted PHP projects",
+ "homepage": "https://github.com/sebastianbergmann/version",
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/version/issues",
+ "security": "https://github.com/sebastianbergmann/version/security/policy",
+ "source": "https://github.com/sebastianbergmann/version/tree/7.0.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
},
{
- "name": "Matt Farina",
- "email": "matt@mattfarina.com"
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
},
{
- "name": "Asmir Mustafic",
- "email": "goetas@gmail.com"
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/version",
+ "type": "tidelift"
}
],
- "description": "An HTML5 parser and serializer.",
- "homepage": "http://masterminds.github.io/html5-php",
- "keywords": [
- "HTML5",
- "dom",
- "html",
- "parser",
- "querypath",
- "serializer",
- "xml"
- ],
- "support": {
- "issues": "https://github.com/Masterminds/html5-php/issues",
- "source": "https://github.com/Masterminds/html5-php/tree/2.10.0"
- },
- "time": "2025-07-25T09:04:22+00:00"
+ "time": "2026-02-06T04:52:52+00:00"
},
{
- "name": "nikic/php-parser",
- "version": "v5.7.0",
+ "name": "staabm/side-effects-detector",
+ "version": "1.0.5",
"source": {
"type": "git",
- "url": "https://github.com/nikic/PHP-Parser.git",
- "reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82"
+ "url": "https://github.com/staabm/side-effects-detector.git",
+ "reference": "d8334211a140ce329c13726d4a715adbddd0a163"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/dca41cd15c2ac9d055ad70dbfd011130757d1f82",
- "reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82",
+ "url": "https://api.github.com/repos/staabm/side-effects-detector/zipball/d8334211a140ce329c13726d4a715adbddd0a163",
+ "reference": "d8334211a140ce329c13726d4a715adbddd0a163",
"shasum": ""
},
"require": {
- "ext-ctype": "*",
- "ext-json": "*",
"ext-tokenizer": "*",
- "php": ">=7.4"
+ "php": "^7.4 || ^8.0"
},
"require-dev": {
- "ircmaxell/php-yacc": "^0.0.7",
- "phpunit/phpunit": "^9.0"
+ "phpstan/extension-installer": "^1.4.3",
+ "phpstan/phpstan": "^1.12.6",
+ "phpunit/phpunit": "^9.6.21",
+ "symfony/var-dumper": "^5.4.43",
+ "tomasvotruba/type-coverage": "1.0.0",
+ "tomasvotruba/unused-public": "1.0.0"
},
- "bin": [
- "bin/php-parse"
- ],
"type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "5.x-dev"
- }
- },
"autoload": {
- "psr-4": {
- "PhpParser\\": "lib/PhpParser"
- }
+ "classmap": [
+ "lib/"
+ ]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Nikita Popov"
- }
+ "MIT"
],
- "description": "A PHP parser written in PHP",
+ "description": "A static analysis tool to detect side effects in PHP code",
"keywords": [
- "parser",
- "php"
+ "static analysis"
],
"support": {
- "issues": "https://github.com/nikic/PHP-Parser/issues",
- "source": "https://github.com/nikic/PHP-Parser/tree/v5.7.0"
+ "issues": "https://github.com/staabm/side-effects-detector/issues",
+ "source": "https://github.com/staabm/side-effects-detector/tree/1.0.5"
},
- "time": "2025-12-06T11:56:16+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/staabm",
+ "type": "github"
+ }
+ ],
+ "time": "2024-10-20T05:08:20+00:00"
},
{
"name": "symfony/browser-kit",
- "version": "v7.4.8",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/browser-kit.git",
- "reference": "41850d8f8ddef9a9cd7314fa9f4902cf48885521"
+ "reference": "74e18e582cdda0eca35f7c74e1e48e62f0ede853"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/browser-kit/zipball/41850d8f8ddef9a9cd7314fa9f4902cf48885521",
- "reference": "41850d8f8ddef9a9cd7314fa9f4902cf48885521",
+ "url": "https://api.github.com/repos/symfony/browser-kit/zipball/74e18e582cdda0eca35f7c74e1e48e62f0ede853",
+ "reference": "74e18e582cdda0eca35f7c74e1e48e62f0ede853",
"shasum": ""
},
"require": {
- "php": ">=8.2",
- "symfony/deprecation-contracts": "^2.5|^3",
- "symfony/dom-crawler": "^6.4|^7.0|^8.0"
+ "php": ">=8.4.1",
+ "symfony/dom-crawler": "^7.4|^8.0"
},
"require-dev": {
- "symfony/css-selector": "^6.4|^7.0|^8.0",
- "symfony/http-client": "^6.4|^7.0|^8.0",
- "symfony/mime": "^6.4|^7.0|^8.0",
- "symfony/process": "^6.4|^7.0|^8.0"
+ "symfony/css-selector": "^7.4|^8.0",
+ "symfony/http-client": "^7.4|^8.0",
+ "symfony/mime": "^7.4|^8.0",
+ "symfony/process": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -5813,7 +7228,7 @@
"description": "Simulates the behavior of a web browser, allowing you to make requests, click on links and submit forms programmatically",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/browser-kit/tree/v7.4.8"
+ "source": "https://github.com/symfony/browser-kit/tree/v8.1.0"
},
"funding": [
{
@@ -5833,24 +7248,24 @@
"type": "tidelift"
}
],
- "time": "2026-03-24T13:12:05+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/css-selector",
- "version": "v7.4.9",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/css-selector.git",
- "reference": "b75663ed96cf4756e28e3105476f220f92886cc4"
+ "reference": "dc0e2be45c9b5588c82414f02ac574b4b986abcd"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/css-selector/zipball/b75663ed96cf4756e28e3105476f220f92886cc4",
- "reference": "b75663ed96cf4756e28e3105476f220f92886cc4",
+ "url": "https://api.github.com/repos/symfony/css-selector/zipball/dc0e2be45c9b5588c82414f02ac574b4b986abcd",
+ "reference": "dc0e2be45c9b5588c82414f02ac574b4b986abcd",
"shasum": ""
},
"require": {
- "php": ">=8.2"
+ "php": ">=8.4.1"
},
"type": "library",
"autoload": {
@@ -5882,7 +7297,7 @@
"description": "Converts CSS selectors to XPath expressions",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/css-selector/tree/v7.4.9"
+ "source": "https://github.com/symfony/css-selector/tree/v8.1.0"
},
"funding": [
{
@@ -5902,34 +7317,34 @@
"type": "tidelift"
}
],
- "time": "2026-04-18T13:18:21+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/debug-bundle",
- "version": "v7.4.8",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/debug-bundle.git",
- "reference": "3eb18c1e6cd16da2cea1f1b5162e442af4afee44"
+ "reference": "2da1f202b38f646dbee032529cfd8e727cd12cd1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/debug-bundle/zipball/3eb18c1e6cd16da2cea1f1b5162e442af4afee44",
- "reference": "3eb18c1e6cd16da2cea1f1b5162e442af4afee44",
+ "url": "https://api.github.com/repos/symfony/debug-bundle/zipball/2da1f202b38f646dbee032529cfd8e727cd12cd1",
+ "reference": "2da1f202b38f646dbee032529cfd8e727cd12cd1",
"shasum": ""
},
"require": {
"composer-runtime-api": ">=2.1",
"ext-xml": "*",
- "php": ">=8.2",
- "symfony/config": "^7.3|^8.0",
- "symfony/dependency-injection": "^6.4|^7.0|^8.0",
- "symfony/http-kernel": "^6.4|^7.0|^8.0",
- "symfony/twig-bridge": "^6.4|^7.0|^8.0",
- "symfony/var-dumper": "^6.4|^7.0|^8.0"
+ "php": ">=8.4.1",
+ "symfony/config": "^7.4|^8.0",
+ "symfony/dependency-injection": "^7.4|^8.0",
+ "symfony/http-kernel": "^7.4|^8.0",
+ "symfony/twig-bridge": "^7.4|^8.0",
+ "symfony/var-dumper": "^7.4|^8.0"
},
"require-dev": {
- "symfony/web-profiler-bundle": "^6.4|^7.0|^8.0"
+ "symfony/web-profiler-bundle": "^7.4|^8.0"
},
"type": "symfony-bundle",
"autoload": {
@@ -5957,7 +7372,7 @@
"description": "Provides a tight integration of the Symfony VarDumper component and the ServerLogCommand from MonologBridge into the Symfony full-stack framework",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/debug-bundle/tree/v7.4.8"
+ "source": "https://github.com/symfony/debug-bundle/tree/v8.1.0"
},
"funding": [
{
@@ -5977,31 +7392,29 @@
"type": "tidelift"
}
],
- "time": "2026-03-24T13:12:05+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/dom-crawler",
- "version": "v7.4.12",
+ "version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/dom-crawler.git",
- "reference": "b59b59122690976550fd142c23fab62c84738db6"
+ "reference": "77ca351474ea018daba5f2e473cbf1b9b8e72ac6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/b59b59122690976550fd142c23fab62c84738db6",
- "reference": "b59b59122690976550fd142c23fab62c84738db6",
+ "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/77ca351474ea018daba5f2e473cbf1b9b8e72ac6",
+ "reference": "77ca351474ea018daba5f2e473cbf1b9b8e72ac6",
"shasum": ""
},
"require": {
- "masterminds/html5": "^2.6",
- "php": ">=8.2",
- "symfony/deprecation-contracts": "^2.5|^3",
- "symfony/polyfill-ctype": "~1.8",
- "symfony/polyfill-mbstring": "~1.0"
+ "php": ">=8.4.1",
+ "symfony/polyfill-ctype": "^1.8",
+ "symfony/polyfill-mbstring": "^1.0"
},
"require-dev": {
- "symfony/css-selector": "^6.4|^7.0|^8.0"
+ "symfony/css-selector": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -6029,7 +7442,7 @@
"description": "Eases DOM navigation for HTML and XML documents",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/dom-crawler/tree/v7.4.12"
+ "source": "https://github.com/symfony/dom-crawler/tree/v8.1.0"
},
"funding": [
{
@@ -6049,7 +7462,7 @@
"type": "tidelift"
}
],
- "time": "2026-05-20T07:20:23+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
"name": "symfony/maker-bundle",
@@ -6151,46 +7564,29 @@
"time": "2026-03-18T13:39:06+00:00"
},
{
- "name": "symfony/phpunit-bridge",
- "version": "v8.0.8",
+ "name": "symfony/process",
+ "version": "v8.1.0",
"source": {
"type": "git",
- "url": "https://github.com/symfony/phpunit-bridge.git",
- "reference": "723ea96810135e776110bddb25aeb32b462134c8"
+ "url": "https://github.com/symfony/process.git",
+ "reference": "c4a9e58f235a6bf7f97ffbfedae2687353ac79e5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/723ea96810135e776110bddb25aeb32b462134c8",
- "reference": "723ea96810135e776110bddb25aeb32b462134c8",
+ "url": "https://api.github.com/repos/symfony/process/zipball/c4a9e58f235a6bf7f97ffbfedae2687353ac79e5",
+ "reference": "c4a9e58f235a6bf7f97ffbfedae2687353ac79e5",
"shasum": ""
},
"require": {
- "php": ">=8.1.0"
- },
- "require-dev": {
- "symfony/deprecation-contracts": "^2.5|^3",
- "symfony/error-handler": "^6.4.3|^7.0.3|^8.0"
- },
- "bin": [
- "bin/simple-phpunit"
- ],
- "type": "symfony-bridge",
- "extra": {
- "thanks": {
- "url": "https://github.com/sebastianbergmann/phpunit",
- "name": "phpunit/phpunit"
- }
+ "php": ">=8.4.1"
},
+ "type": "library",
"autoload": {
- "files": [
- "bootstrap.php"
- ],
"psr-4": {
- "Symfony\\Bridge\\PhpUnit\\": ""
+ "Symfony\\Component\\Process\\": ""
},
"exclude-from-classmap": [
- "/Tests/",
- "/bin/"
+ "/Tests/"
]
},
"notification-url": "https://packagist.org/downloads/",
@@ -6199,21 +7595,18 @@
],
"authors": [
{
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Provides utilities for PHPUnit, especially user deprecation notices management",
+ "description": "Executes commands in sub-processes",
"homepage": "https://symfony.com",
- "keywords": [
- "testing"
- ],
"support": {
- "source": "https://github.com/symfony/phpunit-bridge/tree/v8.0.8"
+ "source": "https://github.com/symfony/process/tree/v8.1.0"
},
"funding": [
{
@@ -6233,29 +7626,46 @@
"type": "tidelift"
}
],
- "time": "2026-03-30T15:14:47+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
- "name": "symfony/process",
- "version": "v7.4.13",
+ "name": "symfony/web-profiler-bundle",
+ "version": "v8.1.0",
"source": {
"type": "git",
- "url": "https://github.com/symfony/process.git",
- "reference": "f5804be144caceb570f6747519999636b664f24c"
+ "url": "https://github.com/symfony/web-profiler-bundle.git",
+ "reference": "f8ccea08797a511b85a698b0da40e1b9e6461086"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/f5804be144caceb570f6747519999636b664f24c",
- "reference": "f5804be144caceb570f6747519999636b664f24c",
+ "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/f8ccea08797a511b85a698b0da40e1b9e6461086",
+ "reference": "f8ccea08797a511b85a698b0da40e1b9e6461086",
"shasum": ""
},
"require": {
- "php": ">=8.2"
+ "composer-runtime-api": ">=2.1",
+ "php": ">=8.4.1",
+ "symfony/config": "^7.4|^8.0",
+ "symfony/framework-bundle": "^7.4|^8.0",
+ "symfony/http-kernel": "^8.1",
+ "symfony/routing": "^7.4|^8.0",
+ "symfony/twig-bundle": "^7.4|^8.0"
},
- "type": "library",
+ "conflict": {
+ "symfony/serializer": "<7.4",
+ "symfony/workflow": "<7.4"
+ },
+ "require-dev": {
+ "symfony/browser-kit": "^7.4|^8.0",
+ "symfony/console": "^7.4|^8.0",
+ "symfony/css-selector": "^7.4|^8.0",
+ "symfony/runtime": "^7.4|^8.0",
+ "symfony/stopwatch": "^7.4|^8.0"
+ },
+ "type": "symfony-bundle",
"autoload": {
"psr-4": {
- "Symfony\\Component\\Process\\": ""
+ "Symfony\\Bundle\\WebProfilerBundle\\": ""
},
"exclude-from-classmap": [
"/Tests/"
@@ -6275,10 +7685,13 @@
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Executes commands in sub-processes",
+ "description": "Provides a development tool that gives detailed information about the execution of any request",
"homepage": "https://symfony.com",
+ "keywords": [
+ "dev"
+ ],
"support": {
- "source": "https://github.com/symfony/process/tree/v7.4.13"
+ "source": "https://github.com/symfony/web-profiler-bundle/tree/v8.1.0"
},
"funding": [
{
@@ -6298,97 +7711,57 @@
"type": "tidelift"
}
],
- "time": "2026-05-23T16:05:06+00:00"
+ "time": "2026-05-29T05:06:50+00:00"
},
{
- "name": "symfony/web-profiler-bundle",
- "version": "v7.4.13",
+ "name": "theseer/tokenizer",
+ "version": "2.0.1",
"source": {
"type": "git",
- "url": "https://github.com/symfony/web-profiler-bundle.git",
- "reference": "153076bb3f0690fff0e95e55cc06358b22f236a5"
+ "url": "https://github.com/theseer/tokenizer.git",
+ "reference": "7989e43bf381af0eac72e4f0ca5bcbfa81658be4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/153076bb3f0690fff0e95e55cc06358b22f236a5",
- "reference": "153076bb3f0690fff0e95e55cc06358b22f236a5",
+ "url": "https://api.github.com/repos/theseer/tokenizer/zipball/7989e43bf381af0eac72e4f0ca5bcbfa81658be4",
+ "reference": "7989e43bf381af0eac72e4f0ca5bcbfa81658be4",
"shasum": ""
},
"require": {
- "composer-runtime-api": ">=2.1",
- "php": ">=8.2",
- "symfony/config": "^7.3|^8.0",
- "symfony/deprecation-contracts": "^2.5|^3",
- "symfony/framework-bundle": "^6.4.13|^7.1.6|^8.0",
- "symfony/http-kernel": "^6.4.13|^7.1.6|^8.0",
- "symfony/routing": "^6.4|^7.0|^8.0",
- "symfony/twig-bundle": "^6.4|^7.0|^8.0",
- "twig/twig": "^3.15"
- },
- "conflict": {
- "symfony/form": "<6.4",
- "symfony/mailer": "<6.4",
- "symfony/messenger": "<6.4",
- "symfony/serializer": "<7.2",
- "symfony/workflow": "<7.3"
- },
- "require-dev": {
- "symfony/browser-kit": "^6.4|^7.0|^8.0",
- "symfony/console": "^6.4|^7.0|^8.0",
- "symfony/css-selector": "^6.4|^7.0|^8.0",
- "symfony/runtime": "^6.4.13|^7.1.6|^8.0",
- "symfony/stopwatch": "^6.4|^7.0|^8.0"
+ "ext-dom": "*",
+ "ext-tokenizer": "*",
+ "ext-xmlwriter": "*",
+ "php": "^8.1"
},
- "type": "symfony-bundle",
+ "type": "library",
"autoload": {
- "psr-4": {
- "Symfony\\Bundle\\WebProfilerBundle\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
+ "classmap": [
+ "src/"
]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
- "MIT"
+ "BSD-3-Clause"
],
"authors": [
{
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
+ "name": "Arne Blankerts",
+ "email": "arne@blankerts.de",
+ "role": "Developer"
}
],
- "description": "Provides a development tool that gives detailed information about the execution of any request",
- "homepage": "https://symfony.com",
- "keywords": [
- "dev"
- ],
+ "description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
"support": {
- "source": "https://github.com/symfony/web-profiler-bundle/tree/v7.4.13"
+ "issues": "https://github.com/theseer/tokenizer/issues",
+ "source": "https://github.com/theseer/tokenizer/tree/2.0.1"
},
"funding": [
{
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://github.com/nicolas-grekas",
+ "url": "https://github.com/theseer",
"type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
}
],
- "time": "2026-05-23T16:05:06+00:00"
+ "time": "2025-12-08T11:19:18+00:00"
}
],
"aliases": [],
@@ -6397,10 +7770,10 @@
"prefer-stable": true,
"prefer-lowest": false,
"platform": {
- "php": ">=8.3",
+ "php": ">=8.5",
"ext-ctype": "*",
"ext-iconv": "*"
},
"platform-dev": {},
- "plugin-api-version": "2.6.0"
+ "plugin-api-version": "2.9.0"
}
diff --git a/config/packages/doctrine.yaml b/config/packages/doctrine.yaml
index a52e900..c5d8761 100644
--- a/config/packages/doctrine.yaml
+++ b/config/packages/doctrine.yaml
@@ -1,14 +1,25 @@
doctrine:
dbal:
url: '%env(resolve:DATABASE_URL)%'
+
+ # IMPORTANT: You MUST configure your server version,
+ # either here or in the DATABASE_URL env var (see .env file)
+ #server_version: '16'
+
+ profiling_collect_backtrace: '%kernel.debug%'
+
types:
datetime_immutable_ms: App\Doctrine\Type\DateTimeImmutableWithMillis
+
orm:
- auto_generate_proxy_classes: true
- naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
+ validate_xml_mapping: true
+ naming_strategy: doctrine.orm.naming_strategy.underscore
+ identity_generation_preferences:
+ Doctrine\DBAL\Platforms\PostgreSQLPlatform: identity
auto_mapping: true
mappings:
App:
+ type: attribute
is_bundle: false
dir: '%kernel.project_dir%/src/Entity'
prefix: 'App\Entity'
@@ -23,7 +34,6 @@ when@test:
when@prod:
doctrine:
orm:
- auto_generate_proxy_classes: false
query_cache_driver:
type: pool
pool: doctrine.system_cache_pool
diff --git a/config/packages/framework.yaml b/config/packages/framework.yaml
index 58d4fb4..5a04613 100644
--- a/config/packages/framework.yaml
+++ b/config/packages/framework.yaml
@@ -1,22 +1,12 @@
# see https://symfony.com/doc/current/reference/configuration/framework.html
framework:
secret: '%env(APP_SECRET)%'
- #csrf_protection: true
- http_method_override: false
- handle_all_throwables: true
- # Enables session support. Note that the session will ONLY be started if you read or write from it.
- # Remove or comment this section to explicitly disable session support.
- session:
- handler_id: null
- cookie_secure: auto
- cookie_samesite: lax
- storage_factory_id: session.storage.factory.native
+ # Note that the session will be started ONLY if you read or write from it.
+ session: true
#esi: true
#fragments: true
- php_errors:
- log: true
http_client:
default_options:
diff --git a/config/packages/monolog.yaml b/config/packages/monolog.yaml
index 8c9efa9..bb59708 100644
--- a/config/packages/monolog.yaml
+++ b/config/packages/monolog.yaml
@@ -10,14 +10,6 @@ when@dev:
path: "%kernel.logs_dir%/%kernel.environment%.log"
level: debug
channels: ["!event"]
- # uncomment to get logging in your browser
- # you may have to allow bigger header sizes in your Web server configuration
- #firephp:
- # type: firephp
- # level: info
- #chromephp:
- # type: chromephp
- # level: info
console:
type: console
process_psr_3_messages: false
@@ -45,6 +37,7 @@ when@prod:
action_level: error
handler: nested
excluded_http_codes: [404, 405]
+ channels: ["!deprecation"]
buffer_size: 50 # How many messages should be saved? Prevent memory leaks
nested:
type: stream
@@ -59,3 +52,4 @@ when@prod:
type: stream
channels: [deprecation]
path: php://stderr
+ formatter: monolog.formatter.json
diff --git a/config/packages/property_info.yaml b/config/packages/property_info.yaml
new file mode 100644
index 0000000..dd31b9d
--- /dev/null
+++ b/config/packages/property_info.yaml
@@ -0,0 +1,3 @@
+framework:
+ property_info:
+ with_constructor_extractor: true
diff --git a/config/packages/routing.yaml b/config/packages/routing.yaml
index 4b766ce..0f34f87 100644
--- a/config/packages/routing.yaml
+++ b/config/packages/routing.yaml
@@ -1,10 +1,8 @@
framework:
router:
- utf8: true
-
# Configure how to generate URLs in non-HTTP contexts, such as CLI commands.
# See https://symfony.com/doc/current/routing.html#generating-urls-in-commands
- #default_uri: http://localhost
+ default_uri: '%env(DEFAULT_URI)%'
when@prod:
framework:
diff --git a/config/packages/twig.yaml b/config/packages/twig.yaml
index f9f4cc5..3f795d9 100644
--- a/config/packages/twig.yaml
+++ b/config/packages/twig.yaml
@@ -1,5 +1,5 @@
twig:
- default_path: '%kernel.project_dir%/templates'
+ file_name_pattern: '*.twig'
when@test:
twig:
diff --git a/config/packages/web_profiler.yaml b/config/packages/web_profiler.yaml
index b946111..0eac3c9 100644
--- a/config/packages/web_profiler.yaml
+++ b/config/packages/web_profiler.yaml
@@ -1,17 +1,13 @@
when@dev:
web_profiler:
toolbar: true
- intercept_redirects: false
framework:
profiler:
- only_exceptions: false
collect_serializer_data: true
when@test:
- web_profiler:
- toolbar: false
- intercept_redirects: false
-
framework:
- profiler: { collect: false }
+ profiler:
+ collect: false
+ collect_serializer_data: true
diff --git a/config/routes.yaml b/config/routes.yaml
index 41ef814..cef258c 100644
--- a/config/routes.yaml
+++ b/config/routes.yaml
@@ -1,5 +1,11 @@
+# yaml-language-server: $schema=../vendor/symfony/routing/Loader/schema/routing.schema.json
+
+# This file is the entry point to configure the routes of your app.
+# Methods with the #[Route] attribute are automatically imported.
+# See also https://symfony.com/doc/current/routing.html
+
+# To list all registered routes, run the following command:
+# bin/console debug:router
+
controllers:
- resource:
- path: ../src/Controller/
- namespace: App\Controller
- type: attribute
+ resource: routing.controllers
diff --git a/config/routes/framework.yaml b/config/routes/framework.yaml
index 0fc74bb..bc1feac 100644
--- a/config/routes/framework.yaml
+++ b/config/routes/framework.yaml
@@ -1,4 +1,4 @@
when@dev:
_errors:
- resource: '@FrameworkBundle/Resources/config/routing/errors.xml'
+ resource: '@FrameworkBundle/Resources/config/routing/errors.php'
prefix: /_error
diff --git a/config/routes/security.yaml b/config/routes/security.yaml
new file mode 100644
index 0000000..f853be1
--- /dev/null
+++ b/config/routes/security.yaml
@@ -0,0 +1,3 @@
+_security_logout:
+ resource: security.route_loader.logout
+ type: service
diff --git a/config/routes/web_profiler.yaml b/config/routes/web_profiler.yaml
index 8d85319..b3b7b4b 100644
--- a/config/routes/web_profiler.yaml
+++ b/config/routes/web_profiler.yaml
@@ -1,8 +1,8 @@
when@dev:
web_profiler_wdt:
- resource: '@WebProfilerBundle/Resources/config/routing/wdt.xml'
+ resource: '@WebProfilerBundle/Resources/config/routing/wdt.php'
prefix: /_wdt
web_profiler_profiler:
- resource: '@WebProfilerBundle/Resources/config/routing/profiler.xml'
+ resource: '@WebProfilerBundle/Resources/config/routing/profiler.php'
prefix: /_profiler
diff --git a/config/services.yaml b/config/services.yaml
index d6e3280..f80939b 100644
--- a/config/services.yaml
+++ b/config/services.yaml
@@ -1,3 +1,5 @@
+# yaml-language-server: $schema=../vendor/symfony/dependency-injection/Loader/schema/services.schema.json
+
parameters:
services:
@@ -6,8 +8,7 @@ services:
autoconfigure: true
App\:
- resource: '../src/*'
- exclude: '../src/{DependencyInjection,Entity,Migrations,Tests,Kernel.php}'
+ resource: '../src/'
when@test:
services:
diff --git a/phpunit.xml.dist b/phpunit.dist.xml
similarity index 51%
rename from phpunit.xml.dist
rename to phpunit.dist.xml
index 0891198..22bd879 100644
--- a/phpunit.xml.dist
+++ b/phpunit.dist.xml
@@ -3,20 +3,18 @@
-
-
-
-
@@ -25,20 +23,22 @@
-
+
- src
+ src
-
-
-
-
+
+ Doctrine\Deprecations\Deprecation::trigger
+ Doctrine\Deprecations\Deprecation::delegateTriggerToBackend
+ trigger_deprecation
+
+
-
-
diff --git a/src/Kernel.php b/src/Kernel.php
index 779cd1f..636aeb6 100644
--- a/src/Kernel.php
+++ b/src/Kernel.php
@@ -8,4 +8,14 @@
class Kernel extends BaseKernel
{
use MicroKernelTrait;
+
+ /**
+ * @return list An array of allowed values for APP_ENV
+ *
+ * @phpstan-ignore method.unused
+ */
+ private function getAllowedEnvs(): array
+ {
+ return ['prod', 'dev', 'test'];
+ }
}
diff --git a/symfony.lock b/symfony.lock
index 3571b9b..5844079 100644
--- a/symfony.lock
+++ b/symfony.lock
@@ -11,22 +11,25 @@
"composer/xdebug-handler": {
"version": "3.0.3"
},
- "doctrine/collections": {
- "version": "1.6.7"
- },
"doctrine/dbal": {
"version": "2.13.1"
},
"doctrine/deprecations": {
- "version": "v0.5.3"
+ "version": "1.1",
+ "recipe": {
+ "repo": "github.com/symfony/recipes",
+ "branch": "main",
+ "version": "1.0",
+ "ref": "fdd756167454623e21f1d769c5b814b243782a67"
+ }
},
"doctrine/doctrine-bundle": {
- "version": "2.7",
+ "version": "3.2",
"recipe": {
"repo": "github.com/symfony/recipes",
"branch": "main",
- "version": "2.4",
- "ref": "d562b46dd8075ab2de3d58bf7895cf6b8365cb72"
+ "version": "3.0",
+ "ref": "d39a3bd844edfe90c20ae520b804a3bf4f82b4ad"
},
"files": [
"config/packages/doctrine.yaml",
@@ -35,7 +38,7 @@
]
},
"doctrine/doctrine-migrations-bundle": {
- "version": "3.2",
+ "version": "4.0",
"recipe": {
"repo": "github.com/symfony/recipes",
"branch": "main",
@@ -53,18 +56,9 @@
"doctrine/inflector": {
"version": "2.0.3"
},
- "doctrine/instantiator": {
- "version": "1.4.0"
- },
- "doctrine/lexer": {
- "version": "1.2.1"
- },
"doctrine/migrations": {
"version": "2.3.3"
},
- "doctrine/orm": {
- "version": "2.8.4"
- },
"doctrine/persistence": {
"version": "2.1.0"
},
@@ -98,6 +92,21 @@
"php-cs-fixer/diff": {
"version": "v2.0.2"
},
+ "phpunit/phpunit": {
+ "version": "13.1",
+ "recipe": {
+ "repo": "github.com/symfony/recipes",
+ "branch": "main",
+ "version": "11.1",
+ "ref": "ca0bc067abfb40a8de1b2561b96cbfc2b833c314"
+ },
+ "files": [
+ ".env.test",
+ "phpunit.dist.xml",
+ "tests/bootstrap.php",
+ "bin/phpunit"
+ ]
+ },
"psr/cache": {
"version": "1.0.1"
},
@@ -123,12 +132,12 @@
"version": "v5.2.4"
},
"symfony/console": {
- "version": "6.0",
+ "version": "8.1",
"recipe": {
"repo": "github.com/symfony/recipes",
- "branch": "master",
+ "branch": "main",
"version": "5.3",
- "ref": "da0c8be8157600ad34f10ff0c9cc91232522e047"
+ "ref": "1781ff40d8a17d87cf53f8d4cf0c8346ed2bb461"
},
"files": [
"bin/console"
@@ -138,10 +147,10 @@
"version": "v5.2.4"
},
"symfony/debug-bundle": {
- "version": "6.0",
+ "version": "8.1",
"recipe": {
"repo": "github.com/symfony/recipes",
- "branch": "master",
+ "branch": "main",
"version": "5.3",
"ref": "5aa8aa48234c8eb6dbdd7b3cd5d791485d2cec4b"
},
@@ -180,24 +189,25 @@
"version": "v5.2.4"
},
"symfony/flex": {
- "version": "2.2",
+ "version": "2.10",
"recipe": {
"repo": "github.com/symfony/recipes",
"branch": "main",
- "version": "1.0",
- "ref": "146251ae39e06a95be0fe3d13c807bcf3938b172"
+ "version": "2.4",
+ "ref": "52e9754527a15e2b79d9a610f98185a1fe46622a"
},
"files": [
- ".env"
+ ".env",
+ ".env.dev"
]
},
"symfony/framework-bundle": {
- "version": "6.2",
+ "version": "8.1",
"recipe": {
"repo": "github.com/symfony/recipes",
"branch": "main",
- "version": "6.2",
- "ref": "af47254c5e4cd543e6af3e4508298ffebbdaddd3"
+ "version": "8.1",
+ "ref": "9e77d8de204dbd47f402eee6adb3a46bee5f8510"
},
"files": [
"config/packages/cache.yaml",
@@ -207,7 +217,8 @@
"config/services.yaml",
"public/index.php",
"src/Controller/.gitignore",
- "src/Kernel.php"
+ "src/Kernel.php",
+ ".editorconfig"
]
},
"symfony/http-client": {
@@ -223,10 +234,10 @@
"version": "v5.2.6"
},
"symfony/maker-bundle": {
- "version": "1.0",
+ "version": "1.67",
"recipe": {
"repo": "github.com/symfony/recipes",
- "branch": "master",
+ "branch": "main",
"version": "1.0",
"ref": "fadbfe33303a76e25cb63401050439aa9b1a9c7f"
}
@@ -235,12 +246,12 @@
"version": "v5.2.5"
},
"symfony/monolog-bundle": {
- "version": "3.7",
+ "version": "4.0",
"recipe": {
"repo": "github.com/symfony/recipes",
- "branch": "master",
+ "branch": "main",
"version": "3.7",
- "ref": "213676c4ec929f046dfde5ea8e97625b81bc0578"
+ "ref": "1b9efb10c54cb51c713a9391c9300ff8bceda459"
},
"files": [
"config/packages/monolog.yaml"
@@ -252,21 +263,6 @@
"symfony/password-hasher": {
"version": "v5.4.3"
},
- "symfony/phpunit-bridge": {
- "version": "6.0",
- "recipe": {
- "repo": "github.com/symfony/recipes",
- "branch": "master",
- "version": "5.3",
- "ref": "97cb3dc7b0f39c7cfc4b7553504c9d7b7795de96"
- },
- "files": [
- ".env.test",
- "bin/phpunit",
- "phpunit.xml.dist",
- "tests/bootstrap.php"
- ]
- },
"symfony/polyfill-intl-grapheme": {
"version": "v1.22.1"
},
@@ -289,15 +285,24 @@
"version": "v5.2.4"
},
"symfony/property-info": {
- "version": "v5.2.4"
+ "version": "8.1",
+ "recipe": {
+ "repo": "github.com/symfony/recipes",
+ "branch": "main",
+ "version": "7.3",
+ "ref": "dae70df71978ae9226ae915ffd5fad817f5ca1f7"
+ },
+ "files": [
+ "config/packages/property_info.yaml"
+ ]
},
"symfony/routing": {
- "version": "6.2",
+ "version": "8.1",
"recipe": {
"repo": "github.com/symfony/recipes",
"branch": "main",
- "version": "6.2",
- "ref": "e0a11b4ccb8c9e70b574ff5ad3dfdcd41dec5aa6"
+ "version": "7.4",
+ "ref": "bc94c4fd86f393f3ab3947c18b830ea343e51ded"
},
"files": [
"config/packages/routing.yaml",
@@ -305,15 +310,16 @@
]
},
"symfony/security-bundle": {
- "version": "6.2",
+ "version": "8.1",
"recipe": {
"repo": "github.com/symfony/recipes",
"branch": "main",
- "version": "6.0",
- "ref": "8a5b112826f7d3d5b07027f93786ae11a1c7de48"
+ "version": "7.4",
+ "ref": "c42fee7802181cdd50f61b8622715829f5d2335c"
},
"files": [
- "config/packages/security.yaml"
+ "config/packages/security.yaml",
+ "config/routes/security.yaml"
]
},
"symfony/security-core": {
@@ -341,12 +347,12 @@
"version": "v5.2.6"
},
"symfony/twig-bundle": {
- "version": "6.0",
+ "version": "8.1",
"recipe": {
"repo": "github.com/symfony/recipes",
- "branch": "master",
- "version": "5.4",
- "ref": "bb2178c57eee79e6be0b297aa96fc0c0def81387"
+ "branch": "main",
+ "version": "6.4",
+ "ref": "f250159ebe99153d0c640a3e7742876fc7453f2c"
},
"files": [
"config/packages/twig.yaml",
@@ -360,12 +366,12 @@
"version": "v5.2.4"
},
"symfony/web-profiler-bundle": {
- "version": "6.2",
+ "version": "8.1",
"recipe": {
"repo": "github.com/symfony/recipes",
"branch": "main",
- "version": "6.1",
- "ref": "e42b3f0177df239add25373083a564e5ead4e13a"
+ "version": "7.3",
+ "ref": "a363460c1b0b4a4d0242f2ce1a843ca0f6ac9026"
},
"files": [
"config/packages/web_profiler.yaml",