Compare commits
24 Commits
769e7ed59e
...
issue-4707
Author | SHA1 | Date | |
---|---|---|---|
f007dcf6d8 | |||
075be9b0df | |||
4e4c5d8e7b | |||
7032787d8c | |||
999e708ff7 | |||
cb8361e7d1 | |||
e3f406a8bb | |||
d6d9e81df6 | |||
8e56433216 | |||
19178bbe3b | |||
14668150cb | |||
0903151f27 | |||
f378751f7a | |||
d707a91694 | |||
f39ab1626e | |||
fe4d683c20 | |||
f36a675d22 | |||
27f957124b | |||
a1049a55a2 | |||
085533b299 | |||
5bfd8991ee | |||
18c0edbe5b | |||
fa77278c55 | |||
daa5eaaa63 |
@ -15,10 +15,12 @@
|
||||
"symfony/console": "5.4.*",
|
||||
"symfony/dependency-injection": "5.4.*",
|
||||
"symfony/dotenv": "5.4.*",
|
||||
"symfony/expression-language": "5.4.*",
|
||||
"symfony/flex": "^1.17|^2",
|
||||
"symfony/form": "5.4.*",
|
||||
"symfony/framework-bundle": "5.4.*",
|
||||
"symfony/http-client": "5.4.*",
|
||||
"symfony/monolog-bundle": "^3.10",
|
||||
"symfony/rate-limiter": "5.4.*",
|
||||
"symfony/runtime": "5.4.*",
|
||||
"symfony/security-bundle": "5.4.*",
|
||||
@ -77,5 +79,8 @@
|
||||
"allow-contrib": true,
|
||||
"require": "5.4.*"
|
||||
}
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/debug-bundle": "5.4.*"
|
||||
}
|
||||
}
|
||||
|
1227
composer.lock
generated
1227
composer.lock
generated
@ -4,7 +4,7 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "7dce269ca449b7de7e1bd2e23df94eab",
|
||||
"content-hash": "9daf21762ed80ef11e74a53f5d27119f",
|
||||
"packages": [
|
||||
{
|
||||
"name": "clue/stream-filter",
|
||||
@ -74,16 +74,16 @@
|
||||
},
|
||||
{
|
||||
"name": "doctrine/annotations",
|
||||
"version": "1.14.3",
|
||||
"version": "1.14.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/doctrine/annotations.git",
|
||||
"reference": "fb0d71a7393298a7b232cbf4c8b1f73f3ec3d5af"
|
||||
"reference": "253dca476f70808a5aeed3a47cc2cc88c5cab915"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/doctrine/annotations/zipball/fb0d71a7393298a7b232cbf4c8b1f73f3ec3d5af",
|
||||
"reference": "fb0d71a7393298a7b232cbf4c8b1f73f3ec3d5af",
|
||||
"url": "https://api.github.com/repos/doctrine/annotations/zipball/253dca476f70808a5aeed3a47cc2cc88c5cab915",
|
||||
"reference": "253dca476f70808a5aeed3a47cc2cc88c5cab915",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -94,11 +94,11 @@
|
||||
},
|
||||
"require-dev": {
|
||||
"doctrine/cache": "^1.11 || ^2.0",
|
||||
"doctrine/coding-standard": "^9 || ^10",
|
||||
"phpstan/phpstan": "~1.4.10 || ^1.8.0",
|
||||
"doctrine/coding-standard": "^9 || ^12",
|
||||
"phpstan/phpstan": "~1.4.10 || ^1.10.28",
|
||||
"phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
|
||||
"symfony/cache": "^4.4 || ^5.4 || ^6",
|
||||
"vimeo/psalm": "^4.10"
|
||||
"symfony/cache": "^4.4 || ^5.4 || ^6.4 || ^7",
|
||||
"vimeo/psalm": "^4.30 || ^5.14"
|
||||
},
|
||||
"suggest": {
|
||||
"php": "PHP 8.0 or higher comes with attributes, a native replacement for annotations"
|
||||
@ -144,9 +144,9 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/doctrine/annotations/issues",
|
||||
"source": "https://github.com/doctrine/annotations/tree/1.14.3"
|
||||
"source": "https://github.com/doctrine/annotations/tree/1.14.4"
|
||||
},
|
||||
"time": "2023-02-01T09:20:38+00:00"
|
||||
"time": "2024-09-05T10:15:52+00:00"
|
||||
},
|
||||
{
|
||||
"name": "doctrine/deprecations",
|
||||
@ -275,16 +275,16 @@
|
||||
},
|
||||
{
|
||||
"name": "guzzlehttp/promises",
|
||||
"version": "2.0.2",
|
||||
"version": "2.0.3",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/guzzle/promises.git",
|
||||
"reference": "bbff78d96034045e58e13dedd6ad91b5d1253223"
|
||||
"reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/guzzle/promises/zipball/bbff78d96034045e58e13dedd6ad91b5d1253223",
|
||||
"reference": "bbff78d96034045e58e13dedd6ad91b5d1253223",
|
||||
"url": "https://api.github.com/repos/guzzle/promises/zipball/6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8",
|
||||
"reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -292,7 +292,7 @@
|
||||
},
|
||||
"require-dev": {
|
||||
"bamarni/composer-bin-plugin": "^1.8.2",
|
||||
"phpunit/phpunit": "^8.5.36 || ^9.6.15"
|
||||
"phpunit/phpunit": "^8.5.39 || ^9.6.20"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
@ -338,7 +338,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/guzzle/promises/issues",
|
||||
"source": "https://github.com/guzzle/promises/tree/2.0.2"
|
||||
"source": "https://github.com/guzzle/promises/tree/2.0.3"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -354,20 +354,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2023-12-03T20:19:20+00:00"
|
||||
"time": "2024-07-18T10:29:17+00:00"
|
||||
},
|
||||
{
|
||||
"name": "guzzlehttp/psr7",
|
||||
"version": "2.6.2",
|
||||
"version": "2.7.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/guzzle/psr7.git",
|
||||
"reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221"
|
||||
"reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/guzzle/psr7/zipball/45b30f99ac27b5ca93cb4831afe16285f57b8221",
|
||||
"reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221",
|
||||
"url": "https://api.github.com/repos/guzzle/psr7/zipball/a70f5c95fb43bc83f07c9c948baa0dc1829bf201",
|
||||
"reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -382,8 +382,8 @@
|
||||
},
|
||||
"require-dev": {
|
||||
"bamarni/composer-bin-plugin": "^1.8.2",
|
||||
"http-interop/http-factory-tests": "^0.9",
|
||||
"phpunit/phpunit": "^8.5.36 || ^9.6.15"
|
||||
"http-interop/http-factory-tests": "0.9.0",
|
||||
"phpunit/phpunit": "^8.5.39 || ^9.6.20"
|
||||
},
|
||||
"suggest": {
|
||||
"laminas/laminas-httphandlerrunner": "Emit PSR-7 responses"
|
||||
@ -454,7 +454,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/guzzle/psr7/issues",
|
||||
"source": "https://github.com/guzzle/psr7/tree/2.6.2"
|
||||
"source": "https://github.com/guzzle/psr7/tree/2.7.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -470,7 +470,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2023-12-03T20:05:35+00:00"
|
||||
"time": "2024-07-18T11:15:46+00:00"
|
||||
},
|
||||
{
|
||||
"name": "http-interop/http-factory-guzzle",
|
||||
@ -590,17 +590,119 @@
|
||||
"time": "2024-03-08T09:58:59+00:00"
|
||||
},
|
||||
{
|
||||
"name": "php-http/client-common",
|
||||
"version": "2.7.1",
|
||||
"name": "monolog/monolog",
|
||||
"version": "2.10.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/php-http/client-common.git",
|
||||
"reference": "1e19c059b0e4d5f717bf5d524d616165aeab0612"
|
||||
"url": "https://github.com/Seldaek/monolog.git",
|
||||
"reference": "5cf826f2991858b54d5c3809bee745560a1042a7"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/php-http/client-common/zipball/1e19c059b0e4d5f717bf5d524d616165aeab0612",
|
||||
"reference": "1e19c059b0e4d5f717bf5d524d616165aeab0612",
|
||||
"url": "https://api.github.com/repos/Seldaek/monolog/zipball/5cf826f2991858b54d5c3809bee745560a1042a7",
|
||||
"reference": "5cf826f2991858b54d5c3809bee745560a1042a7",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.2",
|
||||
"psr/log": "^1.0.1 || ^2.0 || ^3.0"
|
||||
},
|
||||
"provide": {
|
||||
"psr/log-implementation": "1.0.0 || 2.0.0 || 3.0.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"aws/aws-sdk-php": "^2.4.9 || ^3.0",
|
||||
"doctrine/couchdb": "~1.0@dev",
|
||||
"elasticsearch/elasticsearch": "^7 || ^8",
|
||||
"ext-json": "*",
|
||||
"graylog2/gelf-php": "^1.4.2 || ^2@dev",
|
||||
"guzzlehttp/guzzle": "^7.4",
|
||||
"guzzlehttp/psr7": "^2.2",
|
||||
"mongodb/mongodb": "^1.8",
|
||||
"php-amqplib/php-amqplib": "~2.4 || ^3",
|
||||
"phpspec/prophecy": "^1.15",
|
||||
"phpstan/phpstan": "^1.10",
|
||||
"phpunit/phpunit": "^8.5.38 || ^9.6.19",
|
||||
"predis/predis": "^1.1 || ^2.0",
|
||||
"rollbar/rollbar": "^1.3 || ^2 || ^3",
|
||||
"ruflin/elastica": "^7",
|
||||
"swiftmailer/swiftmailer": "^5.3|^6.0",
|
||||
"symfony/mailer": "^5.4 || ^6",
|
||||
"symfony/mime": "^5.4 || ^6"
|
||||
},
|
||||
"suggest": {
|
||||
"aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB",
|
||||
"doctrine/couchdb": "Allow sending log messages to a CouchDB server",
|
||||
"elasticsearch/elasticsearch": "Allow sending log messages to an Elasticsearch server via official client",
|
||||
"ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)",
|
||||
"ext-curl": "Required to send log messages using the IFTTTHandler, the LogglyHandler, the SendGridHandler, the SlackWebhookHandler or the TelegramBotHandler",
|
||||
"ext-mbstring": "Allow to work properly with unicode symbols",
|
||||
"ext-mongodb": "Allow sending log messages to a MongoDB server (via driver)",
|
||||
"ext-openssl": "Required to send log messages using SSL",
|
||||
"ext-sockets": "Allow sending log messages to a Syslog server (via UDP driver)",
|
||||
"graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server",
|
||||
"mongodb/mongodb": "Allow sending log messages to a MongoDB server (via library)",
|
||||
"php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib",
|
||||
"rollbar/rollbar": "Allow sending log messages to Rollbar",
|
||||
"ruflin/elastica": "Allow sending log messages to an Elastic Search server"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-main": "2.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Monolog\\": "src/Monolog"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Jordi Boggiano",
|
||||
"email": "j.boggiano@seld.be",
|
||||
"homepage": "https://seld.be"
|
||||
}
|
||||
],
|
||||
"description": "Sends your logs to files, sockets, inboxes, databases and various web services",
|
||||
"homepage": "https://github.com/Seldaek/monolog",
|
||||
"keywords": [
|
||||
"log",
|
||||
"logging",
|
||||
"psr-3"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/Seldaek/monolog/issues",
|
||||
"source": "https://github.com/Seldaek/monolog/tree/2.10.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://github.com/Seldaek",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/monolog/monolog",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-11-12T12:43:37+00:00"
|
||||
},
|
||||
{
|
||||
"name": "php-http/client-common",
|
||||
"version": "2.7.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/php-http/client-common.git",
|
||||
"reference": "0cfe9858ab9d3b213041b947c881d5b19ceeca46"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/php-http/client-common/zipball/0cfe9858ab9d3b213041b947c881d5b19ceeca46",
|
||||
"reference": "0cfe9858ab9d3b213041b947c881d5b19ceeca46",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -654,22 +756,22 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/php-http/client-common/issues",
|
||||
"source": "https://github.com/php-http/client-common/tree/2.7.1"
|
||||
"source": "https://github.com/php-http/client-common/tree/2.7.2"
|
||||
},
|
||||
"time": "2023-11-30T10:31:25+00:00"
|
||||
"time": "2024-09-24T06:21:48+00:00"
|
||||
},
|
||||
{
|
||||
"name": "php-http/discovery",
|
||||
"version": "1.19.4",
|
||||
"version": "1.20.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/php-http/discovery.git",
|
||||
"reference": "0700efda8d7526335132360167315fdab3aeb599"
|
||||
"reference": "82fe4c73ef3363caed49ff8dd1539ba06044910d"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/php-http/discovery/zipball/0700efda8d7526335132360167315fdab3aeb599",
|
||||
"reference": "0700efda8d7526335132360167315fdab3aeb599",
|
||||
"url": "https://api.github.com/repos/php-http/discovery/zipball/82fe4c73ef3363caed49ff8dd1539ba06044910d",
|
||||
"reference": "82fe4c73ef3363caed49ff8dd1539ba06044910d",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -733,22 +835,22 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/php-http/discovery/issues",
|
||||
"source": "https://github.com/php-http/discovery/tree/1.19.4"
|
||||
"source": "https://github.com/php-http/discovery/tree/1.20.0"
|
||||
},
|
||||
"time": "2024-03-29T13:00:05+00:00"
|
||||
"time": "2024-10-02T11:20:13+00:00"
|
||||
},
|
||||
{
|
||||
"name": "php-http/httplug",
|
||||
"version": "2.4.0",
|
||||
"version": "2.4.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/php-http/httplug.git",
|
||||
"reference": "625ad742c360c8ac580fcc647a1541d29e257f67"
|
||||
"reference": "5cad731844891a4c282f3f3e1b582c46839d22f4"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/php-http/httplug/zipball/625ad742c360c8ac580fcc647a1541d29e257f67",
|
||||
"reference": "625ad742c360c8ac580fcc647a1541d29e257f67",
|
||||
"url": "https://api.github.com/repos/php-http/httplug/zipball/5cad731844891a4c282f3f3e1b582c46839d22f4",
|
||||
"reference": "5cad731844891a4c282f3f3e1b582c46839d22f4",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -790,22 +892,22 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/php-http/httplug/issues",
|
||||
"source": "https://github.com/php-http/httplug/tree/2.4.0"
|
||||
"source": "https://github.com/php-http/httplug/tree/2.4.1"
|
||||
},
|
||||
"time": "2023-04-14T15:10:03+00:00"
|
||||
"time": "2024-09-23T11:39:58+00:00"
|
||||
},
|
||||
{
|
||||
"name": "php-http/message",
|
||||
"version": "1.16.1",
|
||||
"version": "1.16.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/php-http/message.git",
|
||||
"reference": "5997f3289332c699fa2545c427826272498a2088"
|
||||
"reference": "06dd5e8562f84e641bf929bfe699ee0f5ce8080a"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/php-http/message/zipball/5997f3289332c699fa2545c427826272498a2088",
|
||||
"reference": "5997f3289332c699fa2545c427826272498a2088",
|
||||
"url": "https://api.github.com/repos/php-http/message/zipball/06dd5e8562f84e641bf929bfe699ee0f5ce8080a",
|
||||
"reference": "06dd5e8562f84e641bf929bfe699ee0f5ce8080a",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -859,9 +961,9 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/php-http/message/issues",
|
||||
"source": "https://github.com/php-http/message/tree/1.16.1"
|
||||
"source": "https://github.com/php-http/message/tree/1.16.2"
|
||||
},
|
||||
"time": "2024-03-07T13:22:09+00:00"
|
||||
"time": "2024-10-02T11:34:13+00:00"
|
||||
},
|
||||
{
|
||||
"name": "php-http/message-factory",
|
||||
@ -1033,20 +1135,20 @@
|
||||
},
|
||||
{
|
||||
"name": "psr/cache",
|
||||
"version": "1.0.1",
|
||||
"version": "2.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/php-fig/cache.git",
|
||||
"reference": "d11b50ad223250cf17b86e38383413f5a6764bf8"
|
||||
"reference": "213f9dbc5b9bfbc4f8db86d2838dc968752ce13b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8",
|
||||
"reference": "d11b50ad223250cf17b86e38383413f5a6764bf8",
|
||||
"url": "https://api.github.com/repos/php-fig/cache/zipball/213f9dbc5b9bfbc4f8db86d2838dc968752ce13b",
|
||||
"reference": "213f9dbc5b9bfbc4f8db86d2838dc968752ce13b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.0"
|
||||
"php": ">=8.0.0"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
@ -1066,7 +1168,7 @@
|
||||
"authors": [
|
||||
{
|
||||
"name": "PHP-FIG",
|
||||
"homepage": "http://www.php-fig.org/"
|
||||
"homepage": "https://www.php-fig.org/"
|
||||
}
|
||||
],
|
||||
"description": "Common interface for caching libraries",
|
||||
@ -1076,9 +1178,9 @@
|
||||
"psr-6"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/php-fig/cache/tree/master"
|
||||
"source": "https://github.com/php-fig/cache/tree/2.0.0"
|
||||
},
|
||||
"time": "2016-08-06T20:24:11+00:00"
|
||||
"time": "2021-02-03T23:23:37+00:00"
|
||||
},
|
||||
{
|
||||
"name": "psr/container",
|
||||
@ -1232,20 +1334,20 @@
|
||||
},
|
||||
{
|
||||
"name": "psr/http-factory",
|
||||
"version": "1.0.2",
|
||||
"version": "1.1.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/php-fig/http-factory.git",
|
||||
"reference": "e616d01114759c4c489f93b099585439f795fe35"
|
||||
"reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/php-fig/http-factory/zipball/e616d01114759c4c489f93b099585439f795fe35",
|
||||
"reference": "e616d01114759c4c489f93b099585439f795fe35",
|
||||
"url": "https://api.github.com/repos/php-fig/http-factory/zipball/2b4765fddfe3b508ac62f829e852b1501d3f6e8a",
|
||||
"reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.0.0",
|
||||
"php": ">=7.1",
|
||||
"psr/http-message": "^1.0 || ^2.0"
|
||||
},
|
||||
"type": "library",
|
||||
@ -1269,7 +1371,7 @@
|
||||
"homepage": "https://www.php-fig.org/"
|
||||
}
|
||||
],
|
||||
"description": "Common interfaces for PSR-7 HTTP message factories",
|
||||
"description": "PSR-17: Common interfaces for PSR-7 HTTP message factories",
|
||||
"keywords": [
|
||||
"factory",
|
||||
"http",
|
||||
@ -1281,9 +1383,9 @@
|
||||
"response"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/php-fig/http-factory/tree/1.0.2"
|
||||
"source": "https://github.com/php-fig/http-factory"
|
||||
},
|
||||
"time": "2023-04-10T20:10:41+00:00"
|
||||
"time": "2024-04-15T12:06:14+00:00"
|
||||
},
|
||||
{
|
||||
"name": "psr/http-message",
|
||||
@ -1340,30 +1442,30 @@
|
||||
},
|
||||
{
|
||||
"name": "psr/log",
|
||||
"version": "1.1.4",
|
||||
"version": "2.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/php-fig/log.git",
|
||||
"reference": "d49695b909c3b7628b6289db5479a1c204601f11"
|
||||
"reference": "ef29f6d262798707a9edd554e2b82517ef3a9376"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/php-fig/log/zipball/d49695b909c3b7628b6289db5479a1c204601f11",
|
||||
"reference": "d49695b909c3b7628b6289db5479a1c204601f11",
|
||||
"url": "https://api.github.com/repos/php-fig/log/zipball/ef29f6d262798707a9edd554e2b82517ef3a9376",
|
||||
"reference": "ef29f6d262798707a9edd554e2b82517ef3a9376",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.0"
|
||||
"php": ">=8.0.0"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "1.1.x-dev"
|
||||
"dev-master": "2.0.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Psr\\Log\\": "Psr/Log/"
|
||||
"Psr\\Log\\": "src"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
@ -1384,9 +1486,9 @@
|
||||
"psr-3"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/php-fig/log/tree/1.1.4"
|
||||
"source": "https://github.com/php-fig/log/tree/2.0.0"
|
||||
},
|
||||
"time": "2021-05-03T11:20:27+00:00"
|
||||
"time": "2021-07-14T16:41:46+00:00"
|
||||
},
|
||||
{
|
||||
"name": "ralouphie/getallheaders",
|
||||
@ -1731,16 +1833,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/asset",
|
||||
"version": "v5.4.35",
|
||||
"version": "v5.4.40",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/asset.git",
|
||||
"reference": "0e98032106d18e57f57176d616e3fae80db7a845"
|
||||
"reference": "e5aa241b4914257164b39c3c2678b2c41b7671e3"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/asset/zipball/0e98032106d18e57f57176d616e3fae80db7a845",
|
||||
"reference": "0e98032106d18e57f57176d616e3fae80db7a845",
|
||||
"url": "https://api.github.com/repos/symfony/asset/zipball/e5aa241b4914257164b39c3c2678b2c41b7671e3",
|
||||
"reference": "e5aa241b4914257164b39c3c2678b2c41b7671e3",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -1785,7 +1887,7 @@
|
||||
"description": "Manages URL generation and versioning of web assets such as CSS stylesheets, JavaScript files and image files",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/asset/tree/v5.4.35"
|
||||
"source": "https://github.com/symfony/asset/tree/v5.4.40"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -1801,20 +1903,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-23T13:51:25+00:00"
|
||||
"time": "2024-05-31T14:33:22+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/cache",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/cache.git",
|
||||
"reference": "223c3afac82e003a76931b71d77db408636a0de8"
|
||||
"reference": "4b3e7bf157b8b5a010865701d9106b5f0a9c99a8"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/cache/zipball/223c3afac82e003a76931b71d77db408636a0de8",
|
||||
"reference": "223c3afac82e003a76931b71d77db408636a0de8",
|
||||
"url": "https://api.github.com/repos/symfony/cache/zipball/4b3e7bf157b8b5a010865701d9106b5f0a9c99a8",
|
||||
"reference": "4b3e7bf157b8b5a010865701d9106b5f0a9c99a8",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -1843,7 +1945,7 @@
|
||||
"cache/integration-tests": "dev-master",
|
||||
"doctrine/cache": "^1.6|^2.0",
|
||||
"doctrine/dbal": "^2.13.1|^3|^4",
|
||||
"predis/predis": "^1.1",
|
||||
"predis/predis": "^1.1|^2.0",
|
||||
"psr/simple-cache": "^1.0|^2.0",
|
||||
"symfony/config": "^4.4|^5.0|^6.0",
|
||||
"symfony/dependency-injection": "^4.4|^5.0|^6.0",
|
||||
@ -1882,7 +1984,7 @@
|
||||
"psr6"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/cache/tree/v5.4.38"
|
||||
"source": "https://github.com/symfony/cache/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -1898,7 +2000,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-19T09:55:32+00:00"
|
||||
"time": "2024-09-13T16:57:39+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/cache-contracts",
|
||||
@ -1981,16 +2083,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/config",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.40",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/config.git",
|
||||
"reference": "3dcd47d4bbd9fea4d1210e7a7a0a5ca02d99df14"
|
||||
"reference": "d4e1db78421163b98dd9971d247fd0df4a57ee5e"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/config/zipball/3dcd47d4bbd9fea4d1210e7a7a0a5ca02d99df14",
|
||||
"reference": "3dcd47d4bbd9fea4d1210e7a7a0a5ca02d99df14",
|
||||
"url": "https://api.github.com/repos/symfony/config/zipball/d4e1db78421163b98dd9971d247fd0df4a57ee5e",
|
||||
"reference": "d4e1db78421163b98dd9971d247fd0df4a57ee5e",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -2040,7 +2142,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/v5.4.38"
|
||||
"source": "https://github.com/symfony/config/tree/v5.4.40"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -2056,20 +2158,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-22T10:04:40+00:00"
|
||||
"time": "2024-05-31T14:33:22+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/console",
|
||||
"version": "v5.4.36",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/console.git",
|
||||
"reference": "39f75d9d73d0c11952fdcecf4877b4d0f62a8f6e"
|
||||
"reference": "5b5a0aa66e3296e303e22490f90f521551835a83"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/console/zipball/39f75d9d73d0c11952fdcecf4877b4d0f62a8f6e",
|
||||
"reference": "39f75d9d73d0c11952fdcecf4877b4d0f62a8f6e",
|
||||
"url": "https://api.github.com/repos/symfony/console/zipball/5b5a0aa66e3296e303e22490f90f521551835a83",
|
||||
"reference": "5b5a0aa66e3296e303e22490f90f521551835a83",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -2139,7 +2241,7 @@
|
||||
"terminal"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/console/tree/v5.4.36"
|
||||
"source": "https://github.com/symfony/console/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -2155,20 +2257,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-02-20T16:33:57+00:00"
|
||||
"time": "2024-09-20T07:56:40+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/dependency-injection",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/dependency-injection.git",
|
||||
"reference": "0ba1fa459d284a9398c71afa1cb5d13de025de17"
|
||||
"reference": "23eb9f3803a931aef16a65f362a9aeb0640a1374"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/dependency-injection/zipball/0ba1fa459d284a9398c71afa1cb5d13de025de17",
|
||||
"reference": "0ba1fa459d284a9398c71afa1cb5d13de025de17",
|
||||
"url": "https://api.github.com/repos/symfony/dependency-injection/zipball/23eb9f3803a931aef16a65f362a9aeb0640a1374",
|
||||
"reference": "23eb9f3803a931aef16a65f362a9aeb0640a1374",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -2228,7 +2330,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/v5.4.38"
|
||||
"source": "https://github.com/symfony/dependency-injection/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -2244,29 +2346,29 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-18T16:56:51+00:00"
|
||||
"time": "2024-09-12T20:01:35+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/deprecation-contracts",
|
||||
"version": "v2.5.3",
|
||||
"version": "v3.5.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/deprecation-contracts.git",
|
||||
"reference": "80d075412b557d41002320b96a096ca65aa2c98d"
|
||||
"reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/80d075412b557d41002320b96a096ca65aa2c98d",
|
||||
"reference": "80d075412b557d41002320b96a096ca65aa2c98d",
|
||||
"url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1",
|
||||
"reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.1"
|
||||
"php": ">=8.1"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-main": "2.5-dev"
|
||||
"dev-main": "3.5-dev"
|
||||
},
|
||||
"thanks": {
|
||||
"name": "symfony/contracts",
|
||||
@ -2295,7 +2397,7 @@
|
||||
"description": "A generic function and convention to trigger deprecation notices",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.3"
|
||||
"source": "https://github.com/symfony/deprecation-contracts/tree/v3.5.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -2311,20 +2413,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2023-01-24T14:02:46+00:00"
|
||||
"time": "2024-04-18T09:32:20+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/dotenv",
|
||||
"version": "v5.4.35",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/dotenv.git",
|
||||
"reference": "4de488440104b99d2e7c0717ee432e760b061e32"
|
||||
"reference": "bb4fef2bf035a50170fd95e5b146152834126008"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/dotenv/zipball/4de488440104b99d2e7c0717ee432e760b061e32",
|
||||
"reference": "4de488440104b99d2e7c0717ee432e760b061e32",
|
||||
"url": "https://api.github.com/repos/symfony/dotenv/zipball/bb4fef2bf035a50170fd95e5b146152834126008",
|
||||
"reference": "bb4fef2bf035a50170fd95e5b146152834126008",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -2366,7 +2468,7 @@
|
||||
"environment"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/dotenv/tree/v5.4.35"
|
||||
"source": "https://github.com/symfony/dotenv/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -2382,20 +2484,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-23T13:51:25+00:00"
|
||||
"time": "2024-09-16T09:39:25+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/error-handler",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.42",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/error-handler.git",
|
||||
"reference": "3c1fed45a12718e7e2758eef072677d01a0c91a4"
|
||||
"reference": "db15ba0fd50890156ed40087ccedc7851a1f5b76"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/error-handler/zipball/3c1fed45a12718e7e2758eef072677d01a0c91a4",
|
||||
"reference": "3c1fed45a12718e7e2758eef072677d01a0c91a4",
|
||||
"url": "https://api.github.com/repos/symfony/error-handler/zipball/db15ba0fd50890156ed40087ccedc7851a1f5b76",
|
||||
"reference": "db15ba0fd50890156ed40087ccedc7851a1f5b76",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -2437,7 +2539,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/v5.4.38"
|
||||
"source": "https://github.com/symfony/error-handler/tree/v5.4.42"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -2453,20 +2555,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-19T10:19:25+00:00"
|
||||
"time": "2024-07-23T12:34:05+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/event-dispatcher",
|
||||
"version": "v5.4.35",
|
||||
"version": "v5.4.40",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/event-dispatcher.git",
|
||||
"reference": "7a69a85c7ea5bdd1e875806a99c51a87d3a74b38"
|
||||
"reference": "a54e2a8a114065f31020d6a89ede83e34c3b27a4"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/7a69a85c7ea5bdd1e875806a99c51a87d3a74b38",
|
||||
"reference": "7a69a85c7ea5bdd1e875806a99c51a87d3a74b38",
|
||||
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/a54e2a8a114065f31020d6a89ede83e34c3b27a4",
|
||||
"reference": "a54e2a8a114065f31020d6a89ede83e34c3b27a4",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -2522,7 +2624,7 @@
|
||||
"description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/event-dispatcher/tree/v5.4.35"
|
||||
"source": "https://github.com/symfony/event-dispatcher/tree/v5.4.40"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -2538,33 +2640,30 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-23T13:51:25+00:00"
|
||||
"time": "2024-05-31T14:33:22+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/event-dispatcher-contracts",
|
||||
"version": "v2.5.3",
|
||||
"version": "v3.5.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/event-dispatcher-contracts.git",
|
||||
"reference": "540f4c73e87fd0c71ca44a6aa305d024ac68cb73"
|
||||
"reference": "8f93aec25d41b72493c6ddff14e916177c9efc50"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/540f4c73e87fd0c71ca44a6aa305d024ac68cb73",
|
||||
"reference": "540f4c73e87fd0c71ca44a6aa305d024ac68cb73",
|
||||
"url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/8f93aec25d41b72493c6ddff14e916177c9efc50",
|
||||
"reference": "8f93aec25d41b72493c6ddff14e916177c9efc50",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.2.5",
|
||||
"php": ">=8.1",
|
||||
"psr/event-dispatcher": "^1"
|
||||
},
|
||||
"suggest": {
|
||||
"symfony/event-dispatcher-implementation": ""
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-main": "2.5-dev"
|
||||
"dev-main": "3.5-dev"
|
||||
},
|
||||
"thanks": {
|
||||
"name": "symfony/contracts",
|
||||
@ -2601,7 +2700,7 @@
|
||||
"standards"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/event-dispatcher-contracts/tree/v2.5.3"
|
||||
"source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.5.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -2617,20 +2716,83 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-23T13:51:25+00:00"
|
||||
"time": "2024-04-18T09:32:20+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/filesystem",
|
||||
"version": "v5.4.38",
|
||||
"name": "symfony/expression-language",
|
||||
"version": "v5.4.43",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/filesystem.git",
|
||||
"reference": "899330a01056077271e2f614c7b28b0379a671eb"
|
||||
"url": "https://github.com/symfony/expression-language.git",
|
||||
"reference": "9d23f7bfd1d602fddc6d6520decedc99739497dd"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/filesystem/zipball/899330a01056077271e2f614c7b28b0379a671eb",
|
||||
"reference": "899330a01056077271e2f614c7b28b0379a671eb",
|
||||
"url": "https://api.github.com/repos/symfony/expression-language/zipball/9d23f7bfd1d602fddc6d6520decedc99739497dd",
|
||||
"reference": "9d23f7bfd1d602fddc6d6520decedc99739497dd",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.2.5",
|
||||
"symfony/cache": "^4.4|^5.0|^6.0",
|
||||
"symfony/service-contracts": "^1.1|^2|^3"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Symfony\\Component\\ExpressionLanguage\\": ""
|
||||
},
|
||||
"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 engine that can compile and evaluate expressions",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/expression-language/tree/v5.4.43"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-08-09T07:10:35+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/filesystem",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/filesystem.git",
|
||||
"reference": "76c3818964e9d32be3862c9318ae3ba9aa280ddc"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/filesystem/zipball/76c3818964e9d32be3862c9318ae3ba9aa280ddc",
|
||||
"reference": "76c3818964e9d32be3862c9318ae3ba9aa280ddc",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -2639,6 +2801,9 @@
|
||||
"symfony/polyfill-mbstring": "~1.8",
|
||||
"symfony/polyfill-php80": "^1.16"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/process": "^5.4|^6.4"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
@ -2665,7 +2830,7 @@
|
||||
"description": "Provides basic utilities for the filesystem",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/filesystem/tree/v5.4.38"
|
||||
"source": "https://github.com/symfony/filesystem/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -2681,20 +2846,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-21T08:05:07+00:00"
|
||||
"time": "2024-09-16T14:52:48+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/finder",
|
||||
"version": "v5.4.35",
|
||||
"version": "v5.4.43",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/finder.git",
|
||||
"reference": "abe6d6f77d9465fed3cd2d029b29d03b56b56435"
|
||||
"reference": "ae25a9145a900764158d439653d5630191155ca0"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/finder/zipball/abe6d6f77d9465fed3cd2d029b29d03b56b56435",
|
||||
"reference": "abe6d6f77d9465fed3cd2d029b29d03b56b56435",
|
||||
"url": "https://api.github.com/repos/symfony/finder/zipball/ae25a9145a900764158d439653d5630191155ca0",
|
||||
"reference": "ae25a9145a900764158d439653d5630191155ca0",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -2728,7 +2893,7 @@
|
||||
"description": "Finds files and directories via an intuitive fluent interface",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/finder/tree/v5.4.35"
|
||||
"source": "https://github.com/symfony/finder/tree/v5.4.43"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -2744,32 +2909,35 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-23T13:51:25+00:00"
|
||||
"time": "2024-08-13T14:03:51+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/flex",
|
||||
"version": "v1.21.6",
|
||||
"version": "v2.4.7",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/flex.git",
|
||||
"reference": "06b58a5e5b4c6528fb12e0fac5fea0db3f1e7ae8"
|
||||
"reference": "92f4fba342161ff36072bd3b8e0b3c6c23160402"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/flex/zipball/06b58a5e5b4c6528fb12e0fac5fea0db3f1e7ae8",
|
||||
"reference": "06b58a5e5b4c6528fb12e0fac5fea0db3f1e7ae8",
|
||||
"url": "https://api.github.com/repos/symfony/flex/zipball/92f4fba342161ff36072bd3b8e0b3c6c23160402",
|
||||
"reference": "92f4fba342161ff36072bd3b8e0b3c6c23160402",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"composer-plugin-api": "^1.0|^2.0",
|
||||
"php": ">=7.1"
|
||||
"composer-plugin-api": "^2.1",
|
||||
"php": ">=8.0"
|
||||
},
|
||||
"conflict": {
|
||||
"composer/semver": "<1.7.2"
|
||||
},
|
||||
"require-dev": {
|
||||
"composer/composer": "^1.0.2|^2.0",
|
||||
"symfony/dotenv": "^4.4|^5.0|^6.0",
|
||||
"symfony/filesystem": "^4.4|^5.0|^6.0",
|
||||
"symfony/phpunit-bridge": "^4.4.12|^5.0|^6.0",
|
||||
"symfony/process": "^4.4|^5.0|^6.0"
|
||||
"composer/composer": "^2.1",
|
||||
"symfony/dotenv": "^5.4|^6.0",
|
||||
"symfony/filesystem": "^5.4|^6.0",
|
||||
"symfony/phpunit-bridge": "^5.4|^6.0",
|
||||
"symfony/process": "^5.4|^6.0"
|
||||
},
|
||||
"type": "composer-plugin",
|
||||
"extra": {
|
||||
@ -2793,7 +2961,7 @@
|
||||
"description": "Composer plugin for Symfony",
|
||||
"support": {
|
||||
"issues": "https://github.com/symfony/flex/issues",
|
||||
"source": "https://github.com/symfony/flex/tree/v1.21.6"
|
||||
"source": "https://github.com/symfony/flex/tree/v2.4.7"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -2809,20 +2977,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-02T08:16:37+00:00"
|
||||
"time": "2024-10-07T08:51:54+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/form",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/form.git",
|
||||
"reference": "a4841abdc1ad64a17df79b68482cbbafd23e01f1"
|
||||
"reference": "4f3d91f8a7626e3cab9e3d2952321df10013a6eb"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/form/zipball/a4841abdc1ad64a17df79b68482cbbafd23e01f1",
|
||||
"reference": "a4841abdc1ad64a17df79b68482cbbafd23e01f1",
|
||||
"url": "https://api.github.com/repos/symfony/form/zipball/4f3d91f8a7626e3cab9e3d2952321df10013a6eb",
|
||||
"reference": "4f3d91f8a7626e3cab9e3d2952321df10013a6eb",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -2895,7 +3063,7 @@
|
||||
"description": "Allows to easily create, process and reuse HTML forms",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/form/tree/v5.4.38"
|
||||
"source": "https://github.com/symfony/form/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -2911,20 +3079,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-19T09:55:32+00:00"
|
||||
"time": "2024-09-20T07:56:40+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/framework-bundle",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/framework-bundle.git",
|
||||
"reference": "322b40a1235d85e93b3440cad59c67d73cdb5d9f"
|
||||
"reference": "9ae1957fb817c0fec6d171931f675895a434d988"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/framework-bundle/zipball/322b40a1235d85e93b3440cad59c67d73cdb5d9f",
|
||||
"reference": "322b40a1235d85e93b3440cad59c67d73cdb5d9f",
|
||||
"url": "https://api.github.com/repos/symfony/framework-bundle/zipball/9ae1957fb817c0fec6d171931f675895a434d988",
|
||||
"reference": "9ae1957fb817c0fec6d171931f675895a434d988",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -2932,7 +3100,7 @@
|
||||
"php": ">=7.2.5",
|
||||
"symfony/cache": "^5.2|^6.0",
|
||||
"symfony/config": "^5.3|^6.0",
|
||||
"symfony/dependency-injection": "^5.4.5|^6.0.5",
|
||||
"symfony/dependency-injection": "^5.4.44|^6.0.5",
|
||||
"symfony/deprecation-contracts": "^2.1|^3",
|
||||
"symfony/error-handler": "^4.4.1|^5.0.1|^6.0",
|
||||
"symfony/event-dispatcher": "^5.1|^6.0",
|
||||
@ -3045,7 +3213,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/v5.4.38"
|
||||
"source": "https://github.com/symfony/framework-bundle/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -3061,20 +3229,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-15T07:39:49+00:00"
|
||||
"time": "2024-09-20T08:11:35+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/http-client",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/http-client.git",
|
||||
"reference": "2a292194f6d4cf22d2348248d1c637750f72309d"
|
||||
"reference": "58d3dc6bfa5fb37137e32d52ddc202ba4d1cea04"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/http-client/zipball/2a292194f6d4cf22d2348248d1c637750f72309d",
|
||||
"reference": "2a292194f6d4cf22d2348248d1c637750f72309d",
|
||||
"url": "https://api.github.com/repos/symfony/http-client/zipball/58d3dc6bfa5fb37137e32d52ddc202ba4d1cea04",
|
||||
"reference": "58d3dc6bfa5fb37137e32d52ddc202ba4d1cea04",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -3136,7 +3304,7 @@
|
||||
"http"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/http-client/tree/v5.4.38"
|
||||
"source": "https://github.com/symfony/http-client/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -3152,7 +3320,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-04-01T18:54:44+00:00"
|
||||
"time": "2024-09-16T14:04:28+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/http-client-contracts",
|
||||
@ -3234,16 +3402,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/http-foundation",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/http-foundation.git",
|
||||
"reference": "d8c13d35f68c69e15595fe37fa2c225d11c10f7e"
|
||||
"reference": "ae0d217e5932aa0b70ddb4cf7822cc76d48aee53"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/http-foundation/zipball/d8c13d35f68c69e15595fe37fa2c225d11c10f7e",
|
||||
"reference": "d8c13d35f68c69e15595fe37fa2c225d11c10f7e",
|
||||
"url": "https://api.github.com/repos/symfony/http-foundation/zipball/ae0d217e5932aa0b70ddb4cf7822cc76d48aee53",
|
||||
"reference": "ae0d217e5932aa0b70ddb4cf7822cc76d48aee53",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -3253,7 +3421,7 @@
|
||||
"symfony/polyfill-php80": "^1.16"
|
||||
},
|
||||
"require-dev": {
|
||||
"predis/predis": "~1.0",
|
||||
"predis/predis": "^1.0|^2.0",
|
||||
"symfony/cache": "^4.4|^5.0|^6.0",
|
||||
"symfony/dependency-injection": "^5.4|^6.0",
|
||||
"symfony/expression-language": "^4.4|^5.0|^6.0",
|
||||
@ -3290,7 +3458,7 @@
|
||||
"description": "Defines an object-oriented layer for the HTTP specification",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/http-foundation/tree/v5.4.38"
|
||||
"source": "https://github.com/symfony/http-foundation/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -3306,20 +3474,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-19T10:19:25+00:00"
|
||||
"time": "2024-09-15T07:55:06+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/http-kernel",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/http-kernel.git",
|
||||
"reference": "21c32c7c6c32ea8d0f4b8e88a2607a2dc72799e5"
|
||||
"reference": "788dcf72d9af7432a886aa3b0c5904d68087ba13"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/http-kernel/zipball/21c32c7c6c32ea8d0f4b8e88a2607a2dc72799e5",
|
||||
"reference": "21c32c7c6c32ea8d0f4b8e88a2607a2dc72799e5",
|
||||
"url": "https://api.github.com/repos/symfony/http-kernel/zipball/788dcf72d9af7432a886aa3b0c5904d68087ba13",
|
||||
"reference": "788dcf72d9af7432a886aa3b0c5904d68087ba13",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -3368,6 +3536,7 @@
|
||||
"symfony/stopwatch": "^4.4|^5.0|^6.0",
|
||||
"symfony/translation": "^4.4|^5.0|^6.0",
|
||||
"symfony/translation-contracts": "^1.1|^2|^3",
|
||||
"symfony/var-dumper": "^4.4.31|^5.4",
|
||||
"twig/twig": "^2.13|^3.0.4"
|
||||
},
|
||||
"suggest": {
|
||||
@ -3402,7 +3571,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/v5.4.38"
|
||||
"source": "https://github.com/symfony/http-kernel/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -3418,20 +3587,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-04-02T19:56:39+00:00"
|
||||
"time": "2024-09-21T05:47:58+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/lock",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.40",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/lock.git",
|
||||
"reference": "d1a912eaac5a39e2fac19e00055d07890a1b9187"
|
||||
"reference": "d96955c9919fa8609b193ba76e9f527776b70176"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/lock/zipball/d1a912eaac5a39e2fac19e00055d07890a1b9187",
|
||||
"reference": "d1a912eaac5a39e2fac19e00055d07890a1b9187",
|
||||
"url": "https://api.github.com/repos/symfony/lock/zipball/d96955c9919fa8609b193ba76e9f527776b70176",
|
||||
"reference": "d96955c9919fa8609b193ba76e9f527776b70176",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -3445,7 +3614,7 @@
|
||||
},
|
||||
"require-dev": {
|
||||
"doctrine/dbal": "^2.13|^3|^4",
|
||||
"predis/predis": "~1.0"
|
||||
"predis/predis": "^1.0|^2.0"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
@ -3481,7 +3650,7 @@
|
||||
"semaphore"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/lock/tree/v5.4.38"
|
||||
"source": "https://github.com/symfony/lock/tree/v5.4.40"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -3497,20 +3666,185 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-16T08:39:04+00:00"
|
||||
"time": "2024-05-31T14:33:22+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/options-resolver",
|
||||
"version": "v5.4.21",
|
||||
"name": "symfony/monolog-bridge",
|
||||
"version": "v5.4.45",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/options-resolver.git",
|
||||
"reference": "4fe5cf6ede71096839f0e4b4444d65dd3a7c1eb9"
|
||||
"url": "https://github.com/symfony/monolog-bridge.git",
|
||||
"reference": "cf7d75d4d64a41fbb1c0e92301bec404134fa84b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/options-resolver/zipball/4fe5cf6ede71096839f0e4b4444d65dd3a7c1eb9",
|
||||
"reference": "4fe5cf6ede71096839f0e4b4444d65dd3a7c1eb9",
|
||||
"url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/cf7d75d4d64a41fbb1c0e92301bec404134fa84b",
|
||||
"reference": "cf7d75d4d64a41fbb1c0e92301bec404134fa84b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"monolog/monolog": "^1.25.1|^2",
|
||||
"php": ">=7.2.5",
|
||||
"symfony/deprecation-contracts": "^2.1|^3",
|
||||
"symfony/http-kernel": "^5.3|^6.0",
|
||||
"symfony/polyfill-php80": "^1.16",
|
||||
"symfony/service-contracts": "^1.1|^2|^3"
|
||||
},
|
||||
"conflict": {
|
||||
"symfony/console": "<4.4",
|
||||
"symfony/http-foundation": "<5.3"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/console": "^4.4|^5.0|^6.0",
|
||||
"symfony/http-client": "^4.4|^5.0|^6.0",
|
||||
"symfony/mailer": "^4.4|^5.0|^6.0",
|
||||
"symfony/messenger": "^4.4|^5.0|^6.0",
|
||||
"symfony/mime": "^4.4|^5.0|^6.0",
|
||||
"symfony/security-core": "^4.4|^5.0|^6.0",
|
||||
"symfony/var-dumper": "^4.4|^5.0|^6.0"
|
||||
},
|
||||
"suggest": {
|
||||
"symfony/console": "For the possibility to show log messages in console commands depending on verbosity settings.",
|
||||
"symfony/http-kernel": "For using the debugging handlers together with the response life cycle of the HTTP kernel.",
|
||||
"symfony/var-dumper": "For using the debugging handlers like the console handler or the log server handler."
|
||||
},
|
||||
"type": "symfony-bridge",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Symfony\\Bridge\\Monolog\\": ""
|
||||
},
|
||||
"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 integration for Monolog with various Symfony components",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/monolog-bridge/tree/v5.4.45"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-10-10T06:37:45+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/monolog-bundle",
|
||||
"version": "v3.10.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/monolog-bundle.git",
|
||||
"reference": "414f951743f4aa1fd0f5bf6a0e9c16af3fe7f181"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/monolog-bundle/zipball/414f951743f4aa1fd0f5bf6a0e9c16af3fe7f181",
|
||||
"reference": "414f951743f4aa1fd0f5bf6a0e9c16af3fe7f181",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"monolog/monolog": "^1.25.1 || ^2.0 || ^3.0",
|
||||
"php": ">=7.2.5",
|
||||
"symfony/config": "^5.4 || ^6.0 || ^7.0",
|
||||
"symfony/dependency-injection": "^5.4 || ^6.0 || ^7.0",
|
||||
"symfony/http-kernel": "^5.4 || ^6.0 || ^7.0",
|
||||
"symfony/monolog-bridge": "^5.4 || ^6.0 || ^7.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/console": "^5.4 || ^6.0 || ^7.0",
|
||||
"symfony/phpunit-bridge": "^6.3 || ^7.0",
|
||||
"symfony/yaml": "^5.4 || ^6.0 || ^7.0"
|
||||
},
|
||||
"type": "symfony-bundle",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "3.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Symfony\\Bundle\\MonologBundle\\": ""
|
||||
},
|
||||
"exclude-from-classmap": [
|
||||
"/Tests/"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony MonologBundle",
|
||||
"homepage": "https://symfony.com",
|
||||
"keywords": [
|
||||
"log",
|
||||
"logging"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/symfony/monolog-bundle/issues",
|
||||
"source": "https://github.com/symfony/monolog-bundle/tree/v3.10.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2023-11-06T17:08:13+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/options-resolver",
|
||||
"version": "v5.4.40",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/options-resolver.git",
|
||||
"reference": "bd1afbde6613a8d6b956115e0e14b196191fd0c4"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/options-resolver/zipball/bd1afbde6613a8d6b956115e0e14b196191fd0c4",
|
||||
"reference": "bd1afbde6613a8d6b956115e0e14b196191fd0c4",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -3550,7 +3884,7 @@
|
||||
"options"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/options-resolver/tree/v5.4.21"
|
||||
"source": "https://github.com/symfony/options-resolver/tree/v5.4.40"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -3566,20 +3900,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2023-02-14T08:03:56+00:00"
|
||||
"time": "2024-05-31T14:33:22+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/password-hasher",
|
||||
"version": "v5.4.36",
|
||||
"version": "v5.4.40",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/password-hasher.git",
|
||||
"reference": "a0c08f9045230ef73d25617b2c0e0b56d8feb0a2"
|
||||
"reference": "21b98178ab2024e6c7d8ab72cca9ba16015c6093"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/password-hasher/zipball/a0c08f9045230ef73d25617b2c0e0b56d8feb0a2",
|
||||
"reference": "a0c08f9045230ef73d25617b2c0e0b56d8feb0a2",
|
||||
"url": "https://api.github.com/repos/symfony/password-hasher/zipball/21b98178ab2024e6c7d8ab72cca9ba16015c6093",
|
||||
"reference": "21b98178ab2024e6c7d8ab72cca9ba16015c6093",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -3624,7 +3958,7 @@
|
||||
"password"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/password-hasher/tree/v5.4.36"
|
||||
"source": "https://github.com/symfony/password-hasher/tree/v5.4.40"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -3640,24 +3974,24 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-02-10T16:59:05+00:00"
|
||||
"time": "2024-05-31T14:33:22+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-intl-grapheme",
|
||||
"version": "v1.29.0",
|
||||
"version": "v1.31.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-intl-grapheme.git",
|
||||
"reference": "32a9da87d7b3245e09ac426c83d334ae9f06f80f"
|
||||
"reference": "b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/32a9da87d7b3245e09ac426c83d334ae9f06f80f",
|
||||
"reference": "32a9da87d7b3245e09ac426c83d334ae9f06f80f",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe",
|
||||
"reference": "b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.1"
|
||||
"php": ">=7.2"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-intl": "For best performance"
|
||||
@ -3702,7 +4036,7 @@
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.29.0"
|
||||
"source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.31.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -3718,24 +4052,24 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-29T20:11:03+00:00"
|
||||
"time": "2024-09-09T11:45:10+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-intl-icu",
|
||||
"version": "v1.29.0",
|
||||
"version": "v1.31.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-intl-icu.git",
|
||||
"reference": "07094a28851a49107f3ab4f9120ca2975a64b6e1"
|
||||
"reference": "d80a05e9904d2c2b9b95929f3e4b5d3a8f418d78"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/07094a28851a49107f3ab4f9120ca2975a64b6e1",
|
||||
"reference": "07094a28851a49107f3ab4f9120ca2975a64b6e1",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/d80a05e9904d2c2b9b95929f3e4b5d3a8f418d78",
|
||||
"reference": "d80a05e9904d2c2b9b95929f3e4b5d3a8f418d78",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.1"
|
||||
"php": ">=7.2"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-intl": "For best performance and support of other locales than \"en\""
|
||||
@ -3786,7 +4120,7 @@
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-intl-icu/tree/v1.29.0"
|
||||
"source": "https://github.com/symfony/polyfill-intl-icu/tree/v1.31.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -3802,24 +4136,24 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-29T20:12:16+00:00"
|
||||
"time": "2024-09-09T11:45:10+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-intl-normalizer",
|
||||
"version": "v1.29.0",
|
||||
"version": "v1.31.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-intl-normalizer.git",
|
||||
"reference": "bc45c394692b948b4d383a08d7753968bed9a83d"
|
||||
"reference": "3833d7255cc303546435cb650316bff708a1c75c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/bc45c394692b948b4d383a08d7753968bed9a83d",
|
||||
"reference": "bc45c394692b948b4d383a08d7753968bed9a83d",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/3833d7255cc303546435cb650316bff708a1c75c",
|
||||
"reference": "3833d7255cc303546435cb650316bff708a1c75c",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.1"
|
||||
"php": ">=7.2"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-intl": "For best performance"
|
||||
@ -3867,7 +4201,7 @@
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.29.0"
|
||||
"source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.31.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -3883,24 +4217,24 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-29T20:11:03+00:00"
|
||||
"time": "2024-09-09T11:45:10+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-mbstring",
|
||||
"version": "v1.29.0",
|
||||
"version": "v1.31.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-mbstring.git",
|
||||
"reference": "9773676c8a1bb1f8d4340a62efe641cf76eda7ec"
|
||||
"reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/9773676c8a1bb1f8d4340a62efe641cf76eda7ec",
|
||||
"reference": "9773676c8a1bb1f8d4340a62efe641cf76eda7ec",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/85181ba99b2345b0ef10ce42ecac37612d9fd341",
|
||||
"reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.1"
|
||||
"php": ">=7.2"
|
||||
},
|
||||
"provide": {
|
||||
"ext-mbstring": "*"
|
||||
@ -3947,7 +4281,7 @@
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.29.0"
|
||||
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.31.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -3963,24 +4297,24 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-29T20:11:03+00:00"
|
||||
"time": "2024-09-09T11:45:10+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-php73",
|
||||
"version": "v1.29.0",
|
||||
"version": "v1.31.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-php73.git",
|
||||
"reference": "21bd091060673a1177ae842c0ef8fe30893114d2"
|
||||
"reference": "0f68c03565dcaaf25a890667542e8bd75fe7e5bb"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/21bd091060673a1177ae842c0ef8fe30893114d2",
|
||||
"reference": "21bd091060673a1177ae842c0ef8fe30893114d2",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/0f68c03565dcaaf25a890667542e8bd75fe7e5bb",
|
||||
"reference": "0f68c03565dcaaf25a890667542e8bd75fe7e5bb",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.1"
|
||||
"php": ">=7.2"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
@ -4023,7 +4357,7 @@
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-php73/tree/v1.29.0"
|
||||
"source": "https://github.com/symfony/polyfill-php73/tree/v1.31.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -4039,24 +4373,24 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-29T20:11:03+00:00"
|
||||
"time": "2024-09-09T11:45:10+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-php80",
|
||||
"version": "v1.29.0",
|
||||
"version": "v1.31.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-php80.git",
|
||||
"reference": "87b68208d5c1188808dd7839ee1e6c8ec3b02f1b"
|
||||
"reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/87b68208d5c1188808dd7839ee1e6c8ec3b02f1b",
|
||||
"reference": "87b68208d5c1188808dd7839ee1e6c8ec3b02f1b",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/60328e362d4c2c802a54fcbf04f9d3fb892b4cf8",
|
||||
"reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.1"
|
||||
"php": ">=7.2"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
@ -4103,7 +4437,7 @@
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-php80/tree/v1.29.0"
|
||||
"source": "https://github.com/symfony/polyfill-php80/tree/v1.31.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -4119,24 +4453,24 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-29T20:11:03+00:00"
|
||||
"time": "2024-09-09T11:45:10+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-php81",
|
||||
"version": "v1.29.0",
|
||||
"version": "v1.31.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-php81.git",
|
||||
"reference": "c565ad1e63f30e7477fc40738343c62b40bc672d"
|
||||
"reference": "4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/c565ad1e63f30e7477fc40738343c62b40bc672d",
|
||||
"reference": "c565ad1e63f30e7477fc40738343c62b40bc672d",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c",
|
||||
"reference": "4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.1"
|
||||
"php": ">=7.2"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
@ -4179,7 +4513,7 @@
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-php81/tree/v1.29.0"
|
||||
"source": "https://github.com/symfony/polyfill-php81/tree/v1.31.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -4195,20 +4529,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-29T20:11:03+00:00"
|
||||
"time": "2024-09-09T11:45:10+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/property-access",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.43",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/property-access.git",
|
||||
"reference": "b58ea319e56b440b4daaa38201ee63ba9efa44d5"
|
||||
"reference": "2d751866b976a02e22743359733edc55cd20e9fd"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/property-access/zipball/b58ea319e56b440b4daaa38201ee63ba9efa44d5",
|
||||
"reference": "b58ea319e56b440b4daaa38201ee63ba9efa44d5",
|
||||
"url": "https://api.github.com/repos/symfony/property-access/zipball/2d751866b976a02e22743359733edc55cd20e9fd",
|
||||
"reference": "2d751866b976a02e22743359733edc55cd20e9fd",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -4260,7 +4594,7 @@
|
||||
"reflection"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/property-access/tree/v5.4.38"
|
||||
"source": "https://github.com/symfony/property-access/tree/v5.4.43"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -4276,20 +4610,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-18T16:56:51+00:00"
|
||||
"time": "2024-08-29T08:50:14+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/property-info",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.42",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/property-info.git",
|
||||
"reference": "f3e4b84e5a33e655222167894398b671e93322d0"
|
||||
"reference": "825aa937f6e8cd63dcc118d0af84d7d4979cddf4"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/property-info/zipball/f3e4b84e5a33e655222167894398b671e93322d0",
|
||||
"reference": "f3e4b84e5a33e655222167894398b671e93322d0",
|
||||
"url": "https://api.github.com/repos/symfony/property-info/zipball/825aa937f6e8cd63dcc118d0af84d7d4979cddf4",
|
||||
"reference": "825aa937f6e8cd63dcc118d0af84d7d4979cddf4",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -4351,7 +4685,7 @@
|
||||
"validator"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/property-info/tree/v5.4.38"
|
||||
"source": "https://github.com/symfony/property-info/tree/v5.4.42"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -4367,7 +4701,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-21T07:26:31+00:00"
|
||||
"time": "2024-07-22T18:03:36+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/psr-http-message-bridge",
|
||||
@ -4460,16 +4794,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/rate-limiter",
|
||||
"version": "v5.4.35",
|
||||
"version": "v5.4.40",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/rate-limiter.git",
|
||||
"reference": "9bd24ef2e0948fff4d6741798ba4c7468b75bc8d"
|
||||
"reference": "b3de902fc83923b9121169ade2453c41d0819110"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/rate-limiter/zipball/9bd24ef2e0948fff4d6741798ba4c7468b75bc8d",
|
||||
"reference": "9bd24ef2e0948fff4d6741798ba4c7468b75bc8d",
|
||||
"url": "https://api.github.com/repos/symfony/rate-limiter/zipball/b3de902fc83923b9121169ade2453c41d0819110",
|
||||
"reference": "b3de902fc83923b9121169ade2453c41d0819110",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -4510,7 +4844,7 @@
|
||||
"rate-limiter"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/rate-limiter/tree/v5.4.35"
|
||||
"source": "https://github.com/symfony/rate-limiter/tree/v5.4.40"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -4526,20 +4860,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-23T13:51:25+00:00"
|
||||
"time": "2024-05-31T14:33:22+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/routing",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.43",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/routing.git",
|
||||
"reference": "f455f06d4ee7d354d9dcaf7d436532c1f388ee01"
|
||||
"reference": "b6f71780bbdd5e93e1c5638671cf0ba42aa8c6d8"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/routing/zipball/f455f06d4ee7d354d9dcaf7d436532c1f388ee01",
|
||||
"reference": "f455f06d4ee7d354d9dcaf7d436532c1f388ee01",
|
||||
"url": "https://api.github.com/repos/symfony/routing/zipball/b6f71780bbdd5e93e1c5638671cf0ba42aa8c6d8",
|
||||
"reference": "b6f71780bbdd5e93e1c5638671cf0ba42aa8c6d8",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -4600,7 +4934,7 @@
|
||||
"url"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/routing/tree/v5.4.38"
|
||||
"source": "https://github.com/symfony/routing/tree/v5.4.43"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -4616,20 +4950,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-18T16:56:51+00:00"
|
||||
"time": "2024-08-27T06:36:52+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/runtime",
|
||||
"version": "v5.4.35",
|
||||
"version": "v5.4.40",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/runtime.git",
|
||||
"reference": "a32a623d71fc0f699a2a196377b3b85c840bd39a"
|
||||
"reference": "50096d4ebebb4f9c41b87695868a6e34bdbf7cde"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/runtime/zipball/a32a623d71fc0f699a2a196377b3b85c840bd39a",
|
||||
"reference": "a32a623d71fc0f699a2a196377b3b85c840bd39a",
|
||||
"url": "https://api.github.com/repos/symfony/runtime/zipball/50096d4ebebb4f9c41b87695868a6e34bdbf7cde",
|
||||
"reference": "50096d4ebebb4f9c41b87695868a6e34bdbf7cde",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -4680,7 +5014,7 @@
|
||||
"runtime"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/runtime/tree/v5.4.35"
|
||||
"source": "https://github.com/symfony/runtime/tree/v5.4.40"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -4696,27 +5030,27 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-23T13:51:25+00:00"
|
||||
"time": "2024-05-31T14:33:22+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/security-bundle",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.43",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/security-bundle.git",
|
||||
"reference": "411190ceea7a5711fa0e0cda81a4914d2c4899b0"
|
||||
"reference": "f14a15c6c7bb37879d59c129d96c4c07c7d5db32"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/security-bundle/zipball/411190ceea7a5711fa0e0cda81a4914d2c4899b0",
|
||||
"reference": "411190ceea7a5711fa0e0cda81a4914d2c4899b0",
|
||||
"url": "https://api.github.com/repos/symfony/security-bundle/zipball/f14a15c6c7bb37879d59c129d96c4c07c7d5db32",
|
||||
"reference": "f14a15c6c7bb37879d59c129d96c4c07c7d5db32",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-xml": "*",
|
||||
"php": ">=7.2.5",
|
||||
"symfony/config": "^4.4|^5.0|^6.0",
|
||||
"symfony/dependency-injection": "^5.3|^6.0",
|
||||
"symfony/dependency-injection": "^5.4.43|^6.4.11",
|
||||
"symfony/deprecation-contracts": "^2.1|^3",
|
||||
"symfony/event-dispatcher": "^5.1|^6.0",
|
||||
"symfony/http-foundation": "^5.3|^6.0",
|
||||
@ -4783,7 +5117,7 @@
|
||||
"description": "Provides a tight integration of the Security component into the Symfony full-stack framework",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/security-bundle/tree/v5.4.38"
|
||||
"source": "https://github.com/symfony/security-bundle/tree/v5.4.43"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -4799,20 +5133,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-14T13:06:06+00:00"
|
||||
"time": "2024-08-19T09:13:19+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/security-core",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/security-core.git",
|
||||
"reference": "8024815e3ee09dc2235d91006ac969b060efccbb"
|
||||
"reference": "8089509e8c92e884fa27af56596576320c3b310d"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/security-core/zipball/8024815e3ee09dc2235d91006ac969b060efccbb",
|
||||
"reference": "8024815e3ee09dc2235d91006ac969b060efccbb",
|
||||
"url": "https://api.github.com/repos/symfony/security-core/zipball/8089509e8c92e884fa27af56596576320c3b310d",
|
||||
"reference": "8089509e8c92e884fa27af56596576320c3b310d",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -4877,7 +5211,7 @@
|
||||
"description": "Symfony Security Component - Core Library",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/security-core/tree/v5.4.38"
|
||||
"source": "https://github.com/symfony/security-core/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -4893,20 +5227,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-19T10:19:25+00:00"
|
||||
"time": "2024-09-01T10:41:54+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/security-csrf",
|
||||
"version": "v5.4.35",
|
||||
"version": "v5.4.40",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/security-csrf.git",
|
||||
"reference": "6728ed79d7f9aae3b86fca7ea554f1c46bae1e0b"
|
||||
"reference": "9058d522c1c33d7ba13f4b3c79555cc2c4c16028"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/security-csrf/zipball/6728ed79d7f9aae3b86fca7ea554f1c46bae1e0b",
|
||||
"reference": "6728ed79d7f9aae3b86fca7ea554f1c46bae1e0b",
|
||||
"url": "https://api.github.com/repos/symfony/security-csrf/zipball/9058d522c1c33d7ba13f4b3c79555cc2c4c16028",
|
||||
"reference": "9058d522c1c33d7ba13f4b3c79555cc2c4c16028",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -4950,7 +5284,7 @@
|
||||
"description": "Symfony Security Component - CSRF Library",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/security-csrf/tree/v5.4.35"
|
||||
"source": "https://github.com/symfony/security-csrf/tree/v5.4.40"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -4966,20 +5300,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-23T13:51:25+00:00"
|
||||
"time": "2024-05-31T14:33:22+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/security-guard",
|
||||
"version": "v5.4.35",
|
||||
"version": "v5.4.40",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/security-guard.git",
|
||||
"reference": "b6fb8c88f7cd544db761de2d1c3618cbc5c1b9e7"
|
||||
"reference": "d930fd327c290f451c9d8dd7889169195d4484e9"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/security-guard/zipball/b6fb8c88f7cd544db761de2d1c3618cbc5c1b9e7",
|
||||
"reference": "b6fb8c88f7cd544db761de2d1c3618cbc5c1b9e7",
|
||||
"url": "https://api.github.com/repos/symfony/security-guard/zipball/d930fd327c290f451c9d8dd7889169195d4484e9",
|
||||
"reference": "d930fd327c290f451c9d8dd7889169195d4484e9",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -5018,7 +5352,7 @@
|
||||
"description": "Symfony Security Component - Guard",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/security-guard/tree/v5.4.35"
|
||||
"source": "https://github.com/symfony/security-guard/tree/v5.4.40"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -5034,20 +5368,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-23T13:51:25+00:00"
|
||||
"time": "2024-05-31T14:33:22+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/security-http",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/security-http.git",
|
||||
"reference": "a6856888064791eef77de26dee86fc33e74dfbba"
|
||||
"reference": "c0f81598425c170807f19b9a5413ad05323f317b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/security-http/zipball/a6856888064791eef77de26dee86fc33e74dfbba",
|
||||
"reference": "a6856888064791eef77de26dee86fc33e74dfbba",
|
||||
"url": "https://api.github.com/repos/symfony/security-http/zipball/c0f81598425c170807f19b9a5413ad05323f317b",
|
||||
"reference": "c0f81598425c170807f19b9a5413ad05323f317b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -5104,7 +5438,7 @@
|
||||
"description": "Symfony Security Component - HTTP Integration",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/security-http/tree/v5.4.38"
|
||||
"source": "https://github.com/symfony/security-http/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -5120,7 +5454,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-19T10:19:25+00:00"
|
||||
"time": "2024-09-11T06:50:28+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/service-contracts",
|
||||
@ -5207,16 +5541,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/string",
|
||||
"version": "v5.4.36",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/string.git",
|
||||
"reference": "4e232c83622bd8cd32b794216aa29d0d266d353b"
|
||||
"reference": "832caa16b6d9aac6bf11747315225f5aba384c24"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/string/zipball/4e232c83622bd8cd32b794216aa29d0d266d353b",
|
||||
"reference": "4e232c83622bd8cd32b794216aa29d0d266d353b",
|
||||
"url": "https://api.github.com/repos/symfony/string/zipball/832caa16b6d9aac6bf11747315225f5aba384c24",
|
||||
"reference": "832caa16b6d9aac6bf11747315225f5aba384c24",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -5273,7 +5607,7 @@
|
||||
"utf8"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/string/tree/v5.4.36"
|
||||
"source": "https://github.com/symfony/string/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -5289,20 +5623,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-02-01T08:49:30+00:00"
|
||||
"time": "2024-09-20T07:56:40+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/translation",
|
||||
"version": "v5.4.35",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/translation.git",
|
||||
"reference": "77d7d1e46f52827585e65e6cd6f52a2542e59c72"
|
||||
"reference": "6fed3a20b5b87ee9cdd9dacf545922b8fd475921"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/translation/zipball/77d7d1e46f52827585e65e6cd6f52a2542e59c72",
|
||||
"reference": "77d7d1e46f52827585e65e6cd6f52a2542e59c72",
|
||||
"url": "https://api.github.com/repos/symfony/translation/zipball/6fed3a20b5b87ee9cdd9dacf545922b8fd475921",
|
||||
"reference": "6fed3a20b5b87ee9cdd9dacf545922b8fd475921",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -5370,7 +5704,7 @@
|
||||
"description": "Provides tools to internationalize your application",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/translation/tree/v5.4.35"
|
||||
"source": "https://github.com/symfony/translation/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -5386,7 +5720,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-23T13:51:25+00:00"
|
||||
"time": "2024-09-15T08:12:35+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/translation-contracts",
|
||||
@ -5468,16 +5802,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/twig-bridge",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/twig-bridge.git",
|
||||
"reference": "5984ba96a504524ebc51bd2309a66124599be6ba"
|
||||
"reference": "d049fbe0e5ba0ad758f647fa8f99e840bca43f6f"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/twig-bridge/zipball/5984ba96a504524ebc51bd2309a66124599be6ba",
|
||||
"reference": "5984ba96a504524ebc51bd2309a66124599be6ba",
|
||||
"url": "https://api.github.com/repos/symfony/twig-bridge/zipball/d049fbe0e5ba0ad758f647fa8f99e840bca43f6f",
|
||||
"reference": "d049fbe0e5ba0ad758f647fa8f99e840bca43f6f",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -5569,7 +5903,7 @@
|
||||
"description": "Provides integration for Twig with various Symfony components",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/twig-bridge/tree/v5.4.38"
|
||||
"source": "https://github.com/symfony/twig-bridge/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -5585,20 +5919,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-27T20:05:04+00:00"
|
||||
"time": "2024-09-11T13:27:43+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/twig-bundle",
|
||||
"version": "v5.4.36",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/twig-bundle.git",
|
||||
"reference": "37a338733c456fc8cd056c2e0f20bae020cbec70"
|
||||
"reference": "b94414b3b9e0c523677c0bf31e8975231b55f18a"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/twig-bundle/zipball/37a338733c456fc8cd056c2e0f20bae020cbec70",
|
||||
"reference": "37a338733c456fc8cd056c2e0f20bae020cbec70",
|
||||
"url": "https://api.github.com/repos/symfony/twig-bundle/zipball/b94414b3b9e0c523677c0bf31e8975231b55f18a",
|
||||
"reference": "b94414b3b9e0c523677c0bf31e8975231b55f18a",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -5659,7 +5993,7 @@
|
||||
"description": "Provides a tight integration of Twig into the Symfony full-stack framework",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/twig-bundle/tree/v5.4.36"
|
||||
"source": "https://github.com/symfony/twig-bundle/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -5675,20 +6009,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-02-15T11:19:14+00:00"
|
||||
"time": "2024-09-07T13:25:07+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/validator",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/validator.git",
|
||||
"reference": "4d107c2d548111156cdc4a12d12d8561d619c3c3"
|
||||
"reference": "5b061420daf15b58e1599cd2191b0780ddcd2157"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/validator/zipball/4d107c2d548111156cdc4a12d12d8561d619c3c3",
|
||||
"reference": "4d107c2d548111156cdc4a12d12d8561d619c3c3",
|
||||
"url": "https://api.github.com/repos/symfony/validator/zipball/5b061420daf15b58e1599cd2191b0780ddcd2157",
|
||||
"reference": "5b061420daf15b58e1599cd2191b0780ddcd2157",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -5728,7 +6062,7 @@
|
||||
"symfony/http-kernel": "^4.4|^5.0|^6.0",
|
||||
"symfony/intl": "^4.4|^5.0|^6.0",
|
||||
"symfony/mime": "^4.4|^5.0|^6.0",
|
||||
"symfony/property-access": "^4.4|^5.0|^6.0",
|
||||
"symfony/property-access": "^5.4|^6.0",
|
||||
"symfony/property-info": "^5.3|^6.0",
|
||||
"symfony/translation": "^5.4.35|~6.3.12|^6.4.3",
|
||||
"symfony/yaml": "^4.4|^5.0|^6.0"
|
||||
@ -5751,7 +6085,8 @@
|
||||
"Symfony\\Component\\Validator\\": ""
|
||||
},
|
||||
"exclude-from-classmap": [
|
||||
"/Tests/"
|
||||
"/Tests/",
|
||||
"/Resources/bin/"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
@ -5771,7 +6106,7 @@
|
||||
"description": "Provides tools to validate values",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/validator/tree/v5.4.38"
|
||||
"source": "https://github.com/symfony/validator/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -5787,20 +6122,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-18T16:56:51+00:00"
|
||||
"time": "2024-09-19T08:27:53+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/var-dumper",
|
||||
"version": "v5.4.38",
|
||||
"version": "v5.4.43",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/var-dumper.git",
|
||||
"reference": "ae1d949ccc57d3f6662e4256b47ac9fbfa9651ae"
|
||||
"reference": "6be6a6a8af4818564e3726fc65cf936f34743cef"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/ae1d949ccc57d3f6662e4256b47ac9fbfa9651ae",
|
||||
"reference": "ae1d949ccc57d3f6662e4256b47ac9fbfa9651ae",
|
||||
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/6be6a6a8af4818564e3726fc65cf936f34743cef",
|
||||
"reference": "6be6a6a8af4818564e3726fc65cf936f34743cef",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -5860,7 +6195,7 @@
|
||||
"dump"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/var-dumper/tree/v5.4.38"
|
||||
"source": "https://github.com/symfony/var-dumper/tree/v5.4.43"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -5876,28 +6211,30 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-19T10:19:25+00:00"
|
||||
"time": "2024-08-30T16:01:46+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/var-exporter",
|
||||
"version": "v5.4.35",
|
||||
"version": "v6.4.9",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/var-exporter.git",
|
||||
"reference": "abb0a151b62d6b07e816487e20040464af96cae7"
|
||||
"reference": "f9a060622e0d93777b7f8687ec4860191e16802e"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/var-exporter/zipball/abb0a151b62d6b07e816487e20040464af96cae7",
|
||||
"reference": "abb0a151b62d6b07e816487e20040464af96cae7",
|
||||
"url": "https://api.github.com/repos/symfony/var-exporter/zipball/f9a060622e0d93777b7f8687ec4860191e16802e",
|
||||
"reference": "f9a060622e0d93777b7f8687ec4860191e16802e",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.2.5",
|
||||
"symfony/polyfill-php80": "^1.16"
|
||||
"php": ">=8.1",
|
||||
"symfony/deprecation-contracts": "^2.5|^3"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/var-dumper": "^4.4.9|^5.0.9|^6.0"
|
||||
"symfony/property-access": "^6.4|^7.0",
|
||||
"symfony/serializer": "^6.4|^7.0",
|
||||
"symfony/var-dumper": "^5.4|^6.0|^7.0"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
@ -5930,10 +6267,12 @@
|
||||
"export",
|
||||
"hydrate",
|
||||
"instantiate",
|
||||
"lazy-loading",
|
||||
"proxy",
|
||||
"serialize"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/var-exporter/tree/v5.4.35"
|
||||
"source": "https://github.com/symfony/var-exporter/tree/v6.4.9"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -5949,20 +6288,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-23T13:51:25+00:00"
|
||||
"time": "2024-06-24T15:53:56+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/web-profiler-bundle",
|
||||
"version": "v5.4.36",
|
||||
"version": "v5.4.43",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/web-profiler-bundle.git",
|
||||
"reference": "93df9846358093676fe0b029d0c4725f7935742f"
|
||||
"reference": "8f1628f1361e4623a6c2b373c3594845d6aacb79"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/93df9846358093676fe0b029d0c4725f7935742f",
|
||||
"reference": "93df9846358093676fe0b029d0c4725f7935742f",
|
||||
"url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/8f1628f1361e4623a6c2b373c3594845d6aacb79",
|
||||
"reference": "8f1628f1361e4623a6c2b373c3594845d6aacb79",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -6013,7 +6352,7 @@
|
||||
"description": "Provides a development tool that gives detailed information about the execution of any request",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/web-profiler-bundle/tree/v5.4.36"
|
||||
"source": "https://github.com/symfony/web-profiler-bundle/tree/v5.4.43"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -6029,7 +6368,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-02-20T07:10:08+00:00"
|
||||
"time": "2024-08-08T09:11:47+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/webpack-encore-bundle",
|
||||
@ -6106,16 +6445,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/yaml",
|
||||
"version": "v5.4.35",
|
||||
"version": "v5.4.44",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/yaml.git",
|
||||
"reference": "e78db7f5c70a21f0417a31f414c4a95fe76c07e4"
|
||||
"reference": "7025b964f123bbf1896d7563db6ec7f1f63e918a"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/yaml/zipball/e78db7f5c70a21f0417a31f414c4a95fe76c07e4",
|
||||
"reference": "e78db7f5c70a21f0417a31f414c4a95fe76c07e4",
|
||||
"url": "https://api.github.com/repos/symfony/yaml/zipball/7025b964f123bbf1896d7563db6ec7f1f63e918a",
|
||||
"reference": "7025b964f123bbf1896d7563db6ec7f1f63e918a",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -6161,7 +6500,7 @@
|
||||
"description": "Loads and dumps YAML files",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/yaml/tree/v5.4.35"
|
||||
"source": "https://github.com/symfony/yaml/tree/v5.4.44"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -6177,28 +6516,28 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-23T13:51:25+00:00"
|
||||
"time": "2024-09-16T14:36:56+00:00"
|
||||
},
|
||||
{
|
||||
"name": "twig/twig",
|
||||
"version": "v3.9.2",
|
||||
"version": "v3.14.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/twigphp/Twig.git",
|
||||
"reference": "856cb5a6cfd6f3e4dc1f6c9a8f54e259503f7cf3"
|
||||
"reference": "126b2c97818dbff0cdf3fbfc881aedb3d40aae72"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/twigphp/Twig/zipball/856cb5a6cfd6f3e4dc1f6c9a8f54e259503f7cf3",
|
||||
"reference": "856cb5a6cfd6f3e4dc1f6c9a8f54e259503f7cf3",
|
||||
"url": "https://api.github.com/repos/twigphp/Twig/zipball/126b2c97818dbff0cdf3fbfc881aedb3d40aae72",
|
||||
"reference": "126b2c97818dbff0cdf3fbfc881aedb3d40aae72",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.2.5",
|
||||
"php": ">=8.0.2",
|
||||
"symfony/deprecation-contracts": "^2.5|^3",
|
||||
"symfony/polyfill-ctype": "^1.8",
|
||||
"symfony/polyfill-mbstring": "^1.3",
|
||||
"symfony/polyfill-php80": "^1.22"
|
||||
"symfony/polyfill-php81": "^1.29"
|
||||
},
|
||||
"require-dev": {
|
||||
"psr/container": "^1.0|^2.0",
|
||||
@ -6244,7 +6583,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/twigphp/Twig/issues",
|
||||
"source": "https://github.com/twigphp/Twig/tree/v3.9.2"
|
||||
"source": "https://github.com/twigphp/Twig/tree/v3.14.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -6256,10 +6595,90 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-04-17T14:16:25+00:00"
|
||||
"time": "2024-09-09T17:55:12+00:00"
|
||||
}
|
||||
],
|
||||
"packages-dev": [
|
||||
{
|
||||
"name": "symfony/debug-bundle",
|
||||
"version": "v5.4.40",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/debug-bundle.git",
|
||||
"reference": "177f79296705823eee0d7dd79773f3a9df884fe0"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/debug-bundle/zipball/177f79296705823eee0d7dd79773f3a9df884fe0",
|
||||
"reference": "177f79296705823eee0d7dd79773f3a9df884fe0",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-xml": "*",
|
||||
"php": ">=7.2.5",
|
||||
"symfony/http-kernel": "^4.4|^5.0|^6.0",
|
||||
"symfony/polyfill-php80": "^1.16",
|
||||
"symfony/twig-bridge": "^4.4|^5.0|^6.0",
|
||||
"symfony/var-dumper": "^4.4|^5.0|^6.0"
|
||||
},
|
||||
"conflict": {
|
||||
"symfony/config": "<4.4",
|
||||
"symfony/dependency-injection": "<5.2"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/config": "^4.4|^5.0|^6.0",
|
||||
"symfony/dependency-injection": "^4.4|^5.0|^6.0",
|
||||
"symfony/web-profiler-bundle": "^4.4|^5.0|^6.0"
|
||||
},
|
||||
"suggest": {
|
||||
"symfony/config": "For service container configuration",
|
||||
"symfony/dependency-injection": "For using as a service from the container"
|
||||
},
|
||||
"type": "symfony-bundle",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Symfony\\Bundle\\DebugBundle\\": ""
|
||||
},
|
||||
"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 tight integration of the Symfony VarDumper component and the ServerLogCommand from MonologBridge into the Symfony full-stack framework",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/debug-bundle/tree/v5.4.40"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-05-31T14:33:22+00:00"
|
||||
}
|
||||
],
|
||||
"packages-dev": [],
|
||||
"aliases": [],
|
||||
"minimum-stability": "stable",
|
||||
"stability-flags": [],
|
||||
@ -6271,5 +6690,5 @@
|
||||
"ext-iconv": "*"
|
||||
},
|
||||
"platform-dev": [],
|
||||
"plugin-api-version": "2.6.0"
|
||||
"plugin-api-version": "2.3.0"
|
||||
}
|
||||
|
@ -7,4 +7,6 @@ return [
|
||||
Symfony\Bundle\WebProfilerBundle\WebProfilerBundle::class => ['dev' => true, 'test' => true],
|
||||
Symfony\WebpackEncoreBundle\WebpackEncoreBundle::class => ['all' => true],
|
||||
Sentry\SentryBundle\SentryBundle::class => ['all' => true],
|
||||
Symfony\Bundle\DebugBundle\DebugBundle::class => ['dev' => true],
|
||||
Symfony\Bundle\MonologBundle\MonologBundle::class => ['all' => true],
|
||||
];
|
||||
|
5
config/packages/debug.yaml
Normal file
5
config/packages/debug.yaml
Normal file
@ -0,0 +1,5 @@
|
||||
when@dev:
|
||||
debug:
|
||||
# Forwards VarDumper Data clones to a centralized server allowing to inspect dumps on CLI or in your browser.
|
||||
# See the "server:dump" command to start a new server.
|
||||
dump_destination: "tcp://%env(VAR_DUMPER_SERVER)%"
|
6
config/packages/monolog.yaml
Normal file
6
config/packages/monolog.yaml
Normal file
@ -0,0 +1,6 @@
|
||||
monolog:
|
||||
handlers:
|
||||
stdout:
|
||||
type: stream
|
||||
path: "php://stdout"
|
||||
level: "%env(string:LOGGER_LEVEL)%"
|
@ -29,6 +29,9 @@ parameters:
|
||||
|
||||
env(PEPPER): ~
|
||||
pepper: '%env(resolve:PEPPER)%'
|
||||
|
||||
env(LOGGER_LEVEL): "info"
|
||||
|
||||
services:
|
||||
# default configuration for services in *this* file
|
||||
_defaults:
|
||||
|
@ -13,12 +13,7 @@ services:
|
||||
ports:
|
||||
- 8082:8071
|
||||
volumes:
|
||||
- ./src:/app/src
|
||||
- ./config:/app/config
|
||||
- ./translations:/app/translations
|
||||
- ./templates:/app/templates
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
- $HOME/.ssh:/root/.host-ssh:ro
|
||||
- .:/app
|
||||
tmpfs:
|
||||
- /var/www/var/logs:uid=${FIXUID:-1000},gid=${FIXGID:-1000}
|
||||
- /var/www/var/cache:uid=${FIXUID:-1000},gid=${FIXGID:-1000}
|
||||
@ -31,7 +26,7 @@ services:
|
||||
- "localhost:host-gateway"
|
||||
- "host.docker.internal:host-gateway"
|
||||
environment:
|
||||
- APP_ENV=prod
|
||||
- APP_ENV=dev
|
||||
- PHP_FPM_MEMORY_LIMIT=128m
|
||||
- APP_LOCALES=fr,en
|
||||
- HYDRA_ADMIN_BASE_URL=http://hydra:4445
|
||||
@ -45,6 +40,9 @@ services:
|
||||
- HASH_ALGO_LEGACY="sha256"
|
||||
- SECURITY_PATTERN=password,salt,pepper
|
||||
- CADDY_HTTP_PORT=8071
|
||||
- LOGGER_LEVEL=info
|
||||
- PHP_FPM_DISPLAY_ERRORS=on
|
||||
- PHP_FPM_CATCH_WORKERS_OUTPUT=1
|
||||
|
||||
oidc-test:
|
||||
image: bornholm/oidc-test:v0.0.0-1-g936a77e
|
||||
|
@ -10,7 +10,8 @@ ARG ADDITIONAL_PACKAGES="bash=5.2.15-r0 \
|
||||
php81-soap=${PHP_PKG_VERSION} \
|
||||
php81-ldap=${PHP_PKG_VERSION} \
|
||||
php81-pdo_mysql=${PHP_PKG_VERSION} \
|
||||
php81-bcmath=${PHP_PKG_VERSION}"
|
||||
php81-bcmath=${PHP_PKG_VERSION} \
|
||||
php81-pecl-xdebug"
|
||||
|
||||
FROM reg.cadoles.com/cadoles/symfony:alpine-php-8.1-base-2024.4.29-stable.1038.6395e3c
|
||||
FROM reg.cadoles.com/cadoles/symfony:alpine-php-8.1-base-2024.10.4-stable.1529.b630c69
|
||||
RUN chown 1000:www-data -R /app
|
||||
|
@ -10,8 +10,9 @@ ARG ADDITIONAL_PACKAGES="bash=5.2.15-r0 \
|
||||
php81-soap=${PHP_PKG_VERSION} \
|
||||
php81-ldap=${PHP_PKG_VERSION} \
|
||||
php81-pdo_mysql=${PHP_PKG_VERSION} \
|
||||
php81-bcmath=${PHP_PKG_VERSION}"
|
||||
php81-bcmath=${PHP_PKG_VERSION} \
|
||||
php81-pecl-xdebug"
|
||||
|
||||
FROM reg.cadoles.com/cadoles/symfony:alpine-php-8.1-standalone-2024.4.29-stable.1038.6395e3c
|
||||
FROM reg.cadoles.com/cadoles/symfony:alpine-php-8.1-standalone-2024.10.4-stable.1529.b630c69
|
||||
RUN chown 1000:www-data -R /app
|
||||
USER www-data
|
||||
|
@ -71,6 +71,7 @@ sql_login:
|
||||
- email
|
||||
- lastname
|
||||
- firstname
|
||||
subject_rewrite_expression: 'firstname~"."~lastname~"@exemple.com"'
|
||||
```
|
||||
|
||||
## Environnement de développement
|
||||
|
@ -4,12 +4,13 @@ namespace App\Controller;
|
||||
|
||||
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
|
||||
use Symfony\Component\ErrorHandler\Exception\FlattenException;
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
use Symfony\Component\Routing\Annotation\Route;
|
||||
|
||||
class CustomErrorController extends AbstractController
|
||||
{
|
||||
#[Route(path: '/error', name: 'custom_error_controller')]
|
||||
public function show(FlattenException $exception)
|
||||
public function show(FlattenException $exception): Response
|
||||
{
|
||||
$statusCode = $exception->getStatusCode();
|
||||
$message = $exception->getMessage();
|
||||
|
@ -4,6 +4,7 @@ namespace App\Controller;
|
||||
|
||||
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
|
||||
use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface;
|
||||
use Symfony\Component\HttpFoundation\RedirectResponse;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
use Symfony\Component\Routing\Annotation\Route;
|
||||
|
||||
@ -17,7 +18,7 @@ class LocaleController extends AbstractController
|
||||
}
|
||||
|
||||
#[Route(path: 'locale/{locale?}', name: 'locale_change')]
|
||||
public function changeLocal(?string $locale, Request $request)
|
||||
public function changeLocal(?string $locale, Request $request): RedirectResponse
|
||||
{
|
||||
if (empty($locale)) {
|
||||
$locale = $this->params->get('default_locale');
|
||||
|
@ -5,19 +5,21 @@ namespace App\Controller;
|
||||
use App\Entity\User;
|
||||
use App\Hydra\Client;
|
||||
use App\Hydra\HydraService;
|
||||
use App\SQLLogin\SQLLoginRequest;
|
||||
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
|
||||
use Symfony\Component\ExpressionLanguage\ExpressionLanguage;
|
||||
use Symfony\Component\Finder\Exception\AccessDeniedException;
|
||||
use Symfony\Component\HttpFoundation\RedirectResponse;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
use Symfony\Component\Routing\Annotation\Route;
|
||||
use Symfony\Component\HttpFoundation\RedirectResponse;
|
||||
use Symfony\Component\Finder\Exception\AccessDeniedException;
|
||||
use Symfony\Component\HttpFoundation\Session\SessionInterface;
|
||||
use Symfony\Component\Routing\Annotation\Route;
|
||||
|
||||
class MainController extends AbstractController
|
||||
{
|
||||
public HydraService $hydra;
|
||||
public Client $client;
|
||||
public SessionInterface $session;
|
||||
private HydraService $hydra;
|
||||
private Client $client;
|
||||
private SessionInterface $session;
|
||||
|
||||
public function __construct(SessionInterface $session, HydraService $hydra, Client $client)
|
||||
{
|
||||
@ -31,6 +33,7 @@ class MainController extends AbstractController
|
||||
{
|
||||
return $this->hydra->handleLoginRequest($request);
|
||||
}
|
||||
|
||||
/*
|
||||
* Route de Healthcheck (notament pour kubernetes)
|
||||
*/
|
||||
@ -41,7 +44,7 @@ class MainController extends AbstractController
|
||||
}
|
||||
|
||||
#[Route('/connect/login-accept', name: 'app_login_accept', methods: ['GET'])]
|
||||
public function loginAccept(Request $request): RedirectResponse
|
||||
public function loginAccept(SQLLoginRequest $sqlLoginRequest): RedirectResponse
|
||||
{
|
||||
$user = $this->getUser();
|
||||
|
||||
@ -52,8 +55,18 @@ class MainController extends AbstractController
|
||||
if (!$challenge) {
|
||||
return new RedirectResponse($this->getParameter('issuer_url'));
|
||||
}
|
||||
|
||||
$subject = $user->getLogin();
|
||||
|
||||
$subjectRewriteExpression = $sqlLoginRequest->getSubjectRewriteExpression();
|
||||
if (null != $subjectRewriteExpression) {
|
||||
$expressionLanguage = new ExpressionLanguage();
|
||||
|
||||
$subject = $expressionLanguage->evaluate($subjectRewriteExpression, $user->getAttributes());
|
||||
}
|
||||
|
||||
$loginAcceptRes = $this->client->acceptLoginRequest($challenge, [
|
||||
'subject' => $user->getLogin(),
|
||||
'subject' => $subject,
|
||||
'remember' => true,
|
||||
])->toArray();
|
||||
|
||||
|
@ -32,21 +32,9 @@ class SecurityController extends AbstractController
|
||||
$loginForm->addError(new FormError($trans->trans('error.login', [], 'messages')));
|
||||
$request->getSession()->remove(SQLLoginUserAuthenticator::ERROR_LOGIN);
|
||||
}
|
||||
if ($request->getSession()->has(SQLLoginUserAuthenticator::ERROR_PDO)) {
|
||||
$loginForm->addError(new FormError($trans->trans('error.pdo', [], 'messages')));
|
||||
$request->getSession()->remove(SQLLoginUserAuthenticator::ERROR_PDO);
|
||||
}
|
||||
if ($request->getSession()->has(SQLLoginUserAuthenticator::ERROR_CONFIGURATION)) {
|
||||
$loginForm->addError(new FormError($trans->trans('error.configuration', [], 'messages')));
|
||||
$request->getSession()->remove(SQLLoginUserAuthenticator::ERROR_CONFIGURATION);
|
||||
}
|
||||
if ($request->getSession()->has(SQLLoginUserAuthenticator::ERROR_DATA_TO_FETCH_CONFIGURATION)) {
|
||||
$loginForm->addError(new FormError($trans->trans('error.data_to_fetch_configuration', [], 'messages')));
|
||||
$request->getSession()->remove(SQLLoginUserAuthenticator::ERROR_DATA_TO_FETCH_CONFIGURATION);
|
||||
}
|
||||
if ($request->getSession()->has(SQLLoginUserAuthenticator::ERROR_SECURITY_PATTERN_CONFIGURATION)) {
|
||||
$loginForm->addError(new FormError($trans->trans('error.security_pattern_configuration', [], 'messages')));
|
||||
$request->getSession()->remove(SQLLoginUserAuthenticator::ERROR_SECURITY_PATTERN_CONFIGURATION);
|
||||
if ($request->getSession()->has(SQLLoginUserAuthenticator::TECHNICAL_ERROR)) {
|
||||
$loginForm->addError(new FormError($trans->trans('error.technical', [], 'messages')));
|
||||
$request->getSession()->remove(SQLLoginUserAuthenticator::TECHNICAL_ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
@ -56,7 +44,7 @@ class SecurityController extends AbstractController
|
||||
}
|
||||
|
||||
#[Route('/logout', name: 'logout')]
|
||||
public function logout(Request $request)
|
||||
public function logout(Request $request): void
|
||||
{
|
||||
}
|
||||
}
|
||||
|
@ -19,6 +19,7 @@ class SQLLoginConfiguration implements ConfigurationInterface
|
||||
->arrayNode(SQLLoginRequest::DATA_TO_FETCH)
|
||||
->scalarPrototype()->end()
|
||||
->end()
|
||||
->scalarNode(SQLLoginRequest::SUBJECT_REWRITE_EXPRESSION)->defaultNull()->end()
|
||||
->end();
|
||||
|
||||
return $treeBuilder;
|
||||
|
@ -6,7 +6,7 @@ use Symfony\Component\Security\Core\User\UserInterface;
|
||||
|
||||
class User implements UserInterface
|
||||
{
|
||||
protected array $attributes = [];
|
||||
private array $attributes = [];
|
||||
private string $login;
|
||||
private string $password;
|
||||
private bool $rememberMe;
|
||||
|
@ -16,7 +16,7 @@ class LocaleSubscriber implements EventSubscriberInterface
|
||||
$this->defaultLocale = $defaultLocale;
|
||||
}
|
||||
|
||||
public function onKernelRequest(RequestEvent $event)
|
||||
public function onKernelRequest(RequestEvent $event): void
|
||||
{
|
||||
$request = $event->getRequest();
|
||||
if (!$request->hasPreviousSession()) {
|
||||
@ -32,7 +32,7 @@ class LocaleSubscriber implements EventSubscriberInterface
|
||||
}
|
||||
}
|
||||
|
||||
public static function getSubscribedEvents()
|
||||
public static function getSubscribedEvents(): array
|
||||
{
|
||||
return [
|
||||
KernelEvents::REQUEST => [['onKernelRequest', 20]],
|
||||
|
@ -3,14 +3,20 @@
|
||||
namespace App\Hydra;
|
||||
|
||||
use App\Hydra\Exception\InvalidChallengeException;
|
||||
use Exception;
|
||||
use Symfony\Contracts\HttpClient\HttpClientInterface;
|
||||
use Symfony\Contracts\HttpClient\ResponseInterface;
|
||||
|
||||
class Client
|
||||
{
|
||||
protected $client;
|
||||
|
||||
protected $hydraAdminBaseUrl;
|
||||
private HttpClientInterface $client;
|
||||
private const MAX_RETRY = 3;
|
||||
private const SLEEP_TIME = [
|
||||
5,
|
||||
500,
|
||||
5000,
|
||||
];
|
||||
private string $hydraAdminBaseUrl;
|
||||
|
||||
public function __construct(HttpClientInterface $client, string $hydraAdminBaseUrl)
|
||||
{
|
||||
@ -26,7 +32,7 @@ class Client
|
||||
[
|
||||
'query' => [
|
||||
'login_challenge' => $loginChallenge,
|
||||
]
|
||||
],
|
||||
]
|
||||
);
|
||||
|
||||
@ -35,7 +41,6 @@ class Client
|
||||
throw new InvalidChallengeException();
|
||||
}
|
||||
|
||||
|
||||
return $response;
|
||||
}
|
||||
|
||||
@ -47,7 +52,7 @@ class Client
|
||||
[
|
||||
'query' => [
|
||||
'logout_challenge' => $logoutChallenge,
|
||||
]
|
||||
],
|
||||
]
|
||||
);
|
||||
|
||||
@ -56,27 +61,38 @@ class Client
|
||||
throw new InvalidChallengeException();
|
||||
}
|
||||
|
||||
|
||||
return $response;
|
||||
}
|
||||
|
||||
public function fetchConsentRequestInfo(string $consentChallenge): ResponseInterface
|
||||
{
|
||||
$attempt = 0;
|
||||
while ($attempt < self::MAX_RETRY) {
|
||||
$response = $this->client->request(
|
||||
'GET',
|
||||
$this->hydraAdminBaseUrl.'/oauth2/auth/requests/consent',
|
||||
[
|
||||
'query' => [
|
||||
'consent_challenge' => $consentChallenge,
|
||||
]
|
||||
],
|
||||
]
|
||||
);
|
||||
|
||||
switch ($response->getStatusCode()) {
|
||||
$status = $response->getStatusCode();
|
||||
if (503 === $status) {
|
||||
++$attempt;
|
||||
usleep(1000 * self::SLEEP_TIME[$attempt] + rand(1, 5) * 1000);
|
||||
continue;
|
||||
}
|
||||
switch ($status) {
|
||||
case 404:
|
||||
throw new InvalidChallengeException();
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
if (self::MAX_RETRY === $attempt) {
|
||||
throw new Exception(sprintf('Fetch consent a rencontré une erreur %s après %s tentatives', $response->getStatusCode(), self::MAX_RETRY));
|
||||
}
|
||||
|
||||
return $response;
|
||||
}
|
||||
@ -91,7 +107,7 @@ class Client
|
||||
'login_challenge' => $loginChallenge,
|
||||
],
|
||||
'headers' => [
|
||||
'Content-Type' => 'application/json'
|
||||
'Content-Type' => 'application/json',
|
||||
],
|
||||
'body' => json_encode($payload),
|
||||
]
|
||||
@ -110,7 +126,7 @@ class Client
|
||||
'consent_challenge' => $consentChallenge,
|
||||
],
|
||||
'headers' => [
|
||||
'Content-Type' => 'application/json'
|
||||
'Content-Type' => 'application/json',
|
||||
],
|
||||
'body' => json_encode($payload),
|
||||
]
|
||||
@ -129,7 +145,7 @@ class Client
|
||||
'logout_challenge' => $logoutChallenge,
|
||||
],
|
||||
'headers' => [
|
||||
'Content-Type' => 'application/json'
|
||||
'Content-Type' => 'application/json',
|
||||
],
|
||||
]
|
||||
);
|
||||
|
@ -4,6 +4,6 @@ namespace App\SQLLogin\Exception;
|
||||
|
||||
use Exception;
|
||||
|
||||
class DatabaseConnectionException extends Exception
|
||||
class EmptyResultException extends Exception
|
||||
{
|
||||
}
|
@ -1,9 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\SQLLogin\Exception;
|
||||
|
||||
use Exception;
|
||||
|
||||
class InvalidSQLLoginAlgoException extends Exception
|
||||
{
|
||||
}
|
@ -1,9 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\SQLLogin\Exception;
|
||||
|
||||
use Exception;
|
||||
|
||||
class LoginElementsConfigurationException extends Exception
|
||||
{
|
||||
}
|
@ -1,9 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\SQLLogin\Exception;
|
||||
|
||||
use Exception;
|
||||
|
||||
class NullPasswordColumnNameException extends Exception
|
||||
{
|
||||
}
|
@ -12,10 +12,8 @@ class SQLLoginConnect extends AbstractController
|
||||
/**
|
||||
* Méthode qui crée l'unique instance de la classe
|
||||
* si elle n'existe pas encore puis la retourne.
|
||||
*
|
||||
* @return SQLLoginConnect
|
||||
*/
|
||||
public static function getInstance()
|
||||
public static function getInstance(): SQLLoginConnect
|
||||
{
|
||||
if (is_null(self::$_instance)) {
|
||||
self::$_instance = new SQLLoginConnect();
|
||||
@ -24,7 +22,7 @@ class SQLLoginConnect extends AbstractController
|
||||
return self::$_instance;
|
||||
}
|
||||
|
||||
public function connect($urlDatabase, $dbUser, $dbPassword)
|
||||
public function connect($urlDatabase, $dbUser, $dbPassword): PDO
|
||||
{
|
||||
return new PDO($urlDatabase, $dbUser, $dbPassword);
|
||||
}
|
||||
|
@ -12,11 +12,12 @@ class SQLLoginRequest
|
||||
public const PASSWORD_COLUMN_NAME = 'password_column_name';
|
||||
public const PASSWORD_NEED_UPGRADE = 'password_need_upgrade';
|
||||
public const TABLE_NAME = 'table_name';
|
||||
public const SUBJECT_REWRITE_EXPRESSION = 'subject_rewrite_expression';
|
||||
|
||||
protected array $config;
|
||||
protected string $dsn;
|
||||
protected string $user;
|
||||
protected string $password;
|
||||
private array $config;
|
||||
private string $dsn;
|
||||
private string $user;
|
||||
private string $password;
|
||||
|
||||
public function __construct(string $dsn, string $user, string $password, array $config = [])
|
||||
{
|
||||
@ -66,33 +67,42 @@ class SQLLoginRequest
|
||||
return $this->config[self::DATA_TO_FETCH];
|
||||
}
|
||||
|
||||
public function getRequestScope()
|
||||
public function getSubjectRewriteExpression(): ?string
|
||||
{
|
||||
return $this->config[self::SUBJECT_REWRITE_EXPRESSION];
|
||||
}
|
||||
|
||||
private function getDataFields(): array
|
||||
{
|
||||
$scope = '';
|
||||
if (!$this->config[self::DATA_TO_FETCH]) {
|
||||
throw new NullDataToFetchException();
|
||||
}
|
||||
|
||||
foreach ($this->config[self::DATA_TO_FETCH] as $data) {
|
||||
$scope .= $data . ',';
|
||||
}
|
||||
// On enlève la dernière virgule
|
||||
$scope = substr($scope, 0, -1);
|
||||
|
||||
return 'SELECT ' . $scope . ' FROM ' . $this->getTableName() . ' WHERE ' . $this->getLoginColumnName() . ' = :' . $this->getLoginColumnName() . ';';
|
||||
return $this->config[self::DATA_TO_FETCH];
|
||||
}
|
||||
|
||||
/**
|
||||
* Construction de la string pour la requête préparée selon la configuration yaml
|
||||
* intègre la récupération du mot de passe hashé, du salt et de besoin d'upgrade de la méthode de hashage
|
||||
*/
|
||||
public function getRequestPassword(): string
|
||||
private function getPasswordFields(): array
|
||||
{
|
||||
$fields = $this->getPasswordColumnName();
|
||||
$fields[] = $this->getPasswordColumnName();
|
||||
if (!empty($this->getSaltColumnName())) {
|
||||
$fields .= ', ' . $this->getSaltColumnName();
|
||||
$fields[] = $this->getSaltColumnName();
|
||||
}
|
||||
|
||||
return 'SELECT ' . $fields . ' FROM ' . $this->getTableName() . ' WHERE ' . $this->getLoginColumnName() . ' = :' . $this->getLoginColumnName() . ';';
|
||||
return $fields;
|
||||
}
|
||||
|
||||
/**
|
||||
* Construction de la string pour la requête préparée selon la configuration yaml
|
||||
* intègre la récupération du mot de passe hashé, du salt et de besoin d'upgrade de la méthode de hashage
|
||||
*/
|
||||
public function getDatasRequest(): string
|
||||
{
|
||||
$fields = join(',', array_merge($this->getPasswordFields(), $this->getDataFields()));
|
||||
|
||||
return 'SELECT '.$fields.' FROM '.$this->getTableName().' WHERE LOWER('.$this->getLoginColumnName().') = LOWER(:'.$this->getLoginColumnName().');';
|
||||
}
|
||||
}
|
||||
|
@ -30,7 +30,7 @@ class PasswordEncoder implements LegacyPasswordHasherInterface
|
||||
/**
|
||||
* Pas utilisé, mais on doit le garder pour le implements
|
||||
*/
|
||||
public function hash(string $plainPassword, string $salt = null): string
|
||||
public function hash(string $plainPassword, ?string $salt = null): string
|
||||
{
|
||||
if ($this->isPasswordTooLong($plainPassword)) {
|
||||
throw new InvalidPasswordException();
|
||||
@ -39,7 +39,7 @@ class PasswordEncoder implements LegacyPasswordHasherInterface
|
||||
return hash($plainPassword.$salt, $this->hashAlgoLegacy[0]);
|
||||
}
|
||||
|
||||
public function verify(string $hashedPassword, string $plainPassword, string $salt = null): bool
|
||||
public function verify(string $hashedPassword, string $plainPassword, ?string $salt = null): bool
|
||||
{
|
||||
if ('' === $plainPassword || $this->isPasswordTooLong($plainPassword)) {
|
||||
return false;
|
||||
@ -76,10 +76,8 @@ class PasswordEncoder implements LegacyPasswordHasherInterface
|
||||
|
||||
/**
|
||||
* Retourne la string à hasher en fonction du pattern indiqué
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
protected function getPasswordToHash($plainTextPassword, $salt)
|
||||
protected function getPasswordToHash(string $plainTextPassword, ?string $salt = null): string
|
||||
{
|
||||
$arrayRef = [
|
||||
self::PASSWORD_PATTERN => $plainTextPassword,
|
||||
@ -90,7 +88,7 @@ class PasswordEncoder implements LegacyPasswordHasherInterface
|
||||
foreach ($this->securityPattern as $term) {
|
||||
if (self::PEPPER_PATTERN !== $term && self::PASSWORD_PATTERN !== $term && self::SALT_PATTERN !== $term) {
|
||||
$this->loggerInterface->critical('La configuration du security pattern est invalide, les termes autorisés sont : '.self::PASSWORD_PATTERN.', '.self::SALT_PATTERN.' et '.self::PEPPER_PATTERN);
|
||||
throw new SecurityPatternConfigurationException();
|
||||
throw new SecurityPatternConfigurationException('La configuration du security pattern est invalide, les termes autorisés sont : '.self::PASSWORD_PATTERN.', '.self::SALT_PATTERN.' et '.self::PEPPER_PATTERN);
|
||||
}
|
||||
}
|
||||
$completedPlainPassword = '';
|
||||
@ -101,7 +99,7 @@ class PasswordEncoder implements LegacyPasswordHasherInterface
|
||||
return $completedPlainPassword;
|
||||
}
|
||||
|
||||
protected function compareSsha($hashPassword, $plainPassword)
|
||||
protected function compareSsha(string $hashPassword, string $plainPassword): bool
|
||||
{
|
||||
$base_64_hash_with_salt = substr($hashPassword, 6);
|
||||
$hash_with_salt = base64_decode($base_64_hash_with_salt);
|
||||
|
@ -5,12 +5,13 @@ namespace App\Security;
|
||||
use App\Entity\User;
|
||||
use App\Security\Hasher\PasswordEncoder;
|
||||
use App\Service\SQLLoginService;
|
||||
use App\SQLLogin\Exception\DatabaseConnectionException;
|
||||
use App\SQLLogin\Exception\DataToFetchConfigurationException;
|
||||
use App\SQLLogin\Exception\EmptyResultException;
|
||||
use App\SQLLogin\Exception\InvalidSQLPasswordException;
|
||||
use App\SQLLogin\Exception\LoginElementsConfigurationException;
|
||||
use App\SQLLogin\Exception\SecurityPatternConfigurationException;
|
||||
use Exception;
|
||||
use App\SQLLogin\SQLLoginRequest;
|
||||
use PDOException;
|
||||
use Psr\Log\LoggerInterface;
|
||||
use Symfony\Component\HttpFoundation\RedirectResponse;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
use Symfony\Component\Security\Core\Authentication\Token\TokenInterface;
|
||||
@ -25,21 +26,22 @@ class SQLLoginUserAuthenticator extends AbstractLoginFormAuthenticator
|
||||
{
|
||||
public const LOGIN_ROUTE = 'app_login';
|
||||
public const ERROR_LOGIN = 'error_login';
|
||||
public const ERROR_PDO = 'error_pdo';
|
||||
public const ERROR_SQL_LOGIN = 'error_sql_login';
|
||||
public const ERROR_CONFIGURATION = 'error_configuration';
|
||||
public const ERROR_DATA_TO_FETCH_CONFIGURATION = 'error_data_to_fetch_configuration';
|
||||
public const ERROR_SECURITY_PATTERN_CONFIGURATION = 'error_security_pattern_configuration';
|
||||
public const TECHNICAL_ERROR = 'technical_error';
|
||||
|
||||
protected string $baseUrl;
|
||||
private SQLLoginService $sqlLoginService;
|
||||
private PasswordEncoder $passwordHasher;
|
||||
private string $baseUrl;
|
||||
|
||||
public function __construct(string $baseUrl, SQLLoginService $sqlLoginService, PasswordEncoder $passwordHasher)
|
||||
{
|
||||
public function __construct(
|
||||
string $baseUrl,
|
||||
private SQLLoginService $sqlLoginService,
|
||||
private PasswordEncoder $passwordHasher,
|
||||
private SQLLoginRequest $sqlLoginRequest,
|
||||
private LoggerInterface $logger
|
||||
) {
|
||||
$this->baseUrl = $baseUrl;
|
||||
$this->sqlLoginService = $sqlLoginService;
|
||||
$this->passwordHasher = $passwordHasher;
|
||||
$this->sqlLoginRequest = $sqlLoginRequest;
|
||||
$this->logger = $logger;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -72,29 +74,39 @@ class SQLLoginUserAuthenticator extends AbstractLoginFormAuthenticator
|
||||
$rememberMe = isset($form['_remember_me']) ? true : false;
|
||||
$session = $request->getSession();
|
||||
try {
|
||||
// requête préparée
|
||||
list($remoteHashedPassword, $remoteSalt) = $this->sqlLoginService->fetchPassword($login);
|
||||
} catch (DatabaseConnectionException $e) {
|
||||
$session->set(self::ERROR_PDO, true);
|
||||
$datas = $this->sqlLoginService->fetchPasswordAndDatas($login);
|
||||
} catch (EmptyResultException $e) {
|
||||
$session->set(self::ERROR_LOGIN, true);
|
||||
$this->logger->warning("authentication failed", ['username' => $login, "remote_address" => $request->getClientIp()]);
|
||||
throw new AuthenticationException();
|
||||
} catch (LoginElementsConfigurationException $e) {
|
||||
$session->set(self::ERROR_CONFIGURATION, true);
|
||||
throw new AuthenticationException();
|
||||
} catch (Exception $exception) {
|
||||
$request->getSession()->set(self::ERROR_LOGIN, true);
|
||||
} catch (DataToFetchConfigurationException | PDOException $e) {
|
||||
\Sentry\captureException($e);
|
||||
$session->set(self::TECHNICAL_ERROR, true);
|
||||
throw new AuthenticationException();
|
||||
}
|
||||
|
||||
$remoteHashedPassword = $datas[$this->sqlLoginRequest->getPasswordColumnName()];
|
||||
unset($datas[$this->sqlLoginRequest->getPasswordColumnName()]);
|
||||
$remoteSalt = null;
|
||||
if ($this->sqlLoginRequest->getSaltColumnName() && isset($datas[$this->sqlLoginRequest->getSaltColumnName()])) {
|
||||
$remoteSalt = $datas[$this->sqlLoginRequest->getSaltColumnName()];
|
||||
unset($datas[$this->sqlLoginRequest->getSaltColumnName()]);
|
||||
}
|
||||
if (null === $remoteHashedPassword) {
|
||||
$remoteHashedPassword = "";
|
||||
$remoteHashedPassword = '';
|
||||
}
|
||||
|
||||
try {
|
||||
// Comparaison remote hash et hash du input password + salt
|
||||
$this->passwordHasher->verify($remoteHashedPassword, $plaintextPassword, $remoteSalt);
|
||||
$attributes = $this->sqlLoginService->fetchDatas($login);
|
||||
$user = new User($login, $remoteHashedPassword, $attributes, $rememberMe);
|
||||
|
||||
} catch (InvalidSQLPasswordException $e) {
|
||||
$session->set(self::ERROR_LOGIN, true);
|
||||
$this->logger->warning("authentication failed", ['username' => $login, "remote_address" => $request->getClientIp()]);
|
||||
throw new AuthenticationException();
|
||||
} catch (SecurityPatternConfigurationException $e) {
|
||||
\Sentry\captureException($e);
|
||||
$session->set(self::TECHNICAL_ERROR, true);
|
||||
throw new AuthenticationException();
|
||||
}
|
||||
$user = new User($login, $remoteHashedPassword, $datas, $rememberMe);
|
||||
$loader = function (string $userIdentifier) use ($user) {
|
||||
return $user->getLogin() == $userIdentifier ? $user : null;
|
||||
};
|
||||
@ -104,20 +116,9 @@ class SQLLoginUserAuthenticator extends AbstractLoginFormAuthenticator
|
||||
}
|
||||
$passport->setAttribute('attributes', $user->getAttributes());
|
||||
|
||||
$this->logger->warning("authentication succeeded", ['username' => $login, "remote_address" => $request->getClientIp()]);
|
||||
|
||||
return $passport;
|
||||
} catch (InvalidSQLPasswordException $e) {
|
||||
$session->set(self::ERROR_LOGIN, true);
|
||||
throw new AuthenticationException();
|
||||
} catch (DataToFetchConfigurationException $e) {
|
||||
$session->set(self::ERROR_DATA_TO_FETCH_CONFIGURATION, true);
|
||||
throw new AuthenticationException();
|
||||
} catch (DatabaseConnectionException $e) {
|
||||
$session->set(self::ERROR_PDO, true);
|
||||
throw new AuthenticationException();
|
||||
} catch (SecurityPatternConfigurationException $e) {
|
||||
$session->set(self::ERROR_SECURITY_PATTERN_CONFIGURATION, true);
|
||||
throw new AuthenticationException();
|
||||
}
|
||||
}
|
||||
|
||||
protected function getLoginUrl(Request $request): string
|
||||
|
@ -31,7 +31,7 @@ class SQLLoginUserProvider implements UserProviderInterface
|
||||
return $this->loadUserByIdentifier($username, null);
|
||||
}
|
||||
|
||||
public function refreshUser(UserInterface $user)
|
||||
public function refreshUser(UserInterface $user): UserInterface|null
|
||||
{
|
||||
if (!$user instanceof User) {
|
||||
throw new UnsupportedUserException(sprintf('Invalid user class "%s".', get_class($user)));
|
||||
@ -40,7 +40,7 @@ class SQLLoginUserProvider implements UserProviderInterface
|
||||
return $this->loadUserByIdentifier($user->getUserIdentifier(), $user);
|
||||
}
|
||||
|
||||
public function supportsClass(string $class)
|
||||
public function supportsClass(string $class): bool
|
||||
{
|
||||
return User::class === $class || is_subclass_of($class, User::class);
|
||||
}
|
||||
|
@ -2,91 +2,62 @@
|
||||
|
||||
namespace App\Service;
|
||||
|
||||
use App\SQLLogin\Exception\DatabaseConnectionException;
|
||||
use App\SQLLogin\Exception\DataToFetchConfigurationException;
|
||||
use App\SQLLogin\Exception\LoginElementsConfigurationException;
|
||||
use App\SQLLogin\Exception\NullDataToFetchException;
|
||||
use App\SQLLogin\Exception\EmptyResultException;
|
||||
use App\SQLLogin\SQLLoginConnect;
|
||||
use App\SQLLogin\SQLLoginRequest;
|
||||
use Exception;
|
||||
use PDO;
|
||||
use PDOException;
|
||||
use Psr\Log\LoggerInterface;
|
||||
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
|
||||
|
||||
class SQLLoginService extends AbstractController
|
||||
{
|
||||
public SQLLoginRequest $sqlLoginRequest;
|
||||
public const MAX_RETRY = 3;
|
||||
|
||||
public function __construct(SQLLoginRequest $sqlLoginRequest, private LoggerInterface $loggerInterface)
|
||||
{
|
||||
public function __construct(
|
||||
private SQLLoginRequest $sqlLoginRequest,
|
||||
private LoggerInterface $loggerInterface
|
||||
) {
|
||||
$this->sqlLoginRequest = $sqlLoginRequest;
|
||||
$this->loggerInterface = $loggerInterface;
|
||||
}
|
||||
|
||||
public function fetchDatas(string $login): array
|
||||
public function fetchPasswordAndDatas(string $login): array
|
||||
{
|
||||
try {
|
||||
$dbh = $this->getConnection();
|
||||
} catch (PDOException $e) {
|
||||
$this->loggerInterface->critical($e->getMessage());
|
||||
throw new DatabaseConnectionException($e->getMessage());
|
||||
}
|
||||
try {
|
||||
// forge de la requête
|
||||
$request = $this->sqlLoginRequest->getRequestScope();
|
||||
} catch (NullDataToFetchException $e) {
|
||||
throw new DataToFetchConfigurationException($e->getMessage());
|
||||
$dataRequest = $this->sqlLoginRequest->getDatasRequest();
|
||||
$datas = $this->executeRequestWithLogin($dataRequest, $login);
|
||||
|
||||
return $datas;
|
||||
}
|
||||
|
||||
try {
|
||||
// Préparation de la requête
|
||||
$query = $dbh->prepare($request);
|
||||
private function executeRequestWithLogin(string $request, string $login): array
|
||||
{
|
||||
$attempt = 0;
|
||||
while ($attempt < self::MAX_RETRY) {
|
||||
$pdo = $this->getConnection();
|
||||
$query = $pdo->prepare($request);
|
||||
$query->execute([$this->sqlLoginRequest->getLoginColumnName() => $login]);
|
||||
$datas = $query->fetch(PDO::FETCH_ASSOC);
|
||||
} catch (PDOException $e) {
|
||||
$this->loggerInterface->critical($e->getMessage());
|
||||
throw new DataToFetchConfigurationException($e->getMessage());
|
||||
$query->closeCursor();
|
||||
if (false === $datas) {
|
||||
usleep(3000);
|
||||
++$attempt;
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (self::MAX_RETRY === $attempt) {
|
||||
throw new EmptyResultException();
|
||||
}
|
||||
|
||||
return $datas;
|
||||
}
|
||||
|
||||
public function fetchPassword(string $login): array
|
||||
{
|
||||
try {
|
||||
$dbh = $this->getConnection();
|
||||
} catch (PDOException $e) {
|
||||
$this->loggerInterface->critical($e->getMessage());
|
||||
throw new DatabaseConnectionException($e->getMessage());
|
||||
}
|
||||
|
||||
// forge de la requête
|
||||
$request = $this->sqlLoginRequest->getRequestPassword();
|
||||
|
||||
try {
|
||||
$query = $dbh->prepare($request);
|
||||
$query->execute([$this->sqlLoginRequest->getLoginColumnName() => $login]);
|
||||
$password = $query->fetch(PDO::FETCH_ASSOC);
|
||||
} catch (PDOException $e) {
|
||||
$this->loggerInterface->critical($e->getMessage());
|
||||
throw new LoginElementsConfigurationException($e->getMessage());
|
||||
}
|
||||
if (!$password) {
|
||||
throw new Exception('Une erreur est survenue lors de la récupération des données');
|
||||
}
|
||||
|
||||
return [
|
||||
$password[$this->sqlLoginRequest->getPasswordColumnName()],
|
||||
isset($password[$this->sqlLoginRequest->getSaltColumnName()]) ? $password[$this->sqlLoginRequest->getSaltColumnName()] : null,
|
||||
];
|
||||
}
|
||||
|
||||
public function getConnection(): PDO
|
||||
private function getConnection(): PDO
|
||||
{
|
||||
// Appel du singleton
|
||||
$sqlLogin = SQLLoginConnect::getInstance();
|
||||
// Connection bdd
|
||||
return $sqlLogin->connect($this->sqlLoginRequest->getDatabaseDsn(), $this->sqlLoginRequest->getDbUser(), $this->sqlLoginRequest->getDbPassword());
|
||||
$pdo = $sqlLogin->connect($this->sqlLoginRequest->getDatabaseDsn(), $this->sqlLoginRequest->getDbUser(), $this->sqlLoginRequest->getDbPassword());
|
||||
|
||||
return $pdo;
|
||||
}
|
||||
}
|
||||
|
24
symfony.lock
24
symfony.lock
@ -59,6 +59,18 @@
|
||||
"bin/console"
|
||||
]
|
||||
},
|
||||
"symfony/debug-bundle": {
|
||||
"version": "5.4",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
"version": "5.3",
|
||||
"ref": "5aa8aa48234c8eb6dbdd7b3cd5d791485d2cec4b"
|
||||
},
|
||||
"files": [
|
||||
"config/packages/debug.yaml"
|
||||
]
|
||||
},
|
||||
"symfony/flex": {
|
||||
"version": "1.21",
|
||||
"recipe": {
|
||||
@ -102,6 +114,18 @@
|
||||
"config/packages/lock.yaml"
|
||||
]
|
||||
},
|
||||
"symfony/monolog-bundle": {
|
||||
"version": "3.10",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
"version": "3.7",
|
||||
"ref": "aff23899c4440dd995907613c1dd709b6f59503f"
|
||||
},
|
||||
"files": [
|
||||
"config/packages/monolog.yaml"
|
||||
]
|
||||
},
|
||||
"symfony/routing": {
|
||||
"version": "5.4",
|
||||
"recipe": {
|
||||
|
@ -12,7 +12,7 @@
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class="lang">
|
||||
{% for locale in locales|split(',') %}
|
||||
{% for locale in locales %}
|
||||
<a href="{{ path('locale_change', {'locale':locale }) }}" title="{{locale}}" aria-label="{{locale}}" class="flag"><img class="w-10" src="{{ asset('flags/'~ locale ~'.svg') }}"/></a>
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
@ -9,25 +9,9 @@
|
||||
<source>error.login</source>
|
||||
<target>Incorrect login or password</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="36t19qm" resname="error.sql_login">
|
||||
<source>error.sql_login</source>
|
||||
<target>Connection to database encountered a problem</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="lBole_G" resname="error.pdo">
|
||||
<source>error.pdo</source>
|
||||
<target>Connection to database encountered a problem</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="1QRR4uA" resname="error.configuration">
|
||||
<source>error.configuration</source>
|
||||
<target>Identification data references do not exist in the database</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="4EPIhsV" resname="error.data_to_fetch_configuration">
|
||||
<source>error.data_to_fetch_configuration</source>
|
||||
<target>Data references to be transmitted do not exist</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="6iuTNs3" resname="error.security_pattern_configuration">
|
||||
<source>error.security_pattern_configuration</source>
|
||||
<target>The security pattern is not allowed</target>
|
||||
<trans-unit id="1QRR4uA" resname="error.technical">
|
||||
<source>error.technical</source>
|
||||
<target>A technical error happened, try again later</target>
|
||||
</trans-unit>
|
||||
</body>
|
||||
</file>
|
||||
|
@ -9,25 +9,9 @@
|
||||
<source>error.login</source>
|
||||
<target>Login ou mot de passe inconnu</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="36t19qm" resname="error.sql_login">
|
||||
<source>error.sql_login</source>
|
||||
<target>La connexion à la base de données a rencontré un problème</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="lBole_G" resname="error.pdo">
|
||||
<source>error.pdo</source>
|
||||
<target>La connexion à la base de données a rencontré un problème</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="1QRR4uA" resname="error.configuration">
|
||||
<source>error.configuration</source>
|
||||
<target>Les références de données d'identification n'existent pas dans la base de données</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="4EPIhsV" resname="error.data_to_fetch_configuration">
|
||||
<source>error.data_to_fetch_configuration</source>
|
||||
<target>Les références de données à transmettre n'existent pas</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="6iuTNs3" resname="error.security_pattern_configuration">
|
||||
<source>error.security_pattern_configuration</source>
|
||||
<target>Le patron de sécurité n'est pas autorisé</target>
|
||||
<trans-unit id="1QRR4uA" resname="error.technical">
|
||||
<source>error.technical</source>
|
||||
<target>Une erreur technique s'est produite, rééssayez plus tard</target>
|
||||
</trans-unit>
|
||||
</body>
|
||||
</file>
|
||||
|
Reference in New Issue
Block a user