diff --git a/composer.json b/composer.json index 8b635a852..eb0eb7a37 100644 --- a/composer.json +++ b/composer.json @@ -24,21 +24,21 @@ "symfony/polyfill-iconv": "^1.24", "symfony/polyfill-php80": "^1.24", "symfony/polyfill-php81": "^1.24", - "psr/simple-cache": "^1.0", - "psr/http-message": "^1.1", + "psr/simple-cache": "^1.0 || ^2.0 || ^3.0", + "psr/http-message": "^1.1 || ^2.0", "psr/http-server-middleware": "^1.0", - "psr/container": "^1.1", - "psr/log": "^1.1", - "symfony/cache": "^6.4", - "symfony/yaml": "^6.4", - "symfony/console": "^6.4", - "symfony/event-dispatcher": "^6.4", - "symfony/var-exporter": "^6.4", - "symfony/var-dumper": "^6.4", - "symfony/process": "^6.4", - "symfony/http-client": "^6.4", + "psr/container": "^1.1 || ^2.0", + "psr/log": "^1.1 || ^2.0 || ^3.0", + "symfony/cache": "^6.4 || ^7.0", + "symfony/yaml": "^6.4 || ^7.0", + "symfony/console": "^6.4 || ^7.0", + "symfony/event-dispatcher": "^6.4 || ^7.0", + "symfony/var-exporter": "^6.4 || ^7.0", + "symfony/var-dumper": "^6.4 || ^7.0", + "symfony/process": "^6.4 || ^7.0", + "symfony/http-client": "^6.4 || ^7.0", "twig/twig": "3.x-dev", - "monolog/monolog": "^2.0", + "monolog/monolog": "^3.0", "doctrine/cache": "^2.2", "doctrine/collections": "^2.2", "pimple/pimple": "~3.5.0", @@ -69,7 +69,7 @@ "codeception/codeception": "^5.1", "phpstan/phpstan": "^2.1", "phpstan/phpstan-deprecation-rules": "^2.0", - "phpunit/php-code-coverage": "~9.2", + "phpunit/php-code-coverage": "^11.0", "getgrav/markdowndocs": "^2.0", "codeception/module-asserts": "*", "codeception/module-phpbrowser": "*", diff --git a/composer.lock b/composer.lock index 52414621c..cc584782a 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "36c8975a304845a3dd0ee531f38d8c4a", + "content-hash": "e81e1956dbd539b868d3036db63d59d2", "packages": [ { "name": "antoligy/dom-string-iterators", @@ -1301,42 +1301,43 @@ }, { "name": "monolog/monolog", - "version": "2.10.0", + "version": "3.9.0", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "5cf826f2991858b54d5c3809bee745560a1042a7" + "reference": "10d85740180ecba7896c87e06a166e0c95a0e3b6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/5cf826f2991858b54d5c3809bee745560a1042a7", - "reference": "5cf826f2991858b54d5c3809bee745560a1042a7", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/10d85740180ecba7896c87e06a166e0c95a0e3b6", + "reference": "10d85740180ecba7896c87e06a166e0c95a0e3b6", "shasum": "" }, "require": { - "php": ">=7.2", - "psr/log": "^1.0.1 || ^2.0 || ^3.0" + "php": ">=8.1", + "psr/log": "^2.0 || ^3.0" }, "provide": { - "psr/log-implementation": "1.0.0 || 2.0.0 || 3.0.0" + "psr/log-implementation": "3.0.0" }, "require-dev": { - "aws/aws-sdk-php": "^2.4.9 || ^3.0", + "aws/aws-sdk-php": "^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", + "graylog2/gelf-php": "^1.4.2 || ^2.0", + "guzzlehttp/guzzle": "^7.4.5", "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", + "php-console/php-console": "^3.1.8", + "phpstan/phpstan": "^2", + "phpstan/phpstan-deprecation-rules": "^2", + "phpstan/phpstan-strict-rules": "^2", + "phpunit/phpunit": "^10.5.17 || ^11.0.7", + "predis/predis": "^1.1 || ^2", + "rollbar/rollbar": "^4.0", + "ruflin/elastica": "^7 || ^8", "symfony/mailer": "^5.4 || ^6", "symfony/mime": "^5.4 || ^6" }, @@ -1359,7 +1360,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.x-dev" + "dev-main": "3.x-dev" } }, "autoload": { @@ -1387,7 +1388,7 @@ ], "support": { "issues": "https://github.com/Seldaek/monolog/issues", - "source": "https://github.com/Seldaek/monolog/tree/2.10.0" + "source": "https://github.com/Seldaek/monolog/tree/3.9.0" }, "funding": [ { @@ -1399,7 +1400,7 @@ "type": "tidelift" } ], - "time": "2024-11-12T12:43:37+00:00" + "time": "2025-03-24T10:02:05+00:00" }, { "name": "multiavatar/multiavatar-php", @@ -1769,22 +1770,27 @@ }, { "name": "psr/container", - "version": "1.1.2", + "version": "2.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/container.git", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea" + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea", + "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", "shasum": "" }, "require": { "php": ">=7.4.0" }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, "autoload": { "psr-4": { "Psr\\Container\\": "src/" @@ -1811,9 +1817,9 @@ ], "support": { "issues": "https://github.com/php-fig/container/issues", - "source": "https://github.com/php-fig/container/tree/1.1.2" + "source": "https://github.com/php-fig/container/tree/2.0.2" }, - "time": "2021-11-05T16:50:12+00:00" + "time": "2021-11-05T16:47:00+00:00" }, { "name": "psr/event-dispatcher", @@ -1922,16 +1928,16 @@ }, { "name": "psr/http-message", - "version": "1.1", + "version": "2.0", "source": { "type": "git", "url": "https://github.com/php-fig/http-message.git", - "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba" + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-message/zipball/cb6ce4845ce34a8ad9e68117c10ee90a29919eba", - "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71", + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71", "shasum": "" }, "require": { @@ -1940,7 +1946,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1.x-dev" + "dev-master": "2.0.x-dev" } }, "autoload": { @@ -1955,7 +1961,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for HTTP messages", @@ -1969,9 +1975,9 @@ "response" ], "support": { - "source": "https://github.com/php-fig/http-message/tree/1.1" + "source": "https://github.com/php-fig/http-message/tree/2.0" }, - "time": "2023-04-04T09:50:52+00:00" + "time": "2023-04-04T09:54:51+00:00" }, { "name": "psr/http-server-handler", @@ -2088,30 +2094,30 @@ }, { "name": "psr/log", - "version": "1.1.4", + "version": "3.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/log.git", - "reference": "d49695b909c3b7628b6289db5479a1c204601f11" + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3" }, "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/f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": ">=8.0.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1.x-dev" + "dev-master": "3.x-dev" } }, "autoload": { "psr-4": { - "Psr\\Log\\": "Psr/Log/" + "Psr\\Log\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -2132,31 +2138,31 @@ "psr-3" ], "support": { - "source": "https://github.com/php-fig/log/tree/1.1.4" + "source": "https://github.com/php-fig/log/tree/3.0.2" }, - "time": "2021-05-03T11:20:27+00:00" + "time": "2024-09-11T13:17:53+00:00" }, { "name": "psr/simple-cache", - "version": "1.0.1", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/php-fig/simple-cache.git", - "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b" + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", - "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", + "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/764e0b3939f5ca87cb904f570ef9be2d78a07865", + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": ">=8.0.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "3.0.x-dev" } }, "autoload": { @@ -2171,7 +2177,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interfaces for simple caching", @@ -2183,9 +2189,9 @@ "simple-cache" ], "support": { - "source": "https://github.com/php-fig/simple-cache/tree/master" + "source": "https://github.com/php-fig/simple-cache/tree/3.0.0" }, - "time": "2017-10-23T01:57:42+00:00" + "time": "2021-10-29T13:26:27+00:00" }, { "name": "ralouphie/getallheaders", @@ -2408,31 +2414,32 @@ }, { "name": "symfony/cache", - "version": "v6.4.26", + "version": "v7.3.4", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "66c853ddcbf85c1984169869be498c3e7597b367" + "reference": "bf8afc8ffd4bfd3d9c373e417f041d9f1e5b863f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/66c853ddcbf85c1984169869be498c3e7597b367", - "reference": "66c853ddcbf85c1984169869be498c3e7597b367", + "url": "https://api.github.com/repos/symfony/cache/zipball/bf8afc8ffd4bfd3d9c373e417f041d9f1e5b863f", + "reference": "bf8afc8ffd4bfd3d9c373e417f041d9f1e5b863f", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "psr/cache": "^2.0|^3.0", "psr/log": "^1.1|^2|^3", - "symfony/cache-contracts": "^2.5|^3", + "symfony/cache-contracts": "^3.6", + "symfony/deprecation-contracts": "^2.5|^3.0", "symfony/service-contracts": "^2.5|^3", - "symfony/var-exporter": "^6.3.6|^7.0" + "symfony/var-exporter": "^6.4|^7.0" }, "conflict": { - "doctrine/dbal": "<2.13.1", - "symfony/dependency-injection": "<5.4", - "symfony/http-kernel": "<5.4", - "symfony/var-dumper": "<5.4" + "doctrine/dbal": "<3.6", + "symfony/dependency-injection": "<6.4", + "symfony/http-kernel": "<6.4", + "symfony/var-dumper": "<6.4" }, "provide": { "psr/cache-implementation": "2.0|3.0", @@ -2441,15 +2448,16 @@ }, "require-dev": { "cache/integration-tests": "dev-master", - "doctrine/dbal": "^2.13.1|^3|^4", + "doctrine/dbal": "^3.6|^4", "predis/predis": "^1.1|^2.0", "psr/simple-cache": "^1.0|^2.0|^3.0", - "symfony/config": "^5.4|^6.0|^7.0", - "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/filesystem": "^5.4|^6.0|^7.0", - "symfony/http-kernel": "^5.4|^6.0|^7.0", - "symfony/messenger": "^5.4|^6.0|^7.0", - "symfony/var-dumper": "^5.4|^6.0|^7.0" + "symfony/clock": "^6.4|^7.0", + "symfony/config": "^6.4|^7.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/filesystem": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/messenger": "^6.4|^7.0", + "symfony/var-dumper": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -2484,7 +2492,7 @@ "psr6" ], "support": { - "source": "https://github.com/symfony/cache/tree/v6.4.26" + "source": "https://github.com/symfony/cache/tree/v7.3.4" }, "funding": [ { @@ -2504,7 +2512,7 @@ "type": "tidelift" } ], - "time": "2025-09-11T09:57:09+00:00" + "time": "2025-09-11T10:12:26+00:00" }, { "name": "symfony/cache-contracts", @@ -2584,47 +2592,47 @@ }, { "name": "symfony/console", - "version": "v6.4.26", + "version": "v7.3.4", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "492de6dfd93910d7d7a729c5a04ddcd2b9e99c4f" + "reference": "2b9c5fafbac0399a20a2e82429e2bd735dcfb7db" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/492de6dfd93910d7d7a729c5a04ddcd2b9e99c4f", - "reference": "492de6dfd93910d7d7a729c5a04ddcd2b9e99c4f", + "url": "https://api.github.com/repos/symfony/console/zipball/2b9c5fafbac0399a20a2e82429e2bd735dcfb7db", + "reference": "2b9c5fafbac0399a20a2e82429e2bd735dcfb7db", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.0", "symfony/service-contracts": "^2.5|^3", - "symfony/string": "^5.4|^6.0|^7.0" + "symfony/string": "^7.2" }, "conflict": { - "symfony/dependency-injection": "<5.4", - "symfony/dotenv": "<5.4", - "symfony/event-dispatcher": "<5.4", - "symfony/lock": "<5.4", - "symfony/process": "<5.4" + "symfony/dependency-injection": "<6.4", + "symfony/dotenv": "<6.4", + "symfony/event-dispatcher": "<6.4", + "symfony/lock": "<6.4", + "symfony/process": "<6.4" }, "provide": { "psr/log-implementation": "1.0|2.0|3.0" }, "require-dev": { "psr/log": "^1|^2|^3", - "symfony/config": "^5.4|^6.0|^7.0", - "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/event-dispatcher": "^5.4|^6.0|^7.0", + "symfony/config": "^6.4|^7.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/event-dispatcher": "^6.4|^7.0", "symfony/http-foundation": "^6.4|^7.0", "symfony/http-kernel": "^6.4|^7.0", - "symfony/lock": "^5.4|^6.0|^7.0", - "symfony/messenger": "^5.4|^6.0|^7.0", - "symfony/process": "^5.4|^6.0|^7.0", - "symfony/stopwatch": "^5.4|^6.0|^7.0", - "symfony/var-dumper": "^5.4|^6.0|^7.0" + "symfony/lock": "^6.4|^7.0", + "symfony/messenger": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/stopwatch": "^6.4|^7.0", + "symfony/var-dumper": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -2658,7 +2666,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v6.4.26" + "source": "https://github.com/symfony/console/tree/v7.3.4" }, "funding": [ { @@ -2678,7 +2686,7 @@ "type": "tidelift" } ], - "time": "2025-09-26T12:13:46+00:00" + "time": "2025-09-22T15:31:00+00:00" }, { "name": "symfony/deprecation-contracts", @@ -2749,24 +2757,24 @@ }, { "name": "symfony/event-dispatcher", - "version": "v6.4.25", + "version": "v7.3.3", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "b0cf3162020603587363f0551cd3be43958611ff" + "reference": "b7dc69e71de420ac04bc9ab830cf3ffebba48191" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/b0cf3162020603587363f0551cd3be43958611ff", - "reference": "b0cf3162020603587363f0551cd3be43958611ff", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/b7dc69e71de420ac04bc9ab830cf3ffebba48191", + "reference": "b7dc69e71de420ac04bc9ab830cf3ffebba48191", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "symfony/event-dispatcher-contracts": "^2.5|^3" }, "conflict": { - "symfony/dependency-injection": "<5.4", + "symfony/dependency-injection": "<6.4", "symfony/service-contracts": "<2.5" }, "provide": { @@ -2775,13 +2783,13 @@ }, "require-dev": { "psr/log": "^1|^2|^3", - "symfony/config": "^5.4|^6.0|^7.0", - "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/error-handler": "^5.4|^6.0|^7.0", - "symfony/expression-language": "^5.4|^6.0|^7.0", - "symfony/http-foundation": "^5.4|^6.0|^7.0", + "symfony/config": "^6.4|^7.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/error-handler": "^6.4|^7.0", + "symfony/expression-language": "^6.4|^7.0", + "symfony/http-foundation": "^6.4|^7.0", "symfony/service-contracts": "^2.5|^3", - "symfony/stopwatch": "^5.4|^6.0|^7.0" + "symfony/stopwatch": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -2809,7 +2817,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/v6.4.25" + "source": "https://github.com/symfony/event-dispatcher/tree/v7.3.3" }, "funding": [ { @@ -2829,7 +2837,7 @@ "type": "tidelift" } ], - "time": "2025-08-13T09:41:44+00:00" + "time": "2025-08-13T11:49:31+00:00" }, { "name": "symfony/event-dispatcher-contracts", @@ -2909,20 +2917,20 @@ }, { "name": "symfony/http-client", - "version": "v6.4.26", + "version": "v7.3.4", "source": { "type": "git", "url": "https://github.com/symfony/http-client.git", - "reference": "6740cdc1a3bffa127966b6056e883b3fe3709849" + "reference": "4b62871a01c49457cf2a8e560af7ee8a94b87a62" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client/zipball/6740cdc1a3bffa127966b6056e883b3fe3709849", - "reference": "6740cdc1a3bffa127966b6056e883b3fe3709849", + "url": "https://api.github.com/repos/symfony/http-client/zipball/4b62871a01c49457cf2a8e560af7ee8a94b87a62", + "reference": "4b62871a01c49457cf2a8e560af7ee8a94b87a62", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "psr/log": "^1|^2|^3", "symfony/deprecation-contracts": "^2.5|^3", "symfony/http-client-contracts": "~3.4.4|^3.5.2", @@ -2930,8 +2938,10 @@ "symfony/service-contracts": "^2.5|^3" }, "conflict": { + "amphp/amp": "<2.5", + "amphp/socket": "<1.1", "php-http/discovery": "<1.15", - "symfony/http-foundation": "<6.3" + "symfony/http-foundation": "<6.4" }, "provide": { "php-http/async-client-implementation": "*", @@ -2940,19 +2950,19 @@ "symfony/http-client-implementation": "3.0" }, "require-dev": { - "amphp/amp": "^2.5", - "amphp/http-client": "^4.2.1", - "amphp/http-tunnel": "^1.0", - "amphp/socket": "^1.1", + "amphp/http-client": "^4.2.1|^5.0", + "amphp/http-tunnel": "^1.0|^2.0", "guzzlehttp/promises": "^1.4|^2.0", "nyholm/psr7": "^1.0", "php-http/httplug": "^1.0|^2.0", "psr/http-client": "^1.0", - "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/http-kernel": "^5.4|^6.0|^7.0", - "symfony/messenger": "^5.4|^6.0|^7.0", - "symfony/process": "^5.4|^6.0|^7.0", - "symfony/stopwatch": "^5.4|^6.0|^7.0" + "symfony/amphp-http-client-meta": "^1.0|^2.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/messenger": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/rate-limiter": "^6.4|^7.0", + "symfony/stopwatch": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -2983,7 +2993,7 @@ "http" ], "support": { - "source": "https://github.com/symfony/http-client/tree/v6.4.26" + "source": "https://github.com/symfony/http-client/tree/v7.3.4" }, "funding": [ { @@ -3003,7 +3013,7 @@ "type": "tidelift" } ], - "time": "2025-09-11T09:57:09+00:00" + "time": "2025-09-11T10:12:26+00:00" }, { "name": "symfony/http-client-contracts", @@ -3828,20 +3838,20 @@ }, { "name": "symfony/process", - "version": "v6.4.26", + "version": "v7.3.4", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "48bad913268c8cafabbf7034b39c8bb24fbc5ab8" + "reference": "f24f8f316367b30810810d4eb30c543d7003ff3b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/48bad913268c8cafabbf7034b39c8bb24fbc5ab8", - "reference": "48bad913268c8cafabbf7034b39c8bb24fbc5ab8", + "url": "https://api.github.com/repos/symfony/process/zipball/f24f8f316367b30810810d4eb30c543d7003ff3b", + "reference": "f24f8f316367b30810810d4eb30c543d7003ff3b", "shasum": "" }, "require": { - "php": ">=8.1" + "php": ">=8.2" }, "type": "library", "autoload": { @@ -3869,7 +3879,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v6.4.26" + "source": "https://github.com/symfony/process/tree/v7.3.4" }, "funding": [ { @@ -3889,7 +3899,7 @@ "type": "tidelift" } ], - "time": "2025-09-11T09:57:09+00:00" + "time": "2025-09-11T10:12:26+00:00" }, { "name": "symfony/service-contracts", @@ -4066,33 +4076,32 @@ }, { "name": "symfony/var-dumper", - "version": "v6.4.26", + "version": "v7.3.4", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "cfae1497a2f1eaad78dbc0590311c599c7178d4a" + "reference": "b8abe7daf2730d07dfd4b2ee1cecbf0dd2fbdabb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/cfae1497a2f1eaad78dbc0590311c599c7178d4a", - "reference": "cfae1497a2f1eaad78dbc0590311c599c7178d4a", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/b8abe7daf2730d07dfd4b2ee1cecbf0dd2fbdabb", + "reference": "b8abe7daf2730d07dfd4b2ee1cecbf0dd2fbdabb", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.0" }, "conflict": { - "symfony/console": "<5.4" + "symfony/console": "<6.4" }, "require-dev": { - "symfony/console": "^5.4|^6.0|^7.0", - "symfony/error-handler": "^6.3|^7.0", - "symfony/http-kernel": "^5.4|^6.0|^7.0", - "symfony/process": "^5.4|^6.0|^7.0", - "symfony/uid": "^5.4|^6.0|^7.0", - "twig/twig": "^2.13|^3.0.4" + "symfony/console": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/uid": "^6.4|^7.0", + "twig/twig": "^3.12" }, "bin": [ "Resources/bin/var-dump-server" @@ -4130,7 +4139,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v6.4.26" + "source": "https://github.com/symfony/var-dumper/tree/v7.3.4" }, "funding": [ { @@ -4150,30 +4159,30 @@ "type": "tidelift" } ], - "time": "2025-09-25T15:37:27+00:00" + "time": "2025-09-11T10:12:26+00:00" }, { "name": "symfony/var-exporter", - "version": "v6.4.26", + "version": "v7.3.4", "source": { "type": "git", "url": "https://github.com/symfony/var-exporter.git", - "reference": "466fcac5fa2e871f83d31173f80e9c2684743bfc" + "reference": "0f020b544a30a7fe8ba972e53ee48a74c0bc87f4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-exporter/zipball/466fcac5fa2e871f83d31173f80e9c2684743bfc", - "reference": "466fcac5fa2e871f83d31173f80e9c2684743bfc", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/0f020b544a30a7fe8ba972e53ee48a74c0bc87f4", + "reference": "0f020b544a30a7fe8ba972e53ee48a74c0bc87f4", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "symfony/deprecation-contracts": "^2.5|^3" }, "require-dev": { "symfony/property-access": "^6.4|^7.0", "symfony/serializer": "^6.4|^7.0", - "symfony/var-dumper": "^5.4|^6.0|^7.0" + "symfony/var-dumper": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -4211,7 +4220,7 @@ "serialize" ], "support": { - "source": "https://github.com/symfony/var-exporter/tree/v6.4.26" + "source": "https://github.com/symfony/var-exporter/tree/v7.3.4" }, "funding": [ { @@ -4231,7 +4240,7 @@ "type": "tidelift" } ], - "time": "2025-09-11T09:57:09+00:00" + "time": "2025-09-11T10:12:26+00:00" }, { "name": "symfony/yaml", @@ -4750,31 +4759,31 @@ }, { "name": "codeception/lib-innerbrowser", - "version": "3.1.3", + "version": "4.0.6", "source": { "type": "git", "url": "https://github.com/Codeception/lib-innerbrowser.git", - "reference": "10482f7e34c0537bf5b87bc82a3d65a1842a8b4f" + "reference": "74476dd019ec7900b26b7dca91a42fdcb04e549f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/lib-innerbrowser/zipball/10482f7e34c0537bf5b87bc82a3d65a1842a8b4f", - "reference": "10482f7e34c0537bf5b87bc82a3d65a1842a8b4f", + "url": "https://api.github.com/repos/Codeception/lib-innerbrowser/zipball/74476dd019ec7900b26b7dca91a42fdcb04e549f", + "reference": "74476dd019ec7900b26b7dca91a42fdcb04e549f", "shasum": "" }, "require": { - "codeception/codeception": "^5.0", + "codeception/codeception": "^5.0.8", "codeception/lib-web": "^1.0.1", "ext-dom": "*", "ext-json": "*", "ext-mbstring": "*", - "php": "^8.0", - "phpunit/phpunit": "^9.5", - "symfony/browser-kit": "^4.4.24 || ^5.4 || ^6.0", - "symfony/dom-crawler": "^4.4.30 || ^5.4 || ^6.0" + "php": "^8.1", + "phpunit/phpunit": "^10.0 || ^11.0 || ^12.0", + "symfony/browser-kit": "^4.4.24 || ^5.4 || ^6.0 || ^7.0", + "symfony/dom-crawler": "^4.4.30 || ^5.4 || ^6.0 || ^7.0" }, "require-dev": { - "codeception/util-universalframework": "dev-master" + "codeception/util-universalframework": "^1.0" }, "type": "library", "autoload": { @@ -4803,9 +4812,9 @@ ], "support": { "issues": "https://github.com/Codeception/lib-innerbrowser/issues", - "source": "https://github.com/Codeception/lib-innerbrowser/tree/3.1.3" + "source": "https://github.com/Codeception/lib-innerbrowser/tree/4.0.6" }, - "time": "2022-10-03T15:33:34+00:00" + "time": "2025-02-14T07:02:48+00:00" }, { "name": "codeception/lib-web", @@ -5025,76 +5034,6 @@ }, "time": "2025-08-01T08:15:29+00:00" }, - { - "name": "doctrine/instantiator", - "version": "2.0.0", - "source": { - "type": "git", - "url": "https://github.com/doctrine/instantiator.git", - "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/c6222283fa3f4ac679f8b9ced9a4e23f163e80d0", - "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0", - "shasum": "" - }, - "require": { - "php": "^8.1" - }, - "require-dev": { - "doctrine/coding-standard": "^11", - "ext-pdo": "*", - "ext-phar": "*", - "phpbench/phpbench": "^1.2", - "phpstan/phpstan": "^1.9.4", - "phpstan/phpstan-phpunit": "^1.3", - "phpunit/phpunit": "^9.5.27", - "vimeo/psalm": "^5.4" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com", - "homepage": "https://ocramius.github.io/" - } - ], - "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", - "homepage": "https://www.doctrine-project.org/projects/instantiator.html", - "keywords": [ - "constructor", - "instantiate" - ], - "support": { - "issues": "https://github.com/doctrine/instantiator/issues", - "source": "https://github.com/doctrine/instantiator/tree/2.0.0" - }, - "funding": [ - { - "url": "https://www.doctrine-project.org/sponsorship.html", - "type": "custom" - }, - { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator", - "type": "tidelift" - } - ], - "time": "2022-12-30T00:23:10+00:00" - }, { "name": "getgrav/markdowndocs", "version": "2.0.1", @@ -5761,35 +5700,35 @@ }, { "name": "phpunit/php-code-coverage", - "version": "9.2.32", + "version": "11.0.11", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "85402a822d1ecf1db1096959413d35e1c37cf1a5" + "reference": "4f7722aa9a7b76aa775e2d9d4e95d1ea16eeeef4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/85402a822d1ecf1db1096959413d35e1c37cf1a5", - "reference": "85402a822d1ecf1db1096959413d35e1c37cf1a5", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/4f7722aa9a7b76aa775e2d9d4e95d1ea16eeeef4", + "reference": "4f7722aa9a7b76aa775e2d9d4e95d1ea16eeeef4", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^4.19.1 || ^5.1.0", - "php": ">=7.3", - "phpunit/php-file-iterator": "^3.0.6", - "phpunit/php-text-template": "^2.0.4", - "sebastian/code-unit-reverse-lookup": "^2.0.3", - "sebastian/complexity": "^2.0.3", - "sebastian/environment": "^5.1.5", - "sebastian/lines-of-code": "^1.0.4", - "sebastian/version": "^3.0.2", + "nikic/php-parser": "^5.4.0", + "php": ">=8.2", + "phpunit/php-file-iterator": "^5.1.0", + "phpunit/php-text-template": "^4.0.1", + "sebastian/code-unit-reverse-lookup": "^4.0.1", + "sebastian/complexity": "^4.0.1", + "sebastian/environment": "^7.2.0", + "sebastian/lines-of-code": "^3.0.1", + "sebastian/version": "^5.0.2", "theseer/tokenizer": "^1.2.3" }, "require-dev": { - "phpunit/phpunit": "^9.6" + "phpunit/phpunit": "^11.5.2" }, "suggest": { "ext-pcov": "PHP extension that provides line coverage", @@ -5798,7 +5737,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "9.2.x-dev" + "dev-main": "11.0.x-dev" } }, "autoload": { @@ -5827,40 +5766,52 @@ "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.32" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/11.0.11" }, "funding": [ { "url": "https://github.com/sebastianbergmann", "type": "github" + }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpunit/php-code-coverage", + "type": "tidelift" } ], - "time": "2024-08-22T04:23:01+00:00" + "time": "2025-08-27T14:37:49+00:00" }, { "name": "phpunit/php-file-iterator", - "version": "3.0.6", + "version": "5.1.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf" + "reference": "118cfaaa8bc5aef3287bf315b6060b1174754af6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", - "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/118cfaaa8bc5aef3287bf315b6060b1174754af6", + "reference": "118cfaaa8bc5aef3287bf315b6060b1174754af6", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.2" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^11.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-main": "5.0-dev" } }, "autoload": { @@ -5887,7 +5838,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", - "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.6" + "security": "https://github.com/sebastianbergmann/php-file-iterator/security/policy", + "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/5.1.0" }, "funding": [ { @@ -5895,28 +5847,28 @@ "type": "github" } ], - "time": "2021-12-02T12:48:52+00:00" + "time": "2024-08-27T05:02:59+00:00" }, { "name": "phpunit/php-invoker", - "version": "3.1.1", + "version": "5.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-invoker.git", - "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67" + "reference": "c1ca3814734c07492b3d4c5f794f4b0995333da2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67", - "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67", + "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/c1ca3814734c07492b3d4c5f794f4b0995333da2", + "reference": "c1ca3814734c07492b3d4c5f794f4b0995333da2", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.2" }, "require-dev": { "ext-pcntl": "*", - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^11.0" }, "suggest": { "ext-pcntl": "*" @@ -5924,7 +5876,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.1-dev" + "dev-main": "5.0-dev" } }, "autoload": { @@ -5950,7 +5902,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-invoker/issues", - "source": "https://github.com/sebastianbergmann/php-invoker/tree/3.1.1" + "security": "https://github.com/sebastianbergmann/php-invoker/security/policy", + "source": "https://github.com/sebastianbergmann/php-invoker/tree/5.0.1" }, "funding": [ { @@ -5958,32 +5911,32 @@ "type": "github" } ], - "time": "2020-09-28T05:58:55+00:00" + "time": "2024-07-03T05:07:44+00:00" }, { "name": "phpunit/php-text-template", - "version": "2.0.4", + "version": "4.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28" + "reference": "3e0404dc6b300e6bf56415467ebcb3fe4f33e964" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", - "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/3e0404dc6b300e6bf56415467ebcb3fe4f33e964", + "reference": "3e0404dc6b300e6bf56415467ebcb3fe4f33e964", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.2" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^11.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-main": "4.0-dev" } }, "autoload": { @@ -6009,7 +5962,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-text-template/issues", - "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4" + "security": "https://github.com/sebastianbergmann/php-text-template/security/policy", + "source": "https://github.com/sebastianbergmann/php-text-template/tree/4.0.1" }, "funding": [ { @@ -6017,32 +5971,32 @@ "type": "github" } ], - "time": "2020-10-26T05:33:50+00:00" + "time": "2024-07-03T05:08:43+00:00" }, { "name": "phpunit/php-timer", - "version": "5.0.3", + "version": "7.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2" + "reference": "3b415def83fbcb41f991d9ebf16ae4ad8b7837b3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", - "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3b415def83fbcb41f991d9ebf16ae4ad8b7837b3", + "reference": "3b415def83fbcb41f991d9ebf16ae4ad8b7837b3", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.2" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^11.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "5.0-dev" + "dev-main": "7.0-dev" } }, "autoload": { @@ -6068,7 +6022,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-timer/issues", - "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3" + "security": "https://github.com/sebastianbergmann/php-timer/security/policy", + "source": "https://github.com/sebastianbergmann/php-timer/tree/7.0.1" }, "funding": [ { @@ -6076,24 +6031,23 @@ "type": "github" } ], - "time": "2020-10-26T13:16:10+00:00" + "time": "2024-07-03T05:09:35+00:00" }, { "name": "phpunit/phpunit", - "version": "9.6.29", + "version": "11.5.42", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "9ecfec57835a5581bc888ea7e13b51eb55ab9dd3" + "reference": "1c6cb5dfe412af3d0dfd414cfd110e3b9cfdbc3c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/9ecfec57835a5581bc888ea7e13b51eb55ab9dd3", - "reference": "9ecfec57835a5581bc888ea7e13b51eb55ab9dd3", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/1c6cb5dfe412af3d0dfd414cfd110e3b9cfdbc3c", + "reference": "1c6cb5dfe412af3d0dfd414cfd110e3b9cfdbc3c", "shasum": "" }, "require": { - "doctrine/instantiator": "^1.5.0 || ^2", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*", @@ -6103,27 +6057,26 @@ "myclabs/deep-copy": "^1.13.4", "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", - "php": ">=7.3", - "phpunit/php-code-coverage": "^9.2.32", - "phpunit/php-file-iterator": "^3.0.6", - "phpunit/php-invoker": "^3.1.1", - "phpunit/php-text-template": "^2.0.4", - "phpunit/php-timer": "^5.0.3", - "sebastian/cli-parser": "^1.0.2", - "sebastian/code-unit": "^1.0.8", - "sebastian/comparator": "^4.0.9", - "sebastian/diff": "^4.0.6", - "sebastian/environment": "^5.1.5", - "sebastian/exporter": "^4.0.8", - "sebastian/global-state": "^5.0.8", - "sebastian/object-enumerator": "^4.0.4", - "sebastian/resource-operations": "^3.0.4", - "sebastian/type": "^3.2.1", - "sebastian/version": "^3.0.2" + "php": ">=8.2", + "phpunit/php-code-coverage": "^11.0.11", + "phpunit/php-file-iterator": "^5.1.0", + "phpunit/php-invoker": "^5.0.1", + "phpunit/php-text-template": "^4.0.1", + "phpunit/php-timer": "^7.0.1", + "sebastian/cli-parser": "^3.0.2", + "sebastian/code-unit": "^3.0.3", + "sebastian/comparator": "^6.3.2", + "sebastian/diff": "^6.0.2", + "sebastian/environment": "^7.2.1", + "sebastian/exporter": "^6.3.2", + "sebastian/global-state": "^7.0.2", + "sebastian/object-enumerator": "^6.0.1", + "sebastian/type": "^5.1.3", + "sebastian/version": "^5.0.2", + "staabm/side-effects-detector": "^1.0.5" }, "suggest": { - "ext-soap": "To be able to generate mocks based on WSDL files", - "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" + "ext-soap": "To be able to generate mocks based on WSDL files" }, "bin": [ "phpunit" @@ -6131,7 +6084,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "9.6-dev" + "dev-main": "11.5-dev" } }, "autoload": { @@ -6163,7 +6116,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.29" + "source": "https://github.com/sebastianbergmann/phpunit/tree/11.5.42" }, "funding": [ { @@ -6187,7 +6140,7 @@ "type": "tidelift" } ], - "time": "2025-09-24T06:29:11+00:00" + "time": "2025-09-28T12:09:13+00:00" }, { "name": "psr/http-client", @@ -6381,28 +6334,28 @@ }, { "name": "sebastian/cli-parser", - "version": "1.0.2", + "version": "3.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/cli-parser.git", - "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b" + "reference": "15c5dd40dc4f38794d383bb95465193f5e0ae180" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/2b56bea83a09de3ac06bb18b92f068e60cc6f50b", - "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b", + "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/15c5dd40dc4f38794d383bb95465193f5e0ae180", + "reference": "15c5dd40dc4f38794d383bb95465193f5e0ae180", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.2" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^11.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-main": "3.0-dev" } }, "autoload": { @@ -6425,7 +6378,8 @@ "homepage": "https://github.com/sebastianbergmann/cli-parser", "support": { "issues": "https://github.com/sebastianbergmann/cli-parser/issues", - "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.2" + "security": "https://github.com/sebastianbergmann/cli-parser/security/policy", + "source": "https://github.com/sebastianbergmann/cli-parser/tree/3.0.2" }, "funding": [ { @@ -6433,32 +6387,32 @@ "type": "github" } ], - "time": "2024-03-02T06:27:43+00:00" + "time": "2024-07-03T04:41:36+00:00" }, { "name": "sebastian/code-unit", - "version": "1.0.8", + "version": "3.0.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/code-unit.git", - "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120" + "reference": "54391c61e4af8078e5b276ab082b6d3c54c9ad64" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120", - "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/54391c61e4af8078e5b276ab082b6d3c54c9ad64", + "reference": "54391c61e4af8078e5b276ab082b6d3c54c9ad64", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.2" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^11.5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-main": "3.0-dev" } }, "autoload": { @@ -6481,7 +6435,8 @@ "homepage": "https://github.com/sebastianbergmann/code-unit", "support": { "issues": "https://github.com/sebastianbergmann/code-unit/issues", - "source": "https://github.com/sebastianbergmann/code-unit/tree/1.0.8" + "security": "https://github.com/sebastianbergmann/code-unit/security/policy", + "source": "https://github.com/sebastianbergmann/code-unit/tree/3.0.3" }, "funding": [ { @@ -6489,32 +6444,32 @@ "type": "github" } ], - "time": "2020-10-26T13:08:54+00:00" + "time": "2025-03-19T07:56:08+00:00" }, { "name": "sebastian/code-unit-reverse-lookup", - "version": "2.0.3", + "version": "4.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", - "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5" + "reference": "183a9b2632194febd219bb9246eee421dad8d45e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", - "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/183a9b2632194febd219bb9246eee421dad8d45e", + "reference": "183a9b2632194febd219bb9246eee421dad8d45e", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.2" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^11.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-main": "4.0-dev" } }, "autoload": { @@ -6536,7 +6491,8 @@ "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", "support": { "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues", - "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/2.0.3" + "security": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/security/policy", + "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/4.0.1" }, "funding": [ { @@ -6544,34 +6500,39 @@ "type": "github" } ], - "time": "2020-09-28T05:30:19+00:00" + "time": "2024-07-03T04:45:54+00:00" }, { "name": "sebastian/comparator", - "version": "4.0.9", + "version": "6.3.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "67a2df3a62639eab2cc5906065e9805d4fd5dfc5" + "reference": "85c77556683e6eee4323e4c5468641ca0237e2e8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/67a2df3a62639eab2cc5906065e9805d4fd5dfc5", - "reference": "67a2df3a62639eab2cc5906065e9805d4fd5dfc5", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/85c77556683e6eee4323e4c5468641ca0237e2e8", + "reference": "85c77556683e6eee4323e4c5468641ca0237e2e8", "shasum": "" }, "require": { - "php": ">=7.3", - "sebastian/diff": "^4.0", - "sebastian/exporter": "^4.0" + "ext-dom": "*", + "ext-mbstring": "*", + "php": ">=8.2", + "sebastian/diff": "^6.0", + "sebastian/exporter": "^6.0" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^11.4" + }, + "suggest": { + "ext-bcmath": "For comparing BcMath\\Number objects" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-main": "6.3-dev" } }, "autoload": { @@ -6610,7 +6571,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/comparator/issues", - "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.9" + "security": "https://github.com/sebastianbergmann/comparator/security/policy", + "source": "https://github.com/sebastianbergmann/comparator/tree/6.3.2" }, "funding": [ { @@ -6630,33 +6592,33 @@ "type": "tidelift" } ], - "time": "2025-08-10T06:51:50+00:00" + "time": "2025-08-10T08:07:46+00:00" }, { "name": "sebastian/complexity", - "version": "2.0.3", + "version": "4.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/complexity.git", - "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a" + "reference": "ee41d384ab1906c68852636b6de493846e13e5a0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/25f207c40d62b8b7aa32f5ab026c53561964053a", - "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a", + "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/ee41d384ab1906c68852636b6de493846e13e5a0", + "reference": "ee41d384ab1906c68852636b6de493846e13e5a0", "shasum": "" }, "require": { - "nikic/php-parser": "^4.18 || ^5.0", - "php": ">=7.3" + "nikic/php-parser": "^5.0", + "php": ">=8.2" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^11.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-main": "4.0-dev" } }, "autoload": { @@ -6679,7 +6641,8 @@ "homepage": "https://github.com/sebastianbergmann/complexity", "support": { "issues": "https://github.com/sebastianbergmann/complexity/issues", - "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.3" + "security": "https://github.com/sebastianbergmann/complexity/security/policy", + "source": "https://github.com/sebastianbergmann/complexity/tree/4.0.1" }, "funding": [ { @@ -6687,33 +6650,33 @@ "type": "github" } ], - "time": "2023-12-22T06:19:30+00:00" + "time": "2024-07-03T04:49:50+00:00" }, { "name": "sebastian/diff", - "version": "4.0.6", + "version": "6.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc" + "reference": "b4ccd857127db5d41a5b676f24b51371d76d8544" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/ba01945089c3a293b01ba9badc29ad55b106b0bc", - "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/b4ccd857127db5d41a5b676f24b51371d76d8544", + "reference": "b4ccd857127db5d41a5b676f24b51371d76d8544", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.2" }, "require-dev": { - "phpunit/phpunit": "^9.3", + "phpunit/phpunit": "^11.0", "symfony/process": "^4.2 || ^5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-main": "6.0-dev" } }, "autoload": { @@ -6745,7 +6708,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/diff/issues", - "source": "https://github.com/sebastianbergmann/diff/tree/4.0.6" + "security": "https://github.com/sebastianbergmann/diff/security/policy", + "source": "https://github.com/sebastianbergmann/diff/tree/6.0.2" }, "funding": [ { @@ -6753,27 +6717,27 @@ "type": "github" } ], - "time": "2024-03-02T06:30:58+00:00" + "time": "2024-07-03T04:53:05+00:00" }, { "name": "sebastian/environment", - "version": "5.1.5", + "version": "7.2.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed" + "reference": "a5c75038693ad2e8d4b6c15ba2403532647830c4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", - "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/a5c75038693ad2e8d4b6c15ba2403532647830c4", + "reference": "a5c75038693ad2e8d4b6c15ba2403532647830c4", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.2" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^11.3" }, "suggest": { "ext-posix": "*" @@ -6781,7 +6745,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "5.1-dev" + "dev-main": "7.2-dev" } }, "autoload": { @@ -6800,7 +6764,7 @@ } ], "description": "Provides functionality to handle HHVM/PHP environments", - "homepage": "http://www.github.com/sebastianbergmann/environment", + "homepage": "https://github.com/sebastianbergmann/environment", "keywords": [ "Xdebug", "environment", @@ -6808,42 +6772,55 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/environment/issues", - "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5" + "security": "https://github.com/sebastianbergmann/environment/security/policy", + "source": "https://github.com/sebastianbergmann/environment/tree/7.2.1" }, "funding": [ { "url": "https://github.com/sebastianbergmann", "type": "github" + }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, + { + "url": "https://tidelift.com/funding/github/packagist/sebastian/environment", + "type": "tidelift" } ], - "time": "2023-02-03T06:03:51+00:00" + "time": "2025-05-21T11:55:47+00:00" }, { "name": "sebastian/exporter", - "version": "4.0.8", + "version": "6.3.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "14c6ba52f95a36c3d27c835d65efc7123c446e8c" + "reference": "70a298763b40b213ec087c51c739efcaa90bcd74" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/14c6ba52f95a36c3d27c835d65efc7123c446e8c", - "reference": "14c6ba52f95a36c3d27c835d65efc7123c446e8c", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/70a298763b40b213ec087c51c739efcaa90bcd74", + "reference": "70a298763b40b213ec087c51c739efcaa90bcd74", "shasum": "" }, "require": { - "php": ">=7.3", - "sebastian/recursion-context": "^4.0" + "ext-mbstring": "*", + "php": ">=8.2", + "sebastian/recursion-context": "^6.0" }, "require-dev": { - "ext-mbstring": "*", - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^11.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-main": "6.3-dev" } }, "autoload": { @@ -6885,7 +6862,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.8" + "security": "https://github.com/sebastianbergmann/exporter/security/policy", + "source": "https://github.com/sebastianbergmann/exporter/tree/6.3.2" }, "funding": [ { @@ -6905,38 +6883,35 @@ "type": "tidelift" } ], - "time": "2025-09-24T06:03:27+00:00" + "time": "2025-09-24T06:12:51+00:00" }, { "name": "sebastian/global-state", - "version": "5.0.8", + "version": "7.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "b6781316bdcd28260904e7cc18ec983d0d2ef4f6" + "reference": "3be331570a721f9a4b5917f4209773de17f747d7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/b6781316bdcd28260904e7cc18ec983d0d2ef4f6", - "reference": "b6781316bdcd28260904e7cc18ec983d0d2ef4f6", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/3be331570a721f9a4b5917f4209773de17f747d7", + "reference": "3be331570a721f9a4b5917f4209773de17f747d7", "shasum": "" }, "require": { - "php": ">=7.3", - "sebastian/object-reflector": "^2.0", - "sebastian/recursion-context": "^4.0" + "php": ">=8.2", + "sebastian/object-reflector": "^4.0", + "sebastian/recursion-context": "^6.0" }, "require-dev": { "ext-dom": "*", - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-uopz": "*" + "phpunit/phpunit": "^11.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "5.0-dev" + "dev-main": "7.0-dev" } }, "autoload": { @@ -6955,59 +6930,48 @@ } ], "description": "Snapshotting of global state", - "homepage": "http://www.github.com/sebastianbergmann/global-state", + "homepage": "https://www.github.com/sebastianbergmann/global-state", "keywords": [ "global state" ], "support": { "issues": "https://github.com/sebastianbergmann/global-state/issues", - "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.8" + "security": "https://github.com/sebastianbergmann/global-state/security/policy", + "source": "https://github.com/sebastianbergmann/global-state/tree/7.0.2" }, "funding": [ { "url": "https://github.com/sebastianbergmann", "type": "github" - }, - { - "url": "https://liberapay.com/sebastianbergmann", - "type": "liberapay" - }, - { - "url": "https://thanks.dev/u/gh/sebastianbergmann", - "type": "thanks_dev" - }, - { - "url": "https://tidelift.com/funding/github/packagist/sebastian/global-state", - "type": "tidelift" } ], - "time": "2025-08-10T07:10:35+00:00" + "time": "2024-07-03T04:57:36+00:00" }, { "name": "sebastian/lines-of-code", - "version": "1.0.4", + "version": "3.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/lines-of-code.git", - "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5" + "reference": "d36ad0d782e5756913e42ad87cb2890f4ffe467a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/e1e4a170560925c26d424b6a03aed157e7dcc5c5", - "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5", + "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/d36ad0d782e5756913e42ad87cb2890f4ffe467a", + "reference": "d36ad0d782e5756913e42ad87cb2890f4ffe467a", "shasum": "" }, "require": { - "nikic/php-parser": "^4.18 || ^5.0", - "php": ">=7.3" + "nikic/php-parser": "^5.0", + "php": ">=8.2" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^11.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-main": "3.0-dev" } }, "autoload": { @@ -7030,7 +6994,8 @@ "homepage": "https://github.com/sebastianbergmann/lines-of-code", "support": { "issues": "https://github.com/sebastianbergmann/lines-of-code/issues", - "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.4" + "security": "https://github.com/sebastianbergmann/lines-of-code/security/policy", + "source": "https://github.com/sebastianbergmann/lines-of-code/tree/3.0.1" }, "funding": [ { @@ -7038,34 +7003,34 @@ "type": "github" } ], - "time": "2023-12-22T06:20:34+00:00" + "time": "2024-07-03T04:58:38+00:00" }, { "name": "sebastian/object-enumerator", - "version": "4.0.4", + "version": "6.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/object-enumerator.git", - "reference": "5c9eeac41b290a3712d88851518825ad78f45c71" + "reference": "f5b498e631a74204185071eb41f33f38d64608aa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71", - "reference": "5c9eeac41b290a3712d88851518825ad78f45c71", + "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/f5b498e631a74204185071eb41f33f38d64608aa", + "reference": "f5b498e631a74204185071eb41f33f38d64608aa", "shasum": "" }, "require": { - "php": ">=7.3", - "sebastian/object-reflector": "^2.0", - "sebastian/recursion-context": "^4.0" + "php": ">=8.2", + "sebastian/object-reflector": "^4.0", + "sebastian/recursion-context": "^6.0" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^11.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-main": "6.0-dev" } }, "autoload": { @@ -7087,7 +7052,8 @@ "homepage": "https://github.com/sebastianbergmann/object-enumerator/", "support": { "issues": "https://github.com/sebastianbergmann/object-enumerator/issues", - "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4" + "security": "https://github.com/sebastianbergmann/object-enumerator/security/policy", + "source": "https://github.com/sebastianbergmann/object-enumerator/tree/6.0.1" }, "funding": [ { @@ -7095,32 +7061,32 @@ "type": "github" } ], - "time": "2020-10-26T13:12:34+00:00" + "time": "2024-07-03T05:00:13+00:00" }, { "name": "sebastian/object-reflector", - "version": "2.0.4", + "version": "4.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/object-reflector.git", - "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7" + "reference": "6e1a43b411b2ad34146dee7524cb13a068bb35f9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", - "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", + "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/6e1a43b411b2ad34146dee7524cb13a068bb35f9", + "reference": "6e1a43b411b2ad34146dee7524cb13a068bb35f9", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.2" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^11.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-main": "4.0-dev" } }, "autoload": { @@ -7142,7 +7108,8 @@ "homepage": "https://github.com/sebastianbergmann/object-reflector/", "support": { "issues": "https://github.com/sebastianbergmann/object-reflector/issues", - "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4" + "security": "https://github.com/sebastianbergmann/object-reflector/security/policy", + "source": "https://github.com/sebastianbergmann/object-reflector/tree/4.0.1" }, "funding": [ { @@ -7150,32 +7117,32 @@ "type": "github" } ], - "time": "2020-10-26T13:14:26+00:00" + "time": "2024-07-03T05:01:32+00:00" }, { "name": "sebastian/recursion-context", - "version": "4.0.6", + "version": "6.0.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "539c6691e0623af6dc6f9c20384c120f963465a0" + "reference": "f6458abbf32a6c8174f8f26261475dc133b3d9dc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/539c6691e0623af6dc6f9c20384c120f963465a0", - "reference": "539c6691e0623af6dc6f9c20384c120f963465a0", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/f6458abbf32a6c8174f8f26261475dc133b3d9dc", + "reference": "f6458abbf32a6c8174f8f26261475dc133b3d9dc", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.2" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^11.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-main": "6.0-dev" } }, "autoload": { @@ -7205,7 +7172,8 @@ "homepage": "https://github.com/sebastianbergmann/recursion-context", "support": { "issues": "https://github.com/sebastianbergmann/recursion-context/issues", - "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.6" + "security": "https://github.com/sebastianbergmann/recursion-context/security/policy", + "source": "https://github.com/sebastianbergmann/recursion-context/tree/6.0.3" }, "funding": [ { @@ -7225,86 +7193,32 @@ "type": "tidelift" } ], - "time": "2025-08-10T06:57:39+00:00" - }, - { - "name": "sebastian/resource-operations", - "version": "3.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/resource-operations.git", - "reference": "05d5692a7993ecccd56a03e40cd7e5b09b1d404e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/05d5692a7993ecccd56a03e40cd7e5b09b1d404e", - "reference": "05d5692a7993ecccd56a03e40cd7e5b09b1d404e", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Provides a list of PHP built-in functions that operate on resources", - "homepage": "https://www.github.com/sebastianbergmann/resource-operations", - "support": { - "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2024-03-14T16:00:52+00:00" + "time": "2025-08-13T04:42:22+00:00" }, { "name": "sebastian/type", - "version": "3.2.1", + "version": "5.1.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/type.git", - "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7" + "reference": "f77d2d4e78738c98d9a68d2596fe5e8fa380f449" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", - "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/f77d2d4e78738c98d9a68d2596fe5e8fa380f449", + "reference": "f77d2d4e78738c98d9a68d2596fe5e8fa380f449", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.2" }, "require-dev": { - "phpunit/phpunit": "^9.5" + "phpunit/phpunit": "^11.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.2-dev" + "dev-main": "5.1-dev" } }, "autoload": { @@ -7327,37 +7241,50 @@ "homepage": "https://github.com/sebastianbergmann/type", "support": { "issues": "https://github.com/sebastianbergmann/type/issues", - "source": "https://github.com/sebastianbergmann/type/tree/3.2.1" + "security": "https://github.com/sebastianbergmann/type/security/policy", + "source": "https://github.com/sebastianbergmann/type/tree/5.1.3" }, "funding": [ { "url": "https://github.com/sebastianbergmann", "type": "github" + }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, + { + "url": "https://tidelift.com/funding/github/packagist/sebastian/type", + "type": "tidelift" } ], - "time": "2023-02-03T06:13:03+00:00" + "time": "2025-08-09T06:55:48+00:00" }, { "name": "sebastian/version", - "version": "3.0.2", + "version": "5.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/version.git", - "reference": "c6c1022351a901512170118436c764e473f6de8c" + "reference": "c687e3387b99f5b03b6caa64c74b63e2936ff874" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c", - "reference": "c6c1022351a901512170118436c764e473f6de8c", + "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c687e3387b99f5b03b6caa64c74b63e2936ff874", + "reference": "c687e3387b99f5b03b6caa64c74b63e2936ff874", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.2" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-main": "5.0-dev" } }, "autoload": { @@ -7380,7 +7307,8 @@ "homepage": "https://github.com/sebastianbergmann/version", "support": { "issues": "https://github.com/sebastianbergmann/version/issues", - "source": "https://github.com/sebastianbergmann/version/tree/3.0.2" + "security": "https://github.com/sebastianbergmann/version/security/policy", + "source": "https://github.com/sebastianbergmann/version/tree/5.0.2" }, "funding": [ { @@ -7388,31 +7316,83 @@ "type": "github" } ], - "time": "2020-09-28T06:39:44+00:00" + "time": "2024-10-09T05:16:32+00:00" }, { - "name": "symfony/browser-kit", - "version": "v6.4.24", + "name": "staabm/side-effects-detector", + "version": "1.0.5", "source": { "type": "git", - "url": "https://github.com/symfony/browser-kit.git", - "reference": "3537d17782f8c20795b194acb6859071b60c6fac" + "url": "https://github.com/staabm/side-effects-detector.git", + "reference": "d8334211a140ce329c13726d4a715adbddd0a163" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/browser-kit/zipball/3537d17782f8c20795b194acb6859071b60c6fac", - "reference": "3537d17782f8c20795b194acb6859071b60c6fac", + "url": "https://api.github.com/repos/staabm/side-effects-detector/zipball/d8334211a140ce329c13726d4a715adbddd0a163", + "reference": "d8334211a140ce329c13726d4a715adbddd0a163", "shasum": "" }, "require": { - "php": ">=8.1", - "symfony/dom-crawler": "^5.4|^6.0|^7.0" + "ext-tokenizer": "*", + "php": "^7.4 || ^8.0" }, "require-dev": { - "symfony/css-selector": "^5.4|^6.0|^7.0", - "symfony/http-client": "^5.4|^6.0|^7.0", - "symfony/mime": "^5.4|^6.0|^7.0", - "symfony/process": "^5.4|^6.0|^7.0" + "phpstan/extension-installer": "^1.4.3", + "phpstan/phpstan": "^1.12.6", + "phpunit/phpunit": "^9.6.21", + "symfony/var-dumper": "^5.4.43", + "tomasvotruba/type-coverage": "1.0.0", + "tomasvotruba/unused-public": "1.0.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "lib/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A static analysis tool to detect side effects in PHP code", + "keywords": [ + "static analysis" + ], + "support": { + "issues": "https://github.com/staabm/side-effects-detector/issues", + "source": "https://github.com/staabm/side-effects-detector/tree/1.0.5" + }, + "funding": [ + { + "url": "https://github.com/staabm", + "type": "github" + } + ], + "time": "2024-10-20T05:08:20+00:00" + }, + { + "name": "symfony/browser-kit", + "version": "v7.3.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/browser-kit.git", + "reference": "f0b889b73a845cddef1d25fe207b37fd04cb5419" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/browser-kit/zipball/f0b889b73a845cddef1d25fe207b37fd04cb5419", + "reference": "f0b889b73a845cddef1d25fe207b37fd04cb5419", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/dom-crawler": "^6.4|^7.0" + }, + "require-dev": { + "symfony/css-selector": "^6.4|^7.0", + "symfony/http-client": "^6.4|^7.0", + "symfony/mime": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -7440,7 +7420,7 @@ "description": "Simulates the behavior of a web browser, allowing you to make requests, click on links and submit forms programmatically", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/browser-kit/tree/v6.4.24" + "source": "https://github.com/symfony/browser-kit/tree/v7.3.2" }, "funding": [ { @@ -7460,7 +7440,7 @@ "type": "tidelift" } ], - "time": "2025-07-10T08:14:14+00:00" + "time": "2025-07-10T08:47:49+00:00" }, { "name": "symfony/css-selector", @@ -7529,26 +7509,26 @@ }, { "name": "symfony/dom-crawler", - "version": "v6.4.25", + "version": "v7.3.3", "source": { "type": "git", "url": "https://github.com/symfony/dom-crawler.git", - "reference": "976302990f9f2a6d4c07206836dd4ca77cae9524" + "reference": "efa076ea0eeff504383ff0dcf827ea5ce15690ba" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/976302990f9f2a6d4c07206836dd4ca77cae9524", - "reference": "976302990f9f2a6d4c07206836dd4ca77cae9524", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/efa076ea0eeff504383ff0dcf827ea5ce15690ba", + "reference": "efa076ea0eeff504383ff0dcf827ea5ce15690ba", "shasum": "" }, "require": { "masterminds/html5": "^2.6", - "php": ">=8.1", + "php": ">=8.2", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-mbstring": "~1.0" }, "require-dev": { - "symfony/css-selector": "^5.4|^6.0|^7.0" + "symfony/css-selector": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -7576,7 +7556,7 @@ "description": "Eases DOM navigation for HTML and XML documents", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dom-crawler/tree/v6.4.25" + "source": "https://github.com/symfony/dom-crawler/tree/v7.3.3" }, "funding": [ { @@ -7596,7 +7576,7 @@ "type": "tidelift" } ], - "time": "2025-08-05T18:56:08+00:00" + "time": "2025-08-06T20:13:54+00:00" }, { "name": "symfony/finder", diff --git a/needs_fixing.txt b/needs_fixing.txt new file mode 100644 index 000000000..bc9122204 --- /dev/null +++ b/needs_fixing.txt @@ -0,0 +1,505 @@ + ------ ---------------------------------------------------- + Line src/Grav/Common/GPM/Response.php + ------ ---------------------------------------------------- + 3 Class Grav\Common\GPM\Response not found. + 🪪 class.notFound + 💡 Learn more at + https://phpstan.org/user-guide/discovering-symbols + ------ ---------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Common/Grav.php + ------ ----------------------------------------------------------- + 148 No error to ignore is reported on line 148. + 681 Unsafe usage of new static(). + 🪪 new.static + 💡 See: + https://phpstan.org/blog/solving-phpstan-error-unsafe-usa + ge-of-new-static + ------ ----------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Common/Page/Collection.php + ------ ----------------------------------------------------------- + 112 Unsafe usage of new static(). + 🪪 new.static + 💡 See: + https://phpstan.org/blog/solving-phpstan-error-unsafe-usa + ge-of-new-static + 209 Unsafe usage of new static(). + 🪪 new.static + 💡 See: + https://phpstan.org/blog/solving-phpstan-error-unsafe-usa + ge-of-new-static + ------ ----------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Common/Processors/InitializeProcessor.php + ------ ----------------------------------------------------------- + 58 Unsafe usage of new static(). + 🪪 new.static + 💡 See: + https://phpstan.org/blog/solving-phpstan-error-unsafe-usa + ge-of-new-static + ------ ----------------------------------------------------------- + + ------ ------------------------------------------------------- + Line src/Grav/Common/Scheduler/Job.php + ------ ------------------------------------------------------- + 574 Call to static method sendEmail() on an unknown class + Grav\Plugin\Email\Utils. + 🪪 class.notFound + 💡 Learn more at + https://phpstan.org/user-guide/discovering-symbols + ------ ------------------------------------------------------- + + ------ ---------------------------------------------------------- + Line src/Grav/Common/Scheduler/SchedulerController.php + ------ ---------------------------------------------------------- + 41 Class Grav\Common\Scheduler\ModernScheduler not found. + 🪪 class.notFound + 💡 Learn more at + https://phpstan.org/user-guide/discovering-symbols + 45 Instantiated class Grav\Common\Scheduler\ModernScheduler + not found. + 🪪 class.notFound + 💡 Learn more at + https://phpstan.org/user-guide/discovering-symbols + ------ ---------------------------------------------------------- + + ------ -------------------------------------------------------- + Line src/Grav/Common/Service/SchedulerServiceProvider.php + ------ -------------------------------------------------------- + 55 Instantiated class Grav\Common\Scheduler\JobWorker not + found. + 🪪 class.notFound + 💡 Learn more at + https://phpstan.org/user-guide/discovering-symbols + ------ -------------------------------------------------------- + + ------ --------------------------------------------- + Line src/Grav/Common/Session.php + ------ --------------------------------------------- + 132 No error to ignore is reported on line 132. + 137 No error to ignore is reported on line 137. + ------ --------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Common/Uri.php + ------ ----------------------------------------------------------- + 1131 Unsafe usage of new static(). + 🪪 new.static + 💡 See: + https://phpstan.org/blog/solving-phpstan-error-unsafe-usa + ge-of-new-static + ------ ----------------------------------------------------------- + + ------ -------------------------------------------------------- + Line src/Grav/Console/Application/Application.php + ------ -------------------------------------------------------- + 125 Return type mixed of method + Grav\Console\Application\Application::configureIO() is + not covariant with return type void of method + Symfony\Component\Console\Application::configureIO(). + ------ -------------------------------------------------------- + + ------ --------------------------------------------------------- + Line src/Grav/Console/ConsoleCommand.php + ------ --------------------------------------------------------- + 29 Return type mixed of method + Grav\Console\ConsoleCommand::execute() is not covariant + with return type int of method + Symfony\Component\Console\Command\Command::execute(). + ------ --------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Console/ConsoleTrait.php (in context of class + Grav\Console\ConsoleCommand) + ------ ----------------------------------------------------------- + 89 Method Grav\Console\ConsoleCommand::addOption() overrides + method + Symfony\Component\Console\Command\Command::addOption() + but misses parameter #6 $suggestedValues. + ------ ----------------------------------------------------------- + + ------ -------------------------------------------------------- + Line src/Grav/Console/ConsoleTrait.php (in context of class + Grav\Console\GpmCommand) + ------ -------------------------------------------------------- + 89 Method Grav\Console\GpmCommand::addOption() overrides + method + Symfony\Component\Console\Command\Command::addOption() + but misses parameter #6 $suggestedValues. + ------ -------------------------------------------------------- + + ------ -------------------------------------------------------- + Line src/Grav/Console/ConsoleTrait.php (in context of class + Grav\Console\GravCommand) + ------ -------------------------------------------------------- + 89 Method Grav\Console\GravCommand::addOption() overrides + method + Symfony\Component\Console\Command\Command::addOption() + but misses parameter #6 $suggestedValues. + ------ -------------------------------------------------------- + + ------ ---------------------------------------------------------- + Line src/Grav/Console/GpmCommand.php + ------ ---------------------------------------------------------- + 31 Return type mixed of method + Grav\Console\GpmCommand::execute() is not covariant with + return type int of method + Symfony\Component\Console\Command\Command::execute(). + 39 No error to ignore is reported on line 39. + ------ ---------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Console/GravCommand.php + ------ ----------------------------------------------------------- + 29 Return type mixed of method + Grav\Console\GravCommand::execute() is not covariant with + return type int of method + Symfony\Component\Console\Command\Command::execute(). + ------ ----------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Framework/Acl/RecursiveActionIterator.php + ------ ----------------------------------------------------------- + 62 Unsafe usage of new static(). + 🪪 new.static + 💡 See: + https://phpstan.org/blog/solving-phpstan-error-unsafe-usa + ge-of-new-static + ------ ----------------------------------------------------------- + + ------ ---------------------------------------------------------- + Line src/Grav/Framework/Cache/CacheTrait.php (in context of + class Grav\Framework\Cache\AbstractCache) + ------ ---------------------------------------------------------- + 87 Return type mixed of method + Grav\Framework\Cache\AbstractCache::get() is not + covariant with return type mixed of method + Psr\SimpleCache\CacheInterface::get(). + 102 Return type mixed of method + Grav\Framework\Cache\AbstractCache::set() is not + covariant with return type bool of method + Psr\SimpleCache\CacheInterface::set(). + 117 Return type mixed of method + Grav\Framework\Cache\AbstractCache::delete() is not + covariant with return type bool of method + Psr\SimpleCache\CacheInterface::delete(). + 127 Return type mixed of method + Grav\Framework\Cache\AbstractCache::clear() is not + covariant with return type bool of method + Psr\SimpleCache\CacheInterface::clear(). + 138 Return type mixed of method + Grav\Framework\Cache\AbstractCache::getMultiple() is not + covariant with return type iterable of method + Psr\SimpleCache\CacheInterface::getMultiple(). + 181 Return type mixed of method + Grav\Framework\Cache\AbstractCache::setMultiple() is not + covariant with return type bool of method + Psr\SimpleCache\CacheInterface::setMultiple(). + 214 Return type mixed of method + Grav\Framework\Cache\AbstractCache::deleteMultiple() is + not covariant with return type bool of method + Psr\SimpleCache\CacheInterface::deleteMultiple(). + 242 Return type mixed of method + Grav\Framework\Cache\AbstractCache::has() is not + covariant with return type bool of method + Psr\SimpleCache\CacheInterface::has(). + ------ ---------------------------------------------------------- + + ------ ---------------------------------------------------------- + Line src/Grav/Framework/Collection/AbstractFileCollection.php + ------ ---------------------------------------------------------- + 95 No error to ignore is reported on line 95. + ------ ---------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Framework/Collection/AbstractIndexCollection.php + ------ ----------------------------------------------------------- + 154 No error to ignore is reported on line 154. + 168 No error to ignore is reported on line 168. + 185 No error to ignore is reported on line 185. + 201 No error to ignore is reported on line 201. + 507 Unsafe usage of new static(). + 🪪 new.static + 💡 See: + https://phpstan.org/blog/solving-phpstan-error-unsafe-usa + ge-of-new-static + ------ ----------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Framework/Collection/AbstractLazyCollection.php + ------ ----------------------------------------------------------- + 29 Property + Grav\Framework\Collection\AbstractLazyCollection::$collec + tion overriding property + Doctrine\Common\Collections\AbstractLazyCollection::$collection (Doctrine\Common\Collectio + ns\Collection|null) should also have native type + Doctrine\Common\Collections\Collection|null. + ------ ----------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Framework/Contracts/Relationships/RelationshipIn + terface.php + ------ ----------------------------------------------------------- + 80 Return type iterable of method + Grav\Framework\Contracts\Relationships\RelationshipInterf + ace::getIterator() is not covariant with tentative return + type Traversable of method IteratorAggregate::get + Iterator(). + 💡 Make it covariant, or use the #[\ReturnTypeWillChange] + attribute to temporarily suppress the error. + ------ ----------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Framework/Filesystem/Filesystem.php + ------ ----------------------------------------------------------- + 51 Unsafe usage of new static(). + 🪪 new.static + 💡 See: + https://phpstan.org/blog/solving-phpstan-error-unsafe-usa + ge-of-new-static + 252 No error to ignore is reported on line 252. + ------ ----------------------------------------------------------- + + ------ --------------------------------------------- + Line src/Grav/Framework/Flex/FlexCollection.php + ------ --------------------------------------------- + 102 No error to ignore is reported on line 102. + ------ --------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Framework/Flex/FlexIdentifier.php + ------ ----------------------------------------------------------- + 27 Unsafe usage of new static(). + 🪪 new.static + 💡 See: + https://phpstan.org/blog/solving-phpstan-error-unsafe-usa + ge-of-new-static + ------ ----------------------------------------------------------- + + ------ ---------------------------------------------------------- + Line src/Grav/Framework/Flex/FlexIndex.php + ------ ---------------------------------------------------------- + 109 No error to ignore is reported on line 109. + 934 Method Grav\Framework\Flex\FlexIndex::reduce() should + return TInitial|TReturn but return statement is missing. + 🪪 return.missing + ------ ---------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Framework/Form/FormFlashFile.php + ------ ----------------------------------------------------------- + 62 Return type mixed of method + Grav\Framework\Form\FormFlashFile::getStream() is not + covariant with return type + Psr\Http\Message\StreamInterface of method + Psr\Http\Message\UploadedFileInterface::getStream(). + 83 Return type mixed of method + Grav\Framework\Form\FormFlashFile::moveTo() is not + covariant with return type void of method + Psr\Http\Message\UploadedFileInterface::moveTo(). + 123 Return type mixed of method + Grav\Framework\Form\FormFlashFile::getSize() is not + covariant with return type int|null of method + Psr\Http\Message\UploadedFileInterface::getSize(). + 131 Return type mixed of method + Grav\Framework\Form\FormFlashFile::getError() is not + covariant with return type int of method + Psr\Http\Message\UploadedFileInterface::getError(). + 139 Return type mixed of method + Grav\Framework\Form\FormFlashFile::getClientFilename() is + not covariant with return type string|null of method + Psr\Http\Message\UploadedFileInterface::getClientFilename + (). + 147 Return type mixed of method + Grav\Framework\Form\FormFlashFile::getClientMediaType() + is not covariant with return type string|null of method + Psr\Http\Message\UploadedFileInterface::getClientMediaTyp + e(). + ------ ----------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Framework/Logger/Processors/UserProcessor.php + ------ ----------------------------------------------------------- + 24 Parameter #1 $record (array) of method + Grav\Framework\Logger\Processors\UserProcessor::__invoke( + ) is not contravariant with parameter #1 $record + (Monolog\LogRecord) of method + Monolog\Processor\ProcessorInterface::__invoke(). + ------ ----------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Framework/Media/MediaIdentifier.php + ------ ----------------------------------------------------------- + 30 Unsafe usage of new static(). + 🪪 new.static + 💡 See: + https://phpstan.org/blog/solving-phpstan-error-unsafe-usa + ge-of-new-static + ------ ----------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Framework/Media/UploadedMediaObject.php + ------ ----------------------------------------------------------- + 36 Unsafe usage of new static(). + 🪪 new.static + 💡 See: + https://phpstan.org/blog/solving-phpstan-error-unsafe-usa + ge-of-new-static + ------ ----------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Framework/Mime/MimeTypes.php + ------ ----------------------------------------------------------- + 42 Unsafe usage of new static(). + 🪪 new.static + 💡 See: + https://phpstan.org/blog/solving-phpstan-error-unsafe-usa + ge-of-new-static + ------ ----------------------------------------------------------- + + ------ ------------------------------------------------ + Line src/Grav/Framework/Object/ObjectCollection.php + ------ ------------------------------------------------ + 96 No error to ignore is reported on line 96. + ------ ------------------------------------------------ + + ------ --------------------------------------------- + Line src/Grav/Framework/Object/ObjectIndex.php + ------ --------------------------------------------- + 193 No error to ignore is reported on line 193. + ------ --------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Framework/Psr7/Stream.php + ------ ----------------------------------------------------------- + 31 Unsafe usage of new static(). + 🪪 new.static + 💡 See: + https://phpstan.org/blog/solving-phpstan-error-unsafe-usa + ge-of-new-static + ------ ----------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Framework/Psr7/Traits/ServerRequestDecoratorTrai + t.php (in context of class + Grav\Framework\Psr7\ServerRequest) + ------ ----------------------------------------------------------- + 51 Return type mixed of method + Grav\Framework\Psr7\ServerRequest::getAttributes() is not + covariant with return type array of method + Psr\Http\Message\ServerRequestInterface::getAttributes(). + 60 Return type mixed of method + Grav\Framework\Psr7\ServerRequest::getCookieParams() is + not covariant with return type array of method + Psr\Http\Message\ServerRequestInterface::getCookieParams( + ). + 76 Return type mixed of method + Grav\Framework\Psr7\ServerRequest::getQueryParams() is + not covariant with return type array of method + Psr\Http\Message\ServerRequestInterface::getQueryParams() + . + 84 Return type mixed of method + Grav\Framework\Psr7\ServerRequest::getServerParams() is + not covariant with return type array of method + Psr\Http\Message\ServerRequestInterface::getServerParams( + ). + 92 Return type mixed of method + Grav\Framework\Psr7\ServerRequest::getUploadedFiles() is + not covariant with return type array of method + Psr\Http\Message\ServerRequestInterface::getUploadedFiles + (). + 100 Return type mixed of method + Grav\Framework\Psr7\ServerRequest::withAttribute() is not + covariant with return type + Psr\Http\Message\ServerRequestInterface of method + Psr\Http\Message\ServerRequestInterface::withAttribute(). + 125 Return type mixed of method + Grav\Framework\Psr7\ServerRequest::withoutAttribute() is + not covariant with return type + Psr\Http\Message\ServerRequestInterface of method + Psr\Http\Message\ServerRequestInterface::withoutAttribute + (). + 136 Return type mixed of method + Grav\Framework\Psr7\ServerRequest::withCookieParams() is + not covariant with return type + Psr\Http\Message\ServerRequestInterface of method + Psr\Http\Message\ServerRequestInterface::withCookieParams + (). + 147 Return type mixed of method + Grav\Framework\Psr7\ServerRequest::withParsedBody() is + not covariant with return type + Psr\Http\Message\ServerRequestInterface of method + Psr\Http\Message\ServerRequestInterface::withParsedBody() + . + 158 Return type mixed of method + Grav\Framework\Psr7\ServerRequest::withQueryParams() is + not covariant with return type + Psr\Http\Message\ServerRequestInterface of method + Psr\Http\Message\ServerRequestInterface::withQueryParams( + ). + 169 Return type mixed of method + Grav\Framework\Psr7\ServerRequest::withUploadedFiles() is + not covariant with return type + Psr\Http\Message\ServerRequestInterface of method + Psr\Http\Message\ServerRequestInterface::withUploadedFile + s(). + ------ ----------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Grav/Framework/Relationships/Relationships.php + ------ ----------------------------------------------------------- + 107 Return type mixed of method + Grav\Framework\Relationships\Relationships::offsetSet() + is not covariant with tentative return type void of + method + ArrayAccess>::of + fsetSet(). + 💡 Make it covariant, or use the #[\ReturnTypeWillChange] + attribute to temporarily suppress the error. + 116 Return type mixed of method + Grav\Framework\Relationships\Relationships::offsetUnset() + is not covariant with tentative return type void of + method + ArrayAccess>::of + fsetUnset(). + 💡 Make it covariant, or use the #[\ReturnTypeWillChange] + attribute to temporarily suppress the error. + ------ ----------------------------------------------------------- + + ------ ----------------------------------------------------------- + Line src/Twig/DeferredExtension/DeferredNodeVisitorCompat.php + ------ ----------------------------------------------------------- + 30 Parameter #1 $node (Twig_NodeInterface) of method + Twig\DeferredExtension\DeferredNodeVisitorCompat::enterNo + de() is not contravariant with parameter #1 $node + (Twig\Node\Node) of method + Twig\NodeVisitor\NodeVisitorInterface::enterNode(). + 30 Parameter $node of method + Twig\DeferredExtension\DeferredNodeVisitorCompat::enterNo + de() has invalid type Twig_NodeInterface. + 🪪 class.notFound + 46 Parameter #1 $node (Twig_NodeInterface) of method + Twig\DeferredExtension\DeferredNodeVisitorCompat::leaveNo + de() is not contravariant with parameter #1 $node + (Twig\Node\Node) of method + Twig\NodeVisitor\NodeVisitorInterface::leaveNode(). + 46 Parameter $node of method + Twig\DeferredExtension\DeferredNodeVisitorCompat::leaveNo + de() has invalid type Twig_NodeInterface. + 🪪 class.notFound + ------ ----------------------------------------------------------- + + [ERROR] Found 74 errors + diff --git a/system/src/Grav/Framework/Psr7/AbstractUri.php b/system/src/Grav/Framework/Psr7/AbstractUri.php index a2ba6d06c..42e998fb3 100644 --- a/system/src/Grav/Framework/Psr7/AbstractUri.php +++ b/system/src/Grav/Framework/Psr7/AbstractUri.php @@ -23,26 +23,26 @@ abstract class AbstractUri implements UriInterface { /** @var array */ protected static $defaultPorts = [ - 'http' => 80, - 'https' => 443 + "http" => 80, + "https" => 443, ]; /** @var string Uri scheme. */ - private $scheme = ''; + private $scheme = ""; /** @var string Uri user. */ - private $user = ''; + private $user = ""; /** @var string Uri password. */ - private $password = ''; + private $password = ""; /** @var string Uri host. */ - private $host = ''; + private $host = ""; /** @var int|null Uri port. */ private $port; /** @var string Uri path. */ - private $path = ''; + private $path = ""; /** @var string Uri query string (without ?). */ - private $query = ''; + private $query = ""; /** @var string Uri fragment (without #). */ - private $fragment = ''; + private $fragment = ""; /** * Please define constructor which calls $this->init(). @@ -52,7 +52,7 @@ abstract class AbstractUri implements UriInterface /** * @inheritdoc */ - public function getScheme() + public function getScheme(): string { return $this->scheme; } @@ -60,17 +60,17 @@ abstract class AbstractUri implements UriInterface /** * @inheritdoc */ - public function getAuthority() + public function getAuthority(): string { $authority = $this->host; $userInfo = $this->getUserInfo(); - if ($userInfo !== '') { - $authority = $userInfo . '@' . $authority; + if ($userInfo !== "") { + $authority = $userInfo . "@" . $authority; } if ($this->port !== null) { - $authority .= ':' . $this->port; + $authority .= ":" . $this->port; } return $authority; @@ -79,12 +79,12 @@ abstract class AbstractUri implements UriInterface /** * @inheritdoc */ - public function getUserInfo() + public function getUserInfo(): string { $userInfo = $this->user; - if ($this->password !== '') { - $userInfo .= ':' . $this->password; + if ($this->password !== "") { + $userInfo .= ":" . $this->password; } return $userInfo; @@ -93,7 +93,7 @@ abstract class AbstractUri implements UriInterface /** * @inheritdoc */ - public function getHost() + public function getHost(): string { return $this->host; } @@ -101,7 +101,7 @@ abstract class AbstractUri implements UriInterface /** * @inheritdoc */ - public function getPort() + public function getPort(): ?int { return $this->port; } @@ -109,7 +109,7 @@ abstract class AbstractUri implements UriInterface /** * @inheritdoc */ - public function getPath() + public function getPath(): string { return $this->path; } @@ -117,7 +117,7 @@ abstract class AbstractUri implements UriInterface /** * @inheritdoc */ - public function getQuery() + public function getQuery(): string { return $this->query; } @@ -125,7 +125,7 @@ abstract class AbstractUri implements UriInterface /** * @inheritdoc */ - public function getFragment() + public function getFragment(): string { return $this->fragment; } @@ -133,7 +133,7 @@ abstract class AbstractUri implements UriInterface /** * @inheritdoc */ - public function withScheme($scheme) + public function withScheme(string $scheme): UriInterface { $scheme = UriPartsFilter::filterScheme($scheme); @@ -153,10 +153,10 @@ abstract class AbstractUri implements UriInterface * @inheritdoc * @throws InvalidArgumentException */ - public function withUserInfo($user, $password = null) + public function withUserInfo(string $user, ?string $password = null): UriInterface { $user = UriPartsFilter::filterUserInfo($user); - $password = UriPartsFilter::filterUserInfo($password ?? ''); + $password = UriPartsFilter::filterUserInfo($password ?? ""); if ($this->user === $user && $this->password === $password) { return $this; @@ -164,7 +164,7 @@ abstract class AbstractUri implements UriInterface $new = clone $this; $new->user = $user; - $new->password = $user !== '' ? $password : ''; + $new->password = $user !== "" ? $password : ""; $new->validate(); return $new; @@ -173,7 +173,7 @@ abstract class AbstractUri implements UriInterface /** * @inheritdoc */ - public function withHost($host) + public function withHost(string $host): UriInterface { $host = UriPartsFilter::filterHost($host); @@ -191,7 +191,7 @@ abstract class AbstractUri implements UriInterface /** * @inheritdoc */ - public function withPort($port) + public function withPort(?int $port): UriInterface { $port = UriPartsFilter::filterPort($port); @@ -210,7 +210,7 @@ abstract class AbstractUri implements UriInterface /** * @inheritdoc */ - public function withPath($path) + public function withPath(string $path): UriInterface { $path = UriPartsFilter::filterPath($path); @@ -228,7 +228,7 @@ abstract class AbstractUri implements UriInterface /** * @inheritdoc */ - public function withQuery($query) + public function withQuery(string $query): UriInterface { $query = UriPartsFilter::filterQueryOrFragment($query); @@ -246,7 +246,7 @@ abstract class AbstractUri implements UriInterface * @inheritdoc * @throws InvalidArgumentException */ - public function withFragment($fragment) + public function withFragment(string $fragment): UriInterface { $fragment = UriPartsFilter::filterQueryOrFragment($fragment); @@ -275,14 +275,14 @@ abstract class AbstractUri implements UriInterface protected function getParts() { return [ - 'scheme' => $this->scheme, - 'host' => $this->host, - 'port' => $this->port, - 'user' => $this->user, - 'pass' => $this->password, - 'path' => $this->path, - 'query' => $this->query, - 'fragment' => $this->fragment + "scheme" => $this->scheme, + "host" => $this->host, + "port" => $this->port, + "user" => $this->user, + "pass" => $this->password, + "path" => $this->path, + "query" => $this->query, + "fragment" => $this->fragment, ]; } @@ -295,16 +295,16 @@ abstract class AbstractUri implements UriInterface */ protected function getBaseUrl() { - $uri = ''; + $uri = ""; $scheme = $this->getScheme(); - if ($scheme !== '') { - $uri .= $scheme . ':'; + if ($scheme !== "") { + $uri .= $scheme . ":"; } $authority = $this->getAuthority(); - if ($authority !== '' || $scheme === 'file') { - $uri .= '//' . $authority; + if ($authority !== "" || $scheme === "file") { + $uri .= "//" . $authority; } return $uri; @@ -318,13 +318,13 @@ abstract class AbstractUri implements UriInterface $uri = $this->getBaseUrl() . $this->getPath(); $query = $this->getQuery(); - if ($query !== '') { - $uri .= '?' . $query; + if ($query !== "") { + $uri .= "?" . $query; } $fragment = $this->getFragment(); - if ($fragment !== '') { - $uri .= '#' . $fragment; + if ($fragment !== "") { + $uri .= "#" . $fragment; } return $uri; @@ -353,14 +353,30 @@ abstract class AbstractUri implements UriInterface */ protected function initParts(array $parts) { - $this->scheme = isset($parts['scheme']) ? UriPartsFilter::filterScheme($parts['scheme']) : ''; - $this->user = isset($parts['user']) ? UriPartsFilter::filterUserInfo($parts['user']) : ''; - $this->password = isset($parts['pass']) ? UriPartsFilter::filterUserInfo($parts['pass']) : ''; - $this->host = isset($parts['host']) ? UriPartsFilter::filterHost($parts['host']) : ''; - $this->port = isset($parts['port']) ? UriPartsFilter::filterPort((int)$parts['port']) : null; - $this->path = isset($parts['path']) ? UriPartsFilter::filterPath($parts['path']) : ''; - $this->query = isset($parts['query']) ? UriPartsFilter::filterQueryOrFragment($parts['query']) : ''; - $this->fragment = isset($parts['fragment']) ? UriPartsFilter::filterQueryOrFragment($parts['fragment']) : ''; + $this->scheme = isset($parts["scheme"]) + ? UriPartsFilter::filterScheme($parts["scheme"]) + : ""; + $this->user = isset($parts["user"]) + ? UriPartsFilter::filterUserInfo($parts["user"]) + : ""; + $this->password = isset($parts["pass"]) + ? UriPartsFilter::filterUserInfo($parts["pass"]) + : ""; + $this->host = isset($parts["host"]) + ? UriPartsFilter::filterHost($parts["host"]) + : ""; + $this->port = isset($parts["port"]) + ? UriPartsFilter::filterPort((int) $parts["port"]) + : null; + $this->path = isset($parts["path"]) + ? UriPartsFilter::filterPath($parts["path"]) + : ""; + $this->query = isset($parts["query"]) + ? UriPartsFilter::filterQueryOrFragment($parts["query"]) + : ""; + $this->fragment = isset($parts["fragment"]) + ? UriPartsFilter::filterQueryOrFragment($parts["fragment"]) + : ""; $this->unsetDefaultPort(); $this->validate(); @@ -372,19 +388,33 @@ abstract class AbstractUri implements UriInterface */ private function validate() { - if ($this->host === '' && ($this->scheme === 'http' || $this->scheme === 'https')) { - throw new InvalidArgumentException('Uri with a scheme must have a host'); + if ( + $this->host === "" && + ($this->scheme === "http" || $this->scheme === "https") + ) { + throw new InvalidArgumentException( + "Uri with a scheme must have a host" + ); } - if ($this->getAuthority() === '') { - if (str_starts_with($this->path, '//')) { - throw new InvalidArgumentException('The path of a URI without an authority must not start with two slashes \'//\''); + if ($this->getAuthority() === "") { + if (str_starts_with($this->path, "//")) { + throw new InvalidArgumentException( + 'The path of a URI without an authority must not start with two slashes \'//\'' + ); } - if ($this->scheme === '' && str_contains(explode('/', $this->path, 2)[0], ':')) { - throw new InvalidArgumentException('A relative URI must not have a path beginning with a segment containing a colon'); + if ( + $this->scheme === "" && + str_contains(explode("/", $this->path, 2)[0], ":") + ) { + throw new InvalidArgumentException( + "A relative URI must not have a path beginning with a segment containing a colon" + ); } - } elseif (isset($this->path[0]) && $this->path[0] !== '/') { - throw new InvalidArgumentException('The path of a URI with an authority must start with a slash \'/\' or be empty'); + } elseif (isset($this->path[0]) && $this->path[0] !== "/") { + throw new InvalidArgumentException( + 'The path of a URI with an authority must start with a slash \'/\' or be empty' + ); } } @@ -396,8 +426,9 @@ abstract class AbstractUri implements UriInterface $scheme = $this->scheme; $port = $this->port; - return $this->port === null - || (isset(static::$defaultPorts[$scheme]) && $port === static::$defaultPorts[$scheme]); + return $this->port === null || + (isset(static::$defaultPorts[$scheme]) && + $port === static::$defaultPorts[$scheme]); } /** diff --git a/tests/unit/Grav/Common/Data/BlueprintTest.php b/tests/unit/Grav/Common/Data/BlueprintTest.php index 54a2879e1..17dde8f14 100644 --- a/tests/unit/Grav/Common/Data/BlueprintTest.php +++ b/tests/unit/Grav/Common/Data/BlueprintTest.php @@ -36,7 +36,24 @@ class BlueprintTest extends \PHPUnit\Framework\TestCase { $blueprint = $this->loadBlueprint('strict'); - $blueprint->validate(['test' => 'string', 'wrong' => 'field']); + $message = "Having extra key wrong in your data is deprecated with blueprint having 'validation: strict'"; + $deprecationMessages = []; + set_error_handler(static function (int $errno, string $errstr) use (&$deprecationMessages): bool { + if ($errno === E_USER_DEPRECATED) { + $deprecationMessages[] = $errstr; + return true; + } + + return false; + }); + + try { + $blueprint->validate(['test' => 'string', 'wrong' => 'field']); + } finally { + restore_error_handler(); + } + + self::assertContains($message, $deprecationMessages); } /**