diff --git a/.idea/dataSources.xml b/.idea/dataSources.xml
index 15f93b9..0b73c9c 100644
--- a/.idea/dataSources.xml
+++ b/.idea/dataSources.xml
@@ -5,7 +5,7 @@
postgresql
true
org.postgresql.Driver
- jdbc:postgresql://localhost:5432/ferme
+ jdbc:postgresql://localhost:5433/ferme
$ProjectFileDir$
diff --git a/.idea/ferme.iml b/.idea/ferme.iml
index a55a4eb..6a0c96f 100644
--- a/.idea/ferme.iml
+++ b/.idea/ferme.iml
@@ -147,9 +147,11 @@
+
+
diff --git a/.idea/php.xml b/.idea/php.xml
index dfc3b24..d4b4d6a 100644
--- a/.idea/php.xml
+++ b/.idea/php.xml
@@ -12,150 +12,152 @@
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
-
+
+
+
+
-
-
-
-
-
-
-
-
+
+
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index eec8357..b16884b 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -4,13 +4,8 @@
-
-
-
-
-
-
-
+
+
@@ -36,7 +31,7 @@
@@ -56,150 +51,152 @@
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
-
+
+
+
+
-
-
-
-
-
-
-
-
+
+
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
{
@@ -212,34 +209,34 @@
- {
+ "keyToString": {
+ "RunOnceActivity.MCP Project settings loaded": "true",
+ "RunOnceActivity.ShowReadmeOnStart": "true",
+ "RunOnceActivity.TerminalTabsStorage.copyFrom.TerminalArrangementManager.252": "true",
+ "RunOnceActivity.git.unshallow": "true",
+ "RunOnceActivity.typescript.service.memoryLimit.init": "true",
+ "git-widget-placeholder": "feat/installation-soap-bundle",
+ "node.js.detected.package.eslint": "true",
+ "node.js.detected.package.tslint": "true",
+ "node.js.selected.package.eslint": "(autodetect)",
+ "node.js.selected.package.tslint": "(autodetect)",
+ "nodejs_package_manager_path": "npm",
+ "settings.editor.selected.configurable": "preferences.keymap",
+ "vue.rearranger.settings.migration": "true"
},
- "keyToStringList": {
- "DatabaseDriversLRU": [
- "postgresql"
+ "keyToStringList": {
+ "DatabaseDriversLRU": [
+ "postgresql"
],
- "com.intellij.ide.scratch.ScratchImplUtil$2/New Scratch File": [
- "TEXT"
+ "com.intellij.ide.scratch.ScratchImplUtil$2/New Scratch File": [
+ "TEXT"
],
- "vue.recent.templates": [
- "Vue Composition API Component"
+ "vue.recent.templates": [
+ "Vue Composition API Component"
]
}
-}]]>
+}
@@ -252,7 +249,7 @@
-
+
@@ -269,7 +266,9 @@
-
+
+
+
@@ -519,7 +518,39 @@
1769098861988
-
+
+
+ 1769100048933
+
+
+
+ 1769100048933
+
+
+
+ 1769177611987
+
+
+
+ 1769177611987
+
+
+
+ 1769184861047
+
+
+
+ 1769184861047
+
+
+
+ 1769434793487
+
+
+
+ 1769434793487
+
+
@@ -569,10 +600,6 @@
-
-
-
-
@@ -594,7 +621,11 @@
-
+
+
+
+
+
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b2c4875..bdef038 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -13,6 +13,10 @@ Ajouter dans le fichier .env
- JWT_PUBLIC_KEY
- JWT_PASSPHRASE (à généré dans le conteneur avec la commande php -r "echo bin2hex(random_bytes(32));")
- COOKIE_SECURE=0 (en dev 0 et en prod 1)
+- EDNOTIF_EXPLOITATION_CODE
+- EDNOTIF_EXPLOITATION_NUMERO
+- EDNOTIF_LOGIN
+- EDNOTIF_PASSWORD
Ajouter dans le fichier .env du frontend
- NUXT_PUBLIC_API_BASE
@@ -20,6 +24,7 @@ Ajouter dans le fichier .env du frontend
### Added
* [#203] Réceptions — Parcours de pesée multi-étapes (début)
* [#202] Authentification — Connexion utilisateur (JWT)
+* Ajout du bundle malio/ednotif-bundle
### Changed
diff --git a/composer.json b/composer.json
index 57a7a13..b09f4a0 100644
--- a/composer.json
+++ b/composer.json
@@ -14,6 +14,7 @@
"doctrine/orm": "^3.6",
"dompdf/dompdf": "^3.1",
"lexik/jwt-authentication-bundle": "*",
+ "malio/ednotif-bundle": ">=0.0.4",
"nelmio/cors-bundle": "^2.6",
"phpdocumentor/reflection-docblock": "^5.6",
"phpstan/phpdoc-parser": "^2.3",
@@ -90,6 +91,14 @@
"friendsofphp/php-cs-fixer": "^3.92",
"phpunit/phpunit": "^12.5",
"symfony/browser-kit": "8.0.*",
- "symfony/css-selector": "8.0.*"
- }
+ "symfony/css-selector": "8.0.*",
+ "symfony/stopwatch": "8.0.*",
+ "symfony/web-profiler-bundle": "8.0.*"
+ },
+ "repositories": [
+ {
+ "type": "vcs",
+ "url": "https://gitea.malio.fr/MALIO-DEV/ednotif-bundle"
+ }
+ ]
}
diff --git a/composer.lock b/composer.lock
index 7617e63..d308752 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,20 +4,20 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "e122271fbb08b4c19c1fe6084f95aeab",
+ "content-hash": "d66ef6b521a08a262b1c043bb32cafe5",
"packages": [
{
"name": "api-platform/doctrine-common",
- "version": "v4.2.11",
+ "version": "v4.2.14",
"source": {
"type": "git",
"url": "https://github.com/api-platform/doctrine-common.git",
- "reference": "281f2ef1433253ec63a4f845622639665c1d68c5"
+ "reference": "a29e9015ecf4547485ec7fbce52da4ee95c282a0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/doctrine-common/zipball/281f2ef1433253ec63a4f845622639665c1d68c5",
- "reference": "281f2ef1433253ec63a4f845622639665c1d68c5",
+ "url": "https://api.github.com/repos/api-platform/doctrine-common/zipball/a29e9015ecf4547485ec7fbce52da4ee95c282a0",
+ "reference": "a29e9015ecf4547485ec7fbce52da4ee95c282a0",
"shasum": ""
},
"require": {
@@ -35,7 +35,7 @@
"doctrine/mongodb-odm": "^2.10",
"doctrine/orm": "^2.17 || ^3.0",
"phpspec/prophecy-phpunit": "^2.2",
- "phpunit/phpunit": "11.5.x-dev",
+ "phpunit/phpunit": "^12.2",
"symfony/type-info": "^7.3 || ^8.0"
},
"suggest": {
@@ -92,22 +92,22 @@
"rest"
],
"support": {
- "source": "https://github.com/api-platform/doctrine-common/tree/v4.2.11"
+ "source": "https://github.com/api-platform/doctrine-common/tree/v4.2.14"
},
- "time": "2025-12-04T14:20:26+00:00"
+ "time": "2026-01-12T13:36:15+00:00"
},
{
"name": "api-platform/doctrine-orm",
- "version": "v4.2.11",
+ "version": "v4.2.14",
"source": {
"type": "git",
"url": "https://github.com/api-platform/doctrine-orm.git",
- "reference": "6ea550f2db2db04979aefd654c115ecd6f897039"
+ "reference": "7a7c5cb7261ead50481a9a2d8ef721e21ea97945"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/doctrine-orm/zipball/6ea550f2db2db04979aefd654c115ecd6f897039",
- "reference": "6ea550f2db2db04979aefd654c115ecd6f897039",
+ "url": "https://api.github.com/repos/api-platform/doctrine-orm/zipball/7a7c5cb7261ead50481a9a2d8ef721e21ea97945",
+ "reference": "7a7c5cb7261ead50481a9a2d8ef721e21ea97945",
"shasum": ""
},
"require": {
@@ -120,7 +120,7 @@
"require-dev": {
"doctrine/doctrine-bundle": "^2.11 || ^3.1",
"phpspec/prophecy-phpunit": "^2.2",
- "phpunit/phpunit": "11.5.x-dev",
+ "phpunit/phpunit": "^12.2",
"ramsey/uuid": "^4.7",
"ramsey/uuid-doctrine": "^2.0",
"symfony/cache": "^6.4 || ^7.0 || ^8.0",
@@ -179,22 +179,22 @@
"rest"
],
"support": {
- "source": "https://github.com/api-platform/doctrine-orm/tree/v4.2.11"
+ "source": "https://github.com/api-platform/doctrine-orm/tree/v4.2.14"
},
- "time": "2025-12-04T14:20:26+00:00"
+ "time": "2026-01-23T14:24:03+00:00"
},
{
"name": "api-platform/documentation",
- "version": "v4.2.11",
+ "version": "v4.2.14",
"source": {
"type": "git",
"url": "https://github.com/api-platform/documentation.git",
- "reference": "8910f2a0aa7910ed807f128510553b24152e5ea5"
+ "reference": "873543a827df5c25b008bd730f2096701e1943b8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/documentation/zipball/8910f2a0aa7910ed807f128510553b24152e5ea5",
- "reference": "8910f2a0aa7910ed807f128510553b24152e5ea5",
+ "url": "https://api.github.com/repos/api-platform/documentation/zipball/873543a827df5c25b008bd730f2096701e1943b8",
+ "reference": "873543a827df5c25b008bd730f2096701e1943b8",
"shasum": ""
},
"require": {
@@ -202,7 +202,7 @@
"php": ">=8.2"
},
"require-dev": {
- "phpunit/phpunit": "11.5.x-dev"
+ "phpunit/phpunit": "^12.2"
},
"type": "project",
"extra": {
@@ -242,22 +242,22 @@
],
"description": "API Platform documentation controller.",
"support": {
- "source": "https://github.com/api-platform/documentation/tree/v4.2.11"
+ "source": "https://github.com/api-platform/documentation/tree/v4.2.14"
},
- "time": "2025-11-30T12:55:42+00:00"
+ "time": "2025-12-27T22:15:57+00:00"
},
{
"name": "api-platform/http-cache",
- "version": "v4.2.11",
+ "version": "v4.2.14",
"source": {
"type": "git",
"url": "https://github.com/api-platform/http-cache.git",
- "reference": "4bb2eab81407f493f54f51be7aa1918f362c14b5"
+ "reference": "04a9239b67425f68ed2d372c2c731f14342dea45"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/http-cache/zipball/4bb2eab81407f493f54f51be7aa1918f362c14b5",
- "reference": "4bb2eab81407f493f54f51be7aa1918f362c14b5",
+ "url": "https://api.github.com/repos/api-platform/http-cache/zipball/04a9239b67425f68ed2d372c2c731f14342dea45",
+ "reference": "04a9239b67425f68ed2d372c2c731f14342dea45",
"shasum": ""
},
"require": {
@@ -269,7 +269,7 @@
"require-dev": {
"guzzlehttp/guzzle": "^6.0 || ^7.0 || ^8.0",
"phpspec/prophecy-phpunit": "^2.2",
- "phpunit/phpunit": "11.5.x-dev",
+ "phpunit/phpunit": "^12.2",
"symfony/dependency-injection": "^6.4 || ^7.0 || ^8.0",
"symfony/http-client": "^6.4 || ^7.0 || ^8.0",
"symfony/type-info": "^7.3 || ^8.0"
@@ -322,22 +322,22 @@
"rest"
],
"support": {
- "source": "https://github.com/api-platform/http-cache/tree/v4.2.11"
+ "source": "https://github.com/api-platform/http-cache/tree/v4.2.14"
},
- "time": "2025-11-30T12:55:42+00:00"
+ "time": "2026-01-12T13:36:15+00:00"
},
{
"name": "api-platform/hydra",
- "version": "v4.2.11",
+ "version": "v4.2.14",
"source": {
"type": "git",
"url": "https://github.com/api-platform/hydra.git",
- "reference": "80491f175647d0a63eb96035b2468fc1c2a76c37"
+ "reference": "866611a986f4f52da7807b04a0b2cf64e314ab56"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/hydra/zipball/80491f175647d0a63eb96035b2468fc1c2a76c37",
- "reference": "80491f175647d0a63eb96035b2468fc1c2a76c37",
+ "url": "https://api.github.com/repos/api-platform/hydra/zipball/866611a986f4f52da7807b04a0b2cf64e314ab56",
+ "reference": "866611a986f4f52da7807b04a0b2cf64e314ab56",
"shasum": ""
},
"require": {
@@ -357,7 +357,7 @@
"api-platform/doctrine-orm": "^4.2",
"phpspec/prophecy": "^1.19",
"phpspec/prophecy-phpunit": "^2.2",
- "phpunit/phpunit": "11.5.x-dev"
+ "phpunit/phpunit": "^12.2"
},
"type": "library",
"extra": {
@@ -409,22 +409,22 @@
"rest"
],
"support": {
- "source": "https://github.com/api-platform/hydra/tree/v4.2.11"
+ "source": "https://github.com/api-platform/hydra/tree/v4.2.14"
},
- "time": "2025-12-18T14:34:13+00:00"
+ "time": "2025-12-27T22:15:57+00:00"
},
{
"name": "api-platform/json-schema",
- "version": "v4.2.11",
+ "version": "v4.2.14",
"source": {
"type": "git",
"url": "https://github.com/api-platform/json-schema.git",
- "reference": "6a5f901a744018e48b8b94bbf798cd4f617cfcde"
+ "reference": "b69ebff7277655c1eb91bc0092fad4bc80aed4fb"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/json-schema/zipball/6a5f901a744018e48b8b94bbf798cd4f617cfcde",
- "reference": "6a5f901a744018e48b8b94bbf798cd4f617cfcde",
+ "url": "https://api.github.com/repos/api-platform/json-schema/zipball/b69ebff7277655c1eb91bc0092fad4bc80aed4fb",
+ "reference": "b69ebff7277655c1eb91bc0092fad4bc80aed4fb",
"shasum": ""
},
"require": {
@@ -438,7 +438,7 @@
},
"require-dev": {
"phpspec/prophecy-phpunit": "^2.2",
- "phpunit/phpunit": "11.5.x-dev"
+ "phpunit/phpunit": "^12.2"
},
"type": "library",
"extra": {
@@ -490,22 +490,22 @@
"swagger"
],
"support": {
- "source": "https://github.com/api-platform/json-schema/tree/v4.2.11"
+ "source": "https://github.com/api-platform/json-schema/tree/v4.2.14"
},
- "time": "2025-12-02T13:32:19+00:00"
+ "time": "2026-01-23T14:31:09+00:00"
},
{
"name": "api-platform/jsonld",
- "version": "v4.2.11",
+ "version": "v4.2.14",
"source": {
"type": "git",
"url": "https://github.com/api-platform/jsonld.git",
- "reference": "3889b185376198a182d2527c48ec0b29b604505f"
+ "reference": "ef0a361b0f29158243478d3fff5038ec2f5aa76c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/jsonld/zipball/3889b185376198a182d2527c48ec0b29b604505f",
- "reference": "3889b185376198a182d2527c48ec0b29b604505f",
+ "url": "https://api.github.com/repos/api-platform/jsonld/zipball/ef0a361b0f29158243478d3fff5038ec2f5aa76c",
+ "reference": "ef0a361b0f29158243478d3fff5038ec2f5aa76c",
"shasum": ""
},
"require": {
@@ -515,7 +515,7 @@
"php": ">=8.2"
},
"require-dev": {
- "phpunit/phpunit": "11.5.x-dev",
+ "phpunit/phpunit": "^12.2",
"symfony/type-info": "^7.3 || ^8.0"
},
"type": "library",
@@ -570,22 +570,22 @@
"rest"
],
"support": {
- "source": "https://github.com/api-platform/jsonld/tree/v4.2.11"
+ "source": "https://github.com/api-platform/jsonld/tree/v4.2.14"
},
- "time": "2025-12-18T14:34:13+00:00"
+ "time": "2026-01-12T13:36:15+00:00"
},
{
"name": "api-platform/metadata",
- "version": "v4.2.11",
+ "version": "v4.2.14",
"source": {
"type": "git",
"url": "https://github.com/api-platform/metadata.git",
- "reference": "533774ca55a4f2be9da72da344d5e3e2982fbc86"
+ "reference": "590195d1038e66a039f1847b43040b7e6b78475f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/metadata/zipball/533774ca55a4f2be9da72da344d5e3e2982fbc86",
- "reference": "533774ca55a4f2be9da72da344d5e3e2982fbc86",
+ "url": "https://api.github.com/repos/api-platform/metadata/zipball/590195d1038e66a039f1847b43040b7e6b78475f",
+ "reference": "590195d1038e66a039f1847b43040b7e6b78475f",
"shasum": ""
},
"require": {
@@ -603,7 +603,7 @@
"api-platform/state": "^4.2.4",
"phpspec/prophecy-phpunit": "^2.2",
"phpstan/phpdoc-parser": "^1.29 || ^2.0",
- "phpunit/phpunit": "11.5.x-dev",
+ "phpunit/phpunit": "^12.2",
"symfony/config": "^6.4 || ^7.0 || ^8.0",
"symfony/routing": "^6.4 || ^7.0 || ^8.0",
"symfony/var-dumper": "^6.4 || ^7.0 || ^8.0",
@@ -668,22 +668,22 @@
"swagger"
],
"support": {
- "source": "https://github.com/api-platform/metadata/tree/v4.2.11"
+ "source": "https://github.com/api-platform/metadata/tree/v4.2.14"
},
- "time": "2025-12-18T14:34:13+00:00"
+ "time": "2026-01-12T13:36:15+00:00"
},
{
"name": "api-platform/openapi",
- "version": "v4.2.11",
+ "version": "v4.2.14",
"source": {
"type": "git",
"url": "https://github.com/api-platform/openapi.git",
- "reference": "ea49d6d7170f8ecc1c239e7769708628183096b8"
+ "reference": "39ed78187a4a8e7c1c1fc9b5a3ef3913e3e914e3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/openapi/zipball/ea49d6d7170f8ecc1c239e7769708628183096b8",
- "reference": "ea49d6d7170f8ecc1c239e7769708628183096b8",
+ "url": "https://api.github.com/repos/api-platform/openapi/zipball/39ed78187a4a8e7c1c1fc9b5a3ef3913e3e914e3",
+ "reference": "39ed78187a4a8e7c1c1fc9b5a3ef3913e3e914e3",
"shasum": ""
},
"require": {
@@ -702,7 +702,7 @@
"api-platform/doctrine-odm": "^4.2",
"api-platform/doctrine-orm": "^4.2",
"phpspec/prophecy-phpunit": "^2.2",
- "phpunit/phpunit": "11.5.x-dev",
+ "phpunit/phpunit": "^12.2",
"symfony/type-info": "^7.3 || ^8.0"
},
"type": "library",
@@ -758,22 +758,22 @@
"swagger"
],
"support": {
- "source": "https://github.com/api-platform/openapi/tree/v4.2.11"
+ "source": "https://github.com/api-platform/openapi/tree/v4.2.14"
},
- "time": "2025-11-30T12:55:42+00:00"
+ "time": "2026-01-17T19:34:53+00:00"
},
{
"name": "api-platform/serializer",
- "version": "v4.2.11",
+ "version": "v4.2.14",
"source": {
"type": "git",
"url": "https://github.com/api-platform/serializer.git",
- "reference": "a511d4ba522c3ebbd78c9e1f05e0918978d72a43"
+ "reference": "006df770d82860922c7faee493d5d3c14906f810"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/serializer/zipball/a511d4ba522c3ebbd78c9e1f05e0918978d72a43",
- "reference": "a511d4ba522c3ebbd78c9e1f05e0918978d72a43",
+ "url": "https://api.github.com/repos/api-platform/serializer/zipball/006df770d82860922c7faee493d5d3c14906f810",
+ "reference": "006df770d82860922c7faee493d5d3c14906f810",
"shasum": ""
},
"require": {
@@ -793,7 +793,7 @@
"api-platform/openapi": "^4.2",
"doctrine/collections": "^2.1",
"phpspec/prophecy-phpunit": "^2.2",
- "phpunit/phpunit": "11.5.x-dev",
+ "phpunit/phpunit": "^12.2",
"symfony/mercure-bundle": "*",
"symfony/type-info": "^7.3 || ^8.0",
"symfony/var-dumper": "^6.4 || ^7.0 || ^8.0",
@@ -851,22 +851,22 @@
"serializer"
],
"support": {
- "source": "https://github.com/api-platform/serializer/tree/v4.2.11"
+ "source": "https://github.com/api-platform/serializer/tree/v4.2.14"
},
- "time": "2025-12-18T14:36:58+00:00"
+ "time": "2026-01-12T13:36:15+00:00"
},
{
"name": "api-platform/state",
- "version": "v4.2.11",
+ "version": "v4.2.14",
"source": {
"type": "git",
"url": "https://github.com/api-platform/state.git",
- "reference": "b9644669f953a76742c9f49d571ff42c68e581d1"
+ "reference": "fa3e7b41bcb54e7ba6d3078de224620e422d6732"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/state/zipball/b9644669f953a76742c9f49d571ff42c68e581d1",
- "reference": "b9644669f953a76742c9f49d571ff42c68e581d1",
+ "url": "https://api.github.com/repos/api-platform/state/zipball/fa3e7b41bcb54e7ba6d3078de224620e422d6732",
+ "reference": "fa3e7b41bcb54e7ba6d3078de224620e422d6732",
"shasum": ""
},
"require": {
@@ -881,7 +881,7 @@
"require-dev": {
"api-platform/serializer": "^4.2.4",
"api-platform/validator": "^4.2.4",
- "phpunit/phpunit": "11.5.x-dev",
+ "phpunit/phpunit": "^12.2",
"symfony/http-foundation": "^6.4.14 || ^7.0 || ^8.0",
"symfony/object-mapper": "^7.4 || ^8.0",
"symfony/type-info": "^7.4 || ^8.0",
@@ -948,35 +948,35 @@
"swagger"
],
"support": {
- "source": "https://github.com/api-platform/state/tree/v4.2.11"
+ "source": "https://github.com/api-platform/state/tree/v4.2.14"
},
- "time": "2025-12-17T15:10:17+00:00"
+ "time": "2026-01-12T13:36:15+00:00"
},
{
"name": "api-platform/symfony",
- "version": "v4.2.11",
+ "version": "v4.2.14",
"source": {
"type": "git",
"url": "https://github.com/api-platform/symfony.git",
- "reference": "ab93a0043558beeb7ccd7f2c97304565d4872bb3"
+ "reference": "31539dc26bd88f54e43d2d8a24613ff988307da1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/symfony/zipball/ab93a0043558beeb7ccd7f2c97304565d4872bb3",
- "reference": "ab93a0043558beeb7ccd7f2c97304565d4872bb3",
+ "url": "https://api.github.com/repos/api-platform/symfony/zipball/31539dc26bd88f54e43d2d8a24613ff988307da1",
+ "reference": "31539dc26bd88f54e43d2d8a24613ff988307da1",
"shasum": ""
},
"require": {
- "api-platform/documentation": "^4.2.3",
- "api-platform/http-cache": "^4.2.3",
- "api-platform/hydra": "^4.2.3",
- "api-platform/json-schema": "^4.2.3",
- "api-platform/jsonld": "^4.2.3",
- "api-platform/metadata": "^4.2.3",
- "api-platform/openapi": "^4.2.3",
- "api-platform/serializer": "^4.2.4",
- "api-platform/state": "^4.2.4",
- "api-platform/validator": "^4.2.3",
+ "api-platform/documentation": "^4.2.12",
+ "api-platform/http-cache": "^4.2.12",
+ "api-platform/hydra": "^4.2.12",
+ "api-platform/json-schema": "^4.2.12",
+ "api-platform/jsonld": "^4.2.12",
+ "api-platform/metadata": "^4.2.12",
+ "api-platform/openapi": "^4.2.12",
+ "api-platform/serializer": "^4.2.12",
+ "api-platform/state": "^4.2.12",
+ "api-platform/validator": "^4.2.12",
"php": ">=8.2",
"symfony/asset": "^6.4 || ^7.0 || ^8.0",
"symfony/finder": "^6.4 || ^7.0 || ^8.0",
@@ -987,14 +987,14 @@
"willdurand/negotiation": "^3.1"
},
"require-dev": {
- "api-platform/doctrine-common": "^4.2.3",
- "api-platform/doctrine-odm": "^4.2.3",
- "api-platform/doctrine-orm": "^4.2.3",
- "api-platform/elasticsearch": "^4.2.3",
- "api-platform/graphql": "^4.2.3",
- "api-platform/hal": "^4.2.3",
+ "api-platform/doctrine-common": "^4.2.12",
+ "api-platform/doctrine-odm": "^4.2.12",
+ "api-platform/doctrine-orm": "^4.2.12",
+ "api-platform/elasticsearch": "^4.2.12",
+ "api-platform/graphql": "^4.2.12",
+ "api-platform/hal": "^4.2.12",
"phpspec/prophecy-phpunit": "^2.2",
- "phpunit/phpunit": "11.5.x-dev",
+ "phpunit/phpunit": "^12.2",
"symfony/expression-language": "^6.4 || ^7.0 || ^8.0",
"symfony/intl": "^6.4 || ^7.0 || ^8.0",
"symfony/mercure-bundle": "*",
@@ -1076,22 +1076,22 @@
"symfony"
],
"support": {
- "source": "https://github.com/api-platform/symfony/tree/v4.2.11"
+ "source": "https://github.com/api-platform/symfony/tree/v4.2.14"
},
- "time": "2025-12-18T14:34:13+00:00"
+ "time": "2026-01-23T14:24:03+00:00"
},
{
"name": "api-platform/validator",
- "version": "v4.2.11",
+ "version": "v4.2.14",
"source": {
"type": "git",
"url": "https://github.com/api-platform/validator.git",
- "reference": "850035ba6165e2452c1777bee2272205bf8c771e"
+ "reference": "346a5916d9706da9b0981ebec3d6278802e96ca9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/validator/zipball/850035ba6165e2452c1777bee2272205bf8c771e",
- "reference": "850035ba6165e2452c1777bee2272205bf8c771e",
+ "url": "https://api.github.com/repos/api-platform/validator/zipball/346a5916d9706da9b0981ebec3d6278802e96ca9",
+ "reference": "346a5916d9706da9b0981ebec3d6278802e96ca9",
"shasum": ""
},
"require": {
@@ -1105,7 +1105,7 @@
},
"require-dev": {
"phpspec/prophecy-phpunit": "^2.2",
- "phpunit/phpunit": "11.5.x-dev"
+ "phpunit/phpunit": "^12.2"
},
"type": "library",
"extra": {
@@ -1152,22 +1152,22 @@
"validator"
],
"support": {
- "source": "https://github.com/api-platform/validator/tree/v4.2.11"
+ "source": "https://github.com/api-platform/validator/tree/v4.2.14"
},
- "time": "2025-12-04T14:20:26+00:00"
+ "time": "2026-01-16T13:22:15+00:00"
},
{
"name": "doctrine/collections",
- "version": "2.4.0",
+ "version": "2.6.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/collections.git",
- "reference": "9acfeea2e8666536edff3d77c531261c63680160"
+ "reference": "7713da39d8e237f28411d6a616a3dce5e20d5de2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/collections/zipball/9acfeea2e8666536edff3d77c531261c63680160",
- "reference": "9acfeea2e8666536edff3d77c531261c63680160",
+ "url": "https://api.github.com/repos/doctrine/collections/zipball/7713da39d8e237f28411d6a616a3dce5e20d5de2",
+ "reference": "7713da39d8e237f28411d6a616a3dce5e20d5de2",
"shasum": ""
},
"require": {
@@ -1224,7 +1224,7 @@
],
"support": {
"issues": "https://github.com/doctrine/collections/issues",
- "source": "https://github.com/doctrine/collections/tree/2.4.0"
+ "source": "https://github.com/doctrine/collections/tree/2.6.0"
},
"funding": [
{
@@ -1240,7 +1240,7 @@
"type": "tidelift"
}
],
- "time": "2025-10-25T09:18:13+00:00"
+ "time": "2026-01-15T10:01:58+00:00"
},
{
"name": "doctrine/common",
@@ -1696,16 +1696,16 @@
},
{
"name": "doctrine/event-manager",
- "version": "2.0.1",
+ "version": "2.1.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/event-manager.git",
- "reference": "b680156fa328f1dfd874fd48c7026c41570b9c6e"
+ "reference": "c07799fcf5ad362050960a0fd068dded40b1e312"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/event-manager/zipball/b680156fa328f1dfd874fd48c7026c41570b9c6e",
- "reference": "b680156fa328f1dfd874fd48c7026c41570b9c6e",
+ "url": "https://api.github.com/repos/doctrine/event-manager/zipball/c07799fcf5ad362050960a0fd068dded40b1e312",
+ "reference": "c07799fcf5ad362050960a0fd068dded40b1e312",
"shasum": ""
},
"require": {
@@ -1715,10 +1715,10 @@
"doctrine/common": "<2.9"
},
"require-dev": {
- "doctrine/coding-standard": "^12",
- "phpstan/phpstan": "^1.8.8",
- "phpunit/phpunit": "^10.5",
- "vimeo/psalm": "^5.24"
+ "doctrine/coding-standard": "^14",
+ "phpdocumentor/guides-cli": "^1.4",
+ "phpstan/phpstan": "^2.1.32",
+ "phpunit/phpunit": "^10.5.58"
},
"type": "library",
"autoload": {
@@ -1767,7 +1767,7 @@
],
"support": {
"issues": "https://github.com/doctrine/event-manager/issues",
- "source": "https://github.com/doctrine/event-manager/tree/2.0.1"
+ "source": "https://github.com/doctrine/event-manager/tree/2.1.0"
},
"funding": [
{
@@ -1783,7 +1783,7 @@
"type": "tidelift"
}
],
- "time": "2024-05-22T20:47:39+00:00"
+ "time": "2026-01-17T22:40:21+00:00"
},
{
"name": "doctrine/inflector",
@@ -1877,30 +1877,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": {
@@ -1927,7 +1926,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": [
{
@@ -1943,7 +1942,7 @@
"type": "tidelift"
}
],
- "time": "2022-12-30T00:23:10+00:00"
+ "time": "2026-01-05T06:47:08+00:00"
},
{
"name": "doctrine/lexer",
@@ -2127,16 +2126,16 @@
},
{
"name": "doctrine/orm",
- "version": "3.6.0",
+ "version": "3.6.1",
"source": {
"type": "git",
"url": "https://github.com/doctrine/orm.git",
- "reference": "d4e9276e79602b1eb4c4029c6c999b0d93478e2f"
+ "reference": "2148940290e4c44b9101095707e71fb590832fa5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/orm/zipball/d4e9276e79602b1eb4c4029c6c999b0d93478e2f",
- "reference": "d4e9276e79602b1eb4c4029c6c999b0d93478e2f",
+ "url": "https://api.github.com/repos/doctrine/orm/zipball/2148940290e4c44b9101095707e71fb590832fa5",
+ "reference": "2148940290e4c44b9101095707e71fb590832fa5",
"shasum": ""
},
"require": {
@@ -2209,9 +2208,9 @@
],
"support": {
"issues": "https://github.com/doctrine/orm/issues",
- "source": "https://github.com/doctrine/orm/tree/3.6.0"
+ "source": "https://github.com/doctrine/orm/tree/3.6.1"
},
- "time": "2025-12-19T20:36:14+00:00"
+ "time": "2026-01-09T05:28:15+00:00"
},
{
"name": "doctrine/persistence",
@@ -2427,16 +2426,16 @@
},
{
"name": "dompdf/php-font-lib",
- "version": "1.0.1",
+ "version": "1.0.2",
"source": {
"type": "git",
"url": "https://github.com/dompdf/php-font-lib.git",
- "reference": "6137b7d4232b7f16c882c75e4ca3991dbcf6fe2d"
+ "reference": "a6e9a688a2a80016ac080b97be73d3e10c444c9a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/dompdf/php-font-lib/zipball/6137b7d4232b7f16c882c75e4ca3991dbcf6fe2d",
- "reference": "6137b7d4232b7f16c882c75e4ca3991dbcf6fe2d",
+ "url": "https://api.github.com/repos/dompdf/php-font-lib/zipball/a6e9a688a2a80016ac080b97be73d3e10c444c9a",
+ "reference": "a6e9a688a2a80016ac080b97be73d3e10c444c9a",
"shasum": ""
},
"require": {
@@ -2444,7 +2443,7 @@
"php": "^7.1 || ^8.0"
},
"require-dev": {
- "symfony/phpunit-bridge": "^3 || ^4 || ^5 || ^6"
+ "phpunit/phpunit": "^7.5 || ^8 || ^9 || ^10 || ^11 || ^12"
},
"type": "library",
"autoload": {
@@ -2466,9 +2465,9 @@
"homepage": "https://github.com/dompdf/php-font-lib",
"support": {
"issues": "https://github.com/dompdf/php-font-lib/issues",
- "source": "https://github.com/dompdf/php-font-lib/tree/1.0.1"
+ "source": "https://github.com/dompdf/php-font-lib/tree/1.0.2"
},
- "time": "2024-12-02T14:37:59+00:00"
+ "time": "2026-01-20T14:10:26+00:00"
},
{
"name": "dompdf/php-svg-lib",
@@ -2705,6 +2704,48 @@
],
"time": "2025-12-20T17:47:00+00:00"
},
+ {
+ "name": "malio/ednotif-bundle",
+ "version": "v0.0.4",
+ "source": {
+ "type": "git",
+ "url": "https://gitea.malio.fr/MALIO-DEV/ednotif-bundle",
+ "reference": "92c058213b34ba61f4aa6c03e11ce1ea8cc71421"
+ },
+ "require": {
+ "ext-soap": "*",
+ "ext-xml": "*",
+ "php": "^8.4",
+ "psr/log": "^3.0",
+ "symfony/cache": "^8.0",
+ "symfony/config": "^8.0",
+ "symfony/dependency-injection": "^8.0",
+ "symfony/framework-bundle": "^8.0",
+ "symfony/http-kernel": "^8.0",
+ "symfony/options-resolver": "^8.0"
+ },
+ "require-dev": {
+ "friendsofphp/php-cs-fixer": "^3.92",
+ "phpunit/phpunit": "^12.0",
+ "symfony/phpunit-bridge": "^8.0"
+ },
+ "type": "symfony-bundle",
+ "autoload": {
+ "psr-4": {
+ "Malio\\EdnotifBundle\\": "src/"
+ }
+ },
+ "autoload-dev": {
+ "psr-4": {
+ "Malio\\EdnotifBundle\\Tests\\": "tests/"
+ }
+ },
+ "license": [
+ "MIT"
+ ],
+ "description": "Client EDNOTIF (Guichet + wsIpBNotif) pour Symfony",
+ "time": "2026-01-26T13:24:38+00:00"
+ },
{
"name": "masterminds/html5",
"version": "2.10.0",
@@ -2877,16 +2918,16 @@
},
{
"name": "nelmio/cors-bundle",
- "version": "2.6.0",
+ "version": "2.6.1",
"source": {
"type": "git",
"url": "https://github.com/nelmio/NelmioCorsBundle.git",
- "reference": "530217472204881cacd3671909f634b960c7b948"
+ "reference": "3d80dbcd5d1eb5f8b20ed5199e1778d44c2e4d1c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nelmio/NelmioCorsBundle/zipball/530217472204881cacd3671909f634b960c7b948",
- "reference": "530217472204881cacd3671909f634b960c7b948",
+ "url": "https://api.github.com/repos/nelmio/NelmioCorsBundle/zipball/3d80dbcd5d1eb5f8b20ed5199e1778d44c2e4d1c",
+ "reference": "3d80dbcd5d1eb5f8b20ed5199e1778d44c2e4d1c",
"shasum": ""
},
"require": {
@@ -2936,9 +2977,9 @@
],
"support": {
"issues": "https://github.com/nelmio/NelmioCorsBundle/issues",
- "source": "https://github.com/nelmio/NelmioCorsBundle/tree/2.6.0"
+ "source": "https://github.com/nelmio/NelmioCorsBundle/tree/2.6.1"
},
- "time": "2025-10-23T06:57:22+00:00"
+ "time": "2026-01-12T15:59:08+00:00"
},
{
"name": "phpdocumentor/reflection-common",
@@ -3117,16 +3158,16 @@
},
{
"name": "phpstan/phpdoc-parser",
- "version": "2.3.0",
+ "version": "2.3.1",
"source": {
"type": "git",
"url": "https://github.com/phpstan/phpdoc-parser.git",
- "reference": "1e0cd5370df5dd2e556a36b9c62f62e555870495"
+ "reference": "16dbf9937da8d4528ceb2145c9c7c0bd29e26374"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/1e0cd5370df5dd2e556a36b9c62f62e555870495",
- "reference": "1e0cd5370df5dd2e556a36b9c62f62e555870495",
+ "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/16dbf9937da8d4528ceb2145c9c7c0bd29e26374",
+ "reference": "16dbf9937da8d4528ceb2145c9c7c0bd29e26374",
"shasum": ""
},
"require": {
@@ -3158,9 +3199,9 @@
"description": "PHPDoc parser with support for nullable, intersection and generic types",
"support": {
"issues": "https://github.com/phpstan/phpdoc-parser/issues",
- "source": "https://github.com/phpstan/phpdoc-parser/tree/2.3.0"
+ "source": "https://github.com/phpstan/phpdoc-parser/tree/2.3.1"
},
- "time": "2025-08-30T15:50:23+00:00"
+ "time": "2026-01-12T11:33:04+00:00"
},
{
"name": "psr/cache",
@@ -3614,16 +3655,16 @@
},
{
"name": "symfony/cache",
- "version": "v8.0.3",
+ "version": "v8.0.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/cache.git",
- "reference": "ef8c7dbfe613d2773d0b5e68b2ef2db72c8b025f"
+ "reference": "5d3fcada5e1b80157cfdfd1f9dbbd63f95ef6f13"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/cache/zipball/ef8c7dbfe613d2773d0b5e68b2ef2db72c8b025f",
- "reference": "ef8c7dbfe613d2773d0b5e68b2ef2db72c8b025f",
+ "url": "https://api.github.com/repos/symfony/cache/zipball/5d3fcada5e1b80157cfdfd1f9dbbd63f95ef6f13",
+ "reference": "5d3fcada5e1b80157cfdfd1f9dbbd63f95ef6f13",
"shasum": ""
},
"require": {
@@ -3690,7 +3731,7 @@
"psr6"
],
"support": {
- "source": "https://github.com/symfony/cache/tree/v8.0.3"
+ "source": "https://github.com/symfony/cache/tree/v8.0.4"
},
"funding": [
{
@@ -3710,7 +3751,7 @@
"type": "tidelift"
}
],
- "time": "2025-12-28T10:45:32+00:00"
+ "time": "2026-01-23T12:59:31+00:00"
},
{
"name": "symfony/cache-contracts",
@@ -3867,16 +3908,16 @@
},
{
"name": "symfony/config",
- "version": "v8.0.3",
+ "version": "v8.0.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/config.git",
- "reference": "58063686fd7b8e676f14b5a4808cb85265c5216e"
+ "reference": "8f45af92f08f82902827a8b6f403aaf49d893539"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/config/zipball/58063686fd7b8e676f14b5a4808cb85265c5216e",
- "reference": "58063686fd7b8e676f14b5a4808cb85265c5216e",
+ "url": "https://api.github.com/repos/symfony/config/zipball/8f45af92f08f82902827a8b6f403aaf49d893539",
+ "reference": "8f45af92f08f82902827a8b6f403aaf49d893539",
"shasum": ""
},
"require": {
@@ -3921,7 +3962,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/v8.0.3"
+ "source": "https://github.com/symfony/config/tree/v8.0.4"
},
"funding": [
{
@@ -3941,7 +3982,7 @@
"type": "tidelift"
}
],
- "time": "2025-12-23T14:52:06+00:00"
+ "time": "2026-01-13T13:06:50+00:00"
},
{
"name": "symfony/console",
@@ -4035,16 +4076,16 @@
},
{
"name": "symfony/dependency-injection",
- "version": "v8.0.3",
+ "version": "v8.0.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/dependency-injection.git",
- "reference": "8db0d4c1dd4c533a29210c68074999ba45ad6d3e"
+ "reference": "59c3cf87a7ed9beb561cf7433a6635b000a0ff4d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/8db0d4c1dd4c533a29210c68074999ba45ad6d3e",
- "reference": "8db0d4c1dd4c533a29210c68074999ba45ad6d3e",
+ "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/59c3cf87a7ed9beb561cf7433a6635b000a0ff4d",
+ "reference": "59c3cf87a7ed9beb561cf7433a6635b000a0ff4d",
"shasum": ""
},
"require": {
@@ -4092,7 +4133,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/v8.0.3"
+ "source": "https://github.com/symfony/dependency-injection/tree/v8.0.4"
},
"funding": [
{
@@ -4112,7 +4153,7 @@
"type": "tidelift"
}
],
- "time": "2025-12-23T14:52:06+00:00"
+ "time": "2026-01-23T12:59:31+00:00"
},
{
"name": "symfony/deprecation-contracts",
@@ -4359,16 +4400,16 @@
},
{
"name": "symfony/error-handler",
- "version": "v8.0.0",
+ "version": "v8.0.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/error-handler.git",
- "reference": "d77ec7dda0c274178745d152e82baf7ea827fd73"
+ "reference": "7620b97ec0ab1d2d6c7fb737aa55da411bea776a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/error-handler/zipball/d77ec7dda0c274178745d152e82baf7ea827fd73",
- "reference": "d77ec7dda0c274178745d152e82baf7ea827fd73",
+ "url": "https://api.github.com/repos/symfony/error-handler/zipball/7620b97ec0ab1d2d6c7fb737aa55da411bea776a",
+ "reference": "7620b97ec0ab1d2d6c7fb737aa55da411bea776a",
"shasum": ""
},
"require": {
@@ -4416,7 +4457,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/v8.0.0"
+ "source": "https://github.com/symfony/error-handler/tree/v8.0.4"
},
"funding": [
{
@@ -4436,20 +4477,20 @@
"type": "tidelift"
}
],
- "time": "2025-11-05T14:36:47+00:00"
+ "time": "2026-01-23T11:07:10+00:00"
},
{
"name": "symfony/event-dispatcher",
- "version": "v8.0.0",
+ "version": "v8.0.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "573f95783a2ec6e38752979db139f09fec033f03"
+ "reference": "99301401da182b6cfaa4700dbe9987bb75474b47"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/573f95783a2ec6e38752979db139f09fec033f03",
- "reference": "573f95783a2ec6e38752979db139f09fec033f03",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/99301401da182b6cfaa4700dbe9987bb75474b47",
+ "reference": "99301401da182b6cfaa4700dbe9987bb75474b47",
"shasum": ""
},
"require": {
@@ -4501,7 +4542,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/v8.0.0"
+ "source": "https://github.com/symfony/event-dispatcher/tree/v8.0.4"
},
"funding": [
{
@@ -4521,7 +4562,7 @@
"type": "tidelift"
}
],
- "time": "2025-10-30T14:17:19+00:00"
+ "time": "2026-01-05T11:45:55+00:00"
},
{
"name": "symfony/event-dispatcher-contracts",
@@ -4738,16 +4779,16 @@
},
{
"name": "symfony/finder",
- "version": "v8.0.3",
+ "version": "v8.0.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
- "reference": "dd3a2953570a283a2ba4e17063bb98c734cf5b12"
+ "reference": "42e48eb02e07d5f3771d194d67da117eb824c8c1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/dd3a2953570a283a2ba4e17063bb98c734cf5b12",
- "reference": "dd3a2953570a283a2ba4e17063bb98c734cf5b12",
+ "url": "https://api.github.com/repos/symfony/finder/zipball/42e48eb02e07d5f3771d194d67da117eb824c8c1",
+ "reference": "42e48eb02e07d5f3771d194d67da117eb824c8c1",
"shasum": ""
},
"require": {
@@ -4782,7 +4823,7 @@
"description": "Finds files and directories via an intuitive fluent interface",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/finder/tree/v8.0.3"
+ "source": "https://github.com/symfony/finder/tree/v8.0.4"
},
"funding": [
{
@@ -4802,7 +4843,7 @@
"type": "tidelift"
}
],
- "time": "2025-12-23T14:52:06+00:00"
+ "time": "2026-01-12T12:37:40+00:00"
},
{
"name": "symfony/flex",
@@ -4879,16 +4920,16 @@
},
{
"name": "symfony/framework-bundle",
- "version": "v8.0.3",
+ "version": "v8.0.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/framework-bundle.git",
- "reference": "738a92519fbc3ac37192b28052574bf2d1e8f63a"
+ "reference": "121c3b2baa96e74754f2db550007aa6bcdf27c7e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/738a92519fbc3ac37192b28052574bf2d1e8f63a",
- "reference": "738a92519fbc3ac37192b28052574bf2d1e8f63a",
+ "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/121c3b2baa96e74754f2db550007aa6bcdf27c7e",
+ "reference": "121c3b2baa96e74754f2db550007aa6bcdf27c7e",
"shasum": ""
},
"require": {
@@ -4896,8 +4937,8 @@
"ext-xml": "*",
"php": ">=8.4",
"symfony/cache": "^7.4|^8.0",
- "symfony/config": "^7.4.3|^8.0.3",
- "symfony/dependency-injection": "^7.4|^8.0",
+ "symfony/config": "^7.4.4|^8.0.4",
+ "symfony/dependency-injection": "^7.4.4|^8.0.4",
"symfony/deprecation-contracts": "^2.5|^3",
"symfony/error-handler": "^7.4|^8.0",
"symfony/event-dispatcher": "^7.4|^8.0",
@@ -4995,7 +5036,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/v8.0.3"
+ "source": "https://github.com/symfony/framework-bundle/tree/v8.0.4"
},
"funding": [
{
@@ -5015,7 +5056,7 @@
"type": "tidelift"
}
],
- "time": "2025-12-23T14:52:06+00:00"
+ "time": "2026-01-12T12:37:40+00:00"
},
{
"name": "symfony/http-client",
@@ -5193,16 +5234,16 @@
},
{
"name": "symfony/http-foundation",
- "version": "v8.0.3",
+ "version": "v8.0.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-foundation.git",
- "reference": "514ec3aa7982f296b0ad0825f75b6be5779ae9e7"
+ "reference": "e33ba71e674a1bb16eb251688bd27c2ff67e0dc1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/514ec3aa7982f296b0ad0825f75b6be5779ae9e7",
- "reference": "514ec3aa7982f296b0ad0825f75b6be5779ae9e7",
+ "url": "https://api.github.com/repos/symfony/http-foundation/zipball/e33ba71e674a1bb16eb251688bd27c2ff67e0dc1",
+ "reference": "e33ba71e674a1bb16eb251688bd27c2ff67e0dc1",
"shasum": ""
},
"require": {
@@ -5249,7 +5290,7 @@
"description": "Defines an object-oriented layer for the HTTP specification",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/http-foundation/tree/v8.0.3"
+ "source": "https://github.com/symfony/http-foundation/tree/v8.0.4"
},
"funding": [
{
@@ -5269,20 +5310,20 @@
"type": "tidelift"
}
],
- "time": "2025-12-23T14:52:06+00:00"
+ "time": "2026-01-09T12:15:10+00:00"
},
{
"name": "symfony/http-kernel",
- "version": "v8.0.3",
+ "version": "v8.0.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-kernel.git",
- "reference": "e6dfb348eb1dd4df14c39e6dc7e283bab4199fd9"
+ "reference": "3e61425b663a995957217d03c444b9d27ca7d928"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/e6dfb348eb1dd4df14c39e6dc7e283bab4199fd9",
- "reference": "e6dfb348eb1dd4df14c39e6dc7e283bab4199fd9",
+ "url": "https://api.github.com/repos/symfony/http-kernel/zipball/3e61425b663a995957217d03c444b9d27ca7d928",
+ "reference": "3e61425b663a995957217d03c444b9d27ca7d928",
"shasum": ""
},
"require": {
@@ -5353,7 +5394,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/v8.0.3"
+ "source": "https://github.com/symfony/http-kernel/tree/v8.0.4"
},
"funding": [
{
@@ -5373,7 +5414,7 @@
"type": "tidelift"
}
],
- "time": "2025-12-31T09:29:34+00:00"
+ "time": "2026-01-25T08:21:00+00:00"
},
{
"name": "symfony/monolog-bridge",
@@ -5531,6 +5572,77 @@
],
"time": "2025-12-08T08:00:13+00:00"
},
+ {
+ "name": "symfony/options-resolver",
+ "version": "v8.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/options-resolver.git",
+ "reference": "d2b592535ffa6600c265a3893a7f7fd2bad82dd7"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/options-resolver/zipball/d2b592535ffa6600c265a3893a7f7fd2bad82dd7",
+ "reference": "d2b592535ffa6600c265a3893a7f7fd2bad82dd7",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.4",
+ "symfony/deprecation-contracts": "^2.5|^3"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Component\\OptionsResolver\\": ""
+ },
+ "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 an improved replacement for the array_replace PHP function",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "config",
+ "configuration",
+ "options"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/options-resolver/tree/v8.0.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": "2025-11-12T15:55:31+00:00"
+ },
{
"name": "symfony/password-hasher",
"version": "v8.0.0",
@@ -6188,16 +6300,16 @@
},
{
"name": "symfony/routing",
- "version": "v8.0.3",
+ "version": "v8.0.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/routing.git",
- "reference": "3827ac6e03dcd86e430fb6ae6056acf5b51aece3"
+ "reference": "4a2bc08d1c35307239329f434d45c2bfe8241fa9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/3827ac6e03dcd86e430fb6ae6056acf5b51aece3",
- "reference": "3827ac6e03dcd86e430fb6ae6056acf5b51aece3",
+ "url": "https://api.github.com/repos/symfony/routing/zipball/4a2bc08d1c35307239329f434d45c2bfe8241fa9",
+ "reference": "4a2bc08d1c35307239329f434d45c2bfe8241fa9",
"shasum": ""
},
"require": {
@@ -6244,7 +6356,7 @@
"url"
],
"support": {
- "source": "https://github.com/symfony/routing/tree/v8.0.3"
+ "source": "https://github.com/symfony/routing/tree/v8.0.4"
},
"funding": [
{
@@ -6264,7 +6376,7 @@
"type": "tidelift"
}
],
- "time": "2025-12-19T10:01:18+00:00"
+ "time": "2026-01-12T12:37:40+00:00"
},
{
"name": "symfony/runtime",
@@ -7555,16 +7667,16 @@
},
{
"name": "symfony/var-dumper",
- "version": "v8.0.3",
+ "version": "v8.0.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-dumper.git",
- "reference": "3bc368228532ad538cc216768caa8968be95a8d6"
+ "reference": "326e0406fc315eca57ef5740fa4a280b7a068c82"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/var-dumper/zipball/3bc368228532ad538cc216768caa8968be95a8d6",
- "reference": "3bc368228532ad538cc216768caa8968be95a8d6",
+ "url": "https://api.github.com/repos/symfony/var-dumper/zipball/326e0406fc315eca57ef5740fa4a280b7a068c82",
+ "reference": "326e0406fc315eca57ef5740fa4a280b7a068c82",
"shasum": ""
},
"require": {
@@ -7618,7 +7730,7 @@
"dump"
],
"support": {
- "source": "https://github.com/symfony/var-dumper/tree/v8.0.3"
+ "source": "https://github.com/symfony/var-dumper/tree/v8.0.4"
},
"funding": [
{
@@ -7638,7 +7750,7 @@
"type": "tidelift"
}
],
- "time": "2025-12-18T11:23:51+00:00"
+ "time": "2026-01-01T23:07:29+00:00"
},
{
"name": "symfony/var-exporter",
@@ -8099,16 +8211,16 @@
},
{
"name": "webmozart/assert",
- "version": "2.0.0",
+ "version": "2.1.2",
"source": {
"type": "git",
"url": "https://github.com/webmozarts/assert.git",
- "reference": "1b34b004e35a164bc5bb6ebd33c844b2d8069a54"
+ "reference": "ce6a2f100c404b2d32a1dd1270f9b59ad4f57649"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/webmozarts/assert/zipball/1b34b004e35a164bc5bb6ebd33c844b2d8069a54",
- "reference": "1b34b004e35a164bc5bb6ebd33c844b2d8069a54",
+ "url": "https://api.github.com/repos/webmozarts/assert/zipball/ce6a2f100c404b2d32a1dd1270f9b59ad4f57649",
+ "reference": "ce6a2f100c404b2d32a1dd1270f9b59ad4f57649",
"shasum": ""
},
"require": {
@@ -8155,9 +8267,9 @@
],
"support": {
"issues": "https://github.com/webmozarts/assert/issues",
- "source": "https://github.com/webmozarts/assert/tree/2.0.0"
+ "source": "https://github.com/webmozarts/assert/tree/2.1.2"
},
- "time": "2025-12-16T21:36:00+00:00"
+ "time": "2026-01-13T14:02:24+00:00"
},
{
"name": "willdurand/negotiation",
@@ -8613,16 +8725,16 @@
},
{
"name": "friendsofphp/php-cs-fixer",
- "version": "v3.92.4",
+ "version": "v3.92.5",
"source": {
"type": "git",
"url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git",
- "reference": "9e7488b19403423e02e8403cc1eb596baf4673b0"
+ "reference": "260cc8c4a1d2f6d2f22cd4f9c70aa72e55ebac58"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/9e7488b19403423e02e8403cc1eb596baf4673b0",
- "reference": "9e7488b19403423e02e8403cc1eb596baf4673b0",
+ "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/260cc8c4a1d2f6d2f22cd4f9c70aa72e55ebac58",
+ "reference": "260cc8c4a1d2f6d2f22cd4f9c70aa72e55ebac58",
"shasum": ""
},
"require": {
@@ -8705,7 +8817,7 @@
],
"support": {
"issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues",
- "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.92.4"
+ "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.92.5"
},
"funding": [
{
@@ -8713,7 +8825,7 @@
"type": "github"
}
],
- "time": "2026-01-04T00:38:52+00:00"
+ "time": "2026-01-08T21:57:37+00:00"
},
{
"name": "myclabs/deep-copy",
@@ -9287,16 +9399,16 @@
},
{
"name": "phpunit/phpunit",
- "version": "12.5.4",
+ "version": "12.5.6",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "4ba0e923f9d3fc655de22f9547c01d15a41fc93a"
+ "reference": "ab8e4374264bc65523d1458d14bf80261577e01f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/4ba0e923f9d3fc655de22f9547c01d15a41fc93a",
- "reference": "4ba0e923f9d3fc655de22f9547c01d15a41fc93a",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/ab8e4374264bc65523d1458d14bf80261577e01f",
+ "reference": "ab8e4374264bc65523d1458d14bf80261577e01f",
"shasum": ""
},
"require": {
@@ -9310,7 +9422,7 @@
"phar-io/manifest": "^2.0.4",
"phar-io/version": "^3.2.1",
"php": ">=8.3",
- "phpunit/php-code-coverage": "^12.5.1",
+ "phpunit/php-code-coverage": "^12.5.2",
"phpunit/php-file-iterator": "^6.0.0",
"phpunit/php-invoker": "^6.0.0",
"phpunit/php-text-template": "^5.0.0",
@@ -9364,7 +9476,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.5.4"
+ "source": "https://github.com/sebastianbergmann/phpunit/tree/12.5.6"
},
"funding": [
{
@@ -9388,7 +9500,7 @@
"type": "tidelift"
}
],
- "time": "2025-12-15T06:05:34+00:00"
+ "time": "2026-01-16T16:28:10+00:00"
},
{
"name": "react/cache",
@@ -11076,89 +11188,18 @@
],
"time": "2025-12-06T17:00:47+00:00"
},
- {
- "name": "symfony/options-resolver",
- "version": "v8.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/options-resolver.git",
- "reference": "d2b592535ffa6600c265a3893a7f7fd2bad82dd7"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/options-resolver/zipball/d2b592535ffa6600c265a3893a7f7fd2bad82dd7",
- "reference": "d2b592535ffa6600c265a3893a7f7fd2bad82dd7",
- "shasum": ""
- },
- "require": {
- "php": ">=8.4",
- "symfony/deprecation-contracts": "^2.5|^3"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\OptionsResolver\\": ""
- },
- "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 an improved replacement for the array_replace PHP function",
- "homepage": "https://symfony.com",
- "keywords": [
- "config",
- "configuration",
- "options"
- ],
- "support": {
- "source": "https://github.com/symfony/options-resolver/tree/v8.0.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": "2025-11-12T15:55:31+00:00"
- },
{
"name": "symfony/process",
- "version": "v8.0.3",
+ "version": "v8.0.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
- "reference": "0cbbd88ec836f8757641c651bb995335846abb78"
+ "reference": "10df72602d88c0a3fa685b822976a052611dd607"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/0cbbd88ec836f8757641c651bb995335846abb78",
- "reference": "0cbbd88ec836f8757641c651bb995335846abb78",
+ "url": "https://api.github.com/repos/symfony/process/zipball/10df72602d88c0a3fa685b822976a052611dd607",
+ "reference": "10df72602d88c0a3fa685b822976a052611dd607",
"shasum": ""
},
"require": {
@@ -11190,7 +11231,7 @@
"description": "Executes commands in sub-processes",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/process/tree/v8.0.3"
+ "source": "https://github.com/symfony/process/tree/v8.0.4"
},
"funding": [
{
@@ -11210,7 +11251,92 @@
"type": "tidelift"
}
],
- "time": "2025-12-19T10:01:18+00:00"
+ "time": "2026-01-23T11:07:10+00:00"
+ },
+ {
+ "name": "symfony/web-profiler-bundle",
+ "version": "v8.0.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/web-profiler-bundle.git",
+ "reference": "88679cfe4067bafb8df5d6defcaec061fe16af2d"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/88679cfe4067bafb8df5d6defcaec061fe16af2d",
+ "reference": "88679cfe4067bafb8df5d6defcaec061fe16af2d",
+ "shasum": ""
+ },
+ "require": {
+ "composer-runtime-api": ">=2.1",
+ "php": ">=8.4",
+ "symfony/config": "^7.4|^8.0",
+ "symfony/framework-bundle": "^7.4|^8.0",
+ "symfony/http-kernel": "^7.4|^8.0",
+ "symfony/routing": "^7.4|^8.0",
+ "symfony/twig-bundle": "^7.4|^8.0"
+ },
+ "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\\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/v8.0.3"
+ },
+ "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-12-27T17:05:29+00:00"
},
{
"name": "theseer/tokenizer",
diff --git a/config/bundles.php b/config/bundles.php
index 9af6e40..5531a12 100644
--- a/config/bundles.php
+++ b/config/bundles.php
@@ -6,11 +6,13 @@ use ApiPlatform\Symfony\Bundle\ApiPlatformBundle;
use Doctrine\Bundle\DoctrineBundle\DoctrineBundle;
use Doctrine\Bundle\MigrationsBundle\DoctrineMigrationsBundle;
use Lexik\Bundle\JWTAuthenticationBundle\LexikJWTAuthenticationBundle;
+use Malio\EdnotifBundle\EdnotifBundle;
use Nelmio\CorsBundle\NelmioCorsBundle;
use Symfony\Bundle\FrameworkBundle\FrameworkBundle;
use Symfony\Bundle\MonologBundle\MonologBundle;
use Symfony\Bundle\SecurityBundle\SecurityBundle;
use Symfony\Bundle\TwigBundle\TwigBundle;
+use Symfony\Bundle\WebProfilerBundle\WebProfilerBundle;
return [
FrameworkBundle::class => ['all' => true],
@@ -22,4 +24,6 @@ return [
LexikJWTAuthenticationBundle::class => ['all' => true],
ApiPlatformBundle::class => ['all' => true],
MonologBundle::class => ['all' => true],
+ EdnotifBundle::class => ['all' => true],
+ WebProfilerBundle::class => ['dev' => true],
];
diff --git a/config/packages/ednotif.yaml b/config/packages/ednotif.yaml
new file mode 100644
index 0000000..c4b9fc9
--- /dev/null
+++ b/config/packages/ednotif.yaml
@@ -0,0 +1,13 @@
+ednotif:
+ guichet_wsdl: 'https://ws-reswel-elv.equade.fr/wsguichet/WsGuichet?wsdl'
+ metier_wsdl: 'https://ws-ednotif.equade.fr/wsIpBNotif/wsIpBNotif?wsdl'
+ exploitation_code: '%env(string:EDNOTIF_EXPLOITATION_CODE)%'
+ exploitation_number: '%env(string:EDNOTIF_EXPLOITATION_NUMERO)%'
+ exploitation_country_code: 'FR'
+ login: '%env(string:EDNOTIF_LOGIN)%'
+ password: '%env(string:EDNOTIF_PASSWORD)%'
+ token_ttl_seconds: 900
+ soap_options:
+ trace: false
+ exceptions: true
+ connection_timeout: 15
diff --git a/config/packages/web_profiler.yaml b/config/packages/web_profiler.yaml
new file mode 100644
index 0000000..025353a
--- /dev/null
+++ b/config/packages/web_profiler.yaml
@@ -0,0 +1,7 @@
+when@dev:
+ web_profiler:
+ toolbar: true
+
+ framework:
+ profiler:
+ collect_serializer_data: true
diff --git a/config/reference.php b/config/reference.php
index bd0651f..51984cc 100644
--- a/config/reference.php
+++ b/config/reference.php
@@ -35,7 +35,7 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* type?: string|null,
* ignore_errors?: bool,
* }>
- * @psalm-type ParametersConfig = array|null>|null>
+ * @psalm-type ParametersConfig = array|Param|null>|Param|null>
* @psalm-type ArgumentsType = list|array
* @psalm-type CallType = array|array{0:string, 1?:ArgumentsType, 2?:bool}|array{method:string, arguments?:ArgumentsType, returns_clone?:bool}
* @psalm-type TagsType = list>> // arrays inside the list must have only one element, with the tag name as the key
@@ -128,44 +128,44 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* }
* @psalm-type ExtensionType = array
* @psalm-type FrameworkConfig = array{
- * secret?: scalar|null|Param,
+ * secret?: scalar|Param|null,
* http_method_override?: bool|Param, // Set true to enable support for the '_method' request parameter to determine the intended HTTP method on POST requests. // Default: false
* allowed_http_method_override?: list|null,
- * trust_x_sendfile_type_header?: scalar|null|Param, // Set true to enable support for xsendfile in binary file responses. // Default: "%env(bool:default::SYMFONY_TRUST_X_SENDFILE_TYPE_HEADER)%"
- * ide?: scalar|null|Param, // Default: "%env(default::SYMFONY_IDE)%"
+ * trust_x_sendfile_type_header?: scalar|Param|null, // Set true to enable support for xsendfile in binary file responses. // Default: "%env(bool:default::SYMFONY_TRUST_X_SENDFILE_TYPE_HEADER)%"
+ * ide?: scalar|Param|null, // Default: "%env(default::SYMFONY_IDE)%"
* test?: bool|Param,
- * default_locale?: scalar|null|Param, // Default: "en"
+ * default_locale?: scalar|Param|null, // Default: "en"
* set_locale_from_accept_language?: bool|Param, // Whether to use the Accept-Language HTTP header to set the Request locale (only when the "_locale" request attribute is not passed). // Default: false
* set_content_language_from_locale?: bool|Param, // Whether to set the Content-Language HTTP header on the Response using the Request locale. // Default: false
- * enabled_locales?: list,
- * trusted_hosts?: list,
+ * enabled_locales?: list,
+ * trusted_hosts?: list,
* trusted_proxies?: mixed, // Default: ["%env(default::SYMFONY_TRUSTED_PROXIES)%"]
- * trusted_headers?: list,
- * error_controller?: scalar|null|Param, // Default: "error_controller"
+ * trusted_headers?: list,
+ * error_controller?: scalar|Param|null, // Default: "error_controller"
* handle_all_throwables?: bool|Param, // HttpKernel will handle all kinds of \Throwable. // Default: true
* csrf_protection?: bool|array{
- * enabled?: scalar|null|Param, // Default: null
- * stateless_token_ids?: list,
- * check_header?: scalar|null|Param, // Whether to check the CSRF token in a header in addition to a cookie when using stateless protection. // Default: false
- * cookie_name?: scalar|null|Param, // The name of the cookie to use when using stateless protection. // Default: "csrf-token"
+ * enabled?: scalar|Param|null, // Default: null
+ * stateless_token_ids?: list,
+ * check_header?: scalar|Param|null, // Whether to check the CSRF token in a header in addition to a cookie when using stateless protection. // Default: false
+ * cookie_name?: scalar|Param|null, // The name of the cookie to use when using stateless protection. // Default: "csrf-token"
* },
* form?: bool|array{ // Form configuration
* enabled?: bool|Param, // Default: false
- * csrf_protection?: array{
- * enabled?: scalar|null|Param, // Default: null
- * token_id?: scalar|null|Param, // Default: null
- * field_name?: scalar|null|Param, // Default: "_token"
- * field_attr?: array,
+ * csrf_protection?: bool|array{
+ * enabled?: scalar|Param|null, // Default: null
+ * token_id?: scalar|Param|null, // Default: null
+ * field_name?: scalar|Param|null, // Default: "_token"
+ * field_attr?: array,
* },
* },
* http_cache?: bool|array{ // HTTP cache configuration
* enabled?: bool|Param, // Default: false
* debug?: bool|Param, // Default: "%kernel.debug%"
* trace_level?: "none"|"short"|"full"|Param,
- * trace_header?: scalar|null|Param,
+ * trace_header?: scalar|Param|null,
* default_ttl?: int|Param,
- * private_headers?: list,
- * skip_response_headers?: list,
+ * private_headers?: list,
+ * skip_response_headers?: list,
* allow_reload?: bool|Param,
* allow_revalidate?: bool|Param,
* stale_while_revalidate?: int|Param,
@@ -180,16 +180,16 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* },
* fragments?: bool|array{ // Fragments configuration
* enabled?: bool|Param, // Default: false
- * hinclude_default_template?: scalar|null|Param, // Default: null
- * path?: scalar|null|Param, // Default: "/_fragment"
+ * hinclude_default_template?: scalar|Param|null, // Default: null
+ * path?: scalar|Param|null, // Default: "/_fragment"
* },
* profiler?: bool|array{ // Profiler configuration
* enabled?: bool|Param, // Default: false
* collect?: bool|Param, // Default: true
- * collect_parameter?: scalar|null|Param, // The name of the parameter to use to enable or disable collection on a per request basis. // Default: null
+ * collect_parameter?: scalar|Param|null, // The name of the parameter to use to enable or disable collection on a per request basis. // Default: null
* only_exceptions?: bool|Param, // Default: false
* only_main_requests?: bool|Param, // Default: false
- * dsn?: scalar|null|Param, // Default: "file:%kernel.cache_dir%/profiler"
+ * dsn?: scalar|Param|null, // Default: "file:%kernel.cache_dir%/profiler"
* collect_serializer_data?: true|Param, // Default: true
* },
* workflows?: bool|array{
@@ -201,16 +201,16 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* type?: "workflow"|"state_machine"|Param, // Default: "state_machine"
* marking_store?: array{
* type?: "method"|Param,
- * property?: scalar|null|Param,
- * service?: scalar|null|Param,
+ * property?: scalar|Param|null,
+ * service?: scalar|Param|null,
* },
- * supports?: list,
- * definition_validators?: list,
- * support_strategy?: scalar|null|Param,
- * initial_marking?: list,
+ * supports?: list,
+ * definition_validators?: list,
+ * support_strategy?: scalar|Param|null,
+ * initial_marking?: list,
* events_to_dispatch?: list|null,
* places?: list,
* }>,
* transitions: list>,
+ * formats?: array>,
* },
* assets?: bool|array{ // Assets configuration
* enabled?: bool|Param, // Default: true
* strict_mode?: bool|Param, // Throw an exception if an entry is missing from the manifest.json. // Default: false
- * version_strategy?: scalar|null|Param, // Default: null
- * version?: scalar|null|Param, // Default: null
- * version_format?: scalar|null|Param, // Default: "%%s?%%s"
- * json_manifest_path?: scalar|null|Param, // Default: null
- * base_path?: scalar|null|Param, // Default: ""
- * base_urls?: list,
+ * version_strategy?: scalar|Param|null, // Default: null
+ * version?: scalar|Param|null, // Default: null
+ * version_format?: scalar|Param|null, // Default: "%%s?%%s"
+ * json_manifest_path?: scalar|Param|null, // Default: null
+ * base_path?: scalar|Param|null, // Default: ""
+ * base_urls?: list,
* packages?: array,
+ * version_strategy?: scalar|Param|null, // Default: null
+ * version?: scalar|Param|null,
+ * version_format?: scalar|Param|null, // Default: null
+ * json_manifest_path?: scalar|Param|null, // Default: null
+ * base_path?: scalar|Param|null, // Default: ""
+ * base_urls?: list,
* }>,
* },
* asset_mapper?: bool|array{ // Asset Mapper configuration
* enabled?: bool|Param, // Default: false
- * paths?: array,
- * excluded_patterns?: list,
+ * paths?: array,
+ * excluded_patterns?: list,
* exclude_dotfiles?: bool|Param, // If true, any files starting with "." will be excluded from the asset mapper. // Default: true
* server?: bool|Param, // If true, a "dev server" will return the assets from the public directory (true in "debug" mode only by default). // Default: true
- * public_prefix?: scalar|null|Param, // The public path where the assets will be written to (and served from when "server" is true). // Default: "/assets/"
+ * public_prefix?: scalar|Param|null, // The public path where the assets will be written to (and served from when "server" is true). // Default: "/assets/"
* missing_import_mode?: "strict"|"warn"|"ignore"|Param, // Behavior if an asset cannot be found when imported from JavaScript or CSS files - e.g. "import './non-existent.js'". "strict" means an exception is thrown, "warn" means a warning is logged, "ignore" means the import is left as-is. // Default: "warn"
- * extensions?: array,
- * importmap_path?: scalar|null|Param, // The path of the importmap.php file. // Default: "%kernel.project_dir%/importmap.php"
- * importmap_polyfill?: scalar|null|Param, // The importmap name that will be used to load the polyfill. Set to false to disable. // Default: "es-module-shims"
- * importmap_script_attributes?: array,
- * vendor_dir?: scalar|null|Param, // The directory to store JavaScript vendors. // Default: "%kernel.project_dir%/assets/vendor"
+ * extensions?: array,
+ * importmap_path?: scalar|Param|null, // The path of the importmap.php file. // Default: "%kernel.project_dir%/importmap.php"
+ * importmap_polyfill?: scalar|Param|null, // The importmap name that will be used to load the polyfill. Set to false to disable. // Default: "es-module-shims"
+ * importmap_script_attributes?: array,
+ * vendor_dir?: scalar|Param|null, // The directory to store JavaScript vendors. // Default: "%kernel.project_dir%/assets/vendor"
* precompress?: bool|array{ // Precompress assets with Brotli, Zstandard and gzip.
* enabled?: bool|Param, // Default: false
- * formats?: list,
- * extensions?: list,
+ * formats?: list,
+ * extensions?: list,
* },
* },
* translator?: bool|array{ // Translator configuration
* enabled?: bool|Param, // Default: false
- * fallbacks?: list,
+ * fallbacks?: list,
* logging?: bool|Param, // Default: false
- * formatter?: scalar|null|Param, // Default: "translator.formatter.default"
- * cache_dir?: scalar|null|Param, // Default: "%kernel.cache_dir%/translations"
- * default_path?: scalar|null|Param, // The default path used to load translations. // Default: "%kernel.project_dir%/translations"
- * paths?: list,
+ * formatter?: scalar|Param|null, // Default: "translator.formatter.default"
+ * cache_dir?: scalar|Param|null, // Default: "%kernel.cache_dir%/translations"
+ * default_path?: scalar|Param|null, // The default path used to load translations. // Default: "%kernel.project_dir%/translations"
+ * paths?: list,
* pseudo_localization?: bool|array{
* enabled?: bool|Param, // Default: false
* accents?: bool|Param, // Default: true
* expansion_factor?: float|Param, // Default: 1.0
* brackets?: bool|Param, // Default: true
* parse_html?: bool|Param, // Default: false
- * localizable_html_attributes?: list,
+ * localizable_html_attributes?: list,
* },
* providers?: array,
- * locales?: list,
+ * dsn?: scalar|Param|null,
+ * domains?: list,
+ * locales?: list,
* }>,
* globals?: array,
+ * parameters?: array,
* domain?: string|Param,
* }>,
* },
* validation?: bool|array{ // Validation configuration
* enabled?: bool|Param, // Default: true
* enable_attributes?: bool|Param, // Default: true
- * static_method?: list,
- * translation_domain?: scalar|null|Param, // Default: "validators"
+ * static_method?: list,
+ * translation_domain?: scalar|Param|null, // Default: "validators"
* email_validation_mode?: "html5"|"html5-allow-no-tld"|"strict"|Param, // Default: "html5"
* mapping?: array{
- * paths?: list,
+ * paths?: list,
* },
* not_compromised_password?: bool|array{
* enabled?: bool|Param, // When disabled, compromised passwords will be accepted as valid. // Default: true
- * endpoint?: scalar|null|Param, // API endpoint for the NotCompromisedPassword Validator. // Default: null
+ * endpoint?: scalar|Param|null, // API endpoint for the NotCompromisedPassword Validator. // Default: null
* },
* disable_translation?: bool|Param, // Default: false
* auto_mapping?: array,
+ * services?: list,
* }>,
* },
* serializer?: bool|array{ // Serializer configuration
* enabled?: bool|Param, // Default: true
* enable_attributes?: bool|Param, // Default: true
- * name_converter?: scalar|null|Param,
- * circular_reference_handler?: scalar|null|Param,
- * max_depth_handler?: scalar|null|Param,
+ * name_converter?: scalar|Param|null,
+ * circular_reference_handler?: scalar|Param|null,
+ * max_depth_handler?: scalar|Param|null,
* mapping?: array{
- * paths?: list,
+ * paths?: list,
* },
* default_context?: list,
* named_serializers?: array,
* include_built_in_normalizers?: bool|Param, // Whether to include the built-in normalizers // Default: true
* include_built_in_encoders?: bool|Param, // Whether to include the built-in encoders // Default: true
@@ -373,31 +373,31 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* },
* type_info?: bool|array{ // Type info configuration
* enabled?: bool|Param, // Default: true
- * aliases?: array,
+ * aliases?: array,
* },
* property_info?: bool|array{ // Property info configuration
* enabled?: bool|Param, // Default: true
* with_constructor_extractor?: bool|Param, // Registers the constructor extractor. // Default: true
* },
* cache?: array{ // Cache configuration
- * prefix_seed?: scalar|null|Param, // Used to namespace cache keys when using several apps with the same shared backend. // Default: "_%kernel.project_dir%.%kernel.container_class%"
- * app?: scalar|null|Param, // App related cache pools configuration. // Default: "cache.adapter.filesystem"
- * system?: scalar|null|Param, // System related cache pools configuration. // Default: "cache.adapter.system"
- * directory?: scalar|null|Param, // Default: "%kernel.share_dir%/pools/app"
- * default_psr6_provider?: scalar|null|Param,
- * default_redis_provider?: scalar|null|Param, // Default: "redis://localhost"
- * default_valkey_provider?: scalar|null|Param, // Default: "valkey://localhost"
- * default_memcached_provider?: scalar|null|Param, // Default: "memcached://localhost"
- * default_doctrine_dbal_provider?: scalar|null|Param, // Default: "database_connection"
- * default_pdo_provider?: scalar|null|Param, // Default: null
+ * prefix_seed?: scalar|Param|null, // Used to namespace cache keys when using several apps with the same shared backend. // Default: "_%kernel.project_dir%.%kernel.container_class%"
+ * app?: scalar|Param|null, // App related cache pools configuration. // Default: "cache.adapter.filesystem"
+ * system?: scalar|Param|null, // System related cache pools configuration. // Default: "cache.adapter.system"
+ * directory?: scalar|Param|null, // Default: "%kernel.share_dir%/pools/app"
+ * default_psr6_provider?: scalar|Param|null,
+ * default_redis_provider?: scalar|Param|null, // Default: "redis://localhost"
+ * default_valkey_provider?: scalar|Param|null, // Default: "valkey://localhost"
+ * default_memcached_provider?: scalar|Param|null, // Default: "memcached://localhost"
+ * default_doctrine_dbal_provider?: scalar|Param|null, // Default: "database_connection"
+ * default_pdo_provider?: scalar|Param|null, // Default: null
* pools?: array,
- * tags?: scalar|null|Param, // Default: null
+ * adapters?: list,
+ * tags?: scalar|Param|null, // Default: null
* public?: bool|Param, // Default: false
- * default_lifetime?: scalar|null|Param, // Default lifetime of the pool.
- * provider?: scalar|null|Param, // Overwrite the setting from the default provider for this adapter.
- * early_expiration_message_bus?: scalar|null|Param,
- * clearer?: scalar|null|Param,
+ * default_lifetime?: scalar|Param|null, // Default lifetime of the pool.
+ * provider?: scalar|Param|null, // Overwrite the setting from the default provider for this adapter.
+ * early_expiration_message_bus?: scalar|Param|null,
+ * clearer?: scalar|Param|null,
* }>,
* },
* php_errors?: array{ // PHP errors handling configuration
@@ -405,51 +405,51 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* throw?: bool|Param, // Throw PHP errors as \ErrorException instances. // Default: true
* },
* exceptions?: array,
* web_link?: bool|array{ // Web links configuration
* enabled?: bool|Param, // Default: true
* },
* lock?: bool|string|array{ // Lock configuration
* enabled?: bool|Param, // Default: false
- * resources?: array>,
+ * resources?: array>,
* },
* semaphore?: bool|string|array{ // Semaphore configuration
* enabled?: bool|Param, // Default: false
- * resources?: array,
+ * resources?: array,
* },
* messenger?: bool|array{ // Messenger configuration
* enabled?: bool|Param, // Default: false
* routing?: array,
+ * senders?: list,
* }>,
* serializer?: array{
- * default_serializer?: scalar|null|Param, // Service id to use as the default serializer for the transports. // Default: "messenger.transport.native_php_serializer"
+ * default_serializer?: scalar|Param|null, // Service id to use as the default serializer for the transports. // Default: "messenger.transport.native_php_serializer"
* symfony_serializer?: array{
- * format?: scalar|null|Param, // Serialization format for the messenger.transport.symfony_serializer service (which is not the serializer used by default). // Default: "json"
+ * format?: scalar|Param|null, // Serialization format for the messenger.transport.symfony_serializer service (which is not the serializer used by default). // Default: "json"
* context?: array,
* },
* },
* transports?: array,
- * failure_transport?: scalar|null|Param, // Transport name to send failed messages to (after all retries have failed). // Default: null
+ * failure_transport?: scalar|Param|null, // Transport name to send failed messages to (after all retries have failed). // Default: null
* retry_strategy?: string|array{
- * service?: scalar|null|Param, // Service id to override the retry strategy entirely. // Default: null
+ * service?: scalar|Param|null, // Service id to override the retry strategy entirely. // Default: null
* max_retries?: int|Param, // Default: 3
* delay?: int|Param, // Time in ms to delay (or the initial value when multiplier is used). // Default: 1000
* multiplier?: float|Param, // If greater than 1, delay will grow exponentially for each retry: this delay = (delay * (multiple ^ retries)). // Default: 2
* max_delay?: int|Param, // Max time in ms that a retry should ever be delayed (0 = infinite). // Default: 0
* jitter?: float|Param, // Randomness to apply to the delay (between 0 and 1). // Default: 0.1
* },
- * rate_limiter?: scalar|null|Param, // Rate limiter name to use when processing messages. // Default: null
+ * rate_limiter?: scalar|Param|null, // Rate limiter name to use when processing messages. // Default: null
* }>,
- * failure_transport?: scalar|null|Param, // Transport name to send failed messages to (after all retries have failed). // Default: null
- * stop_worker_on_signals?: list,
- * default_bus?: scalar|null|Param, // Default: null
+ * failure_transport?: scalar|Param|null, // Transport name to send failed messages to (after all retries have failed). // Default: null
+ * stop_worker_on_signals?: list,
+ * default_bus?: scalar|Param|null, // Default: null
* buses?: array,
* }>,
* }>,
@@ -473,29 +473,29 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* headers?: array,
* vars?: array,
* max_redirects?: int|Param, // The maximum number of redirects to follow.
- * http_version?: scalar|null|Param, // The default HTTP version, typically 1.1 or 2.0, leave to null for the best version.
- * resolve?: array,
- * proxy?: scalar|null|Param, // The URL of the proxy to pass requests through or null for automatic detection.
- * no_proxy?: scalar|null|Param, // A comma separated list of hosts that do not require a proxy to be reached.
+ * http_version?: scalar|Param|null, // The default HTTP version, typically 1.1 or 2.0, leave to null for the best version.
+ * resolve?: array,
+ * proxy?: scalar|Param|null, // The URL of the proxy to pass requests through or null for automatic detection.
+ * no_proxy?: scalar|Param|null, // A comma separated list of hosts that do not require a proxy to be reached.
* timeout?: float|Param, // The idle timeout, defaults to the "default_socket_timeout" ini parameter.
* max_duration?: float|Param, // The maximum execution time for the request+response as a whole.
- * bindto?: scalar|null|Param, // A network interface name, IP address, a host name or a UNIX socket to bind to.
+ * bindto?: scalar|Param|null, // A network interface name, IP address, a host name or a UNIX socket to bind to.
* verify_peer?: bool|Param, // Indicates if the peer should be verified in a TLS context.
* verify_host?: bool|Param, // Indicates if the host should exist as a certificate common name.
- * cafile?: scalar|null|Param, // A certificate authority file.
- * capath?: scalar|null|Param, // A directory that contains multiple certificate authority files.
- * local_cert?: scalar|null|Param, // A PEM formatted certificate file.
- * local_pk?: scalar|null|Param, // A private key file.
- * passphrase?: scalar|null|Param, // The passphrase used to encrypt the "local_pk" file.
- * ciphers?: scalar|null|Param, // A list of TLS ciphers separated by colons, commas or spaces (e.g. "RC3-SHA:TLS13-AES-128-GCM-SHA256"...)
+ * cafile?: scalar|Param|null, // A certificate authority file.
+ * capath?: scalar|Param|null, // A directory that contains multiple certificate authority files.
+ * local_cert?: scalar|Param|null, // A PEM formatted certificate file.
+ * local_pk?: scalar|Param|null, // A private key file.
+ * passphrase?: scalar|Param|null, // The passphrase used to encrypt the "local_pk" file.
+ * ciphers?: scalar|Param|null, // A list of TLS ciphers separated by colons, commas or spaces (e.g. "RC3-SHA:TLS13-AES-128-GCM-SHA256"...)
* peer_fingerprint?: array{ // Associative array: hashing algorithm => hash(es).
* sha1?: mixed,
* pin-sha256?: mixed,
* md5?: mixed,
* },
- * crypto_method?: scalar|null|Param, // The minimum version of TLS to accept; must be one of STREAM_CRYPTO_METHOD_TLSv*_CLIENT constants.
+ * crypto_method?: scalar|Param|null, // The minimum version of TLS to accept; must be one of STREAM_CRYPTO_METHOD_TLSv*_CLIENT constants.
* extra?: array,
- * rate_limiter?: scalar|null|Param, // Rate limiter name to use for throttling requests. // Default: null
+ * rate_limiter?: scalar|Param|null, // Rate limiter name to use for throttling requests. // Default: null
* caching?: bool|array{ // Caching configuration.
* enabled?: bool|Param, // Default: false
* cache_pool?: string|Param, // The taggable cache pool to use for storing the responses. // Default: "cache.http_client"
@@ -504,7 +504,7 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* },
* retry_failed?: bool|array{
* enabled?: bool|Param, // Default: false
- * retry_strategy?: scalar|null|Param, // service id to override the retry strategy. // Default: null
+ * retry_strategy?: scalar|Param|null, // service id to override the retry strategy. // Default: null
* http_codes?: array,
@@ -516,39 +516,39 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* jitter?: float|Param, // Randomness in percent (between 0 and 1) to apply to the delay. // Default: 0.1
* },
* },
- * mock_response_factory?: scalar|null|Param, // The id of the service that should generate mock responses. It should be either an invokable or an iterable.
+ * mock_response_factory?: scalar|Param|null, // The id of the service that should generate mock responses. It should be either an invokable or an iterable.
* scoped_clients?: array,
+ * scope?: scalar|Param|null, // The regular expression that the request URL must match before adding the other options. When none is provided, the base URI is used instead.
+ * base_uri?: scalar|Param|null, // The URI to resolve relative URLs, following rules in RFC 3985, section 2.
+ * auth_basic?: scalar|Param|null, // An HTTP Basic authentication "username:password".
+ * auth_bearer?: scalar|Param|null, // A token enabling HTTP Bearer authorization.
+ * auth_ntlm?: scalar|Param|null, // A "username:password" pair to use Microsoft NTLM authentication (requires the cURL extension).
+ * query?: array,
* headers?: array,
* max_redirects?: int|Param, // The maximum number of redirects to follow.
- * http_version?: scalar|null|Param, // The default HTTP version, typically 1.1 or 2.0, leave to null for the best version.
- * resolve?: array,
- * proxy?: scalar|null|Param, // The URL of the proxy to pass requests through or null for automatic detection.
- * no_proxy?: scalar|null|Param, // A comma separated list of hosts that do not require a proxy to be reached.
+ * http_version?: scalar|Param|null, // The default HTTP version, typically 1.1 or 2.0, leave to null for the best version.
+ * resolve?: array,
+ * proxy?: scalar|Param|null, // The URL of the proxy to pass requests through or null for automatic detection.
+ * no_proxy?: scalar|Param|null, // A comma separated list of hosts that do not require a proxy to be reached.
* timeout?: float|Param, // The idle timeout, defaults to the "default_socket_timeout" ini parameter.
* max_duration?: float|Param, // The maximum execution time for the request+response as a whole.
- * bindto?: scalar|null|Param, // A network interface name, IP address, a host name or a UNIX socket to bind to.
+ * bindto?: scalar|Param|null, // A network interface name, IP address, a host name or a UNIX socket to bind to.
* verify_peer?: bool|Param, // Indicates if the peer should be verified in a TLS context.
* verify_host?: bool|Param, // Indicates if the host should exist as a certificate common name.
- * cafile?: scalar|null|Param, // A certificate authority file.
- * capath?: scalar|null|Param, // A directory that contains multiple certificate authority files.
- * local_cert?: scalar|null|Param, // A PEM formatted certificate file.
- * local_pk?: scalar|null|Param, // A private key file.
- * passphrase?: scalar|null|Param, // The passphrase used to encrypt the "local_pk" file.
- * ciphers?: scalar|null|Param, // A list of TLS ciphers separated by colons, commas or spaces (e.g. "RC3-SHA:TLS13-AES-128-GCM-SHA256"...).
+ * cafile?: scalar|Param|null, // A certificate authority file.
+ * capath?: scalar|Param|null, // A directory that contains multiple certificate authority files.
+ * local_cert?: scalar|Param|null, // A PEM formatted certificate file.
+ * local_pk?: scalar|Param|null, // A private key file.
+ * passphrase?: scalar|Param|null, // The passphrase used to encrypt the "local_pk" file.
+ * ciphers?: scalar|Param|null, // A list of TLS ciphers separated by colons, commas or spaces (e.g. "RC3-SHA:TLS13-AES-128-GCM-SHA256"...).
* peer_fingerprint?: array{ // Associative array: hashing algorithm => hash(es).
* sha1?: mixed,
* pin-sha256?: mixed,
* md5?: mixed,
* },
- * crypto_method?: scalar|null|Param, // The minimum version of TLS to accept; must be one of STREAM_CRYPTO_METHOD_TLSv*_CLIENT constants.
+ * crypto_method?: scalar|Param|null, // The minimum version of TLS to accept; must be one of STREAM_CRYPTO_METHOD_TLSv*_CLIENT constants.
* extra?: array,
- * rate_limiter?: scalar|null|Param, // Rate limiter name to use for throttling requests. // Default: null
+ * rate_limiter?: scalar|Param|null, // Rate limiter name to use for throttling requests. // Default: null
* caching?: bool|array{ // Caching configuration.
* enabled?: bool|Param, // Default: false
* cache_pool?: string|Param, // The taggable cache pool to use for storing the responses. // Default: "cache.http_client"
@@ -557,7 +557,7 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* },
* retry_failed?: bool|array{
* enabled?: bool|Param, // Default: false
- * retry_strategy?: scalar|null|Param, // service id to override the retry strategy. // Default: null
+ * retry_strategy?: scalar|Param|null, // service id to override the retry strategy. // Default: null
* http_codes?: array,
@@ -572,69 +572,69 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* },
* mailer?: bool|array{ // Mailer configuration
* enabled?: bool|Param, // Default: false
- * message_bus?: scalar|null|Param, // The message bus to use. Defaults to the default bus if the Messenger component is installed. // Default: null
- * dsn?: scalar|null|Param, // Default: null
- * transports?: array,
+ * message_bus?: scalar|Param|null, // The message bus to use. Defaults to the default bus if the Messenger component is installed. // Default: null
+ * dsn?: scalar|Param|null, // Default: null
+ * transports?: array,
* envelope?: array{ // Mailer Envelope configuration
- * sender?: scalar|null|Param,
- * recipients?: list,
- * allowed_recipients?: list,
+ * sender?: scalar|Param|null,
+ * recipients?: list,
+ * allowed_recipients?: list,
* },
* headers?: array,
* dkim_signer?: bool|array{ // DKIM signer configuration
* enabled?: bool|Param, // Default: false
- * key?: scalar|null|Param, // Key content, or path to key (in PEM format with the `file://` prefix) // Default: ""
- * domain?: scalar|null|Param, // Default: ""
- * select?: scalar|null|Param, // Default: ""
- * passphrase?: scalar|null|Param, // The private key passphrase // Default: ""
+ * key?: scalar|Param|null, // Key content, or path to key (in PEM format with the `file://` prefix) // Default: ""
+ * domain?: scalar|Param|null, // Default: ""
+ * select?: scalar|Param|null, // Default: ""
+ * passphrase?: scalar|Param|null, // The private key passphrase // Default: ""
* options?: array,
* },
* smime_signer?: bool|array{ // S/MIME signer configuration
* enabled?: bool|Param, // Default: false
- * key?: scalar|null|Param, // Path to key (in PEM format) // Default: ""
- * certificate?: scalar|null|Param, // Path to certificate (in PEM format without the `file://` prefix) // Default: ""
- * passphrase?: scalar|null|Param, // The private key passphrase // Default: null
- * extra_certificates?: scalar|null|Param, // Default: null
+ * key?: scalar|Param|null, // Path to key (in PEM format) // Default: ""
+ * certificate?: scalar|Param|null, // Path to certificate (in PEM format without the `file://` prefix) // Default: ""
+ * passphrase?: scalar|Param|null, // The private key passphrase // Default: null
+ * extra_certificates?: scalar|Param|null, // Default: null
* sign_options?: int|Param, // Default: null
* },
* smime_encrypter?: bool|array{ // S/MIME encrypter configuration
* enabled?: bool|Param, // Default: false
- * repository?: scalar|null|Param, // S/MIME certificate repository service. This service shall implement the `Symfony\Component\Mailer\EventListener\SmimeCertificateRepositoryInterface`. // Default: ""
+ * repository?: scalar|Param|null, // S/MIME certificate repository service. This service shall implement the `Symfony\Component\Mailer\EventListener\SmimeCertificateRepositoryInterface`. // Default: ""
* cipher?: int|Param, // A set of algorithms used to encrypt the message // Default: null
* },
* },
* secrets?: bool|array{
* enabled?: bool|Param, // Default: true
- * vault_directory?: scalar|null|Param, // Default: "%kernel.project_dir%/config/secrets/%kernel.runtime_environment%"
- * local_dotenv_file?: scalar|null|Param, // Default: "%kernel.project_dir%/.env.%kernel.runtime_environment%.local"
- * decryption_env_var?: scalar|null|Param, // Default: "base64:default::SYMFONY_DECRYPTION_SECRET"
+ * vault_directory?: scalar|Param|null, // Default: "%kernel.project_dir%/config/secrets/%kernel.runtime_environment%"
+ * local_dotenv_file?: scalar|Param|null, // Default: "%kernel.project_dir%/.env.%kernel.environment%.local"
+ * decryption_env_var?: scalar|Param|null, // Default: "base64:default::SYMFONY_DECRYPTION_SECRET"
* },
* notifier?: bool|array{ // Notifier configuration
* enabled?: bool|Param, // Default: false
- * message_bus?: scalar|null|Param, // The message bus to use. Defaults to the default bus if the Messenger component is installed. // Default: null
- * chatter_transports?: array,
- * texter_transports?: array,
+ * message_bus?: scalar|Param|null, // The message bus to use. Defaults to the default bus if the Messenger component is installed. // Default: null
+ * chatter_transports?: array,
+ * texter_transports?: array,
* notification_on_failed_messages?: bool|Param, // Default: false
- * channel_policy?: array>,
+ * channel_policy?: array>,
* admin_recipients?: list,
* },
* rate_limiter?: bool|array{ // Rate limiter configuration
* enabled?: bool|Param, // Default: false
* limiters?: array,
+ * limiters?: list,
* limit?: int|Param, // The maximum allowed hits in a fixed interval or burst.
- * interval?: scalar|null|Param, // Configures the fixed interval if "policy" is set to "fixed_window" or "sliding_window". The value must be a number followed by "second", "minute", "hour", "day", "week" or "month" (or their plural equivalent).
+ * interval?: scalar|Param|null, // Configures the fixed interval if "policy" is set to "fixed_window" or "sliding_window". The value must be a number followed by "second", "minute", "hour", "day", "week" or "month" (or their plural equivalent).
* rate?: array{ // Configures the fill rate if "policy" is set to "token_bucket".
- * interval?: scalar|null|Param, // Configures the rate interval. The value must be a number followed by "second", "minute", "hour", "day", "week" or "month" (or their plural equivalent).
+ * interval?: scalar|Param|null, // Configures the rate interval. The value must be a number followed by "second", "minute", "hour", "day", "week" or "month" (or their plural equivalent).
* amount?: int|Param, // Amount of tokens to add each interval. // Default: 1
* },
* }>,
@@ -643,9 +643,9 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* enabled?: bool|Param, // Default: true
* default_uuid_version?: 7|6|4|1|Param, // Default: 7
* name_based_uuid_version?: 5|3|Param, // Default: 5
- * name_based_uuid_namespace?: scalar|null|Param,
+ * name_based_uuid_namespace?: scalar|Param|null,
* time_based_uuid_version?: 7|6|1|Param, // Default: 7
- * time_based_uuid_node?: scalar|null|Param,
+ * time_based_uuid_node?: scalar|Param|null,
* },
* html_sanitizer?: bool|array{ // HtmlSanitizer configuration
* enabled?: bool|Param, // Default: false
@@ -672,10 +672,10 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* },
* webhook?: bool|array{ // Webhook configuration
* enabled?: bool|Param, // Default: false
- * message_bus?: scalar|null|Param, // The message bus to use. // Default: "messenger.default_bus"
+ * message_bus?: scalar|Param|null, // The message bus to use. // Default: "messenger.default_bus"
* routing?: array,
* },
* remote-event?: bool|array{ // RemoteEvent configuration
@@ -686,439 +686,439 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* },
* }
* @psalm-type TwigConfig = array{
- * form_themes?: list,
+ * form_themes?: list,
* globals?: array,
- * autoescape_service?: scalar|null|Param, // Default: null
- * autoescape_service_method?: scalar|null|Param, // Default: null
- * cache?: scalar|null|Param, // Default: true
- * charset?: scalar|null|Param, // Default: "%kernel.charset%"
+ * autoescape_service?: scalar|Param|null, // Default: null
+ * autoescape_service_method?: scalar|Param|null, // Default: null
+ * cache?: scalar|Param|null, // Default: true
+ * charset?: scalar|Param|null, // Default: "%kernel.charset%"
* debug?: bool|Param, // Default: "%kernel.debug%"
* strict_variables?: bool|Param, // Default: "%kernel.debug%"
- * auto_reload?: scalar|null|Param,
+ * auto_reload?: scalar|Param|null,
* optimizations?: int|Param,
- * default_path?: scalar|null|Param, // The default path used to load templates. // Default: "%kernel.project_dir%/templates"
- * file_name_pattern?: list,
+ * default_path?: scalar|Param|null, // The default path used to load templates. // Default: "%kernel.project_dir%/templates"
+ * file_name_pattern?: list,
* paths?: array,
* date?: array{ // The default format options used by the date filter.
- * format?: scalar|null|Param, // Default: "F j, Y H:i"
- * interval_format?: scalar|null|Param, // Default: "%d days"
- * timezone?: scalar|null|Param, // The timezone used when formatting dates, when set to null, the timezone returned by date_default_timezone_get() is used. // Default: null
+ * format?: scalar|Param|null, // Default: "F j, Y H:i"
+ * interval_format?: scalar|Param|null, // Default: "%d days"
+ * timezone?: scalar|Param|null, // The timezone used when formatting dates, when set to null, the timezone returned by date_default_timezone_get() is used. // Default: null
* },
* number_format?: array{ // The default format options for the number_format filter.
* decimals?: int|Param, // Default: 0
- * decimal_point?: scalar|null|Param, // Default: "."
- * thousands_separator?: scalar|null|Param, // Default: ","
+ * decimal_point?: scalar|Param|null, // Default: "."
+ * thousands_separator?: scalar|Param|null, // Default: ","
* },
* mailer?: array{
- * html_to_text_converter?: scalar|null|Param, // A service implementing the "Symfony\Component\Mime\HtmlToTextConverter\HtmlToTextConverterInterface". // Default: null
+ * html_to_text_converter?: scalar|Param|null, // A service implementing the "Symfony\Component\Mime\HtmlToTextConverter\HtmlToTextConverterInterface". // Default: null
* },
* }
* @psalm-type SecurityConfig = array{
- * access_denied_url?: scalar|null|Param, // Default: null
+ * access_denied_url?: scalar|Param|null, // Default: null
* session_fixation_strategy?: "none"|"migrate"|"invalidate"|Param, // Default: "migrate"
* expose_security_errors?: \Symfony\Component\Security\Http\Authentication\ExposeSecurityLevel::None|\Symfony\Component\Security\Http\Authentication\ExposeSecurityLevel::AccountStatus|\Symfony\Component\Security\Http\Authentication\ExposeSecurityLevel::All|Param, // Default: "none"
* erase_credentials?: bool|Param, // Default: true
* access_decision_manager?: array{
* strategy?: "affirmative"|"consensus"|"unanimous"|"priority"|Param,
- * service?: scalar|null|Param,
- * strategy_service?: scalar|null|Param,
+ * service?: scalar|Param|null,
+ * strategy_service?: scalar|Param|null,
* allow_if_all_abstain?: bool|Param, // Default: false
* allow_if_equal_granted_denied?: bool|Param, // Default: true
* },
* password_hashers?: array,
- * hash_algorithm?: scalar|null|Param, // Name of hashing algorithm for PBKDF2 (i.e. sha256, sha512, etc..) See hash_algos() for a list of supported algorithms. // Default: "sha512"
- * key_length?: scalar|null|Param, // Default: 40
+ * algorithm?: scalar|Param|null,
+ * migrate_from?: list,
+ * hash_algorithm?: scalar|Param|null, // Name of hashing algorithm for PBKDF2 (i.e. sha256, sha512, etc..) See hash_algos() for a list of supported algorithms. // Default: "sha512"
+ * key_length?: scalar|Param|null, // Default: 40
* ignore_case?: bool|Param, // Default: false
* encode_as_base64?: bool|Param, // Default: true
- * iterations?: scalar|null|Param, // Default: 5000
+ * iterations?: scalar|Param|null, // Default: 5000
* cost?: int|Param, // Default: null
- * memory_cost?: scalar|null|Param, // Default: null
- * time_cost?: scalar|null|Param, // Default: null
- * id?: scalar|null|Param,
+ * memory_cost?: scalar|Param|null, // Default: null
+ * time_cost?: scalar|Param|null, // Default: null
+ * id?: scalar|Param|null,
* }>,
* providers?: array,
+ * providers?: list,
* },
* memory?: array{
* users?: array,
+ * password?: scalar|Param|null, // Default: null
+ * roles?: list,
* }>,
* },
* ldap?: array{
- * service: scalar|null|Param,
- * base_dn: scalar|null|Param,
- * search_dn?: scalar|null|Param, // Default: null
- * search_password?: scalar|null|Param, // Default: null
- * extra_fields?: list,
- * default_roles?: list,
- * role_fetcher?: scalar|null|Param, // Default: null
- * uid_key?: scalar|null|Param, // Default: "sAMAccountName"
- * filter?: scalar|null|Param, // Default: "({uid_key}={user_identifier})"
- * password_attribute?: scalar|null|Param, // Default: null
+ * service: scalar|Param|null,
+ * base_dn: scalar|Param|null,
+ * search_dn?: scalar|Param|null, // Default: null
+ * search_password?: scalar|Param|null, // Default: null
+ * extra_fields?: list,
+ * default_roles?: list,
+ * role_fetcher?: scalar|Param|null, // Default: null
+ * uid_key?: scalar|Param|null, // Default: "sAMAccountName"
+ * filter?: scalar|Param|null, // Default: "({uid_key}={user_identifier})"
+ * password_attribute?: scalar|Param|null, // Default: null
* },
* entity?: array{
- * class: scalar|null|Param, // The full entity class name of your user class.
- * property?: scalar|null|Param, // Default: null
- * manager_name?: scalar|null|Param, // Default: null
+ * class: scalar|Param|null, // The full entity class name of your user class.
+ * property?: scalar|Param|null, // Default: null
+ * manager_name?: scalar|Param|null, // Default: null
* },
* lexik_jwt?: array{
- * class?: scalar|null|Param, // Default: "Lexik\\Bundle\\JWTAuthenticationBundle\\Security\\User\\JWTUser"
+ * class?: scalar|Param|null, // Default: "Lexik\\Bundle\\JWTAuthenticationBundle\\Security\\User\\JWTUser"
* },
* }>,
* firewalls: array,
+ * pattern?: scalar|Param|null,
+ * host?: scalar|Param|null,
+ * methods?: list,
* security?: bool|Param, // Default: true
- * user_checker?: scalar|null|Param, // The UserChecker to use when authenticating users in this firewall. // Default: "security.user_checker"
- * request_matcher?: scalar|null|Param,
- * access_denied_url?: scalar|null|Param,
- * access_denied_handler?: scalar|null|Param,
- * entry_point?: scalar|null|Param, // An enabled authenticator name or a service id that implements "Symfony\Component\Security\Http\EntryPoint\AuthenticationEntryPointInterface".
- * provider?: scalar|null|Param,
+ * user_checker?: scalar|Param|null, // The UserChecker to use when authenticating users in this firewall. // Default: "security.user_checker"
+ * request_matcher?: scalar|Param|null,
+ * access_denied_url?: scalar|Param|null,
+ * access_denied_handler?: scalar|Param|null,
+ * entry_point?: scalar|Param|null, // An enabled authenticator name or a service id that implements "Symfony\Component\Security\Http\EntryPoint\AuthenticationEntryPointInterface".
+ * provider?: scalar|Param|null,
* stateless?: bool|Param, // Default: false
* lazy?: bool|Param, // Default: false
- * context?: scalar|null|Param,
+ * context?: scalar|Param|null,
* logout?: array{
- * enable_csrf?: bool|null|Param, // Default: null
- * csrf_token_id?: scalar|null|Param, // Default: "logout"
- * csrf_parameter?: scalar|null|Param, // Default: "_csrf_token"
- * csrf_token_manager?: scalar|null|Param,
- * path?: scalar|null|Param, // Default: "/logout"
- * target?: scalar|null|Param, // Default: "/"
+ * enable_csrf?: bool|Param|null, // Default: null
+ * csrf_token_id?: scalar|Param|null, // Default: "logout"
+ * csrf_parameter?: scalar|Param|null, // Default: "_csrf_token"
+ * csrf_token_manager?: scalar|Param|null,
+ * path?: scalar|Param|null, // Default: "/logout"
+ * target?: scalar|Param|null, // Default: "/"
* invalidate_session?: bool|Param, // Default: true
* clear_site_data?: list<"*"|"cache"|"cookies"|"storage"|"executionContexts"|Param>,
* delete_cookies?: array,
* },
* switch_user?: array{
- * provider?: scalar|null|Param,
- * parameter?: scalar|null|Param, // Default: "_switch_user"
- * role?: scalar|null|Param, // Default: "ROLE_ALLOWED_TO_SWITCH"
- * target_route?: scalar|null|Param, // Default: null
+ * provider?: scalar|Param|null,
+ * parameter?: scalar|Param|null, // Default: "_switch_user"
+ * role?: scalar|Param|null, // Default: "ROLE_ALLOWED_TO_SWITCH"
+ * target_route?: scalar|Param|null, // Default: null
* },
- * required_badges?: list,
- * custom_authenticators?: list,
+ * required_badges?: list,
+ * custom_authenticators?: list,
* login_throttling?: array{
- * limiter?: scalar|null|Param, // A service id implementing "Symfony\Component\HttpFoundation\RateLimiter\RequestRateLimiterInterface".
+ * limiter?: scalar|Param|null, // A service id implementing "Symfony\Component\HttpFoundation\RateLimiter\RequestRateLimiterInterface".
* max_attempts?: int|Param, // Default: 5
- * interval?: scalar|null|Param, // Default: "1 minute"
- * lock_factory?: scalar|null|Param, // The service ID of the lock factory used by the login rate limiter (or null to disable locking). // Default: null
+ * interval?: scalar|Param|null, // Default: "1 minute"
+ * lock_factory?: scalar|Param|null, // The service ID of the lock factory used by the login rate limiter (or null to disable locking). // Default: null
* cache_pool?: string|Param, // The cache pool to use for storing the limiter state // Default: "cache.rate_limiter"
* storage_service?: string|Param, // The service ID of a custom storage implementation, this precedes any configured "cache_pool" // Default: null
* },
* x509?: array{
- * provider?: scalar|null|Param,
- * user?: scalar|null|Param, // Default: "SSL_CLIENT_S_DN_Email"
- * credentials?: scalar|null|Param, // Default: "SSL_CLIENT_S_DN"
- * user_identifier?: scalar|null|Param, // Default: "emailAddress"
+ * provider?: scalar|Param|null,
+ * user?: scalar|Param|null, // Default: "SSL_CLIENT_S_DN_Email"
+ * credentials?: scalar|Param|null, // Default: "SSL_CLIENT_S_DN"
+ * user_identifier?: scalar|Param|null, // Default: "emailAddress"
* },
* remote_user?: array{
- * provider?: scalar|null|Param,
- * user?: scalar|null|Param, // Default: "REMOTE_USER"
+ * provider?: scalar|Param|null,
+ * user?: scalar|Param|null, // Default: "REMOTE_USER"
* },
* jwt?: array{
- * provider?: scalar|null|Param, // Default: null
- * authenticator?: scalar|null|Param, // Default: "lexik_jwt_authentication.security.jwt_authenticator"
+ * provider?: scalar|Param|null, // Default: null
+ * authenticator?: scalar|Param|null, // Default: "lexik_jwt_authentication.security.jwt_authenticator"
* },
* login_link?: array{
- * check_route: scalar|null|Param, // Route that will validate the login link - e.g. "app_login_link_verify".
- * check_post_only?: scalar|null|Param, // If true, only HTTP POST requests to "check_route" will be handled by the authenticator. // Default: false
- * signature_properties: list,
+ * check_route: scalar|Param|null, // Route that will validate the login link - e.g. "app_login_link_verify".
+ * check_post_only?: scalar|Param|null, // If true, only HTTP POST requests to "check_route" will be handled by the authenticator. // Default: false
+ * signature_properties: list,
* lifetime?: int|Param, // The lifetime of the login link in seconds. // Default: 600
* max_uses?: int|Param, // Max number of times a login link can be used - null means unlimited within lifetime. // Default: null
- * used_link_cache?: scalar|null|Param, // Cache service id used to expired links of max_uses is set.
- * success_handler?: scalar|null|Param, // A service id that implements Symfony\Component\Security\Http\Authentication\AuthenticationSuccessHandlerInterface.
- * failure_handler?: scalar|null|Param, // A service id that implements Symfony\Component\Security\Http\Authentication\AuthenticationFailureHandlerInterface.
- * provider?: scalar|null|Param, // The user provider to load users from.
- * secret?: scalar|null|Param, // Default: "%kernel.secret%"
+ * used_link_cache?: scalar|Param|null, // Cache service id used to expired links of max_uses is set.
+ * success_handler?: scalar|Param|null, // A service id that implements Symfony\Component\Security\Http\Authentication\AuthenticationSuccessHandlerInterface.
+ * failure_handler?: scalar|Param|null, // A service id that implements Symfony\Component\Security\Http\Authentication\AuthenticationFailureHandlerInterface.
+ * provider?: scalar|Param|null, // The user provider to load users from.
+ * secret?: scalar|Param|null, // Default: "%kernel.secret%"
* always_use_default_target_path?: bool|Param, // Default: false
- * default_target_path?: scalar|null|Param, // Default: "/"
- * login_path?: scalar|null|Param, // Default: "/login"
- * target_path_parameter?: scalar|null|Param, // Default: "_target_path"
+ * default_target_path?: scalar|Param|null, // Default: "/"
+ * login_path?: scalar|Param|null, // Default: "/login"
+ * target_path_parameter?: scalar|Param|null, // Default: "_target_path"
* use_referer?: bool|Param, // Default: false
- * failure_path?: scalar|null|Param, // Default: null
+ * failure_path?: scalar|Param|null, // Default: null
* failure_forward?: bool|Param, // Default: false
- * failure_path_parameter?: scalar|null|Param, // Default: "_failure_path"
+ * failure_path_parameter?: scalar|Param|null, // Default: "_failure_path"
* },
* form_login?: array{
- * provider?: scalar|null|Param,
+ * provider?: scalar|Param|null,
* remember_me?: bool|Param, // Default: true
- * success_handler?: scalar|null|Param,
- * failure_handler?: scalar|null|Param,
- * check_path?: scalar|null|Param, // Default: "/login_check"
+ * success_handler?: scalar|Param|null,
+ * failure_handler?: scalar|Param|null,
+ * check_path?: scalar|Param|null, // Default: "/login_check"
* use_forward?: bool|Param, // Default: false
- * login_path?: scalar|null|Param, // Default: "/login"
- * username_parameter?: scalar|null|Param, // Default: "_username"
- * password_parameter?: scalar|null|Param, // Default: "_password"
- * csrf_parameter?: scalar|null|Param, // Default: "_csrf_token"
- * csrf_token_id?: scalar|null|Param, // Default: "authenticate"
+ * login_path?: scalar|Param|null, // Default: "/login"
+ * username_parameter?: scalar|Param|null, // Default: "_username"
+ * password_parameter?: scalar|Param|null, // Default: "_password"
+ * csrf_parameter?: scalar|Param|null, // Default: "_csrf_token"
+ * csrf_token_id?: scalar|Param|null, // Default: "authenticate"
* enable_csrf?: bool|Param, // Default: false
* post_only?: bool|Param, // Default: true
* form_only?: bool|Param, // Default: false
* always_use_default_target_path?: bool|Param, // Default: false
- * default_target_path?: scalar|null|Param, // Default: "/"
- * target_path_parameter?: scalar|null|Param, // Default: "_target_path"
+ * default_target_path?: scalar|Param|null, // Default: "/"
+ * target_path_parameter?: scalar|Param|null, // Default: "_target_path"
* use_referer?: bool|Param, // Default: false
- * failure_path?: scalar|null|Param, // Default: null
+ * failure_path?: scalar|Param|null, // Default: null
* failure_forward?: bool|Param, // Default: false
- * failure_path_parameter?: scalar|null|Param, // Default: "_failure_path"
+ * failure_path_parameter?: scalar|Param|null, // Default: "_failure_path"
* },
* form_login_ldap?: array{
- * provider?: scalar|null|Param,
+ * provider?: scalar|Param|null,
* remember_me?: bool|Param, // Default: true
- * success_handler?: scalar|null|Param,
- * failure_handler?: scalar|null|Param,
- * check_path?: scalar|null|Param, // Default: "/login_check"
+ * success_handler?: scalar|Param|null,
+ * failure_handler?: scalar|Param|null,
+ * check_path?: scalar|Param|null, // Default: "/login_check"
* use_forward?: bool|Param, // Default: false
- * login_path?: scalar|null|Param, // Default: "/login"
- * username_parameter?: scalar|null|Param, // Default: "_username"
- * password_parameter?: scalar|null|Param, // Default: "_password"
- * csrf_parameter?: scalar|null|Param, // Default: "_csrf_token"
- * csrf_token_id?: scalar|null|Param, // Default: "authenticate"
+ * login_path?: scalar|Param|null, // Default: "/login"
+ * username_parameter?: scalar|Param|null, // Default: "_username"
+ * password_parameter?: scalar|Param|null, // Default: "_password"
+ * csrf_parameter?: scalar|Param|null, // Default: "_csrf_token"
+ * csrf_token_id?: scalar|Param|null, // Default: "authenticate"
* enable_csrf?: bool|Param, // Default: false
* post_only?: bool|Param, // Default: true
* form_only?: bool|Param, // Default: false
* always_use_default_target_path?: bool|Param, // Default: false
- * default_target_path?: scalar|null|Param, // Default: "/"
- * target_path_parameter?: scalar|null|Param, // Default: "_target_path"
+ * default_target_path?: scalar|Param|null, // Default: "/"
+ * target_path_parameter?: scalar|Param|null, // Default: "_target_path"
* use_referer?: bool|Param, // Default: false
- * failure_path?: scalar|null|Param, // Default: null
+ * failure_path?: scalar|Param|null, // Default: null
* failure_forward?: bool|Param, // Default: false
- * failure_path_parameter?: scalar|null|Param, // Default: "_failure_path"
- * service?: scalar|null|Param, // Default: "ldap"
- * dn_string?: scalar|null|Param, // Default: "{user_identifier}"
- * query_string?: scalar|null|Param,
- * search_dn?: scalar|null|Param, // Default: ""
- * search_password?: scalar|null|Param, // Default: ""
+ * failure_path_parameter?: scalar|Param|null, // Default: "_failure_path"
+ * service?: scalar|Param|null, // Default: "ldap"
+ * dn_string?: scalar|Param|null, // Default: "{user_identifier}"
+ * query_string?: scalar|Param|null,
+ * search_dn?: scalar|Param|null, // Default: ""
+ * search_password?: scalar|Param|null, // Default: ""
* },
* json_login?: array{
- * provider?: scalar|null|Param,
+ * provider?: scalar|Param|null,
* remember_me?: bool|Param, // Default: true
- * success_handler?: scalar|null|Param,
- * failure_handler?: scalar|null|Param,
- * check_path?: scalar|null|Param, // Default: "/login_check"
+ * success_handler?: scalar|Param|null,
+ * failure_handler?: scalar|Param|null,
+ * check_path?: scalar|Param|null, // Default: "/login_check"
* use_forward?: bool|Param, // Default: false
- * login_path?: scalar|null|Param, // Default: "/login"
- * username_path?: scalar|null|Param, // Default: "username"
- * password_path?: scalar|null|Param, // Default: "password"
+ * login_path?: scalar|Param|null, // Default: "/login"
+ * username_path?: scalar|Param|null, // Default: "username"
+ * password_path?: scalar|Param|null, // Default: "password"
* },
* json_login_ldap?: array{
- * provider?: scalar|null|Param,
+ * provider?: scalar|Param|null,
* remember_me?: bool|Param, // Default: true
- * success_handler?: scalar|null|Param,
- * failure_handler?: scalar|null|Param,
- * check_path?: scalar|null|Param, // Default: "/login_check"
+ * success_handler?: scalar|Param|null,
+ * failure_handler?: scalar|Param|null,
+ * check_path?: scalar|Param|null, // Default: "/login_check"
* use_forward?: bool|Param, // Default: false
- * login_path?: scalar|null|Param, // Default: "/login"
- * username_path?: scalar|null|Param, // Default: "username"
- * password_path?: scalar|null|Param, // Default: "password"
- * service?: scalar|null|Param, // Default: "ldap"
- * dn_string?: scalar|null|Param, // Default: "{user_identifier}"
- * query_string?: scalar|null|Param,
- * search_dn?: scalar|null|Param, // Default: ""
- * search_password?: scalar|null|Param, // Default: ""
+ * login_path?: scalar|Param|null, // Default: "/login"
+ * username_path?: scalar|Param|null, // Default: "username"
+ * password_path?: scalar|Param|null, // Default: "password"
+ * service?: scalar|Param|null, // Default: "ldap"
+ * dn_string?: scalar|Param|null, // Default: "{user_identifier}"
+ * query_string?: scalar|Param|null,
+ * search_dn?: scalar|Param|null, // Default: ""
+ * search_password?: scalar|Param|null, // Default: ""
* },
* access_token?: array{
- * provider?: scalar|null|Param,
+ * provider?: scalar|Param|null,
* remember_me?: bool|Param, // Default: true
- * success_handler?: scalar|null|Param,
- * failure_handler?: scalar|null|Param,
- * realm?: scalar|null|Param, // Default: null
- * token_extractors?: list,
+ * success_handler?: scalar|Param|null,
+ * failure_handler?: scalar|Param|null,
+ * realm?: scalar|Param|null, // Default: null
+ * token_extractors?: list,
* token_handler: string|array{
- * id?: scalar|null|Param,
+ * id?: scalar|Param|null,
* oidc_user_info?: string|array{
- * base_uri: scalar|null|Param, // Base URI of the userinfo endpoint on the OIDC server, or the OIDC server URI to use the discovery (require "discovery" to be configured).
+ * base_uri: scalar|Param|null, // Base URI of the userinfo endpoint on the OIDC server, or the OIDC server URI to use the discovery (require "discovery" to be configured).
* discovery?: array{ // Enable the OIDC discovery.
* cache?: array{
- * id: scalar|null|Param, // Cache service id to use to cache the OIDC discovery configuration.
+ * id: scalar|Param|null, // Cache service id to use to cache the OIDC discovery configuration.
* },
* },
- * claim?: scalar|null|Param, // Claim which contains the user identifier (e.g. sub, email, etc.). // Default: "sub"
- * client?: scalar|null|Param, // HttpClient service id to use to call the OIDC server.
+ * claim?: scalar|Param|null, // Claim which contains the user identifier (e.g. sub, email, etc.). // Default: "sub"
+ * client?: scalar|Param|null, // HttpClient service id to use to call the OIDC server.
* },
* oidc?: array{
* discovery?: array{ // Enable the OIDC discovery.
- * base_uri: list,
+ * base_uri: list,
* cache?: array{
- * id: scalar|null|Param, // Cache service id to use to cache the OIDC discovery configuration.
+ * id: scalar|Param|null, // Cache service id to use to cache the OIDC discovery configuration.
* },
* },
- * claim?: scalar|null|Param, // Claim which contains the user identifier (e.g.: sub, email..). // Default: "sub"
- * audience: scalar|null|Param, // Audience set in the token, for validation purpose.
- * issuers: list,
- * algorithms: list,
- * keyset?: scalar|null|Param, // JSON-encoded JWKSet used to sign the token (must contain a list of valid public keys).
+ * claim?: scalar|Param|null, // Claim which contains the user identifier (e.g.: sub, email..). // Default: "sub"
+ * audience: scalar|Param|null, // Audience set in the token, for validation purpose.
+ * issuers: list,
+ * algorithms: list,
+ * keyset?: scalar|Param|null, // JSON-encoded JWKSet used to sign the token (must contain a list of valid public keys).
* encryption?: bool|array{
* enabled?: bool|Param, // Default: false
* enforce?: bool|Param, // When enabled, the token shall be encrypted. // Default: false
- * algorithms: list,
- * keyset: scalar|null|Param, // JSON-encoded JWKSet used to decrypt the token (must contain a list of valid private keys).
+ * algorithms: list,
+ * keyset: scalar|Param|null, // JSON-encoded JWKSet used to decrypt the token (must contain a list of valid private keys).
* },
* },
* cas?: array{
- * validation_url: scalar|null|Param, // CAS server validation URL
- * prefix?: scalar|null|Param, // CAS prefix // Default: "cas"
- * http_client?: scalar|null|Param, // HTTP Client service // Default: null
+ * validation_url: scalar|Param|null, // CAS server validation URL
+ * prefix?: scalar|Param|null, // CAS prefix // Default: "cas"
+ * http_client?: scalar|Param|null, // HTTP Client service // Default: null
* },
- * oauth2?: scalar|null|Param,
+ * oauth2?: scalar|Param|null,
* },
* },
* http_basic?: array{
- * provider?: scalar|null|Param,
- * realm?: scalar|null|Param, // Default: "Secured Area"
+ * provider?: scalar|Param|null,
+ * realm?: scalar|Param|null, // Default: "Secured Area"
* },
* http_basic_ldap?: array{
- * provider?: scalar|null|Param,
- * realm?: scalar|null|Param, // Default: "Secured Area"
- * service?: scalar|null|Param, // Default: "ldap"
- * dn_string?: scalar|null|Param, // Default: "{user_identifier}"
- * query_string?: scalar|null|Param,
- * search_dn?: scalar|null|Param, // Default: ""
- * search_password?: scalar|null|Param, // Default: ""
+ * provider?: scalar|Param|null,
+ * realm?: scalar|Param|null, // Default: "Secured Area"
+ * service?: scalar|Param|null, // Default: "ldap"
+ * dn_string?: scalar|Param|null, // Default: "{user_identifier}"
+ * query_string?: scalar|Param|null,
+ * search_dn?: scalar|Param|null, // Default: ""
+ * search_password?: scalar|Param|null, // Default: ""
* },
* remember_me?: array{
- * secret?: scalar|null|Param, // Default: "%kernel.secret%"
- * service?: scalar|null|Param,
- * user_providers?: list,
+ * secret?: scalar|Param|null, // Default: "%kernel.secret%"
+ * service?: scalar|Param|null,
+ * user_providers?: list,
* catch_exceptions?: bool|Param, // Default: true
- * signature_properties?: list,
+ * signature_properties?: list,
* token_provider?: string|array{
- * service?: scalar|null|Param, // The service ID of a custom remember-me token provider.
+ * service?: scalar|Param|null, // The service ID of a custom remember-me token provider.
* doctrine?: bool|array{
* enabled?: bool|Param, // Default: false
- * connection?: scalar|null|Param, // Default: null
+ * connection?: scalar|Param|null, // Default: null
* },
* },
- * token_verifier?: scalar|null|Param, // The service ID of a custom rememberme token verifier.
- * name?: scalar|null|Param, // Default: "REMEMBERME"
+ * token_verifier?: scalar|Param|null, // The service ID of a custom rememberme token verifier.
+ * name?: scalar|Param|null, // Default: "REMEMBERME"
* lifetime?: int|Param, // Default: 31536000
- * path?: scalar|null|Param, // Default: "/"
- * domain?: scalar|null|Param, // Default: null
+ * path?: scalar|Param|null, // Default: "/"
+ * domain?: scalar|Param|null, // Default: null
* secure?: true|false|"auto"|Param, // Default: false
* httponly?: bool|Param, // Default: true
* samesite?: null|"lax"|"strict"|"none"|Param, // Default: null
* always_remember_me?: bool|Param, // Default: false
- * remember_me_parameter?: scalar|null|Param, // Default: "_remember_me"
+ * remember_me_parameter?: scalar|Param|null, // Default: "_remember_me"
* },
* }>,
* access_control?: list,
- * attributes?: array,
- * route?: scalar|null|Param, // Default: null
- * methods?: list,
- * allow_if?: scalar|null|Param, // Default: null
- * roles?: list,
+ * ips?: list,
+ * attributes?: array,
+ * route?: scalar|Param|null, // Default: null
+ * methods?: list,
+ * allow_if?: scalar|Param|null, // Default: null
+ * roles?: list,
* }>,
- * role_hierarchy?: array>,
+ * role_hierarchy?: array>,
* }
* @psalm-type DoctrineConfig = array{
* dbal?: array{
- * default_connection?: scalar|null|Param,
+ * default_connection?: scalar|Param|null,
* types?: array,
- * driver_schemes?: array,
+ * driver_schemes?: array,
* connections?: array,
- * mapping_types?: array,
- * default_table_options?: array,
- * schema_manager_factory?: scalar|null|Param, // Default: "doctrine.dbal.default_schema_manager_factory"
- * result_cache?: scalar|null|Param,
+ * mapping_types?: array,
+ * default_table_options?: array,
+ * schema_manager_factory?: scalar|Param|null, // Default: "doctrine.dbal.default_schema_manager_factory"
+ * result_cache?: scalar|Param|null,
* replicas?: array,
* }>,
* },
* orm?: array{
- * default_entity_manager?: scalar|null|Param,
+ * default_entity_manager?: scalar|Param|null,
* enable_native_lazy_objects?: bool|Param, // Deprecated: The "enable_native_lazy_objects" option is deprecated and will be removed in DoctrineBundle 4.0, as native lazy objects are now always enabled. // Default: true
* controller_resolver?: bool|array{
* enabled?: bool|Param, // Default: true
@@ -1127,242 +1127,242 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* },
* entity_managers?: array,
* }>,
* }>,
* },
- * connection?: scalar|null|Param,
- * class_metadata_factory_name?: scalar|null|Param, // Default: "Doctrine\\ORM\\Mapping\\ClassMetadataFactory"
- * default_repository_class?: scalar|null|Param, // Default: "Doctrine\\ORM\\EntityRepository"
- * auto_mapping?: scalar|null|Param, // Default: false
- * naming_strategy?: scalar|null|Param, // Default: "doctrine.orm.naming_strategy.default"
- * quote_strategy?: scalar|null|Param, // Default: "doctrine.orm.quote_strategy.default"
- * typed_field_mapper?: scalar|null|Param, // Default: "doctrine.orm.typed_field_mapper.default"
- * entity_listener_resolver?: scalar|null|Param, // Default: null
- * fetch_mode_subselect_batch_size?: scalar|null|Param,
- * repository_factory?: scalar|null|Param, // Default: "doctrine.orm.container_repository_factory"
- * schema_ignore_classes?: list,
+ * connection?: scalar|Param|null,
+ * class_metadata_factory_name?: scalar|Param|null, // Default: "Doctrine\\ORM\\Mapping\\ClassMetadataFactory"
+ * default_repository_class?: scalar|Param|null, // Default: "Doctrine\\ORM\\EntityRepository"
+ * auto_mapping?: scalar|Param|null, // Default: false
+ * naming_strategy?: scalar|Param|null, // Default: "doctrine.orm.naming_strategy.default"
+ * quote_strategy?: scalar|Param|null, // Default: "doctrine.orm.quote_strategy.default"
+ * typed_field_mapper?: scalar|Param|null, // Default: "doctrine.orm.typed_field_mapper.default"
+ * entity_listener_resolver?: scalar|Param|null, // Default: null
+ * fetch_mode_subselect_batch_size?: scalar|Param|null,
+ * repository_factory?: scalar|Param|null, // Default: "doctrine.orm.container_repository_factory"
+ * schema_ignore_classes?: list,
* validate_xml_mapping?: bool|Param, // Set to "true" to opt-in to the new mapping driver mode that was added in Doctrine ORM 2.14 and will be mandatory in ORM 3.0. See https://github.com/doctrine/orm/pull/6728. // Default: false
* second_level_cache?: array{
* region_cache_driver?: string|array{
- * type?: scalar|null|Param, // Default: null
- * id?: scalar|null|Param,
- * pool?: scalar|null|Param,
+ * type?: scalar|Param|null, // Default: null
+ * id?: scalar|Param|null,
+ * pool?: scalar|Param|null,
* },
- * region_lock_lifetime?: scalar|null|Param, // Default: 60
+ * region_lock_lifetime?: scalar|Param|null, // Default: 60
* log_enabled?: bool|Param, // Default: true
- * region_lifetime?: scalar|null|Param, // Default: 3600
+ * region_lifetime?: scalar|Param|null, // Default: 3600
* enabled?: bool|Param, // Default: true
- * factory?: scalar|null|Param,
+ * factory?: scalar|Param|null,
* regions?: array,
* loggers?: array,
* },
- * hydrators?: array,
+ * hydrators?: array,
* mappings?: array,
* dql?: array{
- * string_functions?: array,
- * numeric_functions?: array,
- * datetime_functions?: array,
+ * string_functions?: array,
+ * numeric_functions?: array,
+ * datetime_functions?: array,
* },
* filters?: array,
* }>,
- * identity_generation_preferences?: array,
+ * identity_generation_preferences?: array,
* }>,
- * resolve_target_entities?: array,
+ * resolve_target_entities?: array,
* },
* }
* @psalm-type DoctrineMigrationsConfig = array{
* enable_service_migrations?: bool|Param, // Whether to enable fetching migrations from the service container. // Default: false
- * migrations_paths?: array,
- * services?: array,
- * factories?: array,
+ * migrations_paths?: array,
+ * services?: array,
+ * factories?: array,
* storage?: array{ // Storage to use for migration status metadata.
* table_storage?: array{ // The default metadata storage, implemented as a table in the database.
- * table_name?: scalar|null|Param, // Default: null
- * version_column_name?: scalar|null|Param, // Default: null
- * version_column_length?: scalar|null|Param, // Default: null
- * executed_at_column_name?: scalar|null|Param, // Default: null
- * execution_time_column_name?: scalar|null|Param, // Default: null
+ * table_name?: scalar|Param|null, // Default: null
+ * version_column_name?: scalar|Param|null, // Default: null
+ * version_column_length?: scalar|Param|null, // Default: null
+ * executed_at_column_name?: scalar|Param|null, // Default: null
+ * execution_time_column_name?: scalar|Param|null, // Default: null
* },
* },
- * migrations?: list,
- * connection?: scalar|null|Param, // Connection name to use for the migrations database. // Default: null
- * em?: scalar|null|Param, // Entity manager name to use for the migrations database (available when doctrine/orm is installed). // Default: null
- * all_or_nothing?: scalar|null|Param, // Run all migrations in a transaction. // Default: false
- * check_database_platform?: scalar|null|Param, // Adds an extra check in the generated migrations to allow execution only on the same platform as they were initially generated on. // Default: true
- * custom_template?: scalar|null|Param, // Custom template path for generated migration classes. // Default: null
- * organize_migrations?: scalar|null|Param, // Organize migrations mode. Possible values are: "BY_YEAR", "BY_YEAR_AND_MONTH", false // Default: false
+ * migrations?: list,
+ * connection?: scalar|Param|null, // Connection name to use for the migrations database. // Default: null
+ * em?: scalar|Param|null, // Entity manager name to use for the migrations database (available when doctrine/orm is installed). // Default: null
+ * all_or_nothing?: scalar|Param|null, // Run all migrations in a transaction. // Default: false
+ * check_database_platform?: scalar|Param|null, // Adds an extra check in the generated migrations to allow execution only on the same platform as they were initially generated on. // Default: true
+ * custom_template?: scalar|Param|null, // Custom template path for generated migration classes. // Default: null
+ * organize_migrations?: scalar|Param|null, // Organize migrations mode. Possible values are: "BY_YEAR", "BY_YEAR_AND_MONTH", false // Default: false
* enable_profiler?: bool|Param, // Whether or not to enable the profiler collector to calculate and visualize migration status. This adds some queries overhead. // Default: false
* transactional?: bool|Param, // Whether or not to wrap migrations in a single transaction. // Default: true
* }
* @psalm-type NelmioCorsConfig = array{
* defaults?: array{
* allow_credentials?: bool|Param, // Default: false
- * allow_origin?: list,
- * allow_headers?: list,
- * allow_methods?: list,
+ * allow_origin?: list,
+ * allow_headers?: list,
+ * allow_methods?: list,
* allow_private_network?: bool|Param, // Default: false
- * expose_headers?: list,
- * max_age?: scalar|null|Param, // Default: 0
- * hosts?: list,
+ * expose_headers?: list,
+ * max_age?: scalar|Param|null, // Default: 0
+ * hosts?: list,
* origin_regex?: bool|Param, // Default: false
- * forced_allow_origin_value?: scalar|null|Param, // Default: null
+ * forced_allow_origin_value?: scalar|Param|null, // Default: null
* skip_same_as_origin?: bool|Param, // Default: true
* },
* paths?: array,
- * allow_headers?: list,
- * allow_methods?: list,
+ * allow_origin?: list,
+ * allow_headers?: list,
+ * allow_methods?: list,
* allow_private_network?: bool|Param,
- * expose_headers?: list,
- * max_age?: scalar|null|Param, // Default: 0
- * hosts?: list,
+ * expose_headers?: list,
+ * max_age?: scalar|Param|null, // Default: 0
+ * hosts?: list,
* origin_regex?: bool|Param,
- * forced_allow_origin_value?: scalar|null|Param, // Default: null
+ * forced_allow_origin_value?: scalar|Param|null, // Default: null
* skip_same_as_origin?: bool|Param,
* }>,
* }
* @psalm-type LexikJwtAuthenticationConfig = array{
- * public_key?: scalar|null|Param, // The key used to sign tokens (useless for HMAC). If not set, the key will be automatically computed from the secret key. // Default: null
- * additional_public_keys?: list,
- * secret_key?: scalar|null|Param, // The key used to sign tokens. It can be a raw secret (for HMAC), a raw RSA/ECDSA key or the path to a file itself being plaintext or PEM. // Default: null
- * pass_phrase?: scalar|null|Param, // The key passphrase (useless for HMAC) // Default: ""
- * token_ttl?: scalar|null|Param, // Default: 3600
+ * public_key?: scalar|Param|null, // The key used to sign tokens (useless for HMAC). If not set, the key will be automatically computed from the secret key. // Default: null
+ * additional_public_keys?: list,
+ * secret_key?: scalar|Param|null, // The key used to sign tokens. It can be a raw secret (for HMAC), a raw RSA/ECDSA key or the path to a file itself being plaintext or PEM. // Default: null
+ * pass_phrase?: scalar|Param|null, // The key passphrase (useless for HMAC) // Default: ""
+ * token_ttl?: scalar|Param|null, // Default: 3600
* allow_no_expiration?: bool|Param, // Allow tokens without "exp" claim (i.e. indefinitely valid, no lifetime) to be considered valid. Caution: usage of this should be rare. // Default: false
- * clock_skew?: scalar|null|Param, // Default: 0
+ * clock_skew?: scalar|Param|null, // Default: 0
* encoder?: array{
- * service?: scalar|null|Param, // Default: "lexik_jwt_authentication.encoder.lcobucci"
- * signature_algorithm?: scalar|null|Param, // Default: "RS256"
+ * service?: scalar|Param|null, // Default: "lexik_jwt_authentication.encoder.lcobucci"
+ * signature_algorithm?: scalar|Param|null, // Default: "RS256"
* },
- * user_id_claim?: scalar|null|Param, // Default: "username"
+ * user_id_claim?: scalar|Param|null, // Default: "username"
* token_extractors?: array{
* authorization_header?: bool|array{
* enabled?: bool|Param, // Default: true
- * prefix?: scalar|null|Param, // Default: "Bearer"
- * name?: scalar|null|Param, // Default: "Authorization"
+ * prefix?: scalar|Param|null, // Default: "Bearer"
+ * name?: scalar|Param|null, // Default: "Authorization"
* },
* cookie?: bool|array{
* enabled?: bool|Param, // Default: false
- * name?: scalar|null|Param, // Default: "BEARER"
+ * name?: scalar|Param|null, // Default: "BEARER"
* },
* query_parameter?: bool|array{
* enabled?: bool|Param, // Default: false
- * name?: scalar|null|Param, // Default: "bearer"
+ * name?: scalar|Param|null, // Default: "bearer"
* },
* split_cookie?: bool|array{
* enabled?: bool|Param, // Default: false
- * cookies?: list,
+ * cookies?: list,
* },
* },
- * remove_token_from_body_when_cookies_used?: scalar|null|Param, // Default: true
+ * remove_token_from_body_when_cookies_used?: scalar|Param|null, // Default: true
* set_cookies?: array,
+ * path?: scalar|Param|null, // Default: "/"
+ * domain?: scalar|Param|null, // Default: null
+ * secure?: scalar|Param|null, // Default: true
+ * httpOnly?: scalar|Param|null, // Default: true
+ * partitioned?: scalar|Param|null, // Default: false
+ * split?: list,
* }>,
* api_platform?: bool|array{ // API Platform compatibility: add check_path in OpenAPI documentation.
* enabled?: bool|Param, // Default: false
- * check_path?: scalar|null|Param, // The login check path to add in OpenAPI. // Default: null
- * username_path?: scalar|null|Param, // The path to the username in the JSON body. // Default: null
- * password_path?: scalar|null|Param, // The path to the password in the JSON body. // Default: null
+ * check_path?: scalar|Param|null, // The login check path to add in OpenAPI. // Default: null
+ * username_path?: scalar|Param|null, // The path to the username in the JSON body. // Default: null
+ * password_path?: scalar|Param|null, // The path to the password in the JSON body. // Default: null
* },
* access_token_issuance?: bool|array{
* enabled?: bool|Param, // Default: false
* signature?: array{
- * algorithm: scalar|null|Param, // The algorithm use to sign the access tokens.
- * key: scalar|null|Param, // The signature key. It shall be JWK encoded.
+ * algorithm: scalar|Param|null, // The algorithm use to sign the access tokens.
+ * key: scalar|Param|null, // The signature key. It shall be JWK encoded.
* },
* encryption?: bool|array{
* enabled?: bool|Param, // Default: false
- * key_encryption_algorithm: scalar|null|Param, // The key encryption algorithm is used to encrypt the token.
- * content_encryption_algorithm: scalar|null|Param, // The key encryption algorithm is used to encrypt the token.
- * key: scalar|null|Param, // The encryption key. It shall be JWK encoded.
+ * key_encryption_algorithm: scalar|Param|null, // The key encryption algorithm is used to encrypt the token.
+ * content_encryption_algorithm: scalar|Param|null, // The key encryption algorithm is used to encrypt the token.
+ * key: scalar|Param|null, // The encryption key. It shall be JWK encoded.
* },
* },
* access_token_verification?: bool|array{
* enabled?: bool|Param, // Default: false
* signature?: array{
- * header_checkers?: list,
- * claim_checkers?: list,
- * mandatory_claims?: list,
- * allowed_algorithms?: list,
- * keyset: scalar|null|Param, // The signature keyset. It shall be JWKSet encoded.
+ * header_checkers?: list,
+ * claim_checkers?: list,
+ * mandatory_claims?: list,
+ * allowed_algorithms?: list,
+ * keyset: scalar|Param|null, // The signature keyset. It shall be JWKSet encoded.
* },
* encryption?: bool|array{
* enabled?: bool|Param, // Default: false
* continue_on_decryption_failure?: bool|Param, // If enable, non-encrypted tokens or tokens that failed during decryption or verification processes are accepted. // Default: false
- * header_checkers?: list,
- * allowed_key_encryption_algorithms?: list,
- * allowed_content_encryption_algorithms?: list,
- * keyset: scalar|null|Param, // The encryption keyset. It shall be JWKSet encoded.
+ * header_checkers?: list,
+ * allowed_key_encryption_algorithms?: list,
+ * allowed_content_encryption_algorithms?: list,
+ * keyset: scalar|Param|null, // The encryption keyset. It shall be JWKSet encoded.
* },
* },
* blocklist_token?: bool|array{
* enabled?: bool|Param, // Default: false
- * cache?: scalar|null|Param, // Storage to track blocked tokens // Default: "cache.app"
+ * cache?: scalar|Param|null, // Storage to track blocked tokens // Default: "cache.app"
* },
* }
* @psalm-type ApiPlatformConfig = array{
- * title?: scalar|null|Param, // The title of the API. // Default: ""
- * description?: scalar|null|Param, // The description of the API. // Default: ""
- * version?: scalar|null|Param, // The version of the API. // Default: "0.0.0"
+ * title?: scalar|Param|null, // The title of the API. // Default: ""
+ * description?: scalar|Param|null, // The description of the API. // Default: ""
+ * version?: scalar|Param|null, // The version of the API. // Default: "0.0.0"
* show_webby?: bool|Param, // If true, show Webby on the documentation page // Default: true
* use_symfony_listeners?: bool|Param, // Uses Symfony event listeners instead of the ApiPlatform\Symfony\Controller\MainController. // Default: false
- * name_converter?: scalar|null|Param, // Specify a name converter to use. // Default: null
- * asset_package?: scalar|null|Param, // Specify an asset package name to use. // Default: null
- * path_segment_name_generator?: scalar|null|Param, // Specify a path name generator to use. // Default: "api_platform.metadata.path_segment_name_generator.underscore"
- * inflector?: scalar|null|Param, // Specify an inflector to use. // Default: "api_platform.metadata.inflector"
+ * name_converter?: scalar|Param|null, // Specify a name converter to use. // Default: null
+ * asset_package?: scalar|Param|null, // Specify an asset package name to use. // Default: null
+ * path_segment_name_generator?: scalar|Param|null, // Specify a path name generator to use. // Default: "api_platform.metadata.path_segment_name_generator.underscore"
+ * inflector?: scalar|Param|null, // Specify an inflector to use. // Default: "api_platform.metadata.inflector"
* validator?: array{
* serialize_payload_fields?: mixed, // Set to null to serialize all payload fields when a validation error is thrown, or set the fields you want to include explicitly. // Default: []
* query_parameter_validation?: bool|Param, // Deprecated: Will be removed in API Platform 5.0. // Default: true
@@ -1384,23 +1384,23 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* enable_phpdoc_parser?: bool|Param, // Enable resource metadata collector using PHPStan PhpDocParser. // Default: true
* enable_link_security?: bool|Param, // Enable security for Links (sub resources) // Default: false
* collection?: array{
- * exists_parameter_name?: scalar|null|Param, // The name of the query parameter to filter on nullable field values. // Default: "exists"
- * order?: scalar|null|Param, // The default order of results. // Default: "ASC"
- * order_parameter_name?: scalar|null|Param, // The name of the query parameter to order results. // Default: "order"
- * order_nulls_comparison?: "nulls_smallest"|"nulls_largest"|"nulls_always_first"|"nulls_always_last"|null|Param, // The nulls comparison strategy. // Default: null
+ * exists_parameter_name?: scalar|Param|null, // The name of the query parameter to filter on nullable field values. // Default: "exists"
+ * order?: scalar|Param|null, // The default order of results. // Default: "ASC"
+ * order_parameter_name?: scalar|Param|null, // The name of the query parameter to order results. // Default: "order"
+ * order_nulls_comparison?: "nulls_smallest"|"nulls_largest"|"nulls_always_first"|"nulls_always_last"|Param|null, // The nulls comparison strategy. // Default: null
* pagination?: bool|array{
* enabled?: bool|Param, // Default: true
- * page_parameter_name?: scalar|null|Param, // The default name of the parameter handling the page number. // Default: "page"
- * enabled_parameter_name?: scalar|null|Param, // The name of the query parameter to enable or disable pagination. // Default: "pagination"
- * items_per_page_parameter_name?: scalar|null|Param, // The name of the query parameter to set the number of items per page. // Default: "itemsPerPage"
- * partial_parameter_name?: scalar|null|Param, // The name of the query parameter to enable or disable partial pagination. // Default: "partial"
+ * page_parameter_name?: scalar|Param|null, // The default name of the parameter handling the page number. // Default: "page"
+ * enabled_parameter_name?: scalar|Param|null, // The name of the query parameter to enable or disable pagination. // Default: "pagination"
+ * items_per_page_parameter_name?: scalar|Param|null, // The name of the query parameter to set the number of items per page. // Default: "itemsPerPage"
+ * partial_parameter_name?: scalar|Param|null, // The name of the query parameter to enable or disable partial pagination. // Default: "partial"
* },
* },
* mapping?: array{
- * imports?: list,
- * paths?: list,
+ * imports?: list,
+ * paths?: list,
* },
- * resource_class_directories?: list,
+ * resource_class_directories?: list,
* serializer?: array{
* hydra_prefix?: bool|Param, // Use the "hydra:" prefix. // Default: false
* },
@@ -1412,19 +1412,19 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* },
* oauth?: bool|array{
* enabled?: bool|Param, // Default: false
- * clientId?: scalar|null|Param, // The oauth client id. // Default: ""
- * clientSecret?: scalar|null|Param, // The OAuth client secret. Never use this parameter in your production environment. It exposes crucial security information. This feature is intended for dev/test environments only. Enable "oauth.pkce" instead // Default: ""
+ * clientId?: scalar|Param|null, // The oauth client id. // Default: ""
+ * clientSecret?: scalar|Param|null, // The OAuth client secret. Never use this parameter in your production environment. It exposes crucial security information. This feature is intended for dev/test environments only. Enable "oauth.pkce" instead // Default: ""
* pkce?: bool|Param, // Enable the oauth PKCE. // Default: false
- * type?: scalar|null|Param, // The oauth type. // Default: "oauth2"
- * flow?: scalar|null|Param, // The oauth flow grant type. // Default: "application"
- * tokenUrl?: scalar|null|Param, // The oauth token url. // Default: ""
- * authorizationUrl?: scalar|null|Param, // The oauth authentication url. // Default: ""
- * refreshUrl?: scalar|null|Param, // The oauth refresh url. // Default: ""
- * scopes?: list,
+ * type?: scalar|Param|null, // The oauth type. // Default: "oauth2"
+ * flow?: scalar|Param|null, // The oauth flow grant type. // Default: "application"
+ * tokenUrl?: scalar|Param|null, // The oauth token url. // Default: ""
+ * authorizationUrl?: scalar|Param|null, // The oauth authentication url. // Default: ""
+ * refreshUrl?: scalar|Param|null, // The oauth refresh url. // Default: ""
+ * scopes?: list,
* },
* graphql?: bool|array{
* enabled?: bool|Param, // Default: false
- * default_ide?: scalar|null|Param, // Default: "graphiql"
+ * default_ide?: scalar|Param|null, // Default: "graphiql"
* graphiql?: bool|array{
* enabled?: bool|Param, // Default: false
* },
@@ -1434,7 +1434,7 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* max_query_depth?: int|Param, // Default: 20
* graphql_playground?: array,
* max_query_complexity?: int|Param, // Default: 500
- * nesting_separator?: scalar|null|Param, // The separator to use to filter nested fields. // Default: "_"
+ * nesting_separator?: scalar|Param|null, // The separator to use to filter nested fields. // Default: "_"
* collection?: array{
* pagination?: bool|array{
* enabled?: bool|Param, // Default: true
@@ -1443,35 +1443,35 @@ use Symfony\Component\Config\Loader\ParamConfigurator as Param;
* },
* swagger?: array{
* persist_authorization?: bool|Param, // Persist the SwaggerUI Authorization in the localStorage. // Default: false
- * versions?: list,
+ * versions?: list