diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS deleted file mode 100644 index d4431bbfb..000000000 --- a/.github/CODEOWNERS +++ /dev/null @@ -1 +0,0 @@ -* @PicPay/core-transacional-orquestrador diff --git a/.moonlight.yaml b/.moonlight.yaml new file mode 100644 index 000000000..c3e7b8d5f --- /dev/null +++ b/.moonlight.yaml @@ -0,0 +1,18 @@ +sonar: + enabled: true + type: other +build: + enabled: false +sast: + enabled: true + +steps: + - name: unit-tests + image: 289208114389.dkr.ecr.us-east-1.amazonaws.com/picpay-dev/hyperf:php8.2-swoole5.0-dev + environment: + COMPOSER_AUTH: + from_secret: composer-auth + key: COMPOSER_AUTH + commands: + - composer install + - composer test diff --git a/composer.lock b/composer.lock index 590092701..1707e4ce6 100644 --- a/composer.lock +++ b/composer.lock @@ -8,28 +8,28 @@ "packages": [ { "name": "doctrine/inflector", - "version": "2.0.6", + "version": "2.0.8", "source": { "type": "git", "url": "https://github.com/doctrine/inflector.git", - "reference": "d9d313a36c872fd6ee06d9a6cbcf713eaa40f024" + "reference": "f9301a5b2fb1216b2b08f02ba04dc45423db6bff" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/inflector/zipball/d9d313a36c872fd6ee06d9a6cbcf713eaa40f024", - "reference": "d9d313a36c872fd6ee06d9a6cbcf713eaa40f024", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/f9301a5b2fb1216b2b08f02ba04dc45423db6bff", + "reference": "f9301a5b2fb1216b2b08f02ba04dc45423db6bff", "shasum": "" }, "require": { "php": "^7.2 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^10", + "doctrine/coding-standard": "^11.0", "phpstan/phpstan": "^1.8", "phpstan/phpstan-phpunit": "^1.1", "phpstan/phpstan-strict-rules": "^1.3", "phpunit/phpunit": "^8.5 || ^9.5", - "vimeo/psalm": "^4.25" + "vimeo/psalm": "^4.25 || ^5.4" }, "type": "library", "autoload": { @@ -79,7 +79,7 @@ ], "support": { "issues": "https://github.com/doctrine/inflector/issues", - "source": "https://github.com/doctrine/inflector/tree/2.0.6" + "source": "https://github.com/doctrine/inflector/tree/2.0.8" }, "funding": [ { @@ -95,26 +95,26 @@ "type": "tidelift" } ], - "time": "2022-10-20T09:10:12+00:00" + "time": "2023-06-16T13:40:37+00:00" }, { "name": "guzzlehttp/guzzle", - "version": "7.5.0", + "version": "7.7.0", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba" + "reference": "fb7566caccf22d74d1ab270de3551f72a58399f5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/b50a2a1251152e43f6a37f0fa053e730a67d25ba", - "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/fb7566caccf22d74d1ab270de3551f72a58399f5", + "reference": "fb7566caccf22d74d1ab270de3551f72a58399f5", "shasum": "" }, "require": { "ext-json": "*", - "guzzlehttp/promises": "^1.5", - "guzzlehttp/psr7": "^1.9 || ^2.4", + "guzzlehttp/promises": "^1.5.3 || ^2.0", + "guzzlehttp/psr7": "^1.9.1 || ^2.4.5", "php": "^7.2.5 || ^8.0", "psr/http-client": "^1.0", "symfony/deprecation-contracts": "^2.2 || ^3.0" @@ -125,7 +125,8 @@ "require-dev": { "bamarni/composer-bin-plugin": "^1.8.1", "ext-curl": "*", - "php-http/client-integration-tests": "^3.0", + "php-http/client-integration-tests": "dev-master#2c025848417c1135031fdf9c728ee53d0a7ceaee as 3.0.999", + "php-http/message-factory": "^1.1", "phpunit/phpunit": "^8.5.29 || ^9.5.23", "psr/log": "^1.1 || ^2.0 || ^3.0" }, @@ -139,9 +140,6 @@ "bamarni-bin": { "bin-links": true, "forward-command": false - }, - "branch-alias": { - "dev-master": "7.5-dev" } }, "autoload": { @@ -207,7 +205,7 @@ ], "support": { "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.5.0" + "source": "https://github.com/guzzle/guzzle/tree/7.7.0" }, "funding": [ { @@ -223,38 +221,37 @@ "type": "tidelift" } ], - "time": "2022-08-28T15:39:27+00:00" + "time": "2023-05-21T14:04:53+00:00" }, { "name": "guzzlehttp/promises", - "version": "1.5.2", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/guzzle/promises.git", - "reference": "b94b2807d85443f9719887892882d0329d1e2598" + "reference": "3a494dc7dc1d7d12e511890177ae2d0e6c107da6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/b94b2807d85443f9719887892882d0329d1e2598", - "reference": "b94b2807d85443f9719887892882d0329d1e2598", + "url": "https://api.github.com/repos/guzzle/promises/zipball/3a494dc7dc1d7d12e511890177ae2d0e6c107da6", + "reference": "3a494dc7dc1d7d12e511890177ae2d0e6c107da6", "shasum": "" }, "require": { - "php": ">=5.5" + "php": "^7.2.5 || ^8.0" }, "require-dev": { - "symfony/phpunit-bridge": "^4.4 || ^5.1" + "bamarni/composer-bin-plugin": "^1.8.1", + "phpunit/phpunit": "^8.5.29 || ^9.5.23" }, "type": "library", "extra": { - "branch-alias": { - "dev-master": "1.5-dev" + "bamarni-bin": { + "bin-links": true, + "forward-command": false } }, "autoload": { - "files": [ - "src/functions_include.php" - ], "psr-4": { "GuzzleHttp\\Promise\\": "src/" } @@ -291,7 +288,7 @@ ], "support": { "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/1.5.2" + "source": "https://github.com/guzzle/promises/tree/2.0.0" }, "funding": [ { @@ -307,26 +304,26 @@ "type": "tidelift" } ], - "time": "2022-08-28T14:55:35+00:00" + "time": "2023-05-21T13:50:22+00:00" }, { "name": "guzzlehttp/psr7", - "version": "2.4.3", + "version": "2.5.0", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "67c26b443f348a51926030c83481b85718457d3d" + "reference": "b635f279edd83fc275f822a1188157ffea568ff6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/67c26b443f348a51926030c83481b85718457d3d", - "reference": "67c26b443f348a51926030c83481b85718457d3d", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/b635f279edd83fc275f822a1188157ffea568ff6", + "reference": "b635f279edd83fc275f822a1188157ffea568ff6", "shasum": "" }, "require": { "php": "^7.2.5 || ^8.0", "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", + "psr/http-message": "^1.1 || ^2.0", "ralouphie/getallheaders": "^3.0" }, "provide": { @@ -346,9 +343,6 @@ "bamarni-bin": { "bin-links": true, "forward-command": false - }, - "branch-alias": { - "dev-master": "2.4-dev" } }, "autoload": { @@ -410,7 +404,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.4.3" + "source": "https://github.com/guzzle/psr7/tree/2.5.0" }, "funding": [ { @@ -426,73 +420,612 @@ "type": "tidelift" } ], - "time": "2022-10-26T14:07:24+00:00" + "time": "2023-04-17T16:11:26+00:00" + }, + { + "name": "hyperf/code-parser", + "version": "v3.0.18", + "source": { + "type": "git", + "url": "https://github.com/hyperf/code-parser.git", + "reference": "f1812421150d7ef95067eb6657c6f84514b6dfea" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/hyperf/code-parser/zipball/f1812421150d7ef95067eb6657c6f84514b6dfea", + "reference": "f1812421150d7ef95067eb6657c6f84514b6dfea", + "shasum": "" + }, + "require": { + "hyperf/collection": "~3.0.0", + "hyperf/stringable": "~3.0.0", + "hyperf/support": "~3.0.0", + "php": ">=8.0" + }, + "suggest": { + "jean85/pretty-package-versions": "Required to use PrettyVersions. (^1.2|^2.0)", + "nikic/php-parser": "Required to use PhpParser. (^4.0)" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "psr-4": { + "Hyperf\\CodeParser\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A code parser component for Hyperf.", + "homepage": "https://hyperf.io", + "keywords": [ + "code-parser", + "hyperf", + "php", + "swoole" + ], + "support": { + "docs": "https://hyperf.wiki", + "issues": "https://github.com/hyperf/hyperf/issues", + "pull-request": "https://github.com/hyperf/hyperf/pulls", + "source": "https://github.com/hyperf/hyperf" + }, + "time": "2023-04-26T03:02:31+00:00" + }, + { + "name": "hyperf/codec", + "version": "v3.0.1", + "source": { + "type": "git", + "url": "https://github.com/hyperf/codec.git", + "reference": "7d3cbfa06c50ef52809acadfcbcd59424366f591" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/hyperf/codec/zipball/7d3cbfa06c50ef52809acadfcbcd59424366f591", + "reference": "7d3cbfa06c50ef52809acadfcbcd59424366f591", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-xml": "*", + "hyperf/contract": "~3.0.0", + "php": ">=8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "psr-4": { + "Hyperf\\Codec\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A codec component for Hyperf.", + "homepage": "https://hyperf.io", + "keywords": [ + "codec", + "hyperf", + "php", + "swoole" + ], + "support": { + "docs": "https://hyperf.wiki", + "issues": "https://github.com/hyperf/hyperf/issues", + "pull-request": "https://github.com/hyperf/hyperf/pulls", + "source": "https://github.com/hyperf/hyperf" + }, + "time": "2023-04-24T09:49:41+00:00" + }, + { + "name": "hyperf/collection", + "version": "v3.0.24", + "source": { + "type": "git", + "url": "https://github.com/hyperf/collection.git", + "reference": "25be1f5643565dd19c05ee2da4156cfaa8bb71eb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/hyperf/collection/zipball/25be1f5643565dd19c05ee2da4156cfaa8bb71eb", + "reference": "25be1f5643565dd19c05ee2da4156cfaa8bb71eb", + "shasum": "" + }, + "require": { + "hyperf/contract": "~3.0.0", + "hyperf/macroable": "~3.0.0", + "php": ">=7.4" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "files": [ + "src/Functions.php" + ], + "psr-4": { + "Hyperf\\Collection\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Hyperf Collection package which come from illuminate/collections", + "homepage": "https://hyperf.io", + "keywords": [ + "collection", + "hyperf", + "php", + "swoole" + ], + "support": { + "docs": "https://hyperf.wiki", + "issues": "https://github.com/hyperf/hyperf/issues", + "pull-request": "https://github.com/hyperf/hyperf/pulls", + "source": "https://github.com/hyperf/hyperf" + }, + "time": "2023-06-05T11:54:56+00:00" + }, + { + "name": "hyperf/conditionable", + "version": "v3.0.0", + "source": { + "type": "git", + "url": "https://github.com/hyperf/conditionable.git", + "reference": "4222cdc512e9e48e4375a480161c6365276ff803" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/hyperf/conditionable/zipball/4222cdc512e9e48e4375a480161c6365276ff803", + "reference": "4222cdc512e9e48e4375a480161c6365276ff803", + "shasum": "" + }, + "require": { + "php": ">=7.4" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "psr-4": { + "Hyperf\\Conditionable\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Hyperf Macroable package which come from illuminate/conditionable", + "homepage": "https://hyperf.io", + "keywords": [ + "conditionable", + "hyperf", + "php", + "swoole" + ], + "support": { + "docs": "https://hyperf.wiki", + "issues": "https://github.com/hyperf/hyperf/issues", + "pull-request": "https://github.com/hyperf/hyperf/pulls", + "source": "https://github.com/hyperf/hyperf" + }, + "time": "2023-03-28T15:02:39+00:00" }, { "name": "hyperf/context", - "version": "v3.0.0-rc.13", + "version": "v3.0.18", "source": { "type": "git", "url": "https://github.com/hyperf/context.git", - "reference": "95cd634ece12f1f4898d10815060090191d59527" + "reference": "8cff8cc1c70c1a8c390a13b97986ddd5e47fa2ec" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/hyperf/context/zipball/8cff8cc1c70c1a8c390a13b97986ddd5e47fa2ec", + "reference": "8cff8cc1c70c1a8c390a13b97986ddd5e47fa2ec", + "shasum": "" + }, + "require": { + "hyperf/engine": "^1.2|^2.0", + "php": ">=8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "psr-4": { + "Hyperf\\Context\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A coroutine/application context library.", + "homepage": "https://hyperf.io", + "keywords": [ + "Context", + "hyperf", + "php", + "swoole" + ], + "support": { + "docs": "https://hyperf.wiki", + "issues": "https://github.com/hyperf/hyperf/issues", + "pull-request": "https://github.com/hyperf/hyperf/pulls", + "source": "https://github.com/hyperf/hyperf" + }, + "time": "2023-04-26T03:02:31+00:00" + }, + { + "name": "hyperf/contract", + "version": "v3.0.10", + "source": { + "type": "git", + "url": "https://github.com/hyperf/contract.git", + "reference": "93488df36b1c4e2fc16c630fb77c110bafffb141" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/hyperf/contract/zipball/93488df36b1c4e2fc16c630fb77c110bafffb141", + "reference": "93488df36b1c4e2fc16c630fb77c110bafffb141", + "shasum": "" + }, + "require": { + "php": ">=8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "psr-4": { + "Hyperf\\Contract\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "The contracts of Hyperf.", + "homepage": "https://hyperf.io", + "keywords": [ + "hyperf", + "php", + "swoole" + ], + "support": { + "docs": "https://hyperf.wiki", + "issues": "https://github.com/hyperf/hyperf/issues", + "pull-request": "https://github.com/hyperf/hyperf/pulls", + "source": "https://github.com/hyperf/hyperf" + }, + "time": "2023-03-10T04:21:37+00:00" + }, + { + "name": "hyperf/coordinator", + "version": "v3.0.22", + "source": { + "type": "git", + "url": "https://github.com/hyperf/coordinator.git", + "reference": "a49c2d22995b4115e8b21f1de58b992047c4d0fd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/hyperf/coordinator/zipball/a49c2d22995b4115e8b21f1de58b992047c4d0fd", + "reference": "a49c2d22995b4115e8b21f1de58b992047c4d0fd", + "shasum": "" + }, + "require": { + "hyperf/engine": "^1.2|^2.0", + "php": ">=8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "psr-4": { + "Hyperf\\Coordinator\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Hyperf Coordinator", + "homepage": "https://hyperf.io", + "keywords": [ + "Coordinator", + "hyperf", + "php", + "swoole" + ], + "support": { + "docs": "https://hyperf.wiki", + "issues": "https://github.com/hyperf/hyperf/issues", + "pull-request": "https://github.com/hyperf/hyperf/pulls", + "source": "https://github.com/hyperf/hyperf" + }, + "time": "2023-05-26T13:44:16+00:00" + }, + { + "name": "hyperf/coroutine", + "version": "v3.0.16", + "source": { + "type": "git", + "url": "https://github.com/hyperf/coroutine.git", + "reference": "4944ce69d5f35407e5dbcf7e9991f1db3366f254" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/context/zipball/95cd634ece12f1f4898d10815060090191d59527", - "reference": "95cd634ece12f1f4898d10815060090191d59527", + "url": "https://api.github.com/repos/hyperf/coroutine/zipball/4944ce69d5f35407e5dbcf7e9991f1db3366f254", + "reference": "4944ce69d5f35407e5dbcf7e9991f1db3366f254", "shasum": "" }, - "require": { - "hyperf/engine": "^1.2|^2.0", - "php": ">=8.0" + "require": { + "hyperf/context": "~3.0.0", + "hyperf/contract": "~3.0.0", + "hyperf/engine": "^1.2|^2.0", + "php": ">=8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "files": [ + "src/Functions.php" + ], + "psr-4": { + "Hyperf\\Coroutine\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Hyperf Coroutine", + "homepage": "https://hyperf.io", + "keywords": [ + "coroutine", + "hyperf", + "php", + "swoole" + ], + "support": { + "docs": "https://hyperf.wiki", + "issues": "https://github.com/hyperf/hyperf/issues", + "pull-request": "https://github.com/hyperf/hyperf/pulls", + "source": "https://github.com/hyperf/hyperf" + }, + "time": "2023-04-12T05:34:25+00:00" + }, + { + "name": "hyperf/engine", + "version": "v2.9.0", + "source": { + "type": "git", + "url": "https://github.com/hyperf/engine.git", + "reference": "3e0920ad7ba15a965f129143d3248f8e85e0c2d9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/hyperf/engine/zipball/3e0920ad7ba15a965f129143d3248f8e85e0c2d9", + "reference": "3e0920ad7ba15a965f129143d3248f8e85e0c2d9", + "shasum": "" + }, + "require": { + "hyperf/engine-contract": "~1.8.0", + "php": ">=8.0" + }, + "conflict": { + "ext-swoole": "<5.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^3.0", + "hyperf/guzzle": "^3.0", + "hyperf/http-message": " 3.0.*", + "mockery/mockery": "^1.5", + "phpstan/phpstan": "^1.0", + "phpunit/phpunit": "^9.4", + "swoole/ide-helper": "dev-master" + }, + "suggest": { + "ext-sockets": "*", + "ext-swoole": ">=5.0", + "hyperf/http-message": "Required to use ResponseEmitter.", + "psr/http-message": "Required to use WebSocket Frame." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.9-dev" + }, + "hyperf": { + "config": "Hyperf\\Engine\\ConfigProvider" + } + }, + "autoload": { + "files": [ + "src/Functions.php" + ], + "psr-4": { + "Hyperf\\Engine\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Coroutine engine provided by swoole.", + "keywords": [ + "engine", + "hyperf", + "php", + "swoole" + ], + "support": { + "issues": "https://github.com/hyperf/engine/issues", + "source": "https://github.com/hyperf/engine/tree/v2.9.0" + }, + "time": "2023-06-17T11:23:50+00:00" + }, + { + "name": "hyperf/engine-contract", + "version": "v1.8.0", + "source": { + "type": "git", + "url": "https://github.com/hyperf/engine-contract.git", + "reference": "69b9bb43d6c356be7c7eb2f55ff06282436a0e4d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/hyperf/engine-contract/zipball/69b9bb43d6c356be7c7eb2f55ff06282436a0e4d", + "reference": "69b9bb43d6c356be7c7eb2f55ff06282436a0e4d", + "shasum": "" + }, + "require": { + "php": ">=8.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^3.0", + "mockery/mockery": "^1.0", + "phpstan/phpstan": "^1.0", + "phpunit/phpunit": ">=7.0", + "psr/http-message": "^1.0", + "swoole/ide-helper": "^4.5" + }, + "suggest": { + "psr/http-message": "Required to use WebSocket Frame." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.8-dev" + } + }, + "autoload": { + "psr-4": { + "Hyperf\\Engine\\Contract\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Contract for Coroutine Engine", + "keywords": [ + "contract", + "coroutine", + "engine", + "hyperf", + "php" + ], + "support": { + "issues": "https://github.com/hyperf/engine-contract/issues", + "source": "https://github.com/hyperf/engine-contract/tree/v1.8.0" + }, + "time": "2023-06-17T11:16:19+00:00" + }, + { + "name": "hyperf/guzzle", + "version": "v3.0.24", + "source": { + "type": "git", + "url": "https://github.com/hyperf/guzzle.git", + "reference": "7791900eed289bd6584e2e52d2ec02b47f85740c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/hyperf/guzzle/zipball/7791900eed289bd6584e2e52d2ec02b47f85740c", + "reference": "7791900eed289bd6584e2e52d2ec02b47f85740c", + "shasum": "" + }, + "require": { + "guzzlehttp/guzzle": "^6.3|^7.0", + "php": ">=8.0", + "psr/container": "^1.0|^2.0", + "psr/http-message": "^1.0|^2.0" + }, + "suggest": { + "ext-curl": "Required for CURL handler support", + "hyperf/pool": "Required to use pool handler." }, "type": "library", "extra": { "branch-alias": { "dev-master": "3.0-dev" + }, + "hyperf": { + "config": "Hyperf\\Guzzle\\ConfigProvider" } }, "autoload": { "psr-4": { - "Hyperf\\Context\\": "src/" + "Hyperf\\Guzzle\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], - "description": "A coroutine context library.", - "homepage": "https://hyperf.io", + "description": "Swoole coroutine handler for guzzle", "keywords": [ - "Context", - "hyperf", + "Guzzle", + "handler", "php", "swoole" ], "support": { - "docs": "https://hyperf.wiki", - "issues": "https://github.com/hyperf/hyperf/issues", - "pull-request": "https://github.com/hyperf/hyperf/pulls", - "source": "https://github.com/hyperf/hyperf" + "issues": "https://github.com/hyperf/guzzle/issues", + "source": "https://github.com/hyperf/guzzle/tree/v3.0.24" }, - "time": "2022-11-01T02:50:54+00:00" + "time": "2023-06-04T02:14:26+00:00" }, { - "name": "hyperf/contract", - "version": "v3.0.0-rc.13", + "name": "hyperf/macroable", + "version": "v3.0.0", "source": { "type": "git", - "url": "https://github.com/hyperf/contract.git", - "reference": "ec465d74f94341ff9b979cc4a3f0e2ededc05040" + "url": "https://github.com/hyperf/macroable.git", + "reference": "822de69ba0c75aa9767a9cea487b84bf31d5240a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/contract/zipball/ec465d74f94341ff9b979cc4a3f0e2ededc05040", - "reference": "ec465d74f94341ff9b979cc4a3f0e2ededc05040", + "url": "https://api.github.com/repos/hyperf/macroable/zipball/822de69ba0c75aa9767a9cea487b84bf31d5240a", + "reference": "822de69ba0c75aa9767a9cea487b84bf31d5240a", "shasum": "" }, "require": { - "php": ">=8.0" + "php": ">=7.4" }, "type": "library", "extra": { @@ -502,17 +1035,18 @@ }, "autoload": { "psr-4": { - "Hyperf\\Contract\\": "src/" + "Hyperf\\Macroable\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], - "description": "The contracts of Hyperf.", + "description": "Hyperf Macroable package which come from illuminate/macroable", "homepage": "https://hyperf.io", "keywords": [ "hyperf", + "macroable", "php", "swoole" ], @@ -525,45 +1059,53 @@ "time": "2022-11-01T02:50:54+00:00" }, { - "name": "hyperf/coordinator", - "version": "v3.0.0-rc.13", + "name": "hyperf/serializer", + "version": "v3.0.0", "source": { "type": "git", - "url": "https://github.com/hyperf/coordinator.git", - "reference": "5759dd9153ea3789f0d8de0baf53d732016266cd" + "url": "https://github.com/hyperf/serializer.git", + "reference": "c4efedaa072c5ffe196e95e0c74a9d90fd1e4811" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/coordinator/zipball/5759dd9153ea3789f0d8de0baf53d732016266cd", - "reference": "5759dd9153ea3789f0d8de0baf53d732016266cd", + "url": "https://api.github.com/repos/hyperf/serializer/zipball/c4efedaa072c5ffe196e95e0c74a9d90fd1e4811", + "reference": "c4efedaa072c5ffe196e95e0c74a9d90fd1e4811", "shasum": "" }, "require": { - "hyperf/engine": "^1.2|^2.0", + "hyperf/contract": "~3.0.0", "php": ">=8.0" }, + "suggest": { + "hyperf/di": "Required to use ExceptionNormalizer", + "symfony/property-access": "Required to use SymfonyNormalizer (^5.0|^6.0)", + "symfony/serializer": "Required to use SymfonyNormalizer (^5.0|^6.0)" + }, "type": "library", "extra": { "branch-alias": { "dev-master": "3.0-dev" + }, + "hyperf": { + "config": "Hyperf\\Serializer\\ConfigProvider" } }, "autoload": { "psr-4": { - "Hyperf\\Coordinator\\": "src/" + "Hyperf\\Serializer\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], - "description": "Hyperf Coordinator", + "description": "A serializer component for Hyperf.", "homepage": "https://hyperf.io", "keywords": [ - "Coordinator", "hyperf", "php", - "swoole" + "swoole", + "tappable" ], "support": { "docs": "https://hyperf.wiki", @@ -571,130 +1113,140 @@ "pull-request": "https://github.com/hyperf/hyperf/pulls", "source": "https://github.com/hyperf/hyperf" }, - "time": "2022-11-01T02:50:54+00:00" + "time": "2023-04-24T07:07:56+00:00" }, { - "name": "hyperf/engine", - "version": "v1.3.4", + "name": "hyperf/stringable", + "version": "v3.0.27", "source": { "type": "git", - "url": "https://github.com/hyperf/engine.git", - "reference": "392b44b1124c278c99b100b4c65189780b5f01c6" + "url": "https://github.com/hyperf/stringable.git", + "reference": "cd56584d5d7a2688e1c1a401c3c41c0a8143a920" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/engine/zipball/392b44b1124c278c99b100b4c65189780b5f01c6", - "reference": "392b44b1124c278c99b100b4c65189780b5f01c6", + "url": "https://api.github.com/repos/hyperf/stringable/zipball/cd56584d5d7a2688e1c1a401c3c41c0a8143a920", + "reference": "cd56584d5d7a2688e1c1a401c3c41c0a8143a920", "shasum": "" }, "require": { + "hyperf/collection": "~3.0.0", + "hyperf/conditionable": "~3.0.0", + "hyperf/macroable": "~3.0.0", + "hyperf/tappable": "~3.0.0", "php": ">=8.0" }, - "require-dev": { - "friendsofphp/php-cs-fixer": "^3.0", - "hyperf/guzzle": "^2.2", - "phpstan/phpstan": "^1.0", - "phpunit/phpunit": "^9.4", - "swoole/ide-helper": "dev-master" - }, "suggest": { - "ext-swoole": ">=4.5" + "doctrine/inflector": "Required to use plural and singular methods.(^2.0|^3.0)", + "ramsey/uuid": "Required to use uuid and orderedUuid methods.(^4.7|^5.0)", + "symfony/uid": "Required to use ulid method.(^5.0|^6.0)" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.3-dev" - }, - "hyperf": { - "config": "Hyperf\\Engine\\ConfigProvider" + "dev-master": "3.0-dev" } }, "autoload": { + "files": [ + "src/Functions.php" + ], "psr-4": { - "Hyperf\\Engine\\": "src/" + "Hyperf\\Stringable\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], + "description": "Hyperf Stringable package which come from illuminate/support", + "homepage": "https://hyperf.io", "keywords": [ "hyperf", - "php" + "php", + "stringable", + "swoole" ], "support": { - "issues": "https://github.com/hyperf/engine/issues", - "source": "https://github.com/hyperf/engine/tree/v1.3.4" + "docs": "https://hyperf.wiki", + "issues": "https://github.com/hyperf/hyperf/issues", + "pull-request": "https://github.com/hyperf/hyperf/pulls", + "source": "https://github.com/hyperf/hyperf" }, - "time": "2022-09-05T06:17:31+00:00" + "time": "2023-06-25T06:10:37+00:00" }, { - "name": "hyperf/guzzle", - "version": "v3.0.0-rc.13", + "name": "hyperf/support", + "version": "v3.0.24", "source": { "type": "git", - "url": "https://github.com/hyperf/guzzle.git", - "reference": "1df78150253171695324216a34558a182095dd0c" + "url": "https://github.com/hyperf/support.git", + "reference": "576838e7185bf8eb749920a3285b399cb9c3a24b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/guzzle/zipball/1df78150253171695324216a34558a182095dd0c", - "reference": "1df78150253171695324216a34558a182095dd0c", + "url": "https://api.github.com/repos/hyperf/support/zipball/576838e7185bf8eb749920a3285b399cb9c3a24b", + "reference": "576838e7185bf8eb749920a3285b399cb9c3a24b", "shasum": "" }, "require": { - "guzzlehttp/guzzle": "^6.3|^7.0", - "hyperf/utils": "~3.0.0", - "php": ">=8.0", - "psr/container": "^1.0|^2.0", - "psr/http-message": "^1.0" + "hyperf/collection": "~3.0.0", + "hyperf/context": "~3.0.0", + "hyperf/contract": "~3.0.0", + "hyperf/coroutine": "~3.0.0", + "hyperf/macroable": "~3.0.0", + "hyperf/stringable": "~3.0.0", + "php": ">=8.0" }, "suggest": { - "hyperf/pool": "Required to use pool handler." + "nesbot/carbon": "Use Carbon as DateTime object.(^2.0)" }, "type": "library", "extra": { "branch-alias": { "dev-master": "3.0-dev" - }, - "hyperf": { - "config": "Hyperf\\Guzzle\\ConfigProvider" } }, "autoload": { + "files": [ + "src/Functions.php" + ], "psr-4": { - "Hyperf\\Guzzle\\": "src/" + "Hyperf\\Support\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], - "description": "Swoole coroutine handler for guzzle", + "description": "A support component for Hyperf.", + "homepage": "https://hyperf.io", "keywords": [ - "Guzzle", - "handler", + "hyperf", "php", + "support", "swoole" ], "support": { - "issues": "https://github.com/hyperf/guzzle/issues", - "source": "https://github.com/hyperf/guzzle/tree/v3.0.0-rc.13" + "docs": "https://hyperf.wiki", + "issues": "https://github.com/hyperf/hyperf/issues", + "pull-request": "https://github.com/hyperf/hyperf/pulls", + "source": "https://github.com/hyperf/hyperf" }, - "time": "2022-11-01T02:50:54+00:00" + "time": "2023-06-08T06:55:09+00:00" }, { - "name": "hyperf/macroable", - "version": "v3.0.0-rc.13", + "name": "hyperf/tappable", + "version": "v3.0.0", "source": { "type": "git", - "url": "https://github.com/hyperf/macroable.git", - "reference": "822de69ba0c75aa9767a9cea487b84bf31d5240a" + "url": "https://github.com/hyperf/tappable.git", + "reference": "4f90b9026a5bdce5b3e6be29a2ab7a86c54f372a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/macroable/zipball/822de69ba0c75aa9767a9cea487b84bf31d5240a", - "reference": "822de69ba0c75aa9767a9cea487b84bf31d5240a", + "url": "https://api.github.com/repos/hyperf/tappable/zipball/4f90b9026a5bdce5b3e6be29a2ab7a86c54f372a", + "reference": "4f90b9026a5bdce5b3e6be29a2ab7a86c54f372a", "shasum": "" }, "require": { @@ -707,21 +1259,24 @@ } }, "autoload": { + "files": [ + "src/Functions.php" + ], "psr-4": { - "Hyperf\\Macroable\\": "src/" + "Hyperf\\Tappable\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], - "description": "Hyperf Macroable package which come from illuminate/macroable", + "description": "Hyperf Macroable package which come from illuminate/tappable", "homepage": "https://hyperf.io", "keywords": [ "hyperf", - "macroable", "php", - "swoole" + "swoole", + "tappable" ], "support": { "docs": "https://hyperf.wiki", @@ -729,44 +1284,50 @@ "pull-request": "https://github.com/hyperf/hyperf/pulls", "source": "https://github.com/hyperf/hyperf" }, - "time": "2022-11-01T02:50:54+00:00" + "time": "2023-03-28T15:02:39+00:00" }, { "name": "hyperf/utils", - "version": "v3.0.0-rc.20", + "version": "v3.0.18", "source": { "type": "git", "url": "https://github.com/hyperf/utils.git", - "reference": "eb4b597924da6ad604c4ade6fe026a7bb7c4fd26" + "reference": "2e59cef3dd562053fe7c9b2a41e7243b4ee23bd6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/utils/zipball/eb4b597924da6ad604c4ade6fe026a7bb7c4fd26", - "reference": "eb4b597924da6ad604c4ade6fe026a7bb7c4fd26", + "url": "https://api.github.com/repos/hyperf/utils/zipball/2e59cef3dd562053fe7c9b2a41e7243b4ee23bd6", + "reference": "2e59cef3dd562053fe7c9b2a41e7243b4ee23bd6", "shasum": "" }, "require": { "doctrine/inflector": "^2.0", + "hyperf/code-parser": "~3.0.0", + "hyperf/codec": "~3.0.0", + "hyperf/collection": "~3.0.0", "hyperf/context": "~3.0.0", "hyperf/contract": "~3.0.0", "hyperf/coordinator": "~3.0.0", + "hyperf/coroutine": "~3.0.0", "hyperf/engine": "^1.2|^2.0", "hyperf/macroable": "~3.0.0", + "hyperf/serializer": "~3.0.0", + "hyperf/stringable": "~3.0.0", + "hyperf/support": "~3.0.0", "php": ">=7.2" }, "suggest": { "ext-swoole": "Required to use methods related to swoole (>=4.5).", "hyperf/di": "Required to use ExceptionNormalizer", "nikic/php-parser": "Required to use PhpParser. (^4.0)", + "ramsey/uuid": "Required to use uuid and orderedUuid methods", "symfony/property-access": "Required to use SymfonyNormalizer (^5.0|^6.0)", "symfony/serializer": "Required to use SymfonyNormalizer (^5.0|^6.0)", + "symfony/uid": "Required to use ulid method", "symfony/var-dumper": "Required to use the dd function (^5.0|^6.0)." }, "type": "library", "extra": { - "hyperf": { - "config": "Hyperf\\Utils\\ConfigProvider" - }, "branch-alias": { "dev-master": "3.0-dev" } @@ -797,7 +1358,7 @@ "pull-request": "https://github.com/hyperf/hyperf/pulls", "source": "https://github.com/hyperf/hyperf" }, - "time": "2022-12-10T13:24:37+00:00" + "time": "2023-04-26T03:02:31+00:00" }, { "name": "psr/container", @@ -904,21 +1465,21 @@ }, { "name": "psr/http-client", - "version": "1.0.1", + "version": "1.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/http-client.git", - "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621" + "reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-client/zipball/2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", - "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/0955afe48220520692d2d09f7ab7e0f93ffd6a31", + "reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31", "shasum": "" }, "require": { "php": "^7.0 || ^8.0", - "psr/http-message": "^1.0" + "psr/http-message": "^1.0 || ^2.0" }, "type": "library", "extra": { @@ -938,7 +1499,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for HTTP clients", @@ -950,27 +1511,27 @@ "psr-18" ], "support": { - "source": "https://github.com/php-fig/http-client/tree/master" + "source": "https://github.com/php-fig/http-client/tree/1.0.2" }, - "time": "2020-06-29T06:28:15+00:00" + "time": "2023-04-10T20:12:12+00:00" }, { "name": "psr/http-factory", - "version": "1.0.1", + "version": "1.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/http-factory.git", - "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be" + "reference": "e616d01114759c4c489f93b099585439f795fe35" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be", - "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/e616d01114759c4c489f93b099585439f795fe35", + "reference": "e616d01114759c4c489f93b099585439f795fe35", "shasum": "" }, "require": { "php": ">=7.0.0", - "psr/http-message": "^1.0" + "psr/http-message": "^1.0 || ^2.0" }, "type": "library", "extra": { @@ -990,7 +1551,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interfaces for PSR-7 HTTP message factories", @@ -1005,31 +1566,31 @@ "response" ], "support": { - "source": "https://github.com/php-fig/http-factory/tree/master" + "source": "https://github.com/php-fig/http-factory/tree/1.0.2" }, - "time": "2019-04-30T12:38:16+00:00" + "time": "2023-04-10T20:10:41+00:00" }, { "name": "psr/http-message", - "version": "1.0.1", + "version": "1.1", "source": { "type": "git", "url": "https://github.com/php-fig/http-message.git", - "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363" + "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363", - "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/cb6ce4845ce34a8ad9e68117c10ee90a29919eba", + "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": "^7.2 || ^8.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "1.1.x-dev" } }, "autoload": { @@ -1058,9 +1619,9 @@ "response" ], "support": { - "source": "https://github.com/php-fig/http-message/tree/master" + "source": "https://github.com/php-fig/http-message/tree/1.1" }, - "time": "2016-08-06T14:39:51+00:00" + "time": "2023-04-04T09:50:52+00:00" }, { "name": "ralouphie/getallheaders", @@ -1108,25 +1669,25 @@ }, { "name": "symfony/deprecation-contracts", - "version": "v3.0.2", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "26954b3d62a6c5fd0ea8a2a00c0353a14978d05c" + "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/26954b3d62a6c5fd0ea8a2a00c0353a14978d05c", - "reference": "26954b3d62a6c5fd0ea8a2a00c0353a14978d05c", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/7c3aff79d10325257a001fcf92d991f24fc967cf", + "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf", "shasum": "" }, "require": { - "php": ">=8.0.2" + "php": ">=8.1" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -1155,7 +1716,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.0.2" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.3.0" }, "funding": [ { @@ -1171,7 +1732,7 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:55:41+00:00" + "time": "2023-05-23T14:45:45+00:00" } ], "packages-dev": [ @@ -1395,30 +1956,30 @@ }, { "name": "doctrine/annotations", - "version": "1.14.2", + "version": "2.0.1", "source": { "type": "git", "url": "https://github.com/doctrine/annotations.git", - "reference": "ad785217c1e9555a7d6c6c8c9f406395a5e2882b" + "reference": "e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/annotations/zipball/ad785217c1e9555a7d6c6c8c9f406395a5e2882b", - "reference": "ad785217c1e9555a7d6c6c8c9f406395a5e2882b", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f", + "reference": "e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f", "shasum": "" }, "require": { - "doctrine/lexer": "^1 || ^2", + "doctrine/lexer": "^2 || ^3", "ext-tokenizer": "*", - "php": "^7.1 || ^8.0", + "php": "^7.2 || ^8.0", "psr/cache": "^1 || ^2 || ^3" }, "require-dev": { - "doctrine/cache": "^1.11 || ^2.0", - "doctrine/coding-standard": "^9 || ^10", - "phpstan/phpstan": "~1.4.10 || ^1.8.0", + "doctrine/cache": "^2.0", + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.8.0", "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "symfony/cache": "^4.4 || ^5.4 || ^6", + "symfony/cache": "^5.4 || ^6", "vimeo/psalm": "^4.10" }, "suggest": { @@ -1465,79 +2026,36 @@ ], "support": { "issues": "https://github.com/doctrine/annotations/issues", - "source": "https://github.com/doctrine/annotations/tree/1.14.2" - }, - "time": "2022-12-15T06:48:22+00:00" - }, - { - "name": "doctrine/deprecations", - "version": "v1.0.0", - "source": { - "type": "git", - "url": "https://github.com/doctrine/deprecations.git", - "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/deprecations/zipball/0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de", - "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de", - "shasum": "" - }, - "require": { - "php": "^7.1|^8.0" - }, - "require-dev": { - "doctrine/coding-standard": "^9", - "phpunit/phpunit": "^7.5|^8.5|^9.5", - "psr/log": "^1|^2|^3" - }, - "suggest": { - "psr/log": "Allows logging deprecations via PSR-3 logger implementation" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.", - "homepage": "https://www.doctrine-project.org/", - "support": { - "issues": "https://github.com/doctrine/deprecations/issues", - "source": "https://github.com/doctrine/deprecations/tree/v1.0.0" + "source": "https://github.com/doctrine/annotations/tree/2.0.1" }, - "time": "2022-05-02T15:47:09+00:00" + "time": "2023-02-02T22:02:53+00:00" }, { "name": "doctrine/instantiator", - "version": "1.4.1", + "version": "1.5.0", "source": { "type": "git", "url": "https://github.com/doctrine/instantiator.git", - "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc" + "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/10dcfce151b967d20fde1b34ae6640712c3891bc", - "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/0a0fa9780f5d4e507415a065172d26a98d02047b", + "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b", "shasum": "" }, "require": { "php": "^7.1 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^9", + "doctrine/coding-standard": "^9 || ^11", "ext-pdo": "*", "ext-phar": "*", "phpbench/phpbench": "^0.16 || ^1", "phpstan/phpstan": "^1.4", "phpstan/phpstan-phpunit": "^1", "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.22" + "vimeo/psalm": "^4.30 || ^5.4" }, "type": "library", "autoload": { @@ -1564,7 +2082,7 @@ ], "support": { "issues": "https://github.com/doctrine/instantiator/issues", - "source": "https://github.com/doctrine/instantiator/tree/1.4.1" + "source": "https://github.com/doctrine/instantiator/tree/1.5.0" }, "funding": [ { @@ -1580,32 +2098,31 @@ "type": "tidelift" } ], - "time": "2022-03-03T08:28:38+00:00" + "time": "2022-12-30T00:15:36+00:00" }, { "name": "doctrine/lexer", - "version": "2.1.0", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/doctrine/lexer.git", - "reference": "39ab8fcf5a51ce4b85ca97c7a7d033eb12831124" + "reference": "84a527db05647743d50373e0ec53a152f2cde568" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/39ab8fcf5a51ce4b85ca97c7a7d033eb12831124", - "reference": "39ab8fcf5a51ce4b85ca97c7a7d033eb12831124", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/84a527db05647743d50373e0ec53a152f2cde568", + "reference": "84a527db05647743d50373e0ec53a152f2cde568", "shasum": "" }, "require": { - "doctrine/deprecations": "^1.0", - "php": "^7.1 || ^8.0" + "php": "^8.1" }, "require-dev": { - "doctrine/coding-standard": "^9 || ^10", - "phpstan/phpstan": "^1.3", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.9", + "phpunit/phpunit": "^9.5", "psalm/plugin-phpunit": "^0.18.3", - "vimeo/psalm": "^4.11 || ^5.0" + "vimeo/psalm": "^5.0" }, "type": "library", "autoload": { @@ -1642,7 +2159,7 @@ ], "support": { "issues": "https://github.com/doctrine/lexer/issues", - "source": "https://github.com/doctrine/lexer/tree/2.1.0" + "source": "https://github.com/doctrine/lexer/tree/3.0.0" }, "funding": [ { @@ -1658,7 +2175,7 @@ "type": "tidelift" } ], - "time": "2022-12-14T08:49:07+00:00" + "time": "2022-12-15T16:57:16+00:00" }, { "name": "fig/http-message-util", @@ -1718,51 +2235,52 @@ }, { "name": "friendsofphp/php-cs-fixer", - "version": "v3.13.1", + "version": "v3.20.0", "source": { "type": "git", "url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git", - "reference": "78d2251dd86b49c609a0fd37c20dcf0a00aea5a7" + "reference": "0e8249e0b15e2bc022fbbd1090ce29d071481e69" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/78d2251dd86b49c609a0fd37c20dcf0a00aea5a7", - "reference": "78d2251dd86b49c609a0fd37c20dcf0a00aea5a7", + "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/0e8249e0b15e2bc022fbbd1090ce29d071481e69", + "reference": "0e8249e0b15e2bc022fbbd1090ce29d071481e69", "shasum": "" }, "require": { - "composer/semver": "^3.2", + "composer/semver": "^3.3", "composer/xdebug-handler": "^3.0.3", - "doctrine/annotations": "^1.13", + "doctrine/annotations": "^2", + "doctrine/lexer": "^2 || ^3", "ext-json": "*", "ext-tokenizer": "*", "php": "^7.4 || ^8.0", - "sebastian/diff": "^4.0", + "sebastian/diff": "^4.0 || ^5.0", "symfony/console": "^5.4 || ^6.0", "symfony/event-dispatcher": "^5.4 || ^6.0", "symfony/filesystem": "^5.4 || ^6.0", "symfony/finder": "^5.4 || ^6.0", "symfony/options-resolver": "^5.4 || ^6.0", - "symfony/polyfill-mbstring": "^1.23", - "symfony/polyfill-php80": "^1.25", - "symfony/polyfill-php81": "^1.25", + "symfony/polyfill-mbstring": "^1.27", + "symfony/polyfill-php80": "^1.27", + "symfony/polyfill-php81": "^1.27", "symfony/process": "^5.4 || ^6.0", "symfony/stopwatch": "^5.4 || ^6.0" }, "require-dev": { "justinrainbow/json-schema": "^5.2", "keradus/cli-executor": "^2.0", - "mikey179/vfsstream": "^1.6.10", - "php-coveralls/php-coveralls": "^2.5.2", + "mikey179/vfsstream": "^1.6.11", + "php-coveralls/php-coveralls": "^2.5.3", "php-cs-fixer/accessible-object": "^1.1", "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.2", "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.2.1", - "phpspec/prophecy": "^1.15", + "phpspec/prophecy": "^1.16", "phpspec/prophecy-phpunit": "^2.0", "phpunit/phpunit": "^9.5", "phpunitgoodpractices/polyfill": "^1.6", "phpunitgoodpractices/traits": "^1.9.2", - "symfony/phpunit-bridge": "^6.0", + "symfony/phpunit-bridge": "^6.2.3", "symfony/yaml": "^5.4 || ^6.0" }, "suggest": { @@ -1793,9 +2311,15 @@ } ], "description": "A tool to automatically fix PHP code style", + "keywords": [ + "Static code analysis", + "fixer", + "standards", + "static analysis" + ], "support": { "issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues", - "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.13.1" + "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.20.0" }, "funding": [ { @@ -1803,28 +2327,28 @@ "type": "github" } ], - "time": "2022-12-18T00:47:22+00:00" + "time": "2023-06-27T20:22:39+00:00" }, { "name": "graham-campbell/result-type", - "version": "v1.1.0", + "version": "v1.1.1", "source": { "type": "git", "url": "https://github.com/GrahamCampbell/Result-Type.git", - "reference": "a878d45c1914464426dc94da61c9e1d36ae262a8" + "reference": "672eff8cf1d6fe1ef09ca0f89c4b287d6a3eb831" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/a878d45c1914464426dc94da61c9e1d36ae262a8", - "reference": "a878d45c1914464426dc94da61c9e1d36ae262a8", + "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/672eff8cf1d6fe1ef09ca0f89c4b287d6a3eb831", + "reference": "672eff8cf1d6fe1ef09ca0f89c4b287d6a3eb831", "shasum": "" }, "require": { "php": "^7.2.5 || ^8.0", - "phpoption/phpoption": "^1.9" + "phpoption/phpoption": "^1.9.1" }, "require-dev": { - "phpunit/phpunit": "^8.5.28 || ^9.5.21" + "phpunit/phpunit": "^8.5.32 || ^9.6.3 || ^10.0.12" }, "type": "library", "autoload": { @@ -1853,7 +2377,7 @@ ], "support": { "issues": "https://github.com/GrahamCampbell/Result-Type/issues", - "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.1.0" + "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.1.1" }, "funding": [ { @@ -1865,7 +2389,7 @@ "type": "tidelift" } ], - "time": "2022-07-30T15:56:11+00:00" + "time": "2023-02-25T20:23:15+00:00" }, { "name": "hamcrest/hamcrest-php", @@ -1920,19 +2444,21 @@ }, { "name": "hyperf/command", - "version": "v3.0.0-rc.13", + "version": "v3.0.27", "source": { "type": "git", "url": "https://github.com/hyperf/command.git", - "reference": "3bb67fd9e776b2987e2b2daf47f55987ad322122" + "reference": "06df0f8102ec4079591d937adaca507fe5191082" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/command/zipball/3bb67fd9e776b2987e2b2daf47f55987ad322122", - "reference": "3bb67fd9e776b2987e2b2daf47f55987ad322122", + "url": "https://api.github.com/repos/hyperf/command/zipball/06df0f8102ec4079591d937adaca507fe5191082", + "reference": "06df0f8102ec4079591d937adaca507fe5191082", "shasum": "" }, "require": { + "hyperf/support": "~3.0.0", + "hyperf/tappable": "~3.0.0", "hyperf/utils": "~3.0.0", "php": ">=8.0", "psr/event-dispatcher": "^1.0", @@ -1964,26 +2490,28 @@ ], "support": { "issues": "https://github.com/hyperf/command/issues", - "source": "https://github.com/hyperf/command/tree/v3.0.0-rc.13" + "source": "https://github.com/hyperf/command/tree/v3.0.27" }, - "time": "2022-11-01T02:50:54+00:00" + "time": "2023-06-26T23:53:52+00:00" }, { "name": "hyperf/config", - "version": "v3.0.0-rc.8", + "version": "v3.0.20", "source": { "type": "git", "url": "https://github.com/hyperf/config.git", - "reference": "dbab570287af7b7d79967446b7f4703c4ffaba8e" + "reference": "6503882f8547809d609b9489170037ceaef04962" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/config/zipball/dbab570287af7b7d79967446b7f4703c4ffaba8e", - "reference": "dbab570287af7b7d79967446b7f4703c4ffaba8e", + "url": "https://api.github.com/repos/hyperf/config/zipball/6503882f8547809d609b9489170037ceaef04962", + "reference": "6503882f8547809d609b9489170037ceaef04962", "shasum": "" }, "require": { + "hyperf/collection": "~3.0.0", "hyperf/contract": "~3.0.0", + "hyperf/support": "~3.0.0", "hyperf/utils": "~3.0.0", "php": ">=8.0", "psr/container": "^1.0|^2.0", @@ -2031,24 +2559,28 @@ "pull-request": "https://github.com/hyperf/hyperf/pulls", "source": "https://github.com/hyperf/hyperf" }, - "time": "2022-08-30T06:33:36+00:00" + "time": "2023-05-09T03:02:12+00:00" }, { "name": "hyperf/database", - "version": "v3.0.0-rc.20", + "version": "v3.0.27", "source": { "type": "git", "url": "https://github.com/hyperf/database.git", - "reference": "1fa92be27a38245152fd7d1168afaf3d0ad2a74a" + "reference": "a966a0d211df5a7c7eff62cbc83c9acb87d4cb71" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/database/zipball/1fa92be27a38245152fd7d1168afaf3d0ad2a74a", - "reference": "1fa92be27a38245152fd7d1168afaf3d0ad2a74a", + "url": "https://api.github.com/repos/hyperf/database/zipball/a966a0d211df5a7c7eff62cbc83c9acb87d4cb71", + "reference": "a966a0d211df5a7c7eff62cbc83c9acb87d4cb71", "shasum": "" }, "require": { + "hyperf/code-parser": "~3.0.0", + "hyperf/collection": "~3.0.0", "hyperf/macroable": "~3.0.0", + "hyperf/support": "~3.0.24", + "hyperf/tappable": "~3.0.0", "hyperf/utils": "~3.0.0", "nesbot/carbon": "^2.0", "php": ">=8.0", @@ -2088,20 +2620,20 @@ "pull-request": "https://github.com/hyperf/hyperf/pulls", "source": "https://github.com/hyperf/hyperf" }, - "time": "2022-12-10T12:14:47+00:00" + "time": "2023-06-30T01:20:59+00:00" }, { "name": "hyperf/db-connection", - "version": "v3.0.0-rc.13", + "version": "v3.0.24", "source": { "type": "git", "url": "https://github.com/hyperf/db-connection.git", - "reference": "37efa0a1899709d02ca342440478a05f162b21ed" + "reference": "609325db39debbfb8df24e16e1bad299a0d12d55" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/db-connection/zipball/37efa0a1899709d02ca342440478a05f162b21ed", - "reference": "37efa0a1899709d02ca342440478a05f162b21ed", + "url": "https://api.github.com/repos/hyperf/db-connection/zipball/609325db39debbfb8df24e16e1bad299a0d12d55", + "reference": "609325db39debbfb8df24e16e1bad299a0d12d55", "shasum": "" }, "require": { @@ -2110,6 +2642,7 @@ "hyperf/framework": "~3.0.0", "hyperf/model-listener": "~3.0.0", "hyperf/pool": "~3.0.0", + "hyperf/support": "~3.0.0", "hyperf/utils": "~3.0.0", "php": ">=8.0", "psr/container": "^1.0|^2.0" @@ -2146,24 +2679,27 @@ "pull-request": "https://github.com/hyperf/hyperf/pulls", "source": "https://github.com/hyperf/hyperf" }, - "time": "2022-11-01T02:50:54+00:00" + "time": "2023-06-07T02:28:52+00:00" }, { "name": "hyperf/di", - "version": "v3.0.0-rc.19", + "version": "v3.0.24", "source": { "type": "git", "url": "https://github.com/hyperf/di.git", - "reference": "7f1a22e16a5bdeec2c4d134ea7ecdc1df56b3b4c" + "reference": "4fa46897ffe0e1f2d1260a65a1e25dadaacbdcd2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/di/zipball/7f1a22e16a5bdeec2c4d134ea7ecdc1df56b3b4c", - "reference": "7f1a22e16a5bdeec2c4d134ea7ecdc1df56b3b4c", + "url": "https://api.github.com/repos/hyperf/di/zipball/4fa46897ffe0e1f2d1260a65a1e25dadaacbdcd2", + "reference": "4fa46897ffe0e1f2d1260a65a1e25dadaacbdcd2", "shasum": "" }, "require": { "doctrine/instantiator": "^1.0", + "hyperf/code-parser": "~3.0.0", + "hyperf/pipeline": "~3.0.0", + "hyperf/support": "~3.0.0", "nikic/php-parser": "^4.1", "php": ">=8.0", "php-di/phpdoc-reader": "^2.2", @@ -2208,11 +2744,11 @@ "pull-request": "https://github.com/hyperf/hyperf/pulls", "source": "https://github.com/hyperf/hyperf" }, - "time": "2022-11-28T10:55:55+00:00" + "time": "2023-06-05T07:53:17+00:00" }, { "name": "hyperf/event", - "version": "v3.0.0-rc.12", + "version": "v3.0.0", "source": { "type": "git", "url": "https://github.com/hyperf/event.git", @@ -2268,21 +2804,22 @@ }, { "name": "hyperf/framework", - "version": "v3.0.0-rc.13", + "version": "v3.0.23", "source": { "type": "git", "url": "https://github.com/hyperf/framework.git", - "reference": "20e0fd40e200285cb5da73c9c8da6669efd7c789" + "reference": "38e0fdfd097e73efbe7391795a695cea874d4ca6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/framework/zipball/20e0fd40e200285cb5da73c9c8da6669efd7c789", - "reference": "20e0fd40e200285cb5da73c9c8da6669efd7c789", + "url": "https://api.github.com/repos/hyperf/framework/zipball/38e0fdfd097e73efbe7391795a695cea874d4ca6", + "reference": "38e0fdfd097e73efbe7391795a695cea874d4ca6", "shasum": "" }, "require": { "fig/http-message-util": "^1.1.2", "hyperf/contract": "~3.0.0", + "hyperf/support": "~3.0.0", "hyperf/utils": "~3.0.0", "php": ">=8.0", "psr/container": "^1.0|^2.0", @@ -2330,20 +2867,20 @@ "pull-request": "https://github.com/hyperf/hyperf/pulls", "source": "https://github.com/hyperf/hyperf" }, - "time": "2022-11-01T02:50:54+00:00" + "time": "2023-05-30T01:25:37+00:00" }, { "name": "hyperf/model-listener", - "version": "v3.0.0-rc.1", + "version": "v3.0.18", "source": { "type": "git", "url": "https://github.com/hyperf/model-listener.git", - "reference": "50c7bffdbab5eb3828d6314b3d1de427c0e80704" + "reference": "2167252ea7bdc8626cfd3d44f0f4709502c10432" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/model-listener/zipball/50c7bffdbab5eb3828d6314b3d1de427c0e80704", - "reference": "50c7bffdbab5eb3828d6314b3d1de427c0e80704", + "url": "https://api.github.com/repos/hyperf/model-listener/zipball/2167252ea7bdc8626cfd3d44f0f4709502c10432", + "reference": "2167252ea7bdc8626cfd3d44f0f4709502c10432", "shasum": "" }, "require": { @@ -2351,6 +2888,7 @@ "hyperf/database": "~3.0.0", "hyperf/di": "~3.0.0", "hyperf/event": "~3.0.0", + "hyperf/support": "~3.0.0", "hyperf/utils": "~3.0.0", "php": ">=8.0", "psr/container": "^1.0|^2.0" @@ -2387,24 +2925,74 @@ "pull-request": "https://github.com/hyperf/hyperf/pulls", "source": "https://github.com/hyperf/hyperf" }, - "time": "2022-05-30T02:16:40+00:00" + "time": "2023-04-26T03:02:31+00:00" + }, + { + "name": "hyperf/pipeline", + "version": "v3.0.16", + "source": { + "type": "git", + "url": "https://github.com/hyperf/pipeline.git", + "reference": "a3f48561f5cfef5f697e7005446e16560024a443" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/hyperf/pipeline/zipball/a3f48561f5cfef5f697e7005446e16560024a443", + "reference": "a3f48561f5cfef5f697e7005446e16560024a443", + "shasum": "" + }, + "require": { + "php": ">=8.0", + "psr/container": "^1.0|^2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "psr-4": { + "Hyperf\\Pipeline\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Hyperf Macroable package which come from illuminate/pipeline", + "homepage": "https://hyperf.io", + "keywords": [ + "hyperf", + "php", + "pipeline", + "swoole" + ], + "support": { + "docs": "https://hyperf.wiki", + "issues": "https://github.com/hyperf/hyperf/issues", + "pull-request": "https://github.com/hyperf/hyperf/pulls", + "source": "https://github.com/hyperf/hyperf" + }, + "time": "2023-04-11T07:57:32+00:00" }, { "name": "hyperf/pool", - "version": "v3.0.0-rc.18", + "version": "v3.0.18", "source": { "type": "git", "url": "https://github.com/hyperf/pool.git", - "reference": "6a937ff363b84208c26cf918490a07d38ab0c987" + "reference": "44c87d46a1619554deed3879e8db675654ffd051" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/pool/zipball/6a937ff363b84208c26cf918490a07d38ab0c987", - "reference": "6a937ff363b84208c26cf918490a07d38ab0c987", + "url": "https://api.github.com/repos/hyperf/pool/zipball/44c87d46a1619554deed3879e8db675654ffd051", + "reference": "44c87d46a1619554deed3879e8db675654ffd051", "shasum": "" }, "require": { "hyperf/contract": "~3.0.0", + "hyperf/support": "~3.0.0", "hyperf/utils": "~3.0.0", "php": ">=8.0", "psr/container": "^1.0|^2.0" @@ -2441,24 +3029,25 @@ "pull-request": "https://github.com/hyperf/hyperf/pulls", "source": "https://github.com/hyperf/hyperf" }, - "time": "2022-11-26T11:47:54+00:00" + "time": "2023-04-26T03:02:31+00:00" }, { "name": "hyperf/process", - "version": "v3.0.0-rc.13", + "version": "v3.0.22", "source": { "type": "git", "url": "https://github.com/hyperf/process.git", - "reference": "a8f7589cdde9037b313626c4d34012c8ee5be263" + "reference": "e804c32bf7497bedcdee28994257aeaf71a1fde7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/process/zipball/a8f7589cdde9037b313626c4d34012c8ee5be263", - "reference": "a8f7589cdde9037b313626c4d34012c8ee5be263", + "url": "https://api.github.com/repos/hyperf/process/zipball/e804c32bf7497bedcdee28994257aeaf71a1fde7", + "reference": "e804c32bf7497bedcdee28994257aeaf71a1fde7", "shasum": "" }, "require": { "hyperf/contract": "~3.0.0", + "hyperf/support": "~3.0.0", "hyperf/utils": "~3.0.0", "php": ">=8.0", "psr/container": "^1.0|^2.0", @@ -2500,26 +3089,28 @@ "pull-request": "https://github.com/hyperf/hyperf/pulls", "source": "https://github.com/hyperf/hyperf" }, - "time": "2022-11-01T02:50:54+00:00" + "time": "2023-05-27T06:08:52+00:00" }, { "name": "hyperf/redis", - "version": "v3.0.0-rc.15", + "version": "v3.0.21", "source": { "type": "git", "url": "https://github.com/hyperf/redis.git", - "reference": "257a5a8042f770a2d3493a31f57d4d97bb76ee87" + "reference": "65ec6cbecb64793670ef1a512bd15369b683c746" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hyperf/redis/zipball/257a5a8042f770a2d3493a31f57d4d97bb76ee87", - "reference": "257a5a8042f770a2d3493a31f57d4d97bb76ee87", + "url": "https://api.github.com/repos/hyperf/redis/zipball/65ec6cbecb64793670ef1a512bd15369b683c746", + "reference": "65ec6cbecb64793670ef1a512bd15369b683c746", "shasum": "" }, "require": { "ext-redis": "*", "hyperf/contract": "~3.0.0", "hyperf/pool": "~3.0.0", + "hyperf/support": "~3.0.0", + "hyperf/tappable": "~3.0.0", "hyperf/utils": "~3.0.0", "php": ">=8.0", "psr/container": "^1.0|^2.0" @@ -2560,7 +3151,7 @@ "pull-request": "https://github.com/hyperf/hyperf/pulls", "source": "https://github.com/hyperf/hyperf" }, - "time": "2022-11-16T02:16:48+00:00" + "time": "2023-05-15T04:08:45+00:00" }, { "name": "influxdb/influxdb-php", @@ -2631,38 +3222,44 @@ }, { "name": "mockery/mockery", - "version": "1.5.1", + "version": "1.6.2", "source": { "type": "git", "url": "https://github.com/mockery/mockery.git", - "reference": "e92dcc83d5a51851baf5f5591d32cb2b16e3684e" + "reference": "13a7fa2642c76c58fa2806ef7f565344c817a191" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mockery/mockery/zipball/e92dcc83d5a51851baf5f5591d32cb2b16e3684e", - "reference": "e92dcc83d5a51851baf5f5591d32cb2b16e3684e", + "url": "https://api.github.com/repos/mockery/mockery/zipball/13a7fa2642c76c58fa2806ef7f565344c817a191", + "reference": "13a7fa2642c76c58fa2806ef7f565344c817a191", "shasum": "" }, "require": { "hamcrest/hamcrest-php": "^2.0.1", "lib-pcre": ">=7.0", - "php": "^7.3 || ^8.0" + "php": "^7.4 || ^8.0" }, "conflict": { "phpunit/phpunit": "<8.0" }, "require-dev": { - "phpunit/phpunit": "^8.5 || ^9.3" + "phpunit/phpunit": "^8.5 || ^9.3", + "psalm/plugin-phpunit": "^0.18", + "vimeo/psalm": "^5.9" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.4.x-dev" + "dev-main": "1.6.x-dev" } }, "autoload": { - "psr-0": { - "Mockery": "library/" + "files": [ + "library/helpers.php", + "library/Mockery.php" + ], + "psr-4": { + "Mockery\\": "library/Mockery" } }, "notification-url": "https://packagist.org/downloads/", @@ -2697,22 +3294,22 @@ ], "support": { "issues": "https://github.com/mockery/mockery/issues", - "source": "https://github.com/mockery/mockery/tree/1.5.1" + "source": "https://github.com/mockery/mockery/tree/1.6.2" }, - "time": "2022-09-07T15:32:08+00:00" + "time": "2023-06-07T09:07:52+00:00" }, { "name": "myclabs/deep-copy", - "version": "1.11.0", + "version": "1.11.1", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614" + "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/14daed4296fae74d9e3201d2c4925d1acb7aa614", - "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", + "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", "shasum": "" }, "require": { @@ -2750,7 +3347,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.11.0" + "source": "https://github.com/myclabs/DeepCopy/tree/1.11.1" }, "funding": [ { @@ -2758,20 +3355,20 @@ "type": "tidelift" } ], - "time": "2022-03-03T13:19:32+00:00" + "time": "2023-03-08T13:26:56+00:00" }, { "name": "nesbot/carbon", - "version": "2.64.0", + "version": "2.68.1", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "889546413c97de2d05063b8cb7b193c2531ea211" + "reference": "4f991ed2a403c85efbc4f23eb4030063fdbe01da" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/889546413c97de2d05063b8cb7b193c2531ea211", - "reference": "889546413c97de2d05063b8cb7b193c2531ea211", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/4f991ed2a403c85efbc4f23eb4030063fdbe01da", + "reference": "4f991ed2a403c85efbc4f23eb4030063fdbe01da", "shasum": "" }, "require": { @@ -2860,20 +3457,20 @@ "type": "tidelift" } ], - "time": "2022-11-26T17:36:00+00:00" + "time": "2023-06-20T18:29:04+00:00" }, { "name": "nikic/php-parser", - "version": "v4.15.2", + "version": "v4.16.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc" + "reference": "19526a33fb561ef417e822e85f08a00db4059c17" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc", - "reference": "f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/19526a33fb561ef417e822e85f08a00db4059c17", + "reference": "19526a33fb561ef417e822e85f08a00db4059c17", "shasum": "" }, "require": { @@ -2914,9 +3511,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.2" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.16.0" }, - "time": "2022-11-12T15:38:23+00:00" + "time": "2023-06-25T14:52:30+00:00" }, { "name": "phar-io/manifest", @@ -3073,24 +3670,24 @@ }, { "name": "phpoption/phpoption", - "version": "1.9.0", + "version": "1.9.1", "source": { "type": "git", "url": "https://github.com/schmittjoh/php-option.git", - "reference": "dc5ff11e274a90cc1c743f66c9ad700ce50db9ab" + "reference": "dd3a383e599f49777d8b628dadbb90cae435b87e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/dc5ff11e274a90cc1c743f66c9ad700ce50db9ab", - "reference": "dc5ff11e274a90cc1c743f66c9ad700ce50db9ab", + "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/dd3a383e599f49777d8b628dadbb90cae435b87e", + "reference": "dd3a383e599f49777d8b628dadbb90cae435b87e", "shasum": "" }, "require": { "php": "^7.2.5 || ^8.0" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.8", - "phpunit/phpunit": "^8.5.28 || ^9.5.21" + "bamarni/composer-bin-plugin": "^1.8.2", + "phpunit/phpunit": "^8.5.32 || ^9.6.3 || ^10.0.12" }, "type": "library", "extra": { @@ -3132,7 +3729,7 @@ ], "support": { "issues": "https://github.com/schmittjoh/php-option/issues", - "source": "https://github.com/schmittjoh/php-option/tree/1.9.0" + "source": "https://github.com/schmittjoh/php-option/tree/1.9.1" }, "funding": [ { @@ -3144,27 +3741,27 @@ "type": "tidelift" } ], - "time": "2022-07-30T15:51:26+00:00" + "time": "2023-02-25T19:38:58+00:00" }, { "name": "phpunit/php-code-coverage", - "version": "9.2.22", + "version": "9.2.26", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "e4bf60d2220b4baaa0572986b5d69870226b06df" + "reference": "443bc6912c9bd5b409254a40f4b0f4ced7c80ea1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/e4bf60d2220b4baaa0572986b5d69870226b06df", - "reference": "e4bf60d2220b4baaa0572986b5d69870226b06df", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/443bc6912c9bd5b409254a40f4b0f4ced7c80ea1", + "reference": "443bc6912c9bd5b409254a40f4b0f4ced7c80ea1", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^4.14", + "nikic/php-parser": "^4.15", "php": ">=7.3", "phpunit/php-file-iterator": "^3.0.3", "phpunit/php-text-template": "^2.0.2", @@ -3179,8 +3776,8 @@ "phpunit/phpunit": "^9.3" }, "suggest": { - "ext-pcov": "*", - "ext-xdebug": "*" + "ext-pcov": "PHP extension that provides line coverage", + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" }, "type": "library", "extra": { @@ -3213,7 +3810,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.22" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.26" }, "funding": [ { @@ -3221,7 +3818,7 @@ "type": "github" } ], - "time": "2022-12-18T16:40:55+00:00" + "time": "2023-03-06T12:58:08+00:00" }, { "name": "phpunit/php-file-iterator", @@ -3466,20 +4063,20 @@ }, { "name": "phpunit/phpunit", - "version": "9.5.27", + "version": "9.6.9", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "a2bc7ffdca99f92d959b3f2270529334030bba38" + "reference": "a9aceaf20a682aeacf28d582654a1670d8826778" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a2bc7ffdca99f92d959b3f2270529334030bba38", - "reference": "a2bc7ffdca99f92d959b3f2270529334030bba38", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a9aceaf20a682aeacf28d582654a1670d8826778", + "reference": "a9aceaf20a682aeacf28d582654a1670d8826778", "shasum": "" }, "require": { - "doctrine/instantiator": "^1.3.1", + "doctrine/instantiator": "^1.3.1 || ^2", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*", @@ -3508,8 +4105,8 @@ "sebastian/version": "^3.0.2" }, "suggest": { - "ext-soap": "*", - "ext-xdebug": "*" + "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" }, "bin": [ "phpunit" @@ -3517,7 +4114,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "9.5-dev" + "dev-master": "9.6-dev" } }, "autoload": { @@ -3548,7 +4145,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.27" + "security": "https://github.com/sebastianbergmann/phpunit/security/policy", + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.9" }, "funding": [ { @@ -3564,20 +4162,20 @@ "type": "tidelift" } ], - "time": "2022-12-09T07:31:23+00:00" + "time": "2023-06-11T06:13:56+00:00" }, { "name": "promphp/prometheus_client_php", - "version": "v2.6.2", + "version": "v2.7.1", "source": { "type": "git", "url": "https://github.com/PromPHP/prometheus_client_php.git", - "reference": "df77bbcc65bd173f2ffaf40ab4e1ca8716da8ce6" + "reference": "82e42b5a491ee94127110548ee835052b9765a78" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PromPHP/prometheus_client_php/zipball/df77bbcc65bd173f2ffaf40ab4e1ca8716da8ce6", - "reference": "df77bbcc65bd173f2ffaf40ab4e1ca8716da8ce6", + "url": "https://api.github.com/repos/PromPHP/prometheus_client_php/zipball/82e42b5a491ee94127110548ee835052b9765a78", + "reference": "82e42b5a491ee94127110548ee835052b9765a78", "shasum": "" }, "require": { @@ -3629,9 +4227,9 @@ "description": "Prometheus instrumentation library for PHP applications.", "support": { "issues": "https://github.com/PromPHP/prometheus_client_php/issues", - "source": "https://github.com/PromPHP/prometheus_client_php/tree/v2.6.2" + "source": "https://github.com/PromPHP/prometheus_client_php/tree/v2.7.1" }, - "time": "2022-06-30T03:46:23+00:00" + "time": "2023-04-24T18:11:52+00:00" }, { "name": "psr/cache", @@ -3738,22 +4336,22 @@ "source": { "type": "git", "url": "https://github.com/Roave/SecurityAdvisories.git", - "reference": "58046a3fc3555eda6567a2bdae7195be6aa9babe" + "reference": "885786b30f50e83a88941df2062d68de623599fd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/58046a3fc3555eda6567a2bdae7195be6aa9babe", - "reference": "58046a3fc3555eda6567a2bdae7195be6aa9babe", + "url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/885786b30f50e83a88941df2062d68de623599fd", + "reference": "885786b30f50e83a88941df2062d68de623599fd", "shasum": "" }, "conflict": { "3f/pygmentize": "<1.2", - "admidio/admidio": "<4.1.9", + "admidio/admidio": "<4.2.9", "adodb/adodb-php": "<=5.20.20|>=5.21,<=5.21.3", "aheinze/cockpit": "<=2.2.1", "akaunting/akaunting": "<2.1.13", "akeneo/pim-community-dev": "<5.0.119|>=6,<6.0.53", - "alextselegidis/easyappointments": "<=1.4.3", + "alextselegidis/easyappointments": "<1.5", "alterphp/easyadmin-extension-bundle": ">=1.2,<1.2.11|>=1.3,<1.3.1", "amazing/media2click": ">=1,<1.3.3", "amphp/artax": "<1.0.6|>=2,<2.0.6", @@ -3761,21 +4359,28 @@ "amphp/http-client": ">=4,<4.4", "anchorcms/anchor-cms": "<=0.12.7", "andreapollastri/cipi": "<=3.1.15", + "andrewhaine/silverstripe-form-capture": ">=0.2,<=0.2.3|>=1,<1.0.2|>=2,<2.2.5", "apereo/phpcas": "<1.6", - "api-platform/core": ">=2.2,<2.2.10|>=2.3,<2.3.6", - "appwrite/server-ce": "<0.11.1|>=0.12,<0.12.2", + "api-platform/core": ">=2.2,<2.2.10|>=2.3,<2.3.6|>=2.6,<2.7.10|>=3,<3.0.12|>=3.1,<3.1.3", + "appwrite/server-ce": "<=1.2.1", + "arc/web": "<3", "area17/twill": "<1.2.5|>=2,<2.5.3", "asymmetricrypt/asymmetricrypt": ">=0,<9.9.99", + "automad/automad": "<1.8", "awesome-support/awesome-support": "<=6.0.7", "aws/aws-sdk-php": ">=3,<3.2.1", - "backdrop/backdrop": "<=1.23", + "azuracast/azuracast": "<0.18.3", + "backdrop/backdrop": "<1.24.2", "badaso/core": "<2.7", "bagisto/bagisto": "<0.1.5", "barrelstrength/sprout-base-email": "<1.2.7", "barrelstrength/sprout-forms": "<3.9", "barryvdh/laravel-translation-manager": "<0.6.2", - "baserproject/basercms": "<4.7.2", - "billz/raspap-webgui": "<=2.6.6", + "barzahlen/barzahlen-php": "<2.0.1", + "baserproject/basercms": "<4.7.5", + "bassjobsen/bootstrap-3-typeahead": ">4.0.2", + "bigfork/silverstripe-form-capture": ">=3,<3.1.1", + "billz/raspap-webgui": "<2.8.9", "bk2k/bootstrap-package": ">=7.1,<7.1.2|>=8,<8.0.8|>=9,<9.0.4|>=9.1,<9.1.3|>=10,<10.0.10|>=11,<11.0.3", "bmarshall511/wordpress_zero_spam": "<5.2.13", "bolt/bolt": "<3.7.2", @@ -3789,34 +4394,39 @@ "bugsnag/bugsnag-laravel": ">=2,<2.0.2", "bytefury/crater": "<6.0.2", "cachethq/cachet": "<2.5.1", - "cakephp/cakephp": "<3.10.3|>=4,<4.0.6", + "cakephp/cakephp": "<3.10.3|>=4,<4.0.10|>=4.2,<4.2.12|>=4.3,<4.3.11|>=4.4,<4.4.10|= 1.3.7|>=4.1,<4.1.4", + "cakephp/database": ">=4.2,<4.2.12|>=4.3,<4.3.11|>=4.4,<4.4.10", "cardgate/magento2": "<2.0.33", "cart2quote/module-quotation": ">=4.1.6,<=4.4.5|>=5,<5.4.4", "cartalyst/sentry": "<=2.1.6", "catfan/medoo": "<1.7.5", "centreon/centreon": "<22.10-beta.1", "cesnet/simplesamlphp-module-proxystatistics": "<3.1", + "cockpit-hq/cockpit": "<2.4.1", "codeception/codeception": "<3.1.3|>=4,<4.1.22", "codeigniter/framework": "<=3.0.6", - "codeigniter4/framework": "<4.2.7", - "codeigniter4/shield": "= 1.0.0-beta", + "codeigniter4/framework": "<4.3.5", + "codeigniter4/shield": "<1-beta.4|= 1.0.0-beta", "codiad/codiad": "<=2.8.4", "composer/composer": "<1.10.26|>=2-alpha.1,<2.2.12|>=2.3,<2.3.5", - "concrete5/concrete5": "<=9.1.3|>= 9.0.0RC1, < 9.1.3", + "concrete5/concrete5": "<9.2|>= 9.0.0RC1, < 9.1.3", "concrete5/core": "<8.5.8|>=9,<9.1", "contao-components/mediaelement": ">=2.14.2,<2.21.1", - "contao/contao": ">=4,<4.4.56|>=4.5,<4.9.18|>=4.10,<4.11.7|>=4.13,<4.13.3", + "contao/contao": ">=4,<4.4.56|>=4.5,<4.9.40|>=4.10,<4.11.7|>=4.13,<4.13.21|>=5.1,<5.1.4", "contao/core": ">=2,<3.5.39", - "contao/core-bundle": "<4.9.18|>=4.10,<4.11.7|>=4.13,<4.13.3|= 4.10.0", + "contao/core-bundle": "<4.9.40|>=4.10,<4.11.7|>=4.13,<4.13.21|>=5.1,<5.1.4|= 4.10.0", "contao/listing-bundle": ">=4,<4.4.8", "contao/managed-edition": "<=1.5", - "craftcms/cms": "<3.7.55.2|>= 4.0.0-RC1, < 4.2.1", + "craftcms/cms": "<=4.4.9|>= 4.0.0-RC1, < 4.4.12|>= 4.0.0-RC1, <= 4.4.5|>= 4.0.0-RC1, <= 4.4.6|>= 4.0.0-RC1, < 4.4.6|>= 4.0.0-RC1, < 4.3.7|>= 4.0.0-RC1, < 4.2.1", "croogo/croogo": "<3.0.7", "cuyz/valinor": "<0.12", "czproject/git-php": "<4.0.3", "darylldoyle/safe-svg": "<1.9.10", "datadog/dd-trace": ">=0.30,<0.30.2", "david-garcia/phpwhois": "<=4.3.1", + "dbrisinajumi/d2files": "<1", + "dcat/laravel-admin": "<=2.1.3-beta", + "derhansen/fe_change_pwd": "<2.0.5|>=3,<3.0.3", "derhansen/sf_event_mgt": "<4.3.1|>=5,<5.1.1", "directmailteam/direct-mail": "<5.2.4", "doctrine/annotations": ">=1,<1.2.7", @@ -3828,15 +4438,16 @@ "doctrine/mongodb-odm": ">=1,<1.0.2", "doctrine/mongodb-odm-bundle": ">=2,<3.0.1", "doctrine/orm": ">=2,<2.4.8|>=2.5,<2.5.1|>=2.8.3,<2.8.4", - "dolibarr/dolibarr": "<16|>=16.0.1,<16.0.3|= 12.0.5|>= 3.3.beta1, < 13.0.2", - "dompdf/dompdf": "<2.0.1", - "drupal/core": ">=7,<7.91|>=8,<9.3.19|>=9.4,<9.4.3", + "dolibarr/dolibarr": "<17.0.1|= 12.0.5|>= 3.3.beta1, < 13.0.2", + "dompdf/dompdf": "<2.0.2|= 2.0.2", + "drupal/core": ">=7,<7.96|>=8,<9.4.14|>=9.5,<9.5.8|>=10,<10.0.8", "drupal/drupal": ">=7,<7.80|>=8,<8.9.16|>=9,<9.1.12|>=9.2,<9.2.4", "dweeves/magmi": "<=0.7.24", "ecodev/newsletter": "<=4", "ectouch/ectouch": "<=2.7.2", "elefant/cms": "<1.3.13", "elgg/elgg": "<3.3.24|>=4,<4.0.5", + "encore/laravel-admin": "<=1.8.19", "endroid/qr-code-bundle": "<3.4.2", "enshrined/svg-sanitize": "<0.15", "erusev/parsedown": "<1.7.2", @@ -3851,11 +4462,11 @@ "ezsystems/ezplatform-admin-ui": ">=1.3,<1.3.5|>=1.4,<1.4.6|>=1.5,<1.5.29|>=2.3,<2.3.26", "ezsystems/ezplatform-admin-ui-assets": ">=4,<4.2.1|>=5,<5.0.1|>=5.1,<5.1.1", "ezsystems/ezplatform-graphql": ">=1-rc.1,<1.0.13|>=2-beta.1,<2.3.12", - "ezsystems/ezplatform-kernel": "<=1.2.5|>=1.3,<1.3.26", + "ezsystems/ezplatform-kernel": "<1.2.5.1|>=1.3,<1.3.26", "ezsystems/ezplatform-rest": ">=1.2,<=1.2.2|>=1.3,<1.3.8", - "ezsystems/ezplatform-richtext": ">=2.3,<=2.3.7", + "ezsystems/ezplatform-richtext": ">=2.3,<2.3.7.1", "ezsystems/ezplatform-user": ">=1,<1.0.1", - "ezsystems/ezpublish-kernel": "<=6.13.8.1|>=7,<7.5.30", + "ezsystems/ezpublish-kernel": "<6.13.8.2|>=7,<7.5.30", "ezsystems/ezpublish-legacy": "<=2017.12.7.3|>=2018.6,<=2019.3.5.1", "ezsystems/platform-ui-assets-bundle": ">=4.2,<4.2.3", "ezsystems/repository-forms": ">=2.3,<2.3.2.1|>=2.5,<2.5.15", @@ -3866,8 +4477,11 @@ "feehi/feehicms": "<=2.1.1", "fenom/fenom": "<=2.12.1", "filegator/filegator": "<7.8", - "firebase/php-jwt": "<2", - "flarum/core": ">=1,<=1.0.1|>=1.5,<1.6.2", + "firebase/php-jwt": "<6", + "fixpunkt/fp-masterquiz": "<2.2.1|>=3,<3.5.2", + "fixpunkt/fp-newsletter": "<1.1.1|>=2,<2.1.2|>=2.2,<3.2.6", + "flarum/core": "<1.7", + "flarum/mentions": "<1.6.3", "flarum/sticky": ">=0.1-beta.14,<=0.1-beta.15", "flarum/tags": "<=0.1-beta.13", "fluidtypo3/vhs": "<5.1.1", @@ -3876,17 +4490,19 @@ "fooman/tcpdf": "<6.2.22", "forkcms/forkcms": "<5.11.1", "fossar/tcpdf-parser": "<6.2.22", - "francoisjacquet/rosariosis": "<10.1", + "francoisjacquet/rosariosis": "<11", + "frappant/frp-form-answers": "<3.1.2|>=4,<4.0.2", "friendsofsymfony/oauth2-php": "<1.3", "friendsofsymfony/rest-bundle": ">=1.2,<1.2.2", "friendsofsymfony/user-bundle": ">=1.2,<1.3.5", "friendsoftypo3/mediace": ">=7.6.2,<7.6.5", "froala/wysiwyg-editor": "<3.2.7", - "froxlor/froxlor": "<0.10.39", + "froxlor/froxlor": "<2.1", "fuel/core": "<1.8.1", + "funadmin/funadmin": "<=3.2|>=3.3.2,<=3.3.3", "gaoming13/wechat-php-sdk": "<=1.10.2", "genix/cms": "<=1.1.11", - "getgrav/grav": "<1.7.34", + "getgrav/grav": "<1.7.42", "getkirby/cms": "= 3.8.0|<3.5.8.2|>=3.6,<3.6.6.2|>=3.7,<3.7.5.1", "getkirby/panel": "<2.5.14", "getkirby/starterkit": "<=3.7.0.2", @@ -3894,20 +4510,25 @@ "globalpayments/php-sdk": "<2", "google/protobuf": "<3.15", "gos/web-socket-bundle": "<1.10.4|>=2,<2.6.1|>=3,<3.3", - "gree/jose": "<=2.2", + "gree/jose": "<2.2.1", "gregwar/rst": "<1.0.3", - "grumpydictator/firefly-iii": "<5.6.5", + "grumpydictator/firefly-iii": "<6", "guzzlehttp/guzzle": "<6.5.8|>=7,<7.4.5", - "guzzlehttp/psr7": "<1.8.4|>=2,<2.1.1", + "guzzlehttp/psr7": "<1.9.1|>=2,<2.4.5", + "harvesthq/chosen": "<1.8.7", "helloxz/imgurl": "= 2.31|<=2.31", + "hhxsv5/laravel-s": "<3.7.36", "hillelcoren/invoice-ninja": "<5.3.35", + "himiklab/yii2-jqgrid-widget": "<1.0.8", "hjue/justwriting": "<=1", "hov/jobfair": "<1.0.13|>=2,<2.0.2", + "httpsoft/http-message": "<1.0.12", "hyn/multi-tenant": ">=5.6,<5.7.2", "ibexa/admin-ui": ">=4.2,<4.2.3", "ibexa/core": ">=4,<4.0.7|>=4.1,<4.1.4|>=4.2,<4.2.3", "ibexa/graphql": ">=2.5,<2.5.31|>=3.3,<3.3.28|>=4.2,<4.2.3", "ibexa/post-install": "<=1.0.4", + "ibexa/user": ">=4,<4.4.3", "icecoder/icecoder": "<=8.1", "idno/known": "<=1.3.1", "illuminate/auth": ">=4,<4.0.99|>=4.1,<=4.1.31|>=4.2,<=4.2.22|>=5,<=5.0.35|>=5.1,<=5.1.46|>=5.2,<=5.2.45|>=5.3,<=5.3.31|>=5.4,<=5.4.36|>=5.5,<5.5.10", @@ -3916,8 +4537,10 @@ "illuminate/encryption": ">=4,<=4.0.11|>=4.1,<=4.1.31|>=4.2,<=4.2.22|>=5,<=5.0.35|>=5.1,<=5.1.46|>=5.2,<=5.2.45|>=5.3,<=5.3.31|>=5.4,<=5.4.36|>=5.5,<5.5.40|>=5.6,<5.6.15", "illuminate/view": "<6.20.42|>=7,<7.30.6|>=8,<8.75", "impresscms/impresscms": "<=1.4.3", - "in2code/femanager": "<5.5.2|>=6,<6.3.3|>=7,<7.0.1", + "in2code/femanager": "<5.5.3|>=6,<6.3.4|>=7,<7.1", + "in2code/ipandlanguageredirect": "<5.1.2", "in2code/lux": "<17.6.1|>=18,<24.0.2", + "innologi/typo3-appointments": "<2.0.6", "intelliants/subrion": "<=4.2.1", "islandora/islandora": ">=2,<2.4.1", "ivankristianto/phpwhois": "<=4.3", @@ -3933,25 +4556,30 @@ "jsdecena/laracom": "<2.0.9", "jsmitty12/phpwhois": "<5.1", "kazist/phpwhois": "<=4.2.6", + "kelvinmo/simplexrd": "<3.1.1", "kevinpapst/kimai2": "<1.16.7", + "khodakhah/nodcms": "<=3", + "kimai/kimai": "<1.1", "kitodo/presentation": "<3.1.2", "klaviyo/magento2-extension": ">=1,<3", + "knplabs/knp-snappy": "<1.4.2", "krayin/laravel-crm": "<1.2.2", "kreait/firebase-php": ">=3.2,<3.8.1", "la-haute-societe/tcpdf": "<6.2.22", - "laminas/laminas-diactoros": "<2.11.1", + "laminas/laminas-diactoros": "<2.18.1|>=2.24,<2.24.2|>=2.25,<2.25.2|= 2.23.0|= 2.22.0|= 2.21.0|= 2.20.0|= 2.19.0", "laminas/laminas-form": "<2.17.1|>=3,<3.0.2|>=3.1,<3.1.1", "laminas/laminas-http": "<2.14.2", "laravel/fortify": "<1.11.1", "laravel/framework": "<6.20.42|>=7,<7.30.6|>=8,<8.75", "laravel/socialite": ">=1,<1.0.99|>=2,<2.0.10", "latte/latte": "<2.10.8", - "lavalite/cms": "<=5.8", + "lavalite/cms": "<=9", "lcobucci/jwt": ">=3.4,<3.4.6|>=4,<4.0.4|>=4.1,<4.1.5", "league/commonmark": "<0.18.3", "league/flysystem": "<1.1.4|>=2,<2.1.1", "lexik/jwt-authentication-bundle": "<2.10.7|>=2.11,<2.11.3", "librenms/librenms": "<22.10", + "liftkit/database": "<2.13.2", "limesurvey/limesurvey": "<3.27.19", "livehelperchat/livehelperchat": "<=3.91", "livewire/livewire": ">2.2.4,<2.2.6", @@ -3962,21 +4590,26 @@ "magento/magento1ce": "<1.9.4.3", "magento/magento1ee": ">=1,<1.14.4.3", "magento/product-community-edition": ">=2,<2.2.10|>=2.3,<2.3.2-p.2", + "maikuolan/phpmussel": ">=1,<1.6", + "mantisbt/mantisbt": "<=2.25.5", "marcwillmann/turn": "<0.3.3", "matyhtf/framework": "<3.0.6", "mautic/core": "<4.3|= 2.13.1", - "mediawiki/core": ">=1.27,<1.27.6|>=1.29,<1.29.3|>=1.30,<1.30.2|>=1.31,<1.31.9|>=1.32,<1.32.6|>=1.32.99,<1.33.3|>=1.33.99,<1.34.3|>=1.34.99,<1.35", + "mediawiki/core": "<=1.39.3", + "mediawiki/matomo": "<2.4.3", "melisplatform/melis-asset-manager": "<5.0.1", "melisplatform/melis-cms": "<5.0.1", "melisplatform/melis-front": "<5.0.1", "mezzio/mezzio-swoole": "<3.7|>=4,<4.3", - "microweber/microweber": "<=1.3.1", + "mgallegos/laravel-jqgrid": "<=1.3", + "microweber/microweber": "<=1.3.4", "miniorange/miniorange-saml": "<1.4.3", "mittwald/typo3_forum": "<1.2.1", + "mobiledetect/mobiledetectlib": "<2.8.32", "modx/revolution": "<= 2.8.3-pl|<2.8", "mojo42/jirafeau": "<4.4", "monolog/monolog": ">=1.8,<1.12", - "moodle/moodle": "<4.0.5", + "moodle/moodle": "<4.2-rc.2|= 4.2.0|= 3.11", "mustache/mustache": ">=2,<2.14.1", "namshi/jose": "<2.2", "neoan3-apps/template": "<1.1.1", @@ -3988,10 +4621,11 @@ "netgen/tagsbundle": ">=3.4,<3.4.11|>=4,<4.0.15", "nette/application": ">=2,<2.0.19|>=2.1,<2.1.13|>=2.2,<2.2.10|>=2.3,<2.3.14|>=2.4,<2.4.16|>=3,<3.0.6", "nette/nette": ">=2,<2.0.19|>=2.1,<2.1.13", - "nilsteampassnet/teampass": "<=2.1.27.36", + "nilsteampassnet/teampass": "<3.0.9", "notrinos/notrinos-erp": "<=0.7", "noumo/easyii": "<=0.9", "nukeviet/nukeviet": "<4.5.2", + "nyholm/psr7": "<1.6.1", "nystudio107/craft-seomatic": "<3.4.12", "nzo/url-encryptor-bundle": ">=4,<4.3.2|>=5,<5.0.1", "october/backend": "<1.1.2", @@ -4004,7 +4638,7 @@ "open-web-analytics/open-web-analytics": "<1.7.4", "opencart/opencart": "<=3.0.3.7", "openid/php-openid": "<2.3", - "openmage/magento-lts": "<19.4.15|>=20,<20.0.13", + "openmage/magento-lts": "<19.4.22|>=20,<20.0.19", "orchid/platform": ">=9,<9.4.4", "oro/commerce": ">=4.1,<5.0.6", "oro/crm": ">=1.7,<1.7.4|>=3.1,<4.1.17|>=4.2,<4.2.7", @@ -4021,29 +4655,35 @@ "pegasus/google-for-jobs": "<1.5.1|>=2,<2.1.1", "personnummer/personnummer": "<3.0.2", "phanan/koel": "<5.1.4", + "php-mod/curl": "<2.3.2", + "phpbb/phpbb": ">=3.2,<3.2.10|>=3.3,<3.3.1", "phpfastcache/phpfastcache": "<6.1.5|>=7,<7.1.2|>=8,<8.0.7", "phpmailer/phpmailer": "<6.5", "phpmussel/phpmussel": ">=1,<1.6", - "phpmyadmin/phpmyadmin": "<5.1.3", + "phpmyadmin/phpmyadmin": "<5.2.1", "phpmyfaq/phpmyfaq": "<=3.1.7", "phpoffice/phpexcel": "<1.8", "phpoffice/phpspreadsheet": "<1.16", - "phpseclib/phpseclib": "<2.0.31|>=3,<3.0.7", + "phpseclib/phpseclib": "<2.0.31|>=3,<3.0.19", "phpservermon/phpservermon": "<=3.5.2", + "phpsysinfo/phpsysinfo": "<3.2.5", "phpunit/phpunit": ">=4.8.19,<4.8.28|>=5,<5.6.3", "phpwhois/phpwhois": "<=4.2.5", "phpxmlrpc/extras": "<0.6.1", - "phpxmlrpc/phpxmlrpc": "<4.9", + "phpxmlrpc/phpxmlrpc": "<4.9.2", + "pimcore/customer-management-framework-bundle": "<3.3.10", "pimcore/data-hub": "<1.2.4", - "pimcore/pimcore": "<10.5.9", + "pimcore/perspective-editor": "<1.5.1", + "pimcore/pimcore": "<10.5.23", + "pixelfed/pixelfed": "<=0.11.4", "pocketmine/bedrock-protocol": "<8.0.2", - "pocketmine/pocketmine-mp": "<4.7.2|>= 4.0.0-BETA5, < 4.4.2", + "pocketmine/pocketmine-mp": "<4.20.5|>=4.21,<4.21.1|< 4.18.0-ALPHA2|>= 4.0.0-BETA5, < 4.4.2", "pressbooks/pressbooks": "<5.18", "prestashop/autoupgrade": ">=4,<4.10.1", "prestashop/blockwishlist": ">=2,<2.1.1", "prestashop/contactform": ">=1.0.1,<4.3", "prestashop/gamification": "<2.3.2", - "prestashop/prestashop": "<1.7.8.8", + "prestashop/prestashop": "<8.0.4", "prestashop/productcomments": "<5.0.2", "prestashop/ps_emailsubscription": "<2.6.1", "prestashop/ps_facetedsearch": "<3.4.1", @@ -4059,7 +4699,8 @@ "pyrocms/pyrocms": "<=3.9.1", "rainlab/debugbar-plugin": "<3.1", "rankmath/seo-by-rank-math": "<=1.0.95", - "react/http": ">=0.7,<1.7", + "react/http": ">=0.7,<1.9", + "really-simple-plugins/complianz-gdpr": "<6.4.2", "remdex/livehelperchat": "<3.99", "rmccue/requests": ">=1.6,<1.8", "robrichards/xmlseclibs": "<3.0.4", @@ -4072,20 +4713,21 @@ "scheb/two-factor-bundle": ">=0,<3.26|>=4,<4.11", "sensiolabs/connect": "<4.2.3", "serluck/phpwhois": "<=4.2.6", - "shopware/core": "<=6.4.9", - "shopware/platform": "<=6.4.9", + "sheng/yiicms": "<=1.2", + "shopware/core": "<=6.4.20", + "shopware/platform": "<=6.4.20", "shopware/production": "<=6.3.5.2", - "shopware/shopware": "<=5.7.14", + "shopware/shopware": "<=5.7.17", "shopware/storefront": "<=6.4.8.1", "shopxo/shopxo": "<2.2.6", "showdoc/showdoc": "<2.10.4", - "silverstripe/admin": ">=1,<1.11.3", + "silverstripe/admin": "<1.12.7", "silverstripe/assets": ">=1,<1.11.1", "silverstripe/cms": "<4.11.3", "silverstripe/comments": ">=1.3,<1.9.99|>=2,<2.9.99|>=3,<3.1.1", "silverstripe/forum": "<=0.6.1|>=0.7,<=0.7.3", - "silverstripe/framework": "<4.11.14", - "silverstripe/graphql": "<3.5.2|>=4-alpha.1,<4-alpha.2|= 4.0.0-alpha1", + "silverstripe/framework": "<4.12.5", + "silverstripe/graphql": "<3.5.2|>=4-alpha.1,<4-alpha.2|>=4.1.1,<4.1.2|>=4.2.2,<4.2.3|= 4.0.0-alpha1", "silverstripe/hybridsessions": ">=1,<2.4.1|>=2.5,<2.5.1", "silverstripe/registry": ">=2.1,<2.1.2|>=2.2,<2.2.1", "silverstripe/restfulserver": ">=1,<1.0.9|>=2,<2.0.4", @@ -4098,10 +4740,14 @@ "simplesamlphp/saml2": "<1.10.6|>=2,<2.3.8|>=3,<3.1.4", "simplesamlphp/simplesamlphp": "<1.18.6", "simplesamlphp/simplesamlphp-module-infocard": "<1.0.1", + "simplesamlphp/simplesamlphp-module-openid": "<1", + "simplesamlphp/simplesamlphp-module-openidprovider": "<0.9", "simplito/elliptic-php": "<1.0.6", + "sitegeist/fluid-components": "<3.5", + "slim/psr7": "<1.4.1|>=1.5,<1.5.1|>=1.6,<1.6.1", "slim/slim": "<2.6", - "smarty/smarty": "<3.1.47|>=4,<4.2.1", - "snipe/snipe-it": "<6.0.11|>= 6.0.0-RC-1, <= 6.0.0-RC-5", + "smarty/smarty": "<3.1.48|>=4,<4.3.1", + "snipe/snipe-it": "<=6.0.14|>= 6.0.0-RC-1, <= 6.0.0-RC-5", "socalnick/scn-social-auth": "<1.15.2", "socialiteproviders/steam": "<1.1", "spatie/browsershot": "<3.57.4", @@ -4111,9 +4757,12 @@ "ssddanbrown/bookstack": "<22.2.3", "statamic/cms": "<3.2.39|>=3.3,<3.3.2", "stormpath/sdk": ">=0,<9.9.99", - "studio-42/elfinder": "<2.1.59", + "studio-42/elfinder": "<2.1.62", "subrion/cms": "<=4.2.1", + "sukohi/surpass": "<1", "sulu/sulu": "= 2.4.0-RC1|<1.6.44|>=2,<2.2.18|>=2.3,<2.3.8", + "sumocoders/framework-user-bundle": "<1.4", + "swag/paypal": "<5.4.4", "swiftmailer/swiftmailer": ">=4,<5.4.5", "sylius/admin-bundle": ">=1,<1.0.17|>=1.1,<1.1.9|>=1.2,<1.2.2", "sylius/grid": ">=1,<1.1.19|>=1.2,<1.2.18|>=1.3,<1.3.13|>=1.4,<1.4.5|>=1.5,<1.5.1", @@ -4123,15 +4772,16 @@ "sylius/sylius": "<1.9.10|>=1.10,<1.10.11|>=1.11,<1.11.2", "symbiote/silverstripe-multivaluefield": ">=3,<3.0.99", "symbiote/silverstripe-queuedjobs": ">=3,<3.0.2|>=3.1,<3.1.4|>=4,<4.0.7|>=4.1,<4.1.2|>=4.2,<4.2.4|>=4.3,<4.3.3|>=4.4,<4.4.3|>=4.5,<4.5.1|>=4.6,<4.6.4", + "symbiote/silverstripe-seed": "<6.0.3", "symbiote/silverstripe-versionedfiles": "<=2.0.3", - "symfont/process": ">=0,<4", + "symfont/process": ">=0", "symfony/cache": ">=3.1,<3.4.35|>=4,<4.2.12|>=4.3,<4.3.8", "symfony/dependency-injection": ">=2,<2.0.17|>=2.7,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7", "symfony/error-handler": ">=4.4,<4.4.4|>=5,<5.0.4", "symfony/form": ">=2.3,<2.3.35|>=2.4,<2.6.12|>=2.7,<2.7.50|>=2.8,<2.8.49|>=3,<3.4.20|>=4,<4.0.15|>=4.1,<4.1.9|>=4.2,<4.2.1", "symfony/framework-bundle": ">=2,<2.3.18|>=2.4,<2.4.8|>=2.5,<2.5.2|>=2.7,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7|>=5.3.14,<=5.3.14|>=5.4.3,<=5.4.3|>=6.0.3,<=6.0.3|= 6.0.3|= 5.4.3|= 5.3.14", "symfony/http-foundation": ">=2,<2.8.52|>=3,<3.4.35|>=4,<4.2.12|>=4.3,<4.3.8|>=4.4,<4.4.7|>=5,<5.0.7", - "symfony/http-kernel": ">=2,<2.8.52|>=3,<3.4.35|>=4,<4.2.12|>=4.3,<4.4.13|>=5,<5.1.5|>=5.2,<5.3.12", + "symfony/http-kernel": ">=2,<4.4.50|>=5,<5.4.20|>=6,<6.0.20|>=6.1,<6.1.12|>=6.2,<6.2.6", "symfony/intl": ">=2.7,<2.7.38|>=2.8,<2.8.31|>=3,<3.2.14|>=3.3,<3.3.13", "symfony/maker-bundle": ">=1.27,<1.29.2|>=1.30,<1.31.1", "symfony/mime": ">=4.3,<4.3.8", @@ -4141,13 +4791,13 @@ "symfony/proxy-manager-bridge": ">=2.7,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7", "symfony/routing": ">=2,<2.0.19", "symfony/security": ">=2,<2.7.51|>=2.8,<3.4.49|>=4,<4.4.24|>=5,<5.2.8", - "symfony/security-bundle": ">=2,<2.7.48|>=2.8,<2.8.41|>=3,<3.3.17|>=3.4,<3.4.11|>=4,<4.0.11|>=5.3,<5.3.12", + "symfony/security-bundle": ">=2,<4.4.50|>=5,<5.4.20|>=6,<6.0.20|>=6.1,<6.1.12|>=6.2,<6.2.6", "symfony/security-core": ">=2.4,<2.6.13|>=2.7,<2.7.9|>=2.7.30,<2.7.32|>=2.8,<3.4.49|>=4,<4.4.24|>=5,<5.2.9", "symfony/security-csrf": ">=2.4,<2.7.48|>=2.8,<2.8.41|>=3,<3.3.17|>=3.4,<3.4.11|>=4,<4.0.11", "symfony/security-guard": ">=2.8,<3.4.48|>=4,<4.4.23|>=5,<5.2.8", "symfony/security-http": ">=2.3,<2.3.41|>=2.4,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.2.12|>=4.3,<4.3.8|>=4.4,<4.4.7|>=5,<5.0.7|>=5.1,<5.2.8|>=5.3,<5.3.2", "symfony/serializer": ">=2,<2.0.11|>=4.1,<4.4.35|>=5,<5.3.12", - "symfony/symfony": ">=2,<3.4.49|>=4,<4.4.35|>=5,<5.3.12|>=5.3.14,<=5.3.14|>=5.4.3,<=5.4.3|>=6.0.3,<=6.0.3", + "symfony/symfony": ">=2,<4.4.50|>=5,<5.4.20|>=6,<6.0.20|>=6.1,<6.1.12|>=6.2,<6.2.6", "symfony/translation": ">=2,<2.0.17", "symfony/validator": ">=2,<2.0.24|>=2.1,<2.1.12|>=2.2,<2.2.5|>=2.3,<2.3.3", "symfony/var-exporter": ">=4.2,<4.2.12|>=4.3,<4.3.8", @@ -4156,25 +4806,29 @@ "t3/dce": ">=2.2,<2.6.2", "t3g/svg-sanitizer": "<1.0.3", "tastyigniter/tastyigniter": "<3.3", + "tcg/voyager": "<=1.4", "tecnickcom/tcpdf": "<6.2.22", "terminal42/contao-tablelookupwizard": "<3.3.5", "thelia/backoffice-default-template": ">=2.1,<2.1.2", "thelia/thelia": ">=2.1-beta.1,<2.1.3", "theonedemon/phpwhois": "<=4.2.5", "thinkcmf/thinkcmf": "<=5.1.7", - "thorsten/phpmyfaq": "<3.1.9", + "thorsten/phpmyfaq": "<3.2-beta.2", "tinymce/tinymce": "<5.10.7|>=6,<6.3.1", + "tinymighty/wiki-seo": "<1.2.2", "titon/framework": ">=0,<9.9.99", "tobiasbg/tablepress": "<= 2.0-RC1", - "topthink/framework": "<=6.0.13", - "topthink/think": "<=6.0.9", + "topthink/framework": "<6.0.14", + "topthink/think": "<=6.1.1", "topthink/thinkphp": "<=3.2.3", + "tpwd/ke_search": "<4.0.3|>=4.1,<4.6.6|>=5,<5.0.2", "tribalsystems/zenario": "<=9.3.57595", "truckersmp/phpwhois": "<=4.3.1", + "ttskch/pagination-service-provider": "<1", "twig/twig": "<1.44.7|>=2,<2.15.3|>=3,<3.4.3", - "typo3/cms": "<2.0.5|>=3,<3.0.3|>=6.2,<6.2.30|>=7,<7.6.32|>=8,<8.7.38|>=9,<9.5.29|>=10,<10.4.33|>=11,<11.5.20|>=12,<12.1.1", + "typo3/cms": "<2.0.5|>=3,<3.0.3|>=6.2,<6.2.30|>=7,<7.6.32|>=8,<8.7.38|>=9,<9.5.29|>=10,<10.4.35|>=11,<11.5.23|>=12,<12.2", "typo3/cms-backend": ">=7,<=7.6.50|>=8,<=8.7.39|>=9,<=9.5.24|>=10,<=10.4.13|>=11,<=11.1", - "typo3/cms-core": "<8.7.49|>=9,<9.5.38|>=10,<10.4.33|>=11,<11.5.20|>=12,<12.1.1", + "typo3/cms-core": "<8.7.51|>=9,<9.5.40|>=10,<10.4.36|>=11,<11.5.23|>=12,<12.2", "typo3/cms-form": ">=8,<=8.7.39|>=9,<=9.5.24|>=10,<=10.4.13|>=11,<=11.1", "typo3/flow": ">=1,<1.0.4|>=1.1,<1.1.1|>=2,<2.0.1|>=2.3,<2.3.16|>=3,<3.0.12|>=3.1,<3.1.10|>=3.2,<3.2.13|>=3.3,<3.3.13|>=4,<4.0.6", "typo3/html-sanitizer": ">=1,<1.5|>=2,<2.1.1", @@ -4186,21 +4840,31 @@ "unisharp/laravel-filemanager": "<=2.5.1", "userfrosting/userfrosting": ">=0.3.1,<4.6.3", "usmanhalalit/pixie": "<1.0.3|>=2,<2.0.2", + "uvdesk/community-skeleton": "<=1.1.1", "vanilla/safecurl": "<0.9.2", "verot/class.upload.php": "<=1.0.3|>=2,<=2.0.4", + "vova07/yii2-fileapi-widget": "<0.1.9", "vrana/adminer": "<4.8.1", "wallabag/tcpdf": "<6.2.22", + "wallabag/wallabag": "<2.5.4", "wanglelecc/laracms": "<=1.0.3", "web-auth/webauthn-framework": ">=3.3,<3.3.4", + "webbuilders-group/silverstripe-kapost-bridge": "<0.4", "webcoast/deferred-image-processing": "<1.0.2", + "webklex/laravel-imap": "<5.3", + "webklex/php-imap": "<5.3", + "webpa/webpa": "<3.1.2", "wikimedia/parsoid": "<0.12.2", "willdurand/js-translation-bundle": "<2.1.1", "wintercms/winter": "<1.0.475|>=1.1,<1.1.10|>=1.2,<1.2.1", "woocommerce/woocommerce": "<6.6", "wp-cli/wp-cli": "<2.5", - "wp-graphql/wp-graphql": "<0.3.5", + "wp-graphql/wp-graphql": "<=1.14.5", "wpanel/wpanel4-cms": "<=4.3.1", - "wwbn/avideo": "<=11.6", + "wpcloud/wp-stateless": "<3.2", + "wwbn/avideo": "<=12.4", + "xataface/xataface": "<3", + "xpressengine/xpressengine": "<3.0.15", "yeswiki/yeswiki": "<4.1", "yetiforce/yetiforce-crm": "<=6.4", "yidashi/yii2cmf": "<=2", @@ -4263,6 +4927,9 @@ } ], "description": "Prevents installation of composer packages with known security vulnerabilities: no API, simply require it", + "keywords": [ + "dev" + ], "support": { "issues": "https://github.com/Roave/SecurityAdvisories/issues", "source": "https://github.com/Roave/SecurityAdvisories/tree/latest" @@ -4277,7 +4944,7 @@ "type": "tidelift" } ], - "time": "2022-12-21T06:05:00+00:00" + "time": "2023-06-30T21:04:19+00:00" }, { "name": "sebastian/cli-parser", @@ -4579,16 +5246,16 @@ }, { "name": "sebastian/diff", - "version": "4.0.4", + "version": "4.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d" + "reference": "74be17022044ebaaecfdf0c5cd504fc9cd5a7131" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/74be17022044ebaaecfdf0c5cd504fc9cd5a7131", + "reference": "74be17022044ebaaecfdf0c5cd504fc9cd5a7131", "shasum": "" }, "require": { @@ -4633,7 +5300,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/diff/issues", - "source": "https://github.com/sebastianbergmann/diff/tree/4.0.4" + "source": "https://github.com/sebastianbergmann/diff/tree/4.0.5" }, "funding": [ { @@ -4641,20 +5308,20 @@ "type": "github" } ], - "time": "2020-10-26T13:10:38+00:00" + "time": "2023-05-07T05:35:17+00:00" }, { "name": "sebastian/environment", - "version": "5.1.4", + "version": "5.1.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7" + "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/1b5dff7bb151a4db11d49d90e5408e4e938270f7", - "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", + "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", "shasum": "" }, "require": { @@ -4696,7 +5363,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/environment/issues", - "source": "https://github.com/sebastianbergmann/environment/tree/5.1.4" + "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5" }, "funding": [ { @@ -4704,7 +5371,7 @@ "type": "github" } ], - "time": "2022-04-03T09:37:03+00:00" + "time": "2023-02-03T06:03:51+00:00" }, { "name": "sebastian/exporter", @@ -5018,16 +5685,16 @@ }, { "name": "sebastian/recursion-context", - "version": "4.0.4", + "version": "4.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172" + "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cd9d8cf3c5804de4341c283ed787f099f5506172", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", + "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", "shasum": "" }, "require": { @@ -5066,10 +5733,10 @@ } ], "description": "Provides functionality to recursively process PHP variables", - "homepage": "http://www.github.com/sebastianbergmann/recursion-context", + "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.4" + "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.5" }, "funding": [ { @@ -5077,7 +5744,7 @@ "type": "github" } ], - "time": "2020-10-26T13:17:30+00:00" + "time": "2023-02-03T06:07:39+00:00" }, { "name": "sebastian/resource-operations", @@ -5136,16 +5803,16 @@ }, { "name": "sebastian/type", - "version": "3.2.0", + "version": "3.2.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/type.git", - "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e" + "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", - "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", + "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", "shasum": "" }, "require": { @@ -5180,7 +5847,7 @@ "homepage": "https://github.com/sebastianbergmann/type", "support": { "issues": "https://github.com/sebastianbergmann/type/issues", - "source": "https://github.com/sebastianbergmann/type/tree/3.2.0" + "source": "https://github.com/sebastianbergmann/type/tree/3.2.1" }, "funding": [ { @@ -5188,7 +5855,7 @@ "type": "github" } ], - "time": "2022-09-12T14:47:03+00:00" + "time": "2023-02-03T06:13:03+00:00" }, { "name": "sebastian/version", @@ -5301,16 +5968,16 @@ }, { "name": "swoole/ide-helper", - "version": "5.0.1", + "version": "5.0.3", "source": { "type": "git", "url": "https://github.com/swoole/ide-helper.git", - "reference": "f9cdf7bfb70ef3a8a2b8e9eb14ce3d09c02524fa" + "reference": "4b6e615cb27c251b6248b8bd9501edbd02a45c18" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/swoole/ide-helper/zipball/f9cdf7bfb70ef3a8a2b8e9eb14ce3d09c02524fa", - "reference": "f9cdf7bfb70ef3a8a2b8e9eb14ce3d09c02524fa", + "url": "https://api.github.com/repos/swoole/ide-helper/zipball/4b6e615cb27c251b6248b8bd9501edbd02a45c18", + "reference": "4b6e615cb27c251b6248b8bd9501edbd02a45c18", "shasum": "" }, "type": "library", @@ -5327,38 +5994,29 @@ "description": "IDE help files for Swoole.", "support": { "issues": "https://github.com/swoole/ide-helper/issues", - "source": "https://github.com/swoole/ide-helper/tree/5.0.1" + "source": "https://github.com/swoole/ide-helper/tree/5.0.3" }, - "funding": [ - { - "url": "https://gitee.com/swoole/swoole?donate=true", - "type": "custom" - }, - { - "url": "https://github.com/swoole", - "type": "github" - } - ], - "time": "2022-11-08T07:13:40+00:00" + "time": "2023-04-28T22:20:18+00:00" }, { "name": "symfony/console", - "version": "v6.0.16", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "be294423f337dda97c810733138c0caec1bb0575" + "reference": "8788808b07cf0bdd6e4b7fdd23d8ddb1470c83b7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/be294423f337dda97c810733138c0caec1bb0575", - "reference": "be294423f337dda97c810733138c0caec1bb0575", + "url": "https://api.github.com/repos/symfony/console/zipball/8788808b07cf0bdd6e4b7fdd23d8ddb1470c83b7", + "reference": "8788808b07cf0bdd6e4b7fdd23d8ddb1470c83b7", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.0", - "symfony/service-contracts": "^1.1|^2|^3", + "symfony/service-contracts": "^2.5|^3", "symfony/string": "^5.4|^6.0" }, "conflict": { @@ -5380,12 +6038,6 @@ "symfony/process": "^5.4|^6.0", "symfony/var-dumper": "^5.4|^6.0" }, - "suggest": { - "psr/log": "For using the console logger", - "symfony/event-dispatcher": "", - "symfony/lock": "", - "symfony/process": "" - }, "type": "library", "autoload": { "psr-4": { @@ -5413,12 +6065,12 @@ "homepage": "https://symfony.com", "keywords": [ "cli", - "command line", + "command-line", "console", "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v6.0.16" + "source": "https://github.com/symfony/console/tree/v6.3.0" }, "funding": [ { @@ -5434,28 +6086,29 @@ "type": "tidelift" } ], - "time": "2022-11-25T18:58:46+00:00" + "time": "2023-05-29T12:49:39+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v6.0.9", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "5c85b58422865d42c6eb46f7693339056db098a8" + "reference": "3af8ac1a3f98f6dbc55e10ae59c9e44bfc38dfaa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/5c85b58422865d42c6eb46f7693339056db098a8", - "reference": "5c85b58422865d42c6eb46f7693339056db098a8", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/3af8ac1a3f98f6dbc55e10ae59c9e44bfc38dfaa", + "reference": "3af8ac1a3f98f6dbc55e10ae59c9e44bfc38dfaa", "shasum": "" }, "require": { - "php": ">=8.0.2", - "symfony/event-dispatcher-contracts": "^2|^3" + "php": ">=8.1", + "symfony/event-dispatcher-contracts": "^2.5|^3" }, "conflict": { - "symfony/dependency-injection": "<5.4" + "symfony/dependency-injection": "<5.4", + "symfony/service-contracts": "<2.5" }, "provide": { "psr/event-dispatcher-implementation": "1.0", @@ -5468,13 +6121,9 @@ "symfony/error-handler": "^5.4|^6.0", "symfony/expression-language": "^5.4|^6.0", "symfony/http-foundation": "^5.4|^6.0", - "symfony/service-contracts": "^1.1|^2|^3", + "symfony/service-contracts": "^2.5|^3", "symfony/stopwatch": "^5.4|^6.0" }, - "suggest": { - "symfony/dependency-injection": "", - "symfony/http-kernel": "" - }, "type": "library", "autoload": { "psr-4": { @@ -5501,7 +6150,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.0.9" + "source": "https://github.com/symfony/event-dispatcher/tree/v6.3.0" }, "funding": [ { @@ -5517,33 +6166,30 @@ "type": "tidelift" } ], - "time": "2022-05-05T16:45:52+00:00" + "time": "2023-04-21T14:41:17+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v3.0.2", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "7bc61cc2db649b4637d331240c5346dcc7708051" + "reference": "a76aed96a42d2b521153fb382d418e30d18b59df" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/7bc61cc2db649b4637d331240c5346dcc7708051", - "reference": "7bc61cc2db649b4637d331240c5346dcc7708051", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/a76aed96a42d2b521153fb382d418e30d18b59df", + "reference": "a76aed96a42d2b521153fb382d418e30d18b59df", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "psr/event-dispatcher": "^1" }, - "suggest": { - "symfony/event-dispatcher-implementation": "" - }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -5580,7 +6226,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.0.2" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.3.0" }, "funding": [ { @@ -5596,24 +6242,24 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:55:41+00:00" + "time": "2023-05-23T14:45:45+00:00" }, { "name": "symfony/filesystem", - "version": "v6.0.13", + "version": "v6.3.1", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "3adca49133bd055ebe6011ed1e012be3c908af79" + "reference": "edd36776956f2a6fcf577edb5b05eb0e3bdc52ae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/3adca49133bd055ebe6011ed1e012be3c908af79", - "reference": "3adca49133bd055ebe6011ed1e012be3c908af79", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/edd36776956f2a6fcf577edb5b05eb0e3bdc52ae", + "reference": "edd36776956f2a6fcf577edb5b05eb0e3bdc52ae", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-mbstring": "~1.8" }, @@ -5643,7 +6289,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v6.0.13" + "source": "https://github.com/symfony/filesystem/tree/v6.3.1" }, "funding": [ { @@ -5659,24 +6305,27 @@ "type": "tidelift" } ], - "time": "2022-09-21T20:25:27+00:00" + "time": "2023-06-01T08:30:39+00:00" }, { "name": "symfony/finder", - "version": "v6.0.11", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "09cb683ba5720385ea6966e5e06be2a34f2568b1" + "reference": "d9b01ba073c44cef617c7907ce2419f8d00d75e2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/09cb683ba5720385ea6966e5e06be2a34f2568b1", - "reference": "09cb683ba5720385ea6966e5e06be2a34f2568b1", + "url": "https://api.github.com/repos/symfony/finder/zipball/d9b01ba073c44cef617c7907ce2419f8d00d75e2", + "reference": "d9b01ba073c44cef617c7907ce2419f8d00d75e2", "shasum": "" }, "require": { - "php": ">=8.0.2" + "php": ">=8.1" + }, + "require-dev": { + "symfony/filesystem": "^6.0" }, "type": "library", "autoload": { @@ -5704,7 +6353,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v6.0.11" + "source": "https://github.com/symfony/finder/tree/v6.3.0" }, "funding": [ { @@ -5720,25 +6369,25 @@ "type": "tidelift" } ], - "time": "2022-07-29T07:39:48+00:00" + "time": "2023-04-02T01:25:41+00:00" }, { "name": "symfony/options-resolver", - "version": "v6.0.3", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "51f7006670febe4cbcbae177cbffe93ff833250d" + "reference": "a10f19f5198d589d5c33333cffe98dc9820332dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/51f7006670febe4cbcbae177cbffe93ff833250d", - "reference": "51f7006670febe4cbcbae177cbffe93ff833250d", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/a10f19f5198d589d5c33333cffe98dc9820332dd", + "reference": "a10f19f5198d589d5c33333cffe98dc9820332dd", "shasum": "" }, "require": { - "php": ">=8.0.2", - "symfony/deprecation-contracts": "^2.1|^3" + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3" }, "type": "library", "autoload": { @@ -5771,7 +6420,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v6.0.3" + "source": "https://github.com/symfony/options-resolver/tree/v6.3.0" }, "funding": [ { @@ -5787,7 +6436,7 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:55:41+00:00" + "time": "2023-05-12T14:21:09+00:00" }, { "name": "symfony/polyfill-ctype", @@ -6283,20 +6932,20 @@ }, { "name": "symfony/process", - "version": "v6.0.11", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "44270a08ccb664143dede554ff1c00aaa2247a43" + "reference": "8741e3ed7fe2e91ec099e02446fb86667a0f1628" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/44270a08ccb664143dede554ff1c00aaa2247a43", - "reference": "44270a08ccb664143dede554ff1c00aaa2247a43", + "url": "https://api.github.com/repos/symfony/process/zipball/8741e3ed7fe2e91ec099e02446fb86667a0f1628", + "reference": "8741e3ed7fe2e91ec099e02446fb86667a0f1628", "shasum": "" }, "require": { - "php": ">=8.0.2" + "php": ">=8.1" }, "type": "library", "autoload": { @@ -6324,7 +6973,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v6.0.11" + "source": "https://github.com/symfony/process/tree/v6.3.0" }, "funding": [ { @@ -6340,36 +6989,33 @@ "type": "tidelift" } ], - "time": "2022-06-27T17:10:44+00:00" + "time": "2023-05-19T08:06:44+00:00" }, { "name": "symfony/service-contracts", - "version": "v3.0.2", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "d78d39c1599bd1188b8e26bb341da52c3c6d8a66" + "reference": "40da9cc13ec349d9e4966ce18b5fbcd724ab10a4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d78d39c1599bd1188b8e26bb341da52c3c6d8a66", - "reference": "d78d39c1599bd1188b8e26bb341da52c3c6d8a66", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/40da9cc13ec349d9e4966ce18b5fbcd724ab10a4", + "reference": "40da9cc13ec349d9e4966ce18b5fbcd724ab10a4", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "psr/container": "^2.0" }, "conflict": { "ext-psr": "<1.1|>=2" }, - "suggest": { - "symfony/service-implementation": "" - }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -6379,7 +7025,10 @@ "autoload": { "psr-4": { "Symfony\\Contracts\\Service\\": "" - } + }, + "exclude-from-classmap": [ + "/Test/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -6406,7 +7055,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.0.2" + "source": "https://github.com/symfony/service-contracts/tree/v3.3.0" }, "funding": [ { @@ -6422,25 +7071,25 @@ "type": "tidelift" } ], - "time": "2022-05-30T19:17:58+00:00" + "time": "2023-05-23T14:45:45+00:00" }, { "name": "symfony/stopwatch", - "version": "v6.0.13", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "7554fde6848af5ef1178f8ccbdbdb8ae1092c70a" + "reference": "fc47f1015ec80927ff64ba9094dfe8b9d48fe9f2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/7554fde6848af5ef1178f8ccbdbdb8ae1092c70a", - "reference": "7554fde6848af5ef1178f8ccbdbdb8ae1092c70a", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/fc47f1015ec80927ff64ba9094dfe8b9d48fe9f2", + "reference": "fc47f1015ec80927ff64ba9094dfe8b9d48fe9f2", "shasum": "" }, "require": { - "php": ">=8.0.2", - "symfony/service-contracts": "^1|^2|^3" + "php": ">=8.1", + "symfony/service-contracts": "^2.5|^3" }, "type": "library", "autoload": { @@ -6468,7 +7117,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v6.0.13" + "source": "https://github.com/symfony/stopwatch/tree/v6.3.0" }, "funding": [ { @@ -6484,36 +7133,37 @@ "type": "tidelift" } ], - "time": "2022-09-28T15:52:47+00:00" + "time": "2023-02-16T10:14:28+00:00" }, { "name": "symfony/string", - "version": "v6.0.15", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "51ac0fa0ccf132a00519b87c97e8f775fa14e771" + "reference": "f2e190ee75ff0f5eced645ec0be5c66fac81f51f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/51ac0fa0ccf132a00519b87c97e8f775fa14e771", - "reference": "51ac0fa0ccf132a00519b87c97e8f775fa14e771", + "url": "https://api.github.com/repos/symfony/string/zipball/f2e190ee75ff0f5eced645ec0be5c66fac81f51f", + "reference": "f2e190ee75ff0f5eced645ec0be5c66fac81f51f", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-intl-grapheme": "~1.0", "symfony/polyfill-intl-normalizer": "~1.0", "symfony/polyfill-mbstring": "~1.0" }, "conflict": { - "symfony/translation-contracts": "<2.0" + "symfony/translation-contracts": "<2.5" }, "require-dev": { "symfony/error-handler": "^5.4|^6.0", "symfony/http-client": "^5.4|^6.0", - "symfony/translation-contracts": "^2.0|^3.0", + "symfony/intl": "^6.2", + "symfony/translation-contracts": "^2.5|^3.0", "symfony/var-exporter": "^5.4|^6.0" }, "type": "library", @@ -6553,7 +7203,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.0.15" + "source": "https://github.com/symfony/string/tree/v6.3.0" }, "funding": [ { @@ -6569,32 +7219,34 @@ "type": "tidelift" } ], - "time": "2022-10-10T09:34:08+00:00" + "time": "2023-03-21T21:06:29+00:00" }, { "name": "symfony/translation", - "version": "v6.0.14", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "6f99eb179aee4652c0a7cd7c11f2a870d904330c" + "reference": "f72b2cba8f79dd9d536f534f76874b58ad37876f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/6f99eb179aee4652c0a7cd7c11f2a870d904330c", - "reference": "6f99eb179aee4652c0a7cd7c11f2a870d904330c", + "url": "https://api.github.com/repos/symfony/translation/zipball/f72b2cba8f79dd9d536f534f76874b58ad37876f", + "reference": "f72b2cba8f79dd9d536f534f76874b58ad37876f", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "symfony/polyfill-mbstring": "~1.0", - "symfony/translation-contracts": "^2.3|^3.0" + "symfony/translation-contracts": "^2.5|^3.0" }, "conflict": { "symfony/config": "<5.4", "symfony/console": "<5.4", "symfony/dependency-injection": "<5.4", + "symfony/http-client-contracts": "<2.5", "symfony/http-kernel": "<5.4", + "symfony/service-contracts": "<2.5", "symfony/twig-bundle": "<5.4", "symfony/yaml": "<5.4" }, @@ -6602,23 +7254,20 @@ "symfony/translation-implementation": "2.3|3.0" }, "require-dev": { + "nikic/php-parser": "^4.13", "psr/log": "^1|^2|^3", "symfony/config": "^5.4|^6.0", "symfony/console": "^5.4|^6.0", "symfony/dependency-injection": "^5.4|^6.0", "symfony/finder": "^5.4|^6.0", - "symfony/http-client-contracts": "^1.1|^2.0|^3.0", + "symfony/http-client-contracts": "^2.5|^3.0", "symfony/http-kernel": "^5.4|^6.0", "symfony/intl": "^5.4|^6.0", "symfony/polyfill-intl-icu": "^1.21", - "symfony/service-contracts": "^1.1.2|^2|^3", + "symfony/routing": "^5.4|^6.0", + "symfony/service-contracts": "^2.5|^3", "symfony/yaml": "^5.4|^6.0" }, - "suggest": { - "psr/log-implementation": "To use logging capability in translator", - "symfony/config": "", - "symfony/yaml": "" - }, "type": "library", "autoload": { "files": [ @@ -6648,7 +7297,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v6.0.14" + "source": "https://github.com/symfony/translation/tree/v6.3.0" }, "funding": [ { @@ -6664,32 +7313,29 @@ "type": "tidelift" } ], - "time": "2022-10-07T08:02:12+00:00" + "time": "2023-05-19T12:46:45+00:00" }, { "name": "symfony/translation-contracts", - "version": "v3.0.2", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "acbfbb274e730e5a0236f619b6168d9dedb3e282" + "reference": "02c24deb352fb0d79db5486c0c79905a85e37e86" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/acbfbb274e730e5a0236f619b6168d9dedb3e282", - "reference": "acbfbb274e730e5a0236f619b6168d9dedb3e282", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/02c24deb352fb0d79db5486c0c79905a85e37e86", + "reference": "02c24deb352fb0d79db5486c0c79905a85e37e86", "shasum": "" }, "require": { - "php": ">=8.0.2" - }, - "suggest": { - "symfony/translation-implementation": "" + "php": ">=8.1" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -6699,7 +7345,10 @@ "autoload": { "psr-4": { "Symfony\\Contracts\\Translation\\": "" - } + }, + "exclude-from-classmap": [ + "/Test/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -6726,7 +7375,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/translation-contracts/tree/v3.0.2" + "source": "https://github.com/symfony/translation-contracts/tree/v3.3.0" }, "funding": [ { @@ -6742,7 +7391,7 @@ "type": "tidelift" } ], - "time": "2022-06-27T17:10:44+00:00" + "time": "2023-05-30T17:17:10+00:00" }, { "name": "theseer/tokenizer", diff --git a/publish/metric.php b/publish/metric.php index 0cbf22fb9..754e7ffa2 100644 --- a/publish/metric.php +++ b/publish/metric.php @@ -9,26 +9,13 @@ * @contact @PicPay * @license https://github.com/PicPay/hyperf-metric/blob/main/LICENSE */ -use Hyperf\Metric\Adapter\Prometheus\Constants; - return [ // To disable hyperf/metric temporarily, set default driver to noop. - 'default' => env('METRIC_DRIVER', 'prometheus'), - 'use_standalone_process' => env('METRIC_USE_STANDALONE_PROCESS', true), + 'default' => env('METRIC_DRIVER', 'statsd'), + 'use_standalone_process' => env('METRIC_USE_STANDALONE_PROCESS', false), 'enable_default_metric' => env('METRIC_ENABLE_DEFAULT_METRIC', true), 'default_metric_interval' => env('DEFAULT_METRIC_INTERVAL', 5), 'metric' => [ - 'prometheus' => [ - 'driver' => Hyperf\Metric\Adapter\Prometheus\MetricFactory::class, - 'mode' => Constants::SCRAPE_MODE, - 'namespace' => env('APP_NAME', 'skeleton'), - 'scrape_host' => env('PROMETHEUS_SCRAPE_HOST', '0.0.0.0'), - 'scrape_port' => env('PROMETHEUS_SCRAPE_PORT', '9502'), - 'scrape_path' => env('PROMETHEUS_SCRAPE_PATH', '/metrics'), - 'push_host' => env('PROMETHEUS_PUSH_HOST', '0.0.0.0'), - 'push_port' => env('PROMETHEUS_PUSH_PORT', '9091'), - 'push_interval' => env('PROMETHEUS_PUSH_INTERVAL', 5), - ], 'statsd' => [ 'driver' => Hyperf\Metric\Adapter\StatsD\MetricFactory::class, 'namespace' => env('APP_NAME', 'skeleton'), @@ -40,17 +27,6 @@ 'push_interval' => env('STATSD_PUSH_INTERVAL', 5), 'sample_rate' => env('STATSD_SAMPLE_RATE', 1.0), ], - 'influxdb' => [ - 'driver' => Hyperf\Metric\Adapter\InfluxDB\MetricFactory::class, - 'namespace' => env('APP_NAME', 'skeleton'), - 'host' => env('INFLUXDB_HOST', '127.0.0.1'), - 'port' => env('INFLUXDB_PORT', '8086'), - 'username' => env('INFLUXDB_USERNAME', ''), - 'password' => env('INFLUXDB_PASSWORD', ''), - 'dbname' => env('INFLUXDB_DBNAME', true), - 'push_interval' => env('INFLUXDB_PUSH_INTERVAL', 5), - 'auto_create_db' => env('INFLUXDB_AUTO_CREATE_DB', true), - ], 'noop' => [ 'driver' => Hyperf\Metric\Adapter\NoOp\MetricFactory::class, ], diff --git a/src/Adapter/InfluxDB/MetricFactory.php b/src/Adapter/InfluxDB/MetricFactory.php index 290b1791f..fdace252f 100644 --- a/src/Adapter/InfluxDB/MetricFactory.php +++ b/src/Adapter/InfluxDB/MetricFactory.php @@ -12,6 +12,8 @@ namespace Hyperf\Metric\Adapter\InfluxDB; use Hyperf\Contract\ConfigInterface; +use Hyperf\Coordinator\Constants; +use Hyperf\Coordinator\CoordinatorManager; use Hyperf\Guzzle\ClientFactory as GuzzleClientFactory; use Hyperf\Metric\Adapter\Prometheus\Counter; use Hyperf\Metric\Adapter\Prometheus\Gauge; @@ -20,8 +22,6 @@ use Hyperf\Metric\Contract\GaugeInterface; use Hyperf\Metric\Contract\HistogramInterface; use Hyperf\Metric\Contract\MetricFactoryInterface; -use Hyperf\Coordinator\Constants; -use Hyperf\Coordinator\CoordinatorManager; use Hyperf\Utils\Str; use InfluxDB\Client; use InfluxDB\Database; diff --git a/src/Adapter/NoOp/MetricFactory.php b/src/Adapter/NoOp/MetricFactory.php index b93611ed5..d0b9face0 100644 --- a/src/Adapter/NoOp/MetricFactory.php +++ b/src/Adapter/NoOp/MetricFactory.php @@ -12,12 +12,12 @@ namespace Hyperf\Metric\Adapter\NoOp; use Hyperf\Contract\ConfigInterface; +use Hyperf\Coordinator\Constants; +use Hyperf\Coordinator\CoordinatorManager; use Hyperf\Metric\Contract\CounterInterface; use Hyperf\Metric\Contract\GaugeInterface; use Hyperf\Metric\Contract\HistogramInterface; use Hyperf\Metric\Contract\MetricFactoryInterface; -use Hyperf\Coordinator\Constants; -use Hyperf\Coordinator\CoordinatorManager; class MetricFactory implements MetricFactoryInterface { diff --git a/src/Adapter/Prometheus/MetricFactory.php b/src/Adapter/Prometheus/MetricFactory.php index 49ad99aa3..2cb443ea1 100644 --- a/src/Adapter/Prometheus/MetricFactory.php +++ b/src/Adapter/Prometheus/MetricFactory.php @@ -13,6 +13,7 @@ use Hyperf\Contract\ConfigInterface; use Hyperf\Contract\StdoutLoggerInterface; +use Hyperf\Coordinator\CoordinatorManager; use Hyperf\Guzzle\ClientFactory as GuzzleClientFactory; use Hyperf\Metric\Contract\CounterInterface; use Hyperf\Metric\Contract\GaugeInterface; @@ -22,7 +23,6 @@ use Hyperf\Metric\Exception\RuntimeException; use Hyperf\Metric\MetricFactoryPicker; use Hyperf\Utils\Coordinator\Constants as Coord; -use Hyperf\Coordinator\CoordinatorManager; use Hyperf\Utils\Coroutine; use Hyperf\Utils\Network; use Hyperf\Utils\Str; diff --git a/src/Adapter/StatsD/Connection.php b/src/Adapter/StatsD/Connection.php index a0b2f6f0c..89021451d 100644 --- a/src/Adapter/StatsD/Connection.php +++ b/src/Adapter/StatsD/Connection.php @@ -1,7 +1,14 @@ arguments['keys']['options']; + + if (isset($options['no_aspect']) && $options['no_aspect'] === true) { + return $proceedingJoinPoint->process(); + } + + /** @var Client $instance */ + /** @var Uri $base_uri */ + $instance = $proceedingJoinPoint->getInstance(); + $base_uri = $instance->getConfig('base_uri'); + + $arguments = $proceedingJoinPoint->arguments; + $method = strtoupper($arguments['keys']['method'] ?? ''); + $uri = $arguments['keys']['uri'] ?? ''; + $host = $base_uri === null ? (parse_url($uri, PHP_URL_HOST) ?? '') : $base_uri->getHost(); + + $labels = [ + 'uri' => SupportUri::sanitize($uri), + 'host' => $host, + 'method' => $method, + 'http_status_code' => '200', + ]; + + $timer = new Timer('http_client_requests', $labels); + + /** @var PromiseInterface $result */ + $result = $proceedingJoinPoint->process(); + + $result->then( + $this->onFullFilled($timer, $labels), + $this->onRejected($timer, $labels) + ); + + return $result; + } + + private function onFullFilled(Timer $timer, array $labels): callable + { + return function (ResponseInterface $response) use ($timer, $labels) { + $labels['http_status_code'] = (string) $response->getStatusCode(); + $timer->end($labels); + }; + } + + private function onRejected(Timer $timer, array $labels): callable + { + return function (RequestException $exception) use ($timer, $labels) { + $labels['http_status_code'] = (string) $exception->getResponse()->getStatusCode(); + $timer->end($labels); + + return Create::rejectionFor($exception); + }; + } +} diff --git a/src/Aspect/MongoCollectionMetricAspect.php b/src/Aspect/MongoCollectionMetricAspect.php new file mode 100644 index 000000000..247672317 --- /dev/null +++ b/src/Aspect/MongoCollectionMetricAspect.php @@ -0,0 +1,60 @@ +methodName, $this->ignoredMethods)) { + return $proceedingJoinPoint->process(); + } + + $collectionName = $this->getCollectionName($proceedingJoinPoint); + $method = $proceedingJoinPoint->methodName; + + $timer = new Timer('database_queries', [ + 'system' => 'mongodb', + 'operation' => sprintf('MongoDB %s %s', $collectionName, $method), + ]); + + $result = $proceedingJoinPoint->process(); + $timer->end(); + + return $result; + } + + private function getCollectionName(ProceedingJoinPoint $proceedingJoinPoint): string + { + $collection = $proceedingJoinPoint->getInstance(); + + $property = new ReflectionProperty('Hyperf\GoTask\MongoClient\Collection', 'collection'); + $property->setAccessible(true); + + return $property->getValue($collection); + } +} diff --git a/src/Aspect/RedisMetricAspect.php b/src/Aspect/RedisMetricAspect.php new file mode 100644 index 000000000..dcac71f3a --- /dev/null +++ b/src/Aspect/RedisMetricAspect.php @@ -0,0 +1,37 @@ +arguments['keys']; + + $timer = new Timer('database_queries', [ + 'system' => 'redis', + 'operation' => sprintf('Redis %s', $arguments['name']), + ]); + + $result = $proceedingJoinPoint->process(); + $timer->end(); + + return $result; + } +} diff --git a/src/ConfigProvider.php b/src/ConfigProvider.php index 0ce2392e2..b5de2e63c 100644 --- a/src/ConfigProvider.php +++ b/src/ConfigProvider.php @@ -15,11 +15,16 @@ use Hyperf\Metric\Adapter\StatsD\Connection as StatsDConnection; use Hyperf\Metric\Aspect\CounterAnnotationAspect; use Hyperf\Metric\Aspect\HistogramAnnotationAspect; +use Hyperf\Metric\Aspect\HttpClientMetricAspect; +use Hyperf\Metric\Aspect\MongoCollectionMetricAspect; +use Hyperf\Metric\Aspect\RedisMetricAspect; use Hyperf\Metric\Contract\MetricFactoryInterface; +use Hyperf\Metric\Listener\DbQueryExecutedMetricListener; use Hyperf\Metric\Listener\OnBeforeHandle; use Hyperf\Metric\Listener\OnMetricFactoryReady; use Hyperf\Metric\Listener\OnPipeMessage; use Hyperf\Metric\Listener\OnWorkerStart; +use Hyperf\Metric\Middleware\MetricMiddleware; use Hyperf\Metric\Process\MetricProcess; use InfluxDB\Driver\DriverInterface; use InfluxDB\Driver\Guzzle; @@ -31,6 +36,14 @@ class ConfigProvider public function __invoke(): array { return [ + 'publish' => [ + [ + 'id' => 'config', + 'description' => 'The config for metric component.', + 'source' => __DIR__ . '/../publish/metric.php', + 'destination' => BASE_PATH . '/config/autoload/metric.php', + ], + ], 'dependencies' => [ MetricFactoryInterface::class => MetricFactoryPicker::class, Adapter::class => InMemory::class, @@ -40,16 +53,15 @@ public function __invoke(): array 'aspects' => [ CounterAnnotationAspect::class, HistogramAnnotationAspect::class, + HttpClientMetricAspect::class, + MongoCollectionMetricAspect::class, + RedisMetricAspect::class, ], - 'publish' => [ - [ - 'id' => 'config', - 'description' => 'The config for metric component.', - 'source' => __DIR__ . '/../publish/metric.php', - 'destination' => BASE_PATH . '/config/autoload/metric.php', - ], + 'middlewares' => [ + MetricMiddleware::class, ], 'listeners' => [ + DbQueryExecutedMetricListener::class, OnPipeMessage::class, OnMetricFactoryReady::class, OnBeforeHandle::class, diff --git a/src/Listener/DbQueryExecutedMetricListener.php b/src/Listener/DbQueryExecutedMetricListener.php new file mode 100644 index 000000000..575f1e0d5 --- /dev/null +++ b/src/Listener/DbQueryExecutedMetricListener.php @@ -0,0 +1,42 @@ + 'mysql', + 'operation' => $event->sql, + ]; + + $histogram = make(MetricFactoryInterface::class) + ->makeHistogram('database_queries', array_keys($labels)) + ->with(...array_values($labels)); + + $histogram->put($event->time); + } +} diff --git a/src/Listener/OnBeforeHandle.php b/src/Listener/OnBeforeHandle.php index 7683e855c..1cf87b58d 100644 --- a/src/Listener/OnBeforeHandle.php +++ b/src/Listener/OnBeforeHandle.php @@ -15,13 +15,13 @@ use Hyperf\Command\Event\BeforeHandle; use Hyperf\Contract\ConfigInterface; use Hyperf\Contract\StdoutLoggerInterface; +use Hyperf\Coordinator\Constants; +use Hyperf\Coordinator\CoordinatorManager; use Hyperf\Event\Contract\ListenerInterface; use Hyperf\Metric\Contract\MetricFactoryInterface; use Hyperf\Metric\Event\MetricFactoryReady; use Hyperf\Metric\MetricFactoryPicker; use Hyperf\Metric\MetricSetter; -use Hyperf\Coordinator\Constants; -use Hyperf\Coordinator\CoordinatorManager; use Hyperf\Utils\Coroutine; use Psr\Container\ContainerInterface; use Psr\EventDispatcher\EventDispatcherInterface; diff --git a/src/Listener/OnMetricFactoryReady.php b/src/Listener/OnMetricFactoryReady.php index 21c3a6eaa..d8950e281 100644 --- a/src/Listener/OnMetricFactoryReady.php +++ b/src/Listener/OnMetricFactoryReady.php @@ -12,13 +12,13 @@ namespace Hyperf\Metric\Listener; use Hyperf\Contract\ConfigInterface; +use Hyperf\Coordinator\Constants; +use Hyperf\Coordinator\CoordinatorManager; use Hyperf\Event\Contract\ListenerInterface; use Hyperf\Metric\Contract\MetricFactoryInterface; use Hyperf\Metric\Event\MetricFactoryReady; use Hyperf\Metric\MetricFactoryPicker; use Hyperf\Metric\MetricSetter; -use Hyperf\Coordinator\Constants; -use Hyperf\Coordinator\CoordinatorManager; use Psr\Container\ContainerInterface; use Swoole\Coroutine; use Swoole\Server; diff --git a/src/Listener/OnWorkerStart.php b/src/Listener/OnWorkerStart.php index 7c5e4a5df..eeff3c842 100644 --- a/src/Listener/OnWorkerStart.php +++ b/src/Listener/OnWorkerStart.php @@ -12,13 +12,13 @@ namespace Hyperf\Metric\Listener; use Hyperf\Contract\ConfigInterface; +use Hyperf\Coordinator\Constants; +use Hyperf\Coordinator\CoordinatorManager; use Hyperf\Event\Contract\ListenerInterface; use Hyperf\Framework\Event\BeforeWorkerStart; use Hyperf\Metric\Contract\MetricFactoryInterface; use Hyperf\Metric\Event\MetricFactoryReady; use Hyperf\Metric\MetricSetter; -use Hyperf\Coordinator\Constants; -use Hyperf\Coordinator\CoordinatorManager; use Hyperf\Utils\Coroutine; use Psr\Container\ContainerInterface; use Psr\EventDispatcher\EventDispatcherInterface; diff --git a/src/Listener/PoolWatcher.php b/src/Listener/PoolWatcher.php index 0c35ac2d0..082eccfea 100644 --- a/src/Listener/PoolWatcher.php +++ b/src/Listener/PoolWatcher.php @@ -12,11 +12,11 @@ namespace Hyperf\Metric\Listener; use Hyperf\Contract\ConfigInterface; +use Hyperf\Coordinator\Constants; +use Hyperf\Coordinator\CoordinatorManager; use Hyperf\Framework\Event\BeforeWorkerStart; use Hyperf\Metric\Contract\MetricFactoryInterface; use Hyperf\Pool\Pool; -use Hyperf\Coordinator\Constants; -use Hyperf\Coordinator\CoordinatorManager; use Hyperf\Utils\Coroutine; use Psr\Container\ContainerInterface; use Swoole\Timer; diff --git a/src/Listener/QueueWatcher.php b/src/Listener/QueueWatcher.php index 590c83bf1..16354537e 100644 --- a/src/Listener/QueueWatcher.php +++ b/src/Listener/QueueWatcher.php @@ -13,10 +13,10 @@ use Hyperf\AsyncQueue\Driver\DriverFactory; use Hyperf\Contract\ConfigInterface; -use Hyperf\Event\Contract\ListenerInterface; -use Hyperf\Metric\Event\MetricFactoryReady; use Hyperf\Coordinator\Constants; use Hyperf\Coordinator\CoordinatorManager; +use Hyperf\Event\Contract\ListenerInterface; +use Hyperf\Metric\Event\MetricFactoryReady; use Hyperf\Utils\Coroutine; use Psr\Container\ContainerInterface; use Swoole\Timer; diff --git a/src/MetricFactoryPicker.php b/src/MetricFactoryPicker.php index fc83366ff..c1e4cee86 100644 --- a/src/MetricFactoryPicker.php +++ b/src/MetricFactoryPicker.php @@ -37,12 +37,12 @@ public function __invoke(ContainerInterface $container) $useStandaloneProcess = $config->get('metric.use_standalone_process', true); // misconfiguration. - if ($useStandaloneProcess && ! static::$isCommand && empty(ProcessCollector::all())) { + if ($useStandaloneProcess && ! self::$isCommand && empty(ProcessCollector::all())) { return $container->get(Adapter\NoOp\MetricFactory::class); } // Return a proxy object for workers if user wants to use a dedicated metric process. - if ($useStandaloneProcess && ! static::$inMetricProcess && ! static::$isCommand) { + if ($useStandaloneProcess && ! self::$inMetricProcess && ! self::$isCommand) { return $container->get(RemoteFactory::class); } diff --git a/src/Middleware/MetricMiddleware.php b/src/Middleware/MetricMiddleware.php index b2935046e..70462da33 100644 --- a/src/Middleware/MetricMiddleware.php +++ b/src/Middleware/MetricMiddleware.php @@ -12,11 +12,13 @@ namespace Hyperf\Metric\Middleware; use Hyperf\HttpServer\Router\Dispatched; +use Hyperf\Metric\Support\Uri; use Hyperf\Metric\Timer; use Psr\Http\Message\ResponseInterface; use Psr\Http\Message\ServerRequestInterface; use Psr\Http\Server\MiddlewareInterface; use Psr\Http\Server\RequestHandlerInterface; +use Throwable; class MetricMiddleware implements MiddlewareInterface { @@ -29,26 +31,50 @@ class MetricMiddleware implements MiddlewareInterface public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface { $labels = [ - 'request_status' => '500', // default to 500 in case uncaught exception occur + 'request_status' => '500', 'request_path' => $this->getPath($request), 'request_method' => $request->getMethod(), ]; + $timer = new Timer('http_requests', $labels); - $response = $handler->handle($request); - $labels['request_status'] = (string) $response->getStatusCode(); - $timer->end($labels); - return $response; + + try { + $response = $handler->handle($request); + $labels['request_status'] = (string) $response->getStatusCode(); + $timer->end($labels); + + return $response; + } catch (Throwable $exception) { + $this->countException($request, $exception); + $timer->end($labels); + + throw $exception; + } } protected function getPath(ServerRequestInterface $request): string { $dispatched = $request->getAttribute(Dispatched::class); if (! $dispatched) { - return $request->getUri()->getPath(); + return Uri::sanitize($request->getUri()->getPath()); } if (! $dispatched->handler) { return 'not_found'; } return $dispatched->handler->route; } + + protected function countException(ServerRequestInterface $request, Throwable $exception): void + { + $labels = [ + 'request_path' => $this->getPath($request), + 'request_method' => $request->getMethod(), + 'class' => $exception::class, + 'message' => $exception->getMessage(), + 'code' => (string) $exception->getCode(), + 'line' => (string) $exception->getLine(), + ]; + + Metric::count('exception_count', 1, $labels); + } } diff --git a/src/Support/Uri.php b/src/Support/Uri.php new file mode 100644 index 000000000..cfbce7bff --- /dev/null +++ b/src/Support/Uri.php @@ -0,0 +1,30 @@ +', + '/', + ], + $uri + ); + } +} diff --git a/tests/Support/UriTest.php b/tests/Support/UriTest.php new file mode 100644 index 000000000..d0b3c6828 --- /dev/null +++ b/tests/Support/UriTest.php @@ -0,0 +1,47 @@ +', Uri::sanitize('/v2/test/123')); + self::assertSame('/v3/test//bar', Uri::sanitize('/v3/test/123/bar')); + self::assertSame('/v4/test//bar//', Uri::sanitize('/v4/test/123/bar/456/')); + self::assertSame('/v5/test//', Uri::sanitize('/v5/test/123/456')); + self::assertSame('/v6/test///', Uri::sanitize('/v6/test/123/456/')); + self::assertSame('/v7/test///', Uri::sanitize('/v7/test/123/456/789')); + self::assertSame('/v8/test////', Uri::sanitize('/v8/test/123/456/789/')); + } + + public function testClearUriUuids(): void + { + $uuid = '123e4567-e89b-12d3-a456-426614174000'; + + self::assertSame('/v1/test', Uri::sanitize('/v1/test')); + self::assertSame('/v2/test/', Uri::sanitize("/v2/test/{$uuid}")); + self::assertSame('/v3/test//bar', Uri::sanitize("/v3/test/{$uuid}/bar")); + self::assertSame('/v4/test//bar//', Uri::sanitize("/v4/test/{$uuid}/bar/{$uuid}/")); + self::assertSame('/v5/test//', Uri::sanitize("/v5/test/{$uuid}/{$uuid}")); + self::assertSame('/v6/test///', Uri::sanitize("/v6/test/{$uuid}/{$uuid}/")); + self::assertSame('/v7/test///', Uri::sanitize("/v7/test/{$uuid}/{$uuid}/{$uuid}")); + self::assertSame('/v8/test////', Uri::sanitize("/v8/test/{$uuid}/{$uuid}/{$uuid}/")); + } +}