From 7dff544e62d2e43364bed944979a384bec1c4977 Mon Sep 17 00:00:00 2001 From: adnanmula Date: Wed, 26 Nov 2025 20:51:08 +0100 Subject: [PATCH 1/2] upgrade symfony to 7.3 --- composer.json | 26 +- composer.lock | 639 ++++++++++-------- config/packages/framework.yaml | 2 - config/packages/property_info.yaml | 3 + .../Security/RateLimitSubscriber.php | 11 +- symfony.lock | 12 + 6 files changed, 373 insertions(+), 320 deletions(-) create mode 100644 config/packages/property_info.yaml diff --git a/composer.json b/composer.json index 6c352fce..398bbb87 100644 --- a/composer.json +++ b/composer.json @@ -16,20 +16,20 @@ "nelmio/api-doc-bundle": "^5.0", "ramsey/uuid": "^4.7", "robmorgan/phinx": "^0.16", - "symfony/asset": "7.2.*", - "symfony/console": "7.2.*", - "symfony/dotenv": "7.2.*", + "symfony/asset": "7.3.*", + "symfony/console": "7.3.*", + "symfony/dotenv": "7.3.*", "symfony/flex": "^1.3.1", - "symfony/framework-bundle": "7.2.*", - "symfony/http-client": "7.2.*", - "symfony/lock": "7.2.*", - "symfony/messenger": "7.2.*", + "symfony/framework-bundle": "7.3.*", + "symfony/http-client": "7.3.*", + "symfony/lock": "7.3.*", + "symfony/messenger": "7.3.*", "symfony/monolog-bundle": "^3.10", - "symfony/rate-limiter": "7.2.*", - "symfony/security-bundle": "7.2.*", - "symfony/translation": "7.2.*", - "symfony/twig-bundle": "7.2.*", - "symfony/yaml": "7.2.*" + "symfony/rate-limiter": "7.3.*", + "symfony/security-bundle": "7.3.*", + "symfony/translation": "7.3.*", + "symfony/twig-bundle": "7.3.*", + "symfony/yaml": "7.3.*" }, "require-dev": { "adnanmula/coding-standard": "^0.0.13", @@ -96,7 +96,7 @@ "extra": { "symfony": { "allow-contrib": false, - "require": "7.2.*" + "require": "7.3.*" } } } diff --git a/composer.lock b/composer.lock index 0c290e9f..eab283b2 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": "6c682d274b1c604bed6979a966b20b2d", + "content-hash": "0ee5bf36d18f341541534c6664daf195", "packages": [ { "name": "adnanmula/criteria", @@ -219,16 +219,16 @@ }, { "name": "brick/math", - "version": "0.14.0", + "version": "0.14.1", "source": { "type": "git", "url": "https://github.com/brick/math.git", - "reference": "113a8ee2656b882d4c3164fa31aa6e12cbb7aaa2" + "reference": "f05858549e5f9d7bb45875a75583240a38a281d0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/brick/math/zipball/113a8ee2656b882d4c3164fa31aa6e12cbb7aaa2", - "reference": "113a8ee2656b882d4c3164fa31aa6e12cbb7aaa2", + "url": "https://api.github.com/repos/brick/math/zipball/f05858549e5f9d7bb45875a75583240a38a281d0", + "reference": "f05858549e5f9d7bb45875a75583240a38a281d0", "shasum": "" }, "require": { @@ -267,7 +267,7 @@ ], "support": { "issues": "https://github.com/brick/math/issues", - "source": "https://github.com/brick/math/tree/0.14.0" + "source": "https://github.com/brick/math/tree/0.14.1" }, "funding": [ { @@ -275,7 +275,7 @@ "type": "github" } ], - "time": "2025-08-29T12:40:03+00:00" + "time": "2025-11-24T14:40:29+00:00" }, { "name": "cakephp/chronos", @@ -1407,16 +1407,16 @@ }, { "name": "phpdocumentor/type-resolver", - "version": "1.10.1", + "version": "1.12.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "431c02da15e566adb0ad9c5030fa6f6204d9de9e" + "reference": "92a98ada2b93d9b201a613cb5a33584dde25f195" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/431c02da15e566adb0ad9c5030fa6f6204d9de9e", - "reference": "431c02da15e566adb0ad9c5030fa6f6204d9de9e", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/92a98ada2b93d9b201a613cb5a33584dde25f195", + "reference": "92a98ada2b93d9b201a613cb5a33584dde25f195", "shasum": "" }, "require": { @@ -1459,9 +1459,9 @@ "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", "support": { "issues": "https://github.com/phpDocumentor/TypeResolver/issues", - "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.10.1" + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.12.0" }, - "time": "2025-11-18T07:51:16+00:00" + "time": "2025-11-21T15:09:14+00:00" }, { "name": "phpstan/phpdoc-parser", @@ -2054,16 +2054,16 @@ }, { "name": "symfony/asset", - "version": "v7.2.0", + "version": "v7.3.0", "source": { "type": "git", "url": "https://github.com/symfony/asset.git", - "reference": "cb926cd59fefa1f9b4900b3695f0f846797ba5c0" + "reference": "56c4d9f759247c4e07d8549e3baf7493cb9c3e4b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/asset/zipball/cb926cd59fefa1f9b4900b3695f0f846797ba5c0", - "reference": "cb926cd59fefa1f9b4900b3695f0f846797ba5c0", + "url": "https://api.github.com/repos/symfony/asset/zipball/56c4d9f759247c4e07d8549e3baf7493cb9c3e4b", + "reference": "56c4d9f759247c4e07d8549e3baf7493cb9c3e4b", "shasum": "" }, "require": { @@ -2103,7 +2103,7 @@ "description": "Manages URL generation and versioning of web assets such as CSS stylesheets, JavaScript files and image files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/asset/tree/v7.2.0" + "source": "https://github.com/symfony/asset/tree/v7.3.0" }, "funding": [ { @@ -2119,27 +2119,27 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:15:23+00:00" + "time": "2025-03-05T10:15:41+00:00" }, { "name": "symfony/cache", - "version": "v7.2.9", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "e874746cea6893d4b91943eab8376a0fe7528de6" + "reference": "1277a1ec61c8d93ea61b2a59738f1deb9bfb6701" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/e874746cea6893d4b91943eab8376a0fe7528de6", - "reference": "e874746cea6893d4b91943eab8376a0fe7528de6", + "url": "https://api.github.com/repos/symfony/cache/zipball/1277a1ec61c8d93ea61b2a59738f1deb9bfb6701", + "reference": "1277a1ec61c8d93ea61b2a59738f1deb9bfb6701", "shasum": "" }, "require": { "php": ">=8.2", "psr/cache": "^2.0|^3.0", "psr/log": "^1.1|^2|^3", - "symfony/cache-contracts": "^2.5|^3", + "symfony/cache-contracts": "^3.6", "symfony/deprecation-contracts": "^2.5|^3.0", "symfony/service-contracts": "^2.5|^3", "symfony/var-exporter": "^6.4|^7.0" @@ -2201,7 +2201,7 @@ "psr6" ], "support": { - "source": "https://github.com/symfony/cache/tree/v7.2.9" + "source": "https://github.com/symfony/cache/tree/v7.3.6" }, "funding": [ { @@ -2221,7 +2221,7 @@ "type": "tidelift" } ], - "time": "2025-07-30T17:03:27+00:00" + "time": "2025-10-30T13:22:58+00:00" }, { "name": "symfony/cache-contracts", @@ -2301,7 +2301,7 @@ }, { "name": "symfony/clock", - "version": "v7.2.0", + "version": "v7.3.0", "source": { "type": "git", "url": "https://github.com/symfony/clock.git", @@ -2355,7 +2355,7 @@ "time" ], "support": { - "source": "https://github.com/symfony/clock/tree/v7.2.0" + "source": "https://github.com/symfony/clock/tree/v7.3.0" }, "funding": [ { @@ -2375,16 +2375,16 @@ }, { "name": "symfony/config", - "version": "v7.2.9", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "4cfed7041ac389c242122e60884d4a9fc5376cb3" + "reference": "9d18eba95655a3152ae4c1d53c6cc34eb4d4a0b7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/4cfed7041ac389c242122e60884d4a9fc5376cb3", - "reference": "4cfed7041ac389c242122e60884d4a9fc5376cb3", + "url": "https://api.github.com/repos/symfony/config/zipball/9d18eba95655a3152ae4c1d53c6cc34eb4d4a0b7", + "reference": "9d18eba95655a3152ae4c1d53c6cc34eb4d4a0b7", "shasum": "" }, "require": { @@ -2430,7 +2430,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.2.9" + "source": "https://github.com/symfony/config/tree/v7.3.6" }, "funding": [ { @@ -2450,27 +2450,28 @@ "type": "tidelift" } ], - "time": "2025-07-26T13:54:51+00:00" + "time": "2025-11-02T08:04:43+00:00" }, { "name": "symfony/console", - "version": "v7.2.9", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "93518c2ff7ce9c1818224c6effed3cf2429c63d7" + "reference": "c28ad91448f86c5f6d9d2c70f0cf68bf135f252a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/93518c2ff7ce9c1818224c6effed3cf2429c63d7", - "reference": "93518c2ff7ce9c1818224c6effed3cf2429c63d7", + "url": "https://api.github.com/repos/symfony/console/zipball/c28ad91448f86c5f6d9d2c70f0cf68bf135f252a", + "reference": "c28ad91448f86c5f6d9d2c70f0cf68bf135f252a", "shasum": "" }, "require": { "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.0", "symfony/service-contracts": "^2.5|^3", - "symfony/string": "^6.4|^7.0" + "symfony/string": "^7.2" }, "conflict": { "symfony/dependency-injection": "<6.4", @@ -2527,7 +2528,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.2.9" + "source": "https://github.com/symfony/console/tree/v7.3.6" }, "funding": [ { @@ -2547,20 +2548,20 @@ "type": "tidelift" } ], - "time": "2025-07-30T17:03:27+00:00" + "time": "2025-11-04T01:21:42+00:00" }, { "name": "symfony/css-selector", - "version": "v7.2.0", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "601a5ce9aaad7bf10797e3663faefce9e26c24e2" + "reference": "84321188c4754e64273b46b406081ad9b18e8614" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/601a5ce9aaad7bf10797e3663faefce9e26c24e2", - "reference": "601a5ce9aaad7bf10797e3663faefce9e26c24e2", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/84321188c4754e64273b46b406081ad9b18e8614", + "reference": "84321188c4754e64273b46b406081ad9b18e8614", "shasum": "" }, "require": { @@ -2596,7 +2597,7 @@ "description": "Converts CSS selectors to XPath expressions", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/css-selector/tree/v7.2.0" + "source": "https://github.com/symfony/css-selector/tree/v7.3.6" }, "funding": [ { @@ -2607,25 +2608,29 @@ "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": "2024-09-25T14:21:43+00:00" + "time": "2025-10-29T17:24:25+00:00" }, { "name": "symfony/dependency-injection", - "version": "v7.2.9", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "fae0971f518e81fd1ccbfb6218aef410392ac701" + "reference": "98af8bb46c56aedd9dd5a7f0414fc72bf2dcfe69" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/fae0971f518e81fd1ccbfb6218aef410392ac701", - "reference": "fae0971f518e81fd1ccbfb6218aef410392ac701", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/98af8bb46c56aedd9dd5a7f0414fc72bf2dcfe69", + "reference": "98af8bb46c56aedd9dd5a7f0414fc72bf2dcfe69", "shasum": "" }, "require": { @@ -2676,7 +2681,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.2.9" + "source": "https://github.com/symfony/dependency-injection/tree/v7.3.6" }, "funding": [ { @@ -2696,7 +2701,7 @@ "type": "tidelift" } ], - "time": "2025-07-30T17:31:35+00:00" + "time": "2025-10-31T10:11:11+00:00" }, { "name": "symfony/deprecation-contracts", @@ -2767,16 +2772,16 @@ }, { "name": "symfony/dom-crawler", - "version": "v7.2.8", + "version": "v7.3.3", "source": { "type": "git", "url": "https://github.com/symfony/dom-crawler.git", - "reference": "a7473767124513e4099186dba43403dbc45f26dc" + "reference": "efa076ea0eeff504383ff0dcf827ea5ce15690ba" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/a7473767124513e4099186dba43403dbc45f26dc", - "reference": "a7473767124513e4099186dba43403dbc45f26dc", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/efa076ea0eeff504383ff0dcf827ea5ce15690ba", + "reference": "efa076ea0eeff504383ff0dcf827ea5ce15690ba", "shasum": "" }, "require": { @@ -2814,7 +2819,7 @@ "description": "Eases DOM navigation for HTML and XML documents", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dom-crawler/tree/v7.2.8" + "source": "https://github.com/symfony/dom-crawler/tree/v7.3.3" }, "funding": [ { @@ -2825,16 +2830,20 @@ "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": "2025-06-15T10:06:57+00:00" + "time": "2025-08-06T20:13:54+00:00" }, { "name": "symfony/dotenv", - "version": "v7.2.9", + "version": "v7.3.2", "source": { "type": "git", "url": "https://github.com/symfony/dotenv.git", @@ -2888,7 +2897,7 @@ "environment" ], "support": { - "source": "https://github.com/symfony/dotenv/tree/v7.2.9" + "source": "https://github.com/symfony/dotenv/tree/v7.3.2" }, "funding": [ { @@ -2912,16 +2921,16 @@ }, { "name": "symfony/error-handler", - "version": "v7.2.9", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "df98c90e43fa8267da4a64a88dd9427e0277773a" + "reference": "bbe40bfab84323d99dab491b716ff142410a92a8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/df98c90e43fa8267da4a64a88dd9427e0277773a", - "reference": "df98c90e43fa8267da4a64a88dd9427e0277773a", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/bbe40bfab84323d99dab491b716ff142410a92a8", + "reference": "bbe40bfab84323d99dab491b716ff142410a92a8", "shasum": "" }, "require": { @@ -2934,9 +2943,11 @@ "symfony/http-kernel": "<6.4" }, "require-dev": { + "symfony/console": "^6.4|^7.0", "symfony/deprecation-contracts": "^2.5|^3", "symfony/http-kernel": "^6.4|^7.0", - "symfony/serializer": "^6.4|^7.0" + "symfony/serializer": "^6.4|^7.0", + "symfony/webpack-encore-bundle": "^1.0|^2.0" }, "bin": [ "Resources/bin/patch-type-declarations" @@ -2967,7 +2978,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.2.9" + "source": "https://github.com/symfony/error-handler/tree/v7.3.6" }, "funding": [ { @@ -2987,20 +2998,20 @@ "type": "tidelift" } ], - "time": "2025-07-07T08:17:47+00:00" + "time": "2025-10-31T19:12:50+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v7.2.0", + "version": "v7.3.3", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "910c5db85a5356d0fea57680defec4e99eb9c8c1" + "reference": "b7dc69e71de420ac04bc9ab830cf3ffebba48191" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/910c5db85a5356d0fea57680defec4e99eb9c8c1", - "reference": "910c5db85a5356d0fea57680defec4e99eb9c8c1", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/b7dc69e71de420ac04bc9ab830cf3ffebba48191", + "reference": "b7dc69e71de420ac04bc9ab830cf3ffebba48191", "shasum": "" }, "require": { @@ -3051,7 +3062,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.2.0" + "source": "https://github.com/symfony/event-dispatcher/tree/v7.3.3" }, "funding": [ { @@ -3062,12 +3073,16 @@ "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": "2024-09-25T14:21:43+00:00" + "time": "2025-08-13T11:49:31+00:00" }, { "name": "symfony/event-dispatcher-contracts", @@ -3147,16 +3162,16 @@ }, { "name": "symfony/filesystem", - "version": "v7.2.9", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "edcbb768a186b5c3f25d0643159a787d3e63b7fd" + "reference": "e9bcfd7837928ab656276fe00464092cc9e1826a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/edcbb768a186b5c3f25d0643159a787d3e63b7fd", - "reference": "edcbb768a186b5c3f25d0643159a787d3e63b7fd", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/e9bcfd7837928ab656276fe00464092cc9e1826a", + "reference": "e9bcfd7837928ab656276fe00464092cc9e1826a", "shasum": "" }, "require": { @@ -3193,7 +3208,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v7.2.9" + "source": "https://github.com/symfony/filesystem/tree/v7.3.6" }, "funding": [ { @@ -3213,20 +3228,20 @@ "type": "tidelift" } ], - "time": "2025-07-07T08:17:47+00:00" + "time": "2025-11-05T09:52:27+00:00" }, { "name": "symfony/finder", - "version": "v7.2.9", + "version": "v7.3.5", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "2a6614966ba1074fa93dae0bc804227422df4dfe" + "reference": "9f696d2f1e340484b4683f7853b273abff94421f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/2a6614966ba1074fa93dae0bc804227422df4dfe", - "reference": "2a6614966ba1074fa93dae0bc804227422df4dfe", + "url": "https://api.github.com/repos/symfony/finder/zipball/9f696d2f1e340484b4683f7853b273abff94421f", + "reference": "9f696d2f1e340484b4683f7853b273abff94421f", "shasum": "" }, "require": { @@ -3261,7 +3276,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v7.2.9" + "source": "https://github.com/symfony/finder/tree/v7.3.5" }, "funding": [ { @@ -3281,7 +3296,7 @@ "type": "tidelift" } ], - "time": "2025-07-15T13:41:35+00:00" + "time": "2025-10-15T18:45:57+00:00" }, { "name": "symfony/flex", @@ -3353,16 +3368,16 @@ }, { "name": "symfony/framework-bundle", - "version": "v7.2.9", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/framework-bundle.git", - "reference": "42ac8bbbf10d3113c335ba8af39fad63db96e4e2" + "reference": "cabfdfa82bc4f75d693a329fe263d96937636b77" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/42ac8bbbf10d3113c335ba8af39fad63db96e4e2", - "reference": "42ac8bbbf10d3113c335ba8af39fad63db96e4e2", + "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/cabfdfa82bc4f75d693a329fe263d96937636b77", + "reference": "cabfdfa82bc4f75d693a329fe263d96937636b77", "shasum": "" }, "require": { @@ -3370,14 +3385,14 @@ "ext-xml": "*", "php": ">=8.2", "symfony/cache": "^6.4|^7.0", - "symfony/config": "^6.4|^7.0", + "symfony/config": "^7.3", "symfony/dependency-injection": "^7.2", "symfony/deprecation-contracts": "^2.5|^3", - "symfony/error-handler": "^6.4|^7.0", + "symfony/error-handler": "^7.3", "symfony/event-dispatcher": "^6.4|^7.0", "symfony/filesystem": "^7.1", "symfony/finder": "^6.4|^7.0", - "symfony/http-foundation": "^6.4|^7.0", + "symfony/http-foundation": "^7.3", "symfony/http-kernel": "^7.2", "symfony/polyfill-mbstring": "~1.0", "symfony/routing": "^6.4|^7.0" @@ -3394,10 +3409,12 @@ "symfony/dotenv": "<6.4", "symfony/form": "<6.4", "symfony/http-client": "<6.4", + "symfony/json-streamer": ">=7.4", "symfony/lock": "<6.4", "symfony/mailer": "<6.4", "symfony/messenger": "<6.4", "symfony/mime": "<6.4", + "symfony/object-mapper": ">=7.4", "symfony/property-access": "<6.4", "symfony/property-info": "<6.4", "symfony/runtime": "<6.4.13|>=7.0,<7.1.6", @@ -3406,13 +3423,13 @@ "symfony/security-csrf": "<7.2", "symfony/serializer": "<7.2.5", "symfony/stopwatch": "<6.4", - "symfony/translation": "<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/workflow": "<6.4" + "symfony/workflow": "<7.3.0-beta2" }, "require-dev": { "doctrine/persistence": "^1.3|^2|^3", @@ -3431,11 +3448,13 @@ "symfony/form": "^6.4|^7.0", "symfony/html-sanitizer": "^6.4|^7.0", "symfony/http-client": "^6.4|^7.0", + "symfony/json-streamer": "7.3.*", "symfony/lock": "^6.4|^7.0", "symfony/mailer": "^6.4|^7.0", "symfony/messenger": "^6.4|^7.0", "symfony/mime": "^6.4|^7.0", "symfony/notifier": "^6.4|^7.0", + "symfony/object-mapper": "^v7.3.0-beta2", "symfony/polyfill-intl-icu": "~1.0", "symfony/process": "^6.4|^7.0", "symfony/property-info": "^6.4|^7.0", @@ -3446,14 +3465,14 @@ "symfony/serializer": "^7.2.5", "symfony/stopwatch": "^6.4|^7.0", "symfony/string": "^6.4|^7.0", - "symfony/translation": "^6.4|^7.0", + "symfony/translation": "^7.3", "symfony/twig-bundle": "^6.4|^7.0", "symfony/type-info": "^7.1.8", "symfony/uid": "^6.4|^7.0", "symfony/validator": "^6.4|^7.0", "symfony/web-link": "^6.4|^7.0", "symfony/webhook": "^7.2", - "symfony/workflow": "^6.4|^7.0", + "symfony/workflow": "^7.3", "symfony/yaml": "^6.4|^7.0", "twig/twig": "^3.12" }, @@ -3483,7 +3502,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.2.9" + "source": "https://github.com/symfony/framework-bundle/tree/v7.3.6" }, "funding": [ { @@ -3503,20 +3522,20 @@ "type": "tidelift" } ], - "time": "2025-07-30T17:03:27+00:00" + "time": "2025-10-30T09:42:24+00:00" }, { "name": "symfony/http-client", - "version": "v7.2.9", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/http-client.git", - "reference": "e26182d286135dad99f58ad57c56eef41362d452" + "reference": "3c0a55a2c8e21e30a37022801c11c7ab5a6cb2de" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client/zipball/e26182d286135dad99f58ad57c56eef41362d452", - "reference": "e26182d286135dad99f58ad57c56eef41362d452", + "url": "https://api.github.com/repos/symfony/http-client/zipball/3c0a55a2c8e21e30a37022801c11c7ab5a6cb2de", + "reference": "3c0a55a2c8e21e30a37022801c11c7ab5a6cb2de", "shasum": "" }, "require": { @@ -3524,10 +3543,12 @@ "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/service-contracts": "^2.5|^3" }, "conflict": { "amphp/amp": "<2.5", + "amphp/socket": "<1.1", "php-http/discovery": "<1.15", "symfony/http-foundation": "<6.4" }, @@ -3540,7 +3561,6 @@ "require-dev": { "amphp/http-client": "^4.2.1|^5.0", "amphp/http-tunnel": "^1.0|^2.0", - "amphp/socket": "^1.1", "guzzlehttp/promises": "^1.4|^2.0", "nyholm/psr7": "^1.0", "php-http/httplug": "^1.0|^2.0", @@ -3582,7 +3602,7 @@ "http" ], "support": { - "source": "https://github.com/symfony/http-client/tree/v7.2.9" + "source": "https://github.com/symfony/http-client/tree/v7.3.6" }, "funding": [ { @@ -3602,7 +3622,7 @@ "type": "tidelift" } ], - "time": "2025-07-15T11:30:57+00:00" + "time": "2025-11-05T17:41:46+00:00" }, { "name": "symfony/http-client-contracts", @@ -3684,16 +3704,16 @@ }, { "name": "symfony/http-foundation", - "version": "v7.2.9", + "version": "v7.3.7", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "7d81b8184601176dff995cf959d3def142309049" + "reference": "db488a62f98f7a81d5746f05eea63a74e55bb7c4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/7d81b8184601176dff995cf959d3def142309049", - "reference": "7d81b8184601176dff995cf959d3def142309049", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/db488a62f98f7a81d5746f05eea63a74e55bb7c4", + "reference": "db488a62f98f7a81d5746f05eea63a74e55bb7c4", "shasum": "" }, "require": { @@ -3710,6 +3730,7 @@ "doctrine/dbal": "^3.6|^4", "predis/predis": "^1.1|^2.0", "symfony/cache": "^6.4.12|^7.1.5", + "symfony/clock": "^6.4|^7.0", "symfony/dependency-injection": "^6.4|^7.0", "symfony/expression-language": "^6.4|^7.0", "symfony/http-kernel": "^6.4|^7.0", @@ -3742,7 +3763,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.2.9" + "source": "https://github.com/symfony/http-foundation/tree/v7.3.7" }, "funding": [ { @@ -3762,20 +3783,20 @@ "type": "tidelift" } ], - "time": "2025-07-10T08:29:33+00:00" + "time": "2025-11-08T16:41:12+00:00" }, { "name": "symfony/http-kernel", - "version": "v7.2.9", + "version": "v7.3.7", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "d0cc0295c9c2fd5e053fee2b2a143001f2d0c33c" + "reference": "10b8e9b748ea95fa4539c208e2487c435d3c87ce" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/d0cc0295c9c2fd5e053fee2b2a143001f2d0c33c", - "reference": "d0cc0295c9c2fd5e053fee2b2a143001f2d0c33c", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/10b8e9b748ea95fa4539c208e2487c435d3c87ce", + "reference": "10b8e9b748ea95fa4539c208e2487c435d3c87ce", "shasum": "" }, "require": { @@ -3783,8 +3804,8 @@ "psr/log": "^1|^2|^3", "symfony/deprecation-contracts": "^2.5|^3", "symfony/error-handler": "^6.4|^7.0", - "symfony/event-dispatcher": "^6.4|^7.0", - "symfony/http-foundation": "^6.4|^7.0", + "symfony/event-dispatcher": "^7.3", + "symfony/http-foundation": "^7.3", "symfony/polyfill-ctype": "^1.8" }, "conflict": { @@ -3860,7 +3881,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.2.9" + "source": "https://github.com/symfony/http-kernel/tree/v7.3.7" }, "funding": [ { @@ -3880,20 +3901,20 @@ "type": "tidelift" } ], - "time": "2025-07-31T09:36:38+00:00" + "time": "2025-11-12T11:38:40+00:00" }, { "name": "symfony/lock", - "version": "v7.2.9", + "version": "v7.3.4", "source": { "type": "git", "url": "https://github.com/symfony/lock.git", - "reference": "538856cf96f064b0aa6e521bcfff863e46a98e15" + "reference": "e025f32cfd1fa8e3a4485a8d810544474aac26da" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/lock/zipball/538856cf96f064b0aa6e521bcfff863e46a98e15", - "reference": "538856cf96f064b0aa6e521bcfff863e46a98e15", + "url": "https://api.github.com/repos/symfony/lock/zipball/e025f32cfd1fa8e3a4485a8d810544474aac26da", + "reference": "e025f32cfd1fa8e3a4485a8d810544474aac26da", "shasum": "" }, "require": { @@ -3942,7 +3963,7 @@ "semaphore" ], "support": { - "source": "https://github.com/symfony/lock/tree/v7.2.9" + "source": "https://github.com/symfony/lock/tree/v7.3.4" }, "funding": [ { @@ -3962,20 +3983,20 @@ "type": "tidelift" } ], - "time": "2025-07-30T17:03:27+00:00" + "time": "2025-09-11T10:12:26+00:00" }, { "name": "symfony/messenger", - "version": "v7.2.9", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/messenger.git", - "reference": "3fd1638aa11ef6f342ed6b10b930a1757c25417c" + "reference": "58a7efa3bebadbe4cdd8f7577c5856f0e3ea3978" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/messenger/zipball/3fd1638aa11ef6f342ed6b10b930a1757c25417c", - "reference": "3fd1638aa11ef6f342ed6b10b930a1757c25417c", + "url": "https://api.github.com/repos/symfony/messenger/zipball/58a7efa3bebadbe4cdd8f7577c5856f0e3ea3978", + "reference": "58a7efa3bebadbe4cdd8f7577c5856f0e3ea3978", "shasum": "" }, "require": { @@ -3990,6 +4011,7 @@ "symfony/event-dispatcher-contracts": "<2.5", "symfony/framework-bundle": "<6.4", "symfony/http-kernel": "<6.4", + "symfony/lock": "<6.4", "symfony/serializer": "<6.4" }, "require-dev": { @@ -3998,6 +4020,7 @@ "symfony/dependency-injection": "^6.4|^7.0", "symfony/event-dispatcher": "^6.4|^7.0", "symfony/http-kernel": "^6.4|^7.0", + "symfony/lock": "^6.4|^7.0", "symfony/process": "^6.4|^7.0", "symfony/property-access": "^6.4|^7.0", "symfony/rate-limiter": "^6.4|^7.0", @@ -4033,7 +4056,7 @@ "description": "Helps applications send and receive messages to/from other applications or via message queues", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/messenger/tree/v7.2.9" + "source": "https://github.com/symfony/messenger/tree/v7.3.6" }, "funding": [ { @@ -4053,20 +4076,20 @@ "type": "tidelift" } ], - "time": "2025-07-15T11:30:57+00:00" + "time": "2025-11-06T11:17:34+00:00" }, { "name": "symfony/monolog-bridge", - "version": "v7.2.0", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/monolog-bridge.git", - "reference": "bbae784f0456c5a87c89d7c1a3fcc9cbee976c1d" + "reference": "48e8542ba35afd2293a8c8fd4bcf8abe46357ddf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/bbae784f0456c5a87c89d7c1a3fcc9cbee976c1d", - "reference": "bbae784f0456c5a87c89d7c1a3fcc9cbee976c1d", + "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/48e8542ba35afd2293a8c8fd4bcf8abe46357ddf", + "reference": "48e8542ba35afd2293a8c8fd4bcf8abe46357ddf", "shasum": "" }, "require": { @@ -4115,7 +4138,7 @@ "description": "Provides integration for Monolog with various Symfony components", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/monolog-bridge/tree/v7.2.0" + "source": "https://github.com/symfony/monolog-bridge/tree/v7.3.6" }, "funding": [ { @@ -4126,12 +4149,16 @@ "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": "2024-10-14T18:16:08+00:00" + "time": "2025-11-01T09:17:24+00:00" }, { "name": "symfony/monolog-bundle", @@ -4216,16 +4243,16 @@ }, { "name": "symfony/options-resolver", - "version": "v7.2.9", + "version": "v7.3.3", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "b48517d1cef0d533e241cb03801014f1bb832775" + "reference": "0ff2f5c3df08a395232bbc3c2eb7e84912df911d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/b48517d1cef0d533e241cb03801014f1bb832775", - "reference": "b48517d1cef0d533e241cb03801014f1bb832775", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/0ff2f5c3df08a395232bbc3c2eb7e84912df911d", + "reference": "0ff2f5c3df08a395232bbc3c2eb7e84912df911d", "shasum": "" }, "require": { @@ -4263,7 +4290,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v7.2.9" + "source": "https://github.com/symfony/options-resolver/tree/v7.3.3" }, "funding": [ { @@ -4283,20 +4310,20 @@ "type": "tidelift" } ], - "time": "2025-07-15T11:30:57+00:00" + "time": "2025-08-05T10:16:07+00:00" }, { "name": "symfony/password-hasher", - "version": "v7.2.0", + "version": "v7.3.0", "source": { "type": "git", "url": "https://github.com/symfony/password-hasher.git", - "reference": "d8bd3d66d074c0acba1214a0d42f5941a8e1e94d" + "reference": "31fbe66af859582a20b803f38be96be8accdf2c3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/password-hasher/zipball/d8bd3d66d074c0acba1214a0d42f5941a8e1e94d", - "reference": "d8bd3d66d074c0acba1214a0d42f5941a8e1e94d", + "url": "https://api.github.com/repos/symfony/password-hasher/zipball/31fbe66af859582a20b803f38be96be8accdf2c3", + "reference": "31fbe66af859582a20b803f38be96be8accdf2c3", "shasum": "" }, "require": { @@ -4339,7 +4366,7 @@ "password" ], "support": { - "source": "https://github.com/symfony/password-hasher/tree/v7.2.0" + "source": "https://github.com/symfony/password-hasher/tree/v7.3.0" }, "funding": [ { @@ -4355,7 +4382,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:21:43+00:00" + "time": "2025-02-04T08:22:58+00:00" }, { "name": "symfony/polyfill-intl-grapheme", @@ -4691,16 +4718,16 @@ }, { "name": "symfony/property-access", - "version": "v7.2.9", + "version": "v7.3.3", "source": { "type": "git", "url": "https://github.com/symfony/property-access.git", - "reference": "9858acdf18abac17b9ab254706454d0cc0de7641" + "reference": "4a4389e5c8bd1d0320d80a23caa6a1ac71cb81a7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/property-access/zipball/9858acdf18abac17b9ab254706454d0cc0de7641", - "reference": "9858acdf18abac17b9ab254706454d0cc0de7641", + "url": "https://api.github.com/repos/symfony/property-access/zipball/4a4389e5c8bd1d0320d80a23caa6a1ac71cb81a7", + "reference": "4a4389e5c8bd1d0320d80a23caa6a1ac71cb81a7", "shasum": "" }, "require": { @@ -4747,7 +4774,7 @@ "reflection" ], "support": { - "source": "https://github.com/symfony/property-access/tree/v7.2.9" + "source": "https://github.com/symfony/property-access/tree/v7.3.3" }, "funding": [ { @@ -4767,26 +4794,27 @@ "type": "tidelift" } ], - "time": "2025-07-15T13:41:35+00:00" + "time": "2025-08-04T15:15:28+00:00" }, { "name": "symfony/property-info", - "version": "v7.2.9", + "version": "v7.3.5", "source": { "type": "git", "url": "https://github.com/symfony/property-info.git", - "reference": "16bb9e15292f9f07c28a6f955d4f14c680d1e0b5" + "reference": "0b346ed259dc5da43535caf243005fe7d4b0f051" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/property-info/zipball/16bb9e15292f9f07c28a6f955d4f14c680d1e0b5", - "reference": "16bb9e15292f9f07c28a6f955d4f14c680d1e0b5", + "url": "https://api.github.com/repos/symfony/property-info/zipball/0b346ed259dc5da43535caf243005fe7d4b0f051", + "reference": "0b346ed259dc5da43535caf243005fe7d4b0f051", "shasum": "" }, "require": { "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/string": "^6.4|^7.0", - "symfony/type-info": "~7.2.8|^7.3.1" + "symfony/type-info": "^7.3.5" }, "conflict": { "phpdocumentor/reflection-docblock": "<5.2", @@ -4836,7 +4864,7 @@ "validator" ], "support": { - "source": "https://github.com/symfony/property-info/tree/v7.2.9" + "source": "https://github.com/symfony/property-info/tree/v7.3.5" }, "funding": [ { @@ -4856,25 +4884,25 @@ "type": "tidelift" } ], - "time": "2025-07-10T08:29:33+00:00" + "time": "2025-10-05T22:12:41+00:00" }, { "name": "symfony/rate-limiter", - "version": "v7.2.9", + "version": "v7.3.2", "source": { "type": "git", "url": "https://github.com/symfony/rate-limiter.git", - "reference": "daae5da398aca84809aa6088371314a9cb88b42e" + "reference": "7e855541d302ba752f86fb0e97932e7969fe9c04" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/rate-limiter/zipball/daae5da398aca84809aa6088371314a9cb88b42e", - "reference": "daae5da398aca84809aa6088371314a9cb88b42e", + "url": "https://api.github.com/repos/symfony/rate-limiter/zipball/7e855541d302ba752f86fb0e97932e7969fe9c04", + "reference": "7e855541d302ba752f86fb0e97932e7969fe9c04", "shasum": "" }, "require": { "php": ">=8.2", - "symfony/options-resolver": "^6.4|^7.0" + "symfony/options-resolver": "^7.3" }, "require-dev": { "psr/cache": "^1.0|^2.0|^3.0", @@ -4910,7 +4938,7 @@ "rate-limiter" ], "support": { - "source": "https://github.com/symfony/rate-limiter/tree/v7.2.9" + "source": "https://github.com/symfony/rate-limiter/tree/v7.3.2" }, "funding": [ { @@ -4930,20 +4958,20 @@ "type": "tidelift" } ], - "time": "2025-07-10T08:29:33+00:00" + "time": "2025-07-07T08:17:57+00:00" }, { "name": "symfony/routing", - "version": "v7.2.9", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "d5a038e972be748e3f057c884897a41b1111e4a0" + "reference": "c97abe725f2a1a858deca629a6488c8fc20c3091" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/d5a038e972be748e3f057c884897a41b1111e4a0", - "reference": "d5a038e972be748e3f057c884897a41b1111e4a0", + "url": "https://api.github.com/repos/symfony/routing/zipball/c97abe725f2a1a858deca629a6488c8fc20c3091", + "reference": "c97abe725f2a1a858deca629a6488c8fc20c3091", "shasum": "" }, "require": { @@ -4995,7 +5023,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v7.2.9" + "source": "https://github.com/symfony/routing/tree/v7.3.6" }, "funding": [ { @@ -5015,20 +5043,20 @@ "type": "tidelift" } ], - "time": "2025-07-15T11:30:57+00:00" + "time": "2025-11-05T07:57:47+00:00" }, { "name": "symfony/security-bundle", - "version": "v7.2.9", + "version": "v7.3.4", "source": { "type": "git", "url": "https://github.com/symfony/security-bundle.git", - "reference": "4661890f7d2571e9ef58431401a390c2dde68c78" + "reference": "f750d9abccbeaa433c56f6a4eb2073166476a75a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-bundle/zipball/4661890f7d2571e9ef58431401a390c2dde68c78", - "reference": "4661890f7d2571e9ef58431401a390c2dde68c78", + "url": "https://api.github.com/repos/symfony/security-bundle/zipball/f750d9abccbeaa433c56f6a4eb2073166476a75a", + "reference": "f750d9abccbeaa433c56f6a4eb2073166476a75a", "shasum": "" }, "require": { @@ -5036,15 +5064,15 @@ "ext-xml": "*", "php": ">=8.2", "symfony/clock": "^6.4|^7.0", - "symfony/config": "^6.4|^7.0", + "symfony/config": "^7.3", "symfony/dependency-injection": "^6.4.11|^7.1.4", "symfony/event-dispatcher": "^6.4|^7.0", "symfony/http-foundation": "^6.4|^7.0", "symfony/http-kernel": "^6.4|^7.0", "symfony/password-hasher": "^6.4|^7.0", - "symfony/security-core": "^7.2", + "symfony/security-core": "^7.3", "symfony/security-csrf": "^6.4|^7.0", - "symfony/security-http": "^7.2", + "symfony/security-http": "^7.3", "symfony/service-contracts": "^2.5|^3" }, "conflict": { @@ -5105,7 +5133,7 @@ "description": "Provides a tight integration of the Security component into the Symfony full-stack framework", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/security-bundle/tree/v7.2.9" + "source": "https://github.com/symfony/security-bundle/tree/v7.3.4" }, "funding": [ { @@ -5125,20 +5153,20 @@ "type": "tidelift" } ], - "time": "2025-07-22T07:39:44+00:00" + "time": "2025-09-22T15:31:00+00:00" }, { "name": "symfony/security-core", - "version": "v7.2.9", + "version": "v7.3.5", "source": { "type": "git", "url": "https://github.com/symfony/security-core.git", - "reference": "28ec042a6aff580693cce7aa820778e6dfa5e5ef" + "reference": "772a7c1eddd8bf8a977a67e6e8adc59650c604eb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-core/zipball/28ec042a6aff580693cce7aa820778e6dfa5e5ef", - "reference": "28ec042a6aff580693cce7aa820778e6dfa5e5ef", + "url": "https://api.github.com/repos/symfony/security-core/zipball/772a7c1eddd8bf8a977a67e6e8adc59650c604eb", + "reference": "772a7c1eddd8bf8a977a67e6e8adc59650c604eb", "shasum": "" }, "require": { @@ -5196,7 +5224,7 @@ "description": "Symfony Security Component - Core Library", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/security-core/tree/v7.2.9" + "source": "https://github.com/symfony/security-core/tree/v7.3.5" }, "funding": [ { @@ -5216,11 +5244,11 @@ "type": "tidelift" } ], - "time": "2025-07-22T08:39:58+00:00" + "time": "2025-10-24T14:27:20+00:00" }, { "name": "symfony/security-csrf", - "version": "v7.2.3", + "version": "v7.3.0", "source": { "type": "git", "url": "https://github.com/symfony/security-csrf.git", @@ -5270,7 +5298,7 @@ "description": "Symfony Security Component - CSRF Library", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/security-csrf/tree/v7.2.3" + "source": "https://github.com/symfony/security-csrf/tree/v7.3.0" }, "funding": [ { @@ -5290,16 +5318,16 @@ }, { "name": "symfony/security-http", - "version": "v7.2.9", + "version": "v7.3.5", "source": { "type": "git", "url": "https://github.com/symfony/security-http.git", - "reference": "972dd874c2ce65e4c58dbf59054d2bf7ad70ec54" + "reference": "e79a63fd5dec6e5b1ba31227e98d860a4f8ba95c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-http/zipball/972dd874c2ce65e4c58dbf59054d2bf7ad70ec54", - "reference": "972dd874c2ce65e4c58dbf59054d2bf7ad70ec54", + "url": "https://api.github.com/repos/symfony/security-http/zipball/e79a63fd5dec6e5b1ba31227e98d860a4f8ba95c", + "reference": "e79a63fd5dec6e5b1ba31227e98d860a4f8ba95c", "shasum": "" }, "require": { @@ -5309,7 +5337,7 @@ "symfony/http-kernel": "^6.4|^7.0", "symfony/polyfill-mbstring": "~1.0", "symfony/property-access": "^6.4|^7.0", - "symfony/security-core": "^7.2", + "symfony/security-core": "^7.3", "symfony/service-contracts": "^2.5|^3" }, "conflict": { @@ -5358,7 +5386,7 @@ "description": "Symfony Security Component - HTTP Integration", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/security-http/tree/v7.2.9" + "source": "https://github.com/symfony/security-http/tree/v7.3.5" }, "funding": [ { @@ -5378,7 +5406,7 @@ "type": "tidelift" } ], - "time": "2025-07-10T08:29:33+00:00" + "time": "2025-10-13T09:30:10+00:00" }, { "name": "symfony/service-contracts", @@ -5469,16 +5497,16 @@ }, { "name": "symfony/string", - "version": "v7.2.9", + "version": "v7.3.4", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "de5189e4def141dbdca2f2ce7a653cc6364f58e6" + "reference": "f96476035142921000338bad71e5247fbc138872" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/de5189e4def141dbdca2f2ce7a653cc6364f58e6", - "reference": "de5189e4def141dbdca2f2ce7a653cc6364f58e6", + "url": "https://api.github.com/repos/symfony/string/zipball/f96476035142921000338bad71e5247fbc138872", + "reference": "f96476035142921000338bad71e5247fbc138872", "shasum": "" }, "require": { @@ -5493,7 +5521,6 @@ }, "require-dev": { "symfony/emoji": "^7.1", - "symfony/error-handler": "^6.4|^7.0", "symfony/http-client": "^6.4|^7.0", "symfony/intl": "^6.4|^7.0", "symfony/translation-contracts": "^2.5|^3.0", @@ -5536,7 +5563,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v7.2.9" + "source": "https://github.com/symfony/string/tree/v7.3.4" }, "funding": [ { @@ -5556,20 +5583,20 @@ "type": "tidelift" } ], - "time": "2025-07-10T08:29:33+00:00" + "time": "2025-09-11T14:36:48+00:00" }, { "name": "symfony/translation", - "version": "v7.2.9", + "version": "v7.3.4", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "00b927b4948d49afbf5013411c0a91a1cea8b087" + "reference": "ec25870502d0c7072d086e8ffba1420c85965174" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/00b927b4948d49afbf5013411c0a91a1cea8b087", - "reference": "00b927b4948d49afbf5013411c0a91a1cea8b087", + "url": "https://api.github.com/repos/symfony/translation/zipball/ec25870502d0c7072d086e8ffba1420c85965174", + "reference": "ec25870502d0c7072d086e8ffba1420c85965174", "shasum": "" }, "require": { @@ -5579,6 +5606,7 @@ "symfony/translation-contracts": "^2.5|^3.0" }, "conflict": { + "nikic/php-parser": "<5.0", "symfony/config": "<6.4", "symfony/console": "<6.4", "symfony/dependency-injection": "<6.4", @@ -5592,7 +5620,7 @@ "symfony/translation-implementation": "2.3|3.0" }, "require-dev": { - "nikic/php-parser": "^4.18|^5.0", + "nikic/php-parser": "^5.0", "psr/log": "^1|^2|^3", "symfony/config": "^6.4|^7.0", "symfony/console": "^6.4|^7.0", @@ -5635,7 +5663,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v7.2.9" + "source": "https://github.com/symfony/translation/tree/v7.3.4" }, "funding": [ { @@ -5655,7 +5683,7 @@ "type": "tidelift" } ], - "time": "2025-07-30T17:31:35+00:00" + "time": "2025-09-07T11:39:36+00:00" }, { "name": "symfony/translation-contracts", @@ -5741,23 +5769,23 @@ }, { "name": "symfony/twig-bridge", - "version": "v7.2.9", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/twig-bridge.git", - "reference": "e62144411b277877d0e8583b48202673c36941d7" + "reference": "d1aaec8eee1f5591f56b9efe00194d73a8e38319" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/e62144411b277877d0e8583b48202673c36941d7", - "reference": "e62144411b277877d0e8583b48202673c36941d7", + "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/d1aaec8eee1f5591f56b9efe00194d73a8e38319", + "reference": "d1aaec8eee1f5591f56b9efe00194d73a8e38319", "shasum": "" }, "require": { "php": ">=8.2", "symfony/deprecation-contracts": "^2.5|^3", "symfony/translation-contracts": "^2.5|^3", - "twig/twig": "^3.12" + "twig/twig": "^3.21" }, "conflict": { "phpdocumentor/reflection-docblock": "<3.2.2", @@ -5784,7 +5812,7 @@ "symfony/finder": "^6.4|^7.0", "symfony/form": "^6.4.20|^7.2.5", "symfony/html-sanitizer": "^6.4|^7.0", - "symfony/http-foundation": "^6.4|^7.0", + "symfony/http-foundation": "^7.3", "symfony/http-kernel": "^6.4|^7.0", "symfony/intl": "^6.4|^7.0", "symfony/mime": "^6.4|^7.0", @@ -5798,12 +5826,13 @@ "symfony/serializer": "^6.4.3|^7.0.3", "symfony/stopwatch": "^6.4|^7.0", "symfony/translation": "^6.4|^7.0", + "symfony/validator": "^6.4|^7.0", "symfony/web-link": "^6.4|^7.0", "symfony/workflow": "^6.4|^7.0", "symfony/yaml": "^6.4|^7.0", - "twig/cssinliner-extra": "^2.12|^3", - "twig/inky-extra": "^2.12|^3", - "twig/markdown-extra": "^2.12|^3" + "twig/cssinliner-extra": "^3", + "twig/inky-extra": "^3", + "twig/markdown-extra": "^3" }, "type": "symfony-bridge", "autoload": { @@ -5831,7 +5860,7 @@ "description": "Provides integration for Twig with various Symfony components", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/twig-bridge/tree/v7.2.9" + "source": "https://github.com/symfony/twig-bridge/tree/v7.3.6" }, "funding": [ { @@ -5851,30 +5880,30 @@ "type": "tidelift" } ], - "time": "2025-07-26T14:12:01+00:00" + "time": "2025-11-04T15:37:51+00:00" }, { "name": "symfony/twig-bundle", - "version": "v7.2.9", + "version": "v7.3.4", "source": { "type": "git", "url": "https://github.com/symfony/twig-bundle.git", - "reference": "157de579a9ec25d5dfeb7ee3b3e9b57d2e635c39" + "reference": "da5c778a8416fcce5318737c4d944f6fa2bb3f81" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/twig-bundle/zipball/157de579a9ec25d5dfeb7ee3b3e9b57d2e635c39", - "reference": "157de579a9ec25d5dfeb7ee3b3e9b57d2e635c39", + "url": "https://api.github.com/repos/symfony/twig-bundle/zipball/da5c778a8416fcce5318737c4d944f6fa2bb3f81", + "reference": "da5c778a8416fcce5318737c4d944f6fa2bb3f81", "shasum": "" }, "require": { "composer-runtime-api": ">=2.1", "php": ">=8.2", - "symfony/config": "^6.4|^7.0", + "symfony/config": "^7.3", "symfony/dependency-injection": "^6.4|^7.0", "symfony/http-foundation": "^6.4|^7.0", "symfony/http-kernel": "^6.4|^7.0", - "symfony/twig-bridge": "^6.4|^7.0", + "symfony/twig-bridge": "^7.3", "twig/twig": "^3.12" }, "conflict": { @@ -5919,7 +5948,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.2.9" + "source": "https://github.com/symfony/twig-bundle/tree/v7.3.4" }, "funding": [ { @@ -5939,28 +5968,32 @@ "type": "tidelift" } ], - "time": "2025-07-10T08:29:33+00:00" + "time": "2025-09-10T12:00:31+00:00" }, { "name": "symfony/type-info", - "version": "v7.2.8", + "version": "v7.3.5", "source": { "type": "git", "url": "https://github.com/symfony/type-info.git", - "reference": "ec311f6f16ce2dffdffb6db6f89cdd1533723e42" + "reference": "8b36f41421160db56914f897b57eaa6a830758b3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/type-info/zipball/ec311f6f16ce2dffdffb6db6f89cdd1533723e42", - "reference": "ec311f6f16ce2dffdffb6db6f89cdd1533723e42", + "url": "https://api.github.com/repos/symfony/type-info/zipball/8b36f41421160db56914f897b57eaa6a830758b3", + "reference": "8b36f41421160db56914f897b57eaa6a830758b3", "shasum": "" }, "require": { "php": ">=8.2", - "psr/container": "^1.1|^2.0" + "psr/container": "^1.1|^2.0", + "symfony/deprecation-contracts": "^2.5|^3" + }, + "conflict": { + "phpstan/phpdoc-parser": "<1.30" }, "require-dev": { - "phpstan/phpdoc-parser": "^1.0|^2.0" + "phpstan/phpdoc-parser": "^1.30|^2.0" }, "type": "library", "autoload": { @@ -5998,7 +6031,7 @@ "type" ], "support": { - "source": "https://github.com/symfony/type-info/tree/v7.2.8" + "source": "https://github.com/symfony/type-info/tree/v7.3.5" }, "funding": [ { @@ -6009,29 +6042,34 @@ "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": "2025-06-27T15:23:16+00:00" + "time": "2025-10-16T12:30:12+00:00" }, { "name": "symfony/var-dumper", - "version": "v7.2.9", + "version": "v7.3.5", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "67ad2a16e50f052c80fe03ccb6a8721bbeffe032" + "reference": "476c4ae17f43a9a36650c69879dcf5b1e6ae724d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/67ad2a16e50f052c80fe03ccb6a8721bbeffe032", - "reference": "67ad2a16e50f052c80fe03ccb6a8721bbeffe032", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/476c4ae17f43a9a36650c69879dcf5b1e6ae724d", + "reference": "476c4ae17f43a9a36650c69879dcf5b1e6ae724d", "shasum": "" }, "require": { "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.0" }, "conflict": { @@ -6080,7 +6118,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v7.2.9" + "source": "https://github.com/symfony/var-dumper/tree/v7.3.5" }, "funding": [ { @@ -6100,24 +6138,25 @@ "type": "tidelift" } ], - "time": "2025-07-29T19:57:35+00:00" + "time": "2025-09-27T09:00:46+00:00" }, { "name": "symfony/var-exporter", - "version": "v7.2.9", + "version": "v7.3.4", "source": { "type": "git", "url": "https://github.com/symfony/var-exporter.git", - "reference": "1aab3e8e2e63f7586dd9951746eababe339d3978" + "reference": "0f020b544a30a7fe8ba972e53ee48a74c0bc87f4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-exporter/zipball/1aab3e8e2e63f7586dd9951746eababe339d3978", - "reference": "1aab3e8e2e63f7586dd9951746eababe339d3978", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/0f020b544a30a7fe8ba972e53ee48a74c0bc87f4", + "reference": "0f020b544a30a7fe8ba972e53ee48a74c0bc87f4", "shasum": "" }, "require": { - "php": ">=8.2" + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3" }, "require-dev": { "symfony/property-access": "^6.4|^7.0", @@ -6160,7 +6199,7 @@ "serialize" ], "support": { - "source": "https://github.com/symfony/var-exporter/tree/v7.2.9" + "source": "https://github.com/symfony/var-exporter/tree/v7.3.4" }, "funding": [ { @@ -6180,20 +6219,20 @@ "type": "tidelift" } ], - "time": "2025-07-10T08:29:33+00:00" + "time": "2025-09-11T10:12:26+00:00" }, { "name": "symfony/yaml", - "version": "v7.2.9", + "version": "v7.3.5", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "0df1031b6a03b9bef3cd052a59e270e006731e90" + "reference": "90208e2fc6f68f613eae7ca25a2458a931b1bacc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/0df1031b6a03b9bef3cd052a59e270e006731e90", - "reference": "0df1031b6a03b9bef3cd052a59e270e006731e90", + "url": "https://api.github.com/repos/symfony/yaml/zipball/90208e2fc6f68f613eae7ca25a2458a931b1bacc", + "reference": "90208e2fc6f68f613eae7ca25a2458a931b1bacc", "shasum": "" }, "require": { @@ -6236,7 +6275,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v7.2.9" + "source": "https://github.com/symfony/yaml/tree/v7.3.5" }, "funding": [ { @@ -6256,7 +6295,7 @@ "type": "tidelift" } ], - "time": "2025-07-10T08:29:33+00:00" + "time": "2025-09-27T09:00:46+00:00" }, { "name": "twig/twig", @@ -7336,16 +7375,16 @@ }, { "name": "behat/behat", - "version": "v3.26.0", + "version": "v3.27.0", "source": { "type": "git", "url": "https://github.com/Behat/Behat.git", - "reference": "1b6b08efa995fe4135901b862d112adc7e95ecbb" + "reference": "3282ad774358e4eaf533855e9a1f48559894d1b5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Behat/Behat/zipball/1b6b08efa995fe4135901b862d112adc7e95ecbb", - "reference": "1b6b08efa995fe4135901b862d112adc7e95ecbb", + "url": "https://api.github.com/repos/Behat/Behat/zipball/3282ad774358e4eaf533855e9a1f48559894d1b5", + "reference": "3282ad774358e4eaf533855e9a1f48559894d1b5", "shasum": "" }, "require": { @@ -7354,7 +7393,7 @@ "composer/xdebug-handler": "^1.4 || ^2.0 || ^3.0", "ext-mbstring": "*", "nikic/php-parser": "^4.19.2 || ^5.2", - "php": ">=8.1 <8.5", + "php": ">=8.1 <8.6", "psr/container": "^1.0 || ^2.0", "symfony/config": "^5.4 || ^6.4 || ^7.0", "symfony/console": "^5.4 || ^6.4 || ^7.0", @@ -7425,9 +7464,9 @@ ], "support": { "issues": "https://github.com/Behat/Behat/issues", - "source": "https://github.com/Behat/Behat/tree/v3.26.0" + "source": "https://github.com/Behat/Behat/tree/v3.27.0" }, - "time": "2025-10-29T09:46:14+00:00" + "time": "2025-11-23T12:12:41+00:00" }, { "name": "behat/gherkin", @@ -8068,16 +8107,16 @@ }, { "name": "laravel/serializable-closure", - "version": "v2.0.6", + "version": "v2.0.7", "source": { "type": "git", "url": "https://github.com/laravel/serializable-closure.git", - "reference": "038ce42edee619599a1debb7e81d7b3759492819" + "reference": "cb291e4c998ac50637c7eeb58189c14f5de5b9dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/serializable-closure/zipball/038ce42edee619599a1debb7e81d7b3759492819", - "reference": "038ce42edee619599a1debb7e81d7b3759492819", + "url": "https://api.github.com/repos/laravel/serializable-closure/zipball/cb291e4c998ac50637c7eeb58189c14f5de5b9dd", + "reference": "cb291e4c998ac50637c7eeb58189c14f5de5b9dd", "shasum": "" }, "require": { @@ -8086,7 +8125,7 @@ "require-dev": { "illuminate/support": "^10.0|^11.0|^12.0", "nesbot/carbon": "^2.67|^3.0", - "pestphp/pest": "^2.36|^3.0", + "pestphp/pest": "^2.36|^3.0|^4.0", "phpstan/phpstan": "^2.0", "symfony/var-dumper": "^6.2.0|^7.0.0" }, @@ -8125,7 +8164,7 @@ "issues": "https://github.com/laravel/serializable-closure/issues", "source": "https://github.com/laravel/serializable-closure" }, - "time": "2025-10-09T13:42:30+00:00" + "time": "2025-11-21T20:52:36+00:00" }, { "name": "league/uri", @@ -9074,16 +9113,16 @@ }, { "name": "phpunit/phpunit", - "version": "12.4.3", + "version": "12.4.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "d8f644d8d9bb904867f7a0aeb1bd306e0d966949" + "reference": "9253ec75a672e39fcc9d85bdb61448215b8162c7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/d8f644d8d9bb904867f7a0aeb1bd306e0d966949", - "reference": "d8f644d8d9bb904867f7a0aeb1bd306e0d966949", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/9253ec75a672e39fcc9d85bdb61448215b8162c7", + "reference": "9253ec75a672e39fcc9d85bdb61448215b8162c7", "shasum": "" }, "require": { @@ -9151,7 +9190,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/12.4.3" + "source": "https://github.com/sebastianbergmann/phpunit/tree/12.4.4" }, "funding": [ { @@ -9175,7 +9214,7 @@ "type": "tidelift" } ], - "time": "2025-11-13T07:20:26+00:00" + "time": "2025-11-21T07:39:11+00:00" }, { "name": "psr/http-factory", @@ -10320,32 +10359,32 @@ }, { "name": "slevomat/coding-standard", - "version": "8.24.0", + "version": "8.25.1", "source": { "type": "git", "url": "https://github.com/slevomat/coding-standard.git", - "reference": "08e7989c0351f3f38b82172838195c35d9819efa" + "reference": "4caa5ec5a30b84b2305e80159c710d437f40cc40" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/slevomat/coding-standard/zipball/08e7989c0351f3f38b82172838195c35d9819efa", - "reference": "08e7989c0351f3f38b82172838195c35d9819efa", + "url": "https://api.github.com/repos/slevomat/coding-standard/zipball/4caa5ec5a30b84b2305e80159c710d437f40cc40", + "reference": "4caa5ec5a30b84b2305e80159c710d437f40cc40", "shasum": "" }, "require": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.6.2 || ^0.7 || ^1.1.2", + "dealerdirect/phpcodesniffer-composer-installer": "^0.6.2 || ^0.7 || ^1.2.0", "php": "^7.4 || ^8.0", "phpstan/phpdoc-parser": "^2.3.0", - "squizlabs/php_codesniffer": "^4.0.0" + "squizlabs/php_codesniffer": "^4.0.1" }, "require-dev": { "phing/phing": "3.0.1|3.1.0", "php-parallel-lint/php-parallel-lint": "1.4.0", - "phpstan/phpstan": "2.1.29", + "phpstan/phpstan": "2.1.32", "phpstan/phpstan-deprecation-rules": "2.0.3", - "phpstan/phpstan-phpunit": "2.0.7", - "phpstan/phpstan-strict-rules": "2.0.6", - "phpunit/phpunit": "9.6.8|10.5.48|11.4.4|11.5.36|12.3.14" + "phpstan/phpstan-phpunit": "2.0.8", + "phpstan/phpstan-strict-rules": "2.0.7", + "phpunit/phpunit": "9.6.8|10.5.48|11.4.4|11.5.36|12.4.4" }, "type": "phpcodesniffer-standard", "extra": { @@ -10369,7 +10408,7 @@ ], "support": { "issues": "https://github.com/slevomat/coding-standard/issues", - "source": "https://github.com/slevomat/coding-standard/tree/8.24.0" + "source": "https://github.com/slevomat/coding-standard/tree/8.25.1" }, "funding": [ { @@ -10381,7 +10420,7 @@ "type": "tidelift" } ], - "time": "2025-09-25T21:37:40+00:00" + "time": "2025-11-25T18:01:43+00:00" }, { "name": "squizlabs/php_codesniffer", @@ -10516,7 +10555,7 @@ }, { "name": "symfony/expression-language", - "version": "v7.2.9", + "version": "v7.3.2", "source": { "type": "git", "url": "https://github.com/symfony/expression-language.git", @@ -10560,7 +10599,7 @@ "description": "Provides an engine that can compile and evaluate expressions", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/expression-language/tree/v7.2.9" + "source": "https://github.com/symfony/expression-language/tree/v7.3.2" }, "funding": [ { @@ -10664,16 +10703,16 @@ }, { "name": "symfony/process", - "version": "v7.2.9", + "version": "v7.3.4", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "e0a87c9a60045a354b041db2ea3cf047bf0b15f5" + "reference": "f24f8f316367b30810810d4eb30c543d7003ff3b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/e0a87c9a60045a354b041db2ea3cf047bf0b15f5", - "reference": "e0a87c9a60045a354b041db2ea3cf047bf0b15f5", + "url": "https://api.github.com/repos/symfony/process/zipball/f24f8f316367b30810810d4eb30c543d7003ff3b", + "reference": "f24f8f316367b30810810d4eb30c543d7003ff3b", "shasum": "" }, "require": { @@ -10705,7 +10744,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v7.2.9" + "source": "https://github.com/symfony/process/tree/v7.3.4" }, "funding": [ { @@ -10725,7 +10764,7 @@ "type": "tidelift" } ], - "time": "2025-07-10T08:29:33+00:00" + "time": "2025-09-11T10:12:26+00:00" }, { "name": "theseer/tokenizer", @@ -10796,5 +10835,5 @@ "platform-overrides": { "php": "8.4" }, - "plugin-api-version": "2.6.0" + "plugin-api-version": "2.9.0" } diff --git a/config/packages/framework.yaml b/config/packages/framework.yaml index 243d2d41..a14e9fba 100644 --- a/config/packages/framework.yaml +++ b/config/packages/framework.yaml @@ -19,8 +19,6 @@ framework: # error_controller: AdnanMula\Cards\Infrastructure\Security\ErrorHandler - #esi: true - #fragments: true php_errors: log: true diff --git a/config/packages/property_info.yaml b/config/packages/property_info.yaml new file mode 100644 index 00000000..dd31b9da --- /dev/null +++ b/config/packages/property_info.yaml @@ -0,0 +1,3 @@ +framework: + property_info: + with_constructor_extractor: true diff --git a/src/Infrastructure/Security/RateLimitSubscriber.php b/src/Infrastructure/Security/RateLimitSubscriber.php index bb9b3fbf..340f1128 100644 --- a/src/Infrastructure/Security/RateLimitSubscriber.php +++ b/src/Infrastructure/Security/RateLimitSubscriber.php @@ -6,6 +6,7 @@ use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpKernel\Event\RequestEvent; use Symfony\Component\HttpKernel\Event\ResponseEvent; +use Symfony\Component\HttpKernel\KernelEvents; use Symfony\Component\RateLimiter\RateLimiterFactory; readonly final class RateLimitSubscriber implements EventSubscriberInterface @@ -17,14 +18,14 @@ public function __construct( public static function getSubscribedEvents(): array { return [ - 'kernel.request' => ['onKernelRequest', 50], - 'kernel.response' => ['onKernelResponse', -50], + KernelEvents::REQUEST => ['onKernelRequest', 50], + KernelEvents::RESPONSE => ['onKernelResponse', -50], ]; } public function onKernelRequest(RequestEvent $event): void { - if (!$event->isMainRequest()) { + if (false === $event->isMainRequest()) { return; } @@ -40,9 +41,9 @@ public function onKernelRequest(RequestEvent $event): void if (false === $limit->isAccepted()) { $response = new Response( 'Too Many Requests', - 429, + Response::HTTP_TOO_MANY_REQUESTS, [ - 'Retry-After' => $limit->getRetryAfter()->format('U'), + 'Retry-After' => $limit->getRetryAfter()->format('Y-m-d H:i:s'), ], ); diff --git a/symfony.lock b/symfony.lock index 7f63a6cb..9ac8f878 100644 --- a/symfony.lock +++ b/symfony.lock @@ -372,6 +372,18 @@ "symfony/process": { "version": "v5.1.8" }, + "symfony/property-info": { + "version": "7.3", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "7.3", + "ref": "dae70df71978ae9226ae915ffd5fad817f5ca1f7" + }, + "files": [ + "config/packages/property_info.yaml" + ] + }, "symfony/routing": { "version": "5.1", "recipe": { From 990ada53cfca9527252f57151e503b6a828af834 Mon Sep 17 00:00:00 2001 From: adnanmula Date: Wed, 26 Nov 2025 20:58:31 +0100 Subject: [PATCH 2/2] add profiler --- composer.json | 4 +- composer.lock | 153 +++++++++++++++++++++++++++++- config/bundles.php | 1 + config/packages/web_profiler.yaml | 13 +++ config/routes/web_profiler.yaml | 8 ++ symfony.lock | 13 +++ 6 files changed, 190 insertions(+), 2 deletions(-) create mode 100644 config/packages/web_profiler.yaml create mode 100644 config/routes/web_profiler.yaml diff --git a/composer.json b/composer.json index 398bbb87..5ad9b9d1 100644 --- a/composer.json +++ b/composer.json @@ -37,7 +37,9 @@ "friends-of-behat/symfony-extension": "^2.4", "phpro/grumphp": "^2.9", "phpstan/phpstan": "^2.1", - "phpunit/phpunit": "^12" + "phpunit/phpunit": "^12", + "symfony/stopwatch": "7.3.*", + "symfony/web-profiler-bundle": "7.3.*" }, "config": { "optimize-autoloader": true, diff --git a/composer.lock b/composer.lock index eab283b2..a256c771 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": "0ee5bf36d18f341541534c6664daf195", + "content-hash": "5daa7faf8d72ab56f1ed97a320e1e27a", "packages": [ { "name": "adnanmula/criteria", @@ -10766,6 +10766,157 @@ ], "time": "2025-09-11T10:12:26+00:00" }, + { + "name": "symfony/stopwatch", + "version": "v7.3.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/stopwatch.git", + "reference": "5a49289e2b308214c8b9c2fda4ea454d8b8ad7cd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/5a49289e2b308214c8b9c2fda4ea454d8b8ad7cd", + "reference": "5a49289e2b308214c8b9c2fda4ea454d8b8ad7cd", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/service-contracts": "^2.5|^3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Stopwatch\\": "" + }, + "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": "Provides a way to profile code", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/stopwatch/tree/v7.3.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2025-02-24T10:49:57+00:00" + }, + { + "name": "symfony/web-profiler-bundle", + "version": "v7.3.5", + "source": { + "type": "git", + "url": "https://github.com/symfony/web-profiler-bundle.git", + "reference": "c2ed11cc0e9093fe0425ad52498d26a458842e0c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/c2ed11cc0e9093fe0425ad52498d26a458842e0c", + "reference": "c2ed11cc0e9093fe0425ad52498d26a458842e0c", + "shasum": "" + }, + "require": { + "composer-runtime-api": ">=2.1", + "php": ">=8.2", + "symfony/config": "^7.3", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/framework-bundle": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/routing": "^6.4|^7.0", + "symfony/twig-bundle": "^6.4|^7.0", + "twig/twig": "^3.12" + }, + "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", + "symfony/console": "^6.4|^7.0", + "symfony/css-selector": "^6.4|^7.0", + "symfony/stopwatch": "^6.4|^7.0" + }, + "type": "symfony-bundle", + "autoload": { + "psr-4": { + "Symfony\\Bundle\\WebProfilerBundle\\": "" + }, + "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": "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/web-profiler-bundle/tree/v7.3.5" + }, + "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": "2025-10-06T13:36:11+00:00" + }, { "name": "theseer/tokenizer", "version": "1.3.1", diff --git a/config/bundles.php b/config/bundles.php index 9a19a676..aab5f794 100644 --- a/config/bundles.php +++ b/config/bundles.php @@ -7,4 +7,5 @@ Symfony\Bundle\SecurityBundle\SecurityBundle::class => ['all' => true], Nelmio\ApiDocBundle\NelmioApiDocBundle::class => ['all' => true], Symfony\Bundle\MonologBundle\MonologBundle::class => ['all' => true], + Symfony\Bundle\WebProfilerBundle\WebProfilerBundle::class => ['dev' => true, 'test' => true], ]; diff --git a/config/packages/web_profiler.yaml b/config/packages/web_profiler.yaml new file mode 100644 index 00000000..0eac3c98 --- /dev/null +++ b/config/packages/web_profiler.yaml @@ -0,0 +1,13 @@ +when@dev: + web_profiler: + toolbar: true + + framework: + profiler: + collect_serializer_data: true + +when@test: + framework: + profiler: + collect: false + collect_serializer_data: true diff --git a/config/routes/web_profiler.yaml b/config/routes/web_profiler.yaml new file mode 100644 index 00000000..b3b7b4b0 --- /dev/null +++ b/config/routes/web_profiler.yaml @@ -0,0 +1,8 @@ +when@dev: + web_profiler_wdt: + resource: '@WebProfilerBundle/Resources/config/routing/wdt.php' + prefix: /_wdt + + web_profiler_profiler: + resource: '@WebProfilerBundle/Resources/config/routing/profiler.php' + prefix: /_profiler diff --git a/symfony.lock b/symfony.lock index 9ac8f878..ca493e06 100644 --- a/symfony.lock +++ b/symfony.lock @@ -451,6 +451,19 @@ "symfony/var-exporter": { "version": "v5.1.0" }, + "symfony/web-profiler-bundle": { + "version": "7.3", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "7.3", + "ref": "a363460c1b0b4a4d0242f2ce1a843ca0f6ac9026" + }, + "files": [ + "config/packages/web_profiler.yaml", + "config/routes/web_profiler.yaml" + ] + }, "symfony/yaml": { "version": "v5.1.0" },