diff --git a/.scrutinizer.yml b/.scrutinizer.yml index 8088f8a..9578642 100755 --- a/.scrutinizer.yml +++ b/.scrutinizer.yml @@ -1,22 +1,14 @@ build: - nodes: - php74: - environment: - php: 7.4 - analysis: - environment: - php: 7.4 - project_setup: - override: - - 'true' - tests: - override: - - php-scrutinizer-run - - command: phpcs-run - - command: composer arp:test - coverage: - file: ./test/coverage/clover.xml - format: clover + image: default-bionic + environment: + php: 8.1 + project_setup: + override: + - 'true' + tests: + override: + - php-scrutinizer-run + - command: phpcs-run checks: php: true coding_style: @@ -26,6 +18,8 @@ coding_style: linefeed_character: return-newline before_parentheses: closure_definition: true + around_operators: + concatenation: true filter: dependency_paths: - "vendor/" diff --git a/README.md b/README.md index 30881c7..5f92cee 100755 --- a/README.md +++ b/README.md @@ -1,3 +1,4 @@ +![github workflow](https://github.com/alex-patterson-webdev/laminas-monolog/actions/workflows/workflow.yml/badge.svg) [![codecov](https://codecov.io/gh/alex-patterson-webdev/laminas-monolog/branch/master/graph/badge.svg)](https://codecov.io/gh/alex-patterson-webdev/laminas-monolog) [![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/alex-patterson-webdev/laminas-monolog/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/alex-patterson-webdev/laminas-monolog/?branch=master) @@ -11,7 +12,7 @@ Monolog integration module for Laminas Applications Installation via [Composer](https://getcomposer.org). - require alex-patterson-webdev/laminas-monolog ^0.1 + require alex-patterson-webdev/laminas-monolog ^1.0.0 Register the modules services with the Laminas Service Manager by adding the module namespace to your applications `config/modules.config.php` file. diff --git a/composer.json b/composer.json index 1bd7def..388a02f 100755 --- a/composer.json +++ b/composer.json @@ -11,9 +11,9 @@ } ], "require" : { - "php": ">=7.4 || >=8.0", - "alex-patterson-webdev/laminas-factory" : "^3.0.0", - "monolog/monolog" : "^2.2", + "php": ">=8.1", + "alex-patterson-webdev/laminas-factory" : "^4.0.0", + "monolog/monolog" : "^2.9", "ext-json": "*" }, "require-dev" : { @@ -33,6 +33,11 @@ "ArpTest\\LaminasMonolog\\" : "test/unit/" } }, + "extra": { + "laminas": { + "component": "Arp\\LaminasMonolog" + } + }, "scripts": { "arp:test": [ "@arp:check", diff --git a/composer.lock b/composer.lock index 5e2f0b4..1a30f35 100755 --- a/composer.lock +++ b/composer.lock @@ -4,25 +4,25 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "368974df1b829e15e4c7b89285673423", + "content-hash": "57ea8a3277ce615ea272876b5048ae2f", "packages": [ { "name": "alex-patterson-webdev/laminas-factory", - "version": "3.0.0", + "version": "4.0.0", "source": { "type": "git", "url": "https://github.com/alex-patterson-webdev/laminas-factory.git", - "reference": "9b68ef06290c7863f9249f57698d17a3a3abf6ad" + "reference": "a4ed0cac54f1b61be96b97512309df0baa0a43c7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/alex-patterson-webdev/laminas-factory/zipball/9b68ef06290c7863f9249f57698d17a3a3abf6ad", - "reference": "9b68ef06290c7863f9249f57698d17a3a3abf6ad", + "url": "https://api.github.com/repos/alex-patterson-webdev/laminas-factory/zipball/a4ed0cac54f1b61be96b97512309df0baa0a43c7", + "reference": "a4ed0cac54f1b61be96b97512309df0baa0a43c7", "shasum": "" }, "require": { "laminas/laminas-servicemanager": "^3.4", - "php": ">=7.4 || >=8.0" + "php": ">=8.1" }, "require-dev": { "friendsofphp/php-cs-fixer": "^3.6.0", @@ -50,87 +50,52 @@ "description": "Factory components used to create services in Laminas Framework applications", "support": { "issues": "https://github.com/alex-patterson-webdev/laminas-factory/issues", - "source": "https://github.com/alex-patterson-webdev/laminas-factory/tree/3.0.0" + "source": "https://github.com/alex-patterson-webdev/laminas-factory/tree/4.0.0" }, - "time": "2022-03-18T03:18:26+00:00" - }, - { - "name": "container-interop/container-interop", - "version": "1.2.0", - "source": { - "type": "git", - "url": "https://github.com/container-interop/container-interop.git", - "reference": "79cbf1341c22ec75643d841642dd5d6acd83bdb8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/container-interop/container-interop/zipball/79cbf1341c22ec75643d841642dd5d6acd83bdb8", - "reference": "79cbf1341c22ec75643d841642dd5d6acd83bdb8", - "shasum": "" - }, - "require": { - "psr/container": "^1.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Interop\\Container\\": "src/Interop/Container/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Promoting the interoperability of container objects (DIC, SL, etc.)", - "homepage": "https://github.com/container-interop/container-interop", - "support": { - "issues": "https://github.com/container-interop/container-interop/issues", - "source": "https://github.com/container-interop/container-interop/tree/master" - }, - "abandoned": "psr/container", - "time": "2017-02-14T19:40:03+00:00" + "time": "2023-04-14T00:44:44+00:00" }, { "name": "laminas/laminas-servicemanager", - "version": "3.10.0", + "version": "3.20.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-servicemanager.git", - "reference": "e52b985909e0940bf22d34f322eb3f48bbef6bd1" + "reference": "bc2c2cbe2dd90db8b9d16b0618f542692b76ab59" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-servicemanager/zipball/e52b985909e0940bf22d34f322eb3f48bbef6bd1", - "reference": "e52b985909e0940bf22d34f322eb3f48bbef6bd1", + "url": "https://api.github.com/repos/laminas/laminas-servicemanager/zipball/bc2c2cbe2dd90db8b9d16b0618f542692b76ab59", + "reference": "bc2c2cbe2dd90db8b9d16b0618f542692b76ab59", "shasum": "" }, "require": { - "container-interop/container-interop": "^1.2", "laminas/laminas-stdlib": "^3.2.1", - "php": "~7.4.0 || ~8.0.0 || ~8.1.0", + "php": "~8.0.0 || ~8.1.0 || ~8.2.0", "psr/container": "^1.0" }, "conflict": { + "ext-psr": "*", "laminas/laminas-code": "<3.3.1", "zendframework/zend-code": "<3.3.1", "zendframework/zend-servicemanager": "*" }, "provide": { - "container-interop/container-interop-implementation": "^1.2", "psr/container-implementation": "^1.0" }, + "replace": { + "container-interop/container-interop": "^1.2.0" + }, "require-dev": { - "composer/package-versions-deprecated": "^1.0", - "laminas/laminas-coding-standard": "~2.2.1", - "laminas/laminas-container-config-test": "^0.3", - "laminas/laminas-dependency-plugin": "^2.1.2", - "mikey179/vfsstream": "^1.6.10@alpha", - "ocramius/proxy-manager": "^2.11", - "phpbench/phpbench": "^1.1", - "phpspec/prophecy-phpunit": "^2.0", - "phpunit/phpunit": "^9.5.5", - "psalm/plugin-phpunit": "^0.16.1", - "vimeo/psalm": "^4.8" + "composer/package-versions-deprecated": "^1.11.99.5", + "laminas/laminas-coding-standard": "~2.4.0", + "laminas/laminas-container-config-test": "^0.8", + "laminas/laminas-dependency-plugin": "^2.2", + "mikey179/vfsstream": "^1.6.11@alpha", + "ocramius/proxy-manager": "^2.14.1", + "phpbench/phpbench": "^1.2.7", + "phpunit/phpunit": "^9.5.26", + "psalm/plugin-phpunit": "^0.18.0", + "vimeo/psalm": "^5.0.0" }, "suggest": { "ocramius/proxy-manager": "ProxyManager ^2.1.1 to handle lazy initialization of services" @@ -141,6 +106,9 @@ ], "type": "library", "autoload": { + "files": [ + "src/autoload.php" + ], "psr-4": { "Laminas\\ServiceManager\\": "src/" } @@ -174,34 +142,34 @@ "type": "community_bridge" } ], - "time": "2021-09-18T20:19:36+00:00" + "time": "2022-12-01T17:03:38+00:00" }, { "name": "laminas/laminas-stdlib", - "version": "3.7.1", + "version": "3.17.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-stdlib.git", - "reference": "bcd869e2fe88d567800057c1434f2380354fe325" + "reference": "dd35c868075bad80b6718959740913e178eb4274" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-stdlib/zipball/bcd869e2fe88d567800057c1434f2380354fe325", - "reference": "bcd869e2fe88d567800057c1434f2380354fe325", + "url": "https://api.github.com/repos/laminas/laminas-stdlib/zipball/dd35c868075bad80b6718959740913e178eb4274", + "reference": "dd35c868075bad80b6718959740913e178eb4274", "shasum": "" }, "require": { - "php": "^7.3 || ~8.0.0 || ~8.1.0" + "php": "~8.1.0 || ~8.2.0" }, "conflict": { "zendframework/zend-stdlib": "*" }, "require-dev": { - "laminas/laminas-coding-standard": "~2.3.0", - "phpbench/phpbench": "^1.0", - "phpunit/phpunit": "^9.3.7", - "psalm/plugin-phpunit": "^0.16.0", - "vimeo/psalm": "^4.7" + "laminas/laminas-coding-standard": "^2.5", + "phpbench/phpbench": "^1.2.9", + "phpunit/phpunit": "^10.0.16", + "psalm/plugin-phpunit": "^0.18.4", + "vimeo/psalm": "^5.8" }, "type": "library", "autoload": { @@ -233,20 +201,20 @@ "type": "community_bridge" } ], - "time": "2022-01-21T15:50:46+00:00" + "time": "2023-03-20T13:51:37+00:00" }, { "name": "monolog/monolog", - "version": "2.4.0", + "version": "2.9.1", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "d7fd7450628561ba697b7097d86db72662f54aef" + "reference": "f259e2b15fb95494c83f52d3caad003bbf5ffaa1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/d7fd7450628561ba697b7097d86db72662f54aef", - "reference": "d7fd7450628561ba697b7097d86db72662f54aef", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/f259e2b15fb95494c83f52d3caad003bbf5ffaa1", + "reference": "f259e2b15fb95494c83f52d3caad003bbf5ffaa1", "shasum": "" }, "require": { @@ -259,18 +227,22 @@ "require-dev": { "aws/aws-sdk-php": "^2.4.9 || ^3.0", "doctrine/couchdb": "~1.0@dev", - "elasticsearch/elasticsearch": "^7", - "graylog2/gelf-php": "^1.4.2", + "elasticsearch/elasticsearch": "^7 || ^8", + "ext-json": "*", + "graylog2/gelf-php": "^1.4.2 || ^2@dev", + "guzzlehttp/guzzle": "^7.4", + "guzzlehttp/psr7": "^2.2", "mongodb/mongodb": "^1.8", "php-amqplib/php-amqplib": "~2.4 || ^3", - "php-console/php-console": "^3.1.3", - "phpspec/prophecy": "^1.6.1", + "phpspec/prophecy": "^1.15", "phpstan/phpstan": "^0.12.91", - "phpunit/phpunit": "^8.5", - "predis/predis": "^1.1", + "phpunit/phpunit": "^8.5.14", + "predis/predis": "^1.1 || ^2.0", "rollbar/rollbar": "^1.3 || ^2 || ^3", - "ruflin/elastica": ">=0.90@dev", - "swiftmailer/swiftmailer": "^5.3|^6.0" + "ruflin/elastica": "^7", + "swiftmailer/swiftmailer": "^5.3|^6.0", + "symfony/mailer": "^5.4 || ^6", + "symfony/mime": "^5.4 || ^6" }, "suggest": { "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB", @@ -285,7 +257,6 @@ "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server", "mongodb/mongodb": "Allow sending log messages to a MongoDB server (via library)", "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib", - "php-console/php-console": "Allow sending log messages to Google Chrome", "rollbar/rollbar": "Allow sending log messages to Rollbar", "ruflin/elastica": "Allow sending log messages to an Elastic Search server" }, @@ -320,7 +291,7 @@ ], "support": { "issues": "https://github.com/Seldaek/monolog/issues", - "source": "https://github.com/Seldaek/monolog/tree/2.4.0" + "source": "https://github.com/Seldaek/monolog/tree/2.9.1" }, "funding": [ { @@ -332,7 +303,7 @@ "type": "tidelift" } ], - "time": "2022-03-14T12:44:37+00:00" + "time": "2023-02-06T13:44:46+00:00" }, { "name": "psr/container", @@ -384,30 +355,30 @@ }, { "name": "psr/log", - "version": "1.1.4", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/php-fig/log.git", - "reference": "d49695b909c3b7628b6289db5479a1c204601f11" + "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/d49695b909c3b7628b6289db5479a1c204601f11", - "reference": "d49695b909c3b7628b6289db5479a1c204601f11", + "url": "https://api.github.com/repos/php-fig/log/zipball/fe5ea303b0887d5caefd3d431c3e61ad47037001", + "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": ">=8.0.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1.x-dev" + "dev-master": "3.x-dev" } }, "autoload": { "psr-4": { - "Psr\\Log\\": "Psr/Log/" + "Psr\\Log\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -428,24 +399,24 @@ "psr-3" ], "support": { - "source": "https://github.com/php-fig/log/tree/1.1.4" + "source": "https://github.com/php-fig/log/tree/3.0.0" }, - "time": "2021-05-03T11:20:27+00:00" + "time": "2021-07-14T16:46:02+00:00" } ], "packages-dev": [ { "name": "composer/pcre", - "version": "3.0.0", + "version": "3.1.0", "source": { "type": "git", "url": "https://github.com/composer/pcre.git", - "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd" + "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/pcre/zipball/e300eb6c535192decd27a85bc72a9290f0d6b3bd", - "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd", + "url": "https://api.github.com/repos/composer/pcre/zipball/4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", + "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", "shasum": "" }, "require": { @@ -487,7 +458,7 @@ ], "support": { "issues": "https://github.com/composer/pcre/issues", - "source": "https://github.com/composer/pcre/tree/3.0.0" + "source": "https://github.com/composer/pcre/tree/3.1.0" }, "funding": [ { @@ -503,20 +474,20 @@ "type": "tidelift" } ], - "time": "2022-02-25T20:21:48+00:00" + "time": "2022-11-17T09:50:14+00:00" }, { "name": "composer/semver", - "version": "3.3.1", + "version": "3.3.2", "source": { "type": "git", "url": "https://github.com/composer/semver.git", - "reference": "5d8e574bb0e69188786b8ef77d43341222a41a71" + "reference": "3953f23262f2bff1919fc82183ad9acb13ff62c9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/semver/zipball/5d8e574bb0e69188786b8ef77d43341222a41a71", - "reference": "5d8e574bb0e69188786b8ef77d43341222a41a71", + "url": "https://api.github.com/repos/composer/semver/zipball/3953f23262f2bff1919fc82183ad9acb13ff62c9", + "reference": "3953f23262f2bff1919fc82183ad9acb13ff62c9", "shasum": "" }, "require": { @@ -568,7 +539,7 @@ "support": { "irc": "irc://irc.freenode.org/composer", "issues": "https://github.com/composer/semver/issues", - "source": "https://github.com/composer/semver/tree/3.3.1" + "source": "https://github.com/composer/semver/tree/3.3.2" }, "funding": [ { @@ -584,7 +555,7 @@ "type": "tidelift" } ], - "time": "2022-03-16T11:22:07+00:00" + "time": "2022-04-01T19:23:25+00:00" }, { "name": "composer/xdebug-handler", @@ -654,30 +625,34 @@ }, { "name": "doctrine/annotations", - "version": "1.13.2", + "version": "2.0.1", "source": { "type": "git", "url": "https://github.com/doctrine/annotations.git", - "reference": "5b668aef16090008790395c02c893b1ba13f7e08" + "reference": "e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/annotations/zipball/5b668aef16090008790395c02c893b1ba13f7e08", - "reference": "5b668aef16090008790395c02c893b1ba13f7e08", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f", + "reference": "e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f", "shasum": "" }, "require": { - "doctrine/lexer": "1.*", + "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": "^6.0 || ^8.1", - "phpstan/phpstan": "^0.12.20", - "phpunit/phpunit": "^7.5 || ^8.0 || ^9.1.5", - "symfony/cache": "^4.4 || ^5.2" + "doctrine/cache": "^2.0", + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.8.0", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", + "symfony/cache": "^5.4 || ^6", + "vimeo/psalm": "^4.10" + }, + "suggest": { + "php": "PHP 8.0 or higher comes with attributes, a native replacement for annotations" }, "type": "library", "autoload": { @@ -720,36 +695,79 @@ ], "support": { "issues": "https://github.com/doctrine/annotations/issues", - "source": "https://github.com/doctrine/annotations/tree/1.13.2" + "source": "https://github.com/doctrine/annotations/tree/2.0.1" + }, + "time": "2023-02-02T22:02:53+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" }, - "time": "2021-08-05T19:00:23+00:00" + "time": "2022-05-02T15:47:09+00:00" }, { "name": "doctrine/instantiator", - "version": "1.4.1", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/doctrine/instantiator.git", - "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc" + "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/10dcfce151b967d20fde1b34ae6640712c3891bc", - "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/c6222283fa3f4ac679f8b9ced9a4e23f163e80d0", + "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0", "shasum": "" }, "require": { - "php": "^7.1 || ^8.0" + "php": "^8.1" }, "require-dev": { - "doctrine/coding-standard": "^9", + "doctrine/coding-standard": "^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" + "phpbench/phpbench": "^1.2", + "phpstan/phpstan": "^1.9.4", + "phpstan/phpstan-phpunit": "^1.3", + "phpunit/phpunit": "^9.5.27", + "vimeo/psalm": "^5.4" }, "type": "library", "autoload": { @@ -776,7 +794,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/2.0.0" }, "funding": [ { @@ -792,35 +810,36 @@ "type": "tidelift" } ], - "time": "2022-03-03T08:28:38+00:00" + "time": "2022-12-30T00:23:10+00:00" }, { "name": "doctrine/lexer", - "version": "1.2.3", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/doctrine/lexer.git", - "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229" + "reference": "84a527db05647743d50373e0ec53a152f2cde568" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/c268e882d4dbdd85e36e4ad69e02dc284f89d229", - "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/84a527db05647743d50373e0ec53a152f2cde568", + "reference": "84a527db05647743d50373e0ec53a152f2cde568", "shasum": "" }, "require": { - "php": "^7.1 || ^8.0" + "php": "^8.1" }, "require-dev": { - "doctrine/coding-standard": "^9.0", - "phpstan/phpstan": "^1.3", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.11" + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.9", + "phpunit/phpunit": "^9.5", + "psalm/plugin-phpunit": "^0.18.3", + "vimeo/psalm": "^5.0" }, "type": "library", "autoload": { "psr-4": { - "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer" + "Doctrine\\Common\\Lexer\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -852,7 +871,7 @@ ], "support": { "issues": "https://github.com/doctrine/lexer/issues", - "source": "https://github.com/doctrine/lexer/tree/1.2.3" + "source": "https://github.com/doctrine/lexer/tree/3.0.0" }, "funding": [ { @@ -868,55 +887,56 @@ "type": "tidelift" } ], - "time": "2022-02-28T11:07:21+00:00" + "time": "2022-12-15T16:57:16+00:00" }, { "name": "friendsofphp/php-cs-fixer", - "version": "v3.8.0", + "version": "v3.16.0", "source": { "type": "git", - "url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git", - "reference": "cbad1115aac4b5c3c5540e7210d3c9fba2f81fa3" + "url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git", + "reference": "d40f9436e1c448d309fa995ab9c14c5c7a96f2dc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/cbad1115aac4b5c3c5540e7210d3c9fba2f81fa3", - "reference": "cbad1115aac4b5c3c5540e7210d3c9fba2f81fa3", + "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/d40f9436e1c448d309fa995ab9c14c5c7a96f2dc", + "reference": "d40f9436e1c448d309fa995ab9c14c5c7a96f2dc", "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", - "php-cs-fixer/diff": "^2.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": "^1.5", - "mikey179/vfsstream": "^1.6.10", - "php-coveralls/php-coveralls": "^2.5.2", + "keradus/cli-executor": "^2.0", + "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.5", - "phpunitgoodpractices/traits": "^1.9.1", - "symfony/phpunit-bridge": "^6.0", + "phpunitgoodpractices/polyfill": "^1.6", + "phpunitgoodpractices/traits": "^1.9.2", + "symfony/phpunit-bridge": "^6.2.3", "symfony/yaml": "^5.4 || ^6.0" }, "suggest": { @@ -947,9 +967,15 @@ } ], "description": "A tool to automatically fix PHP code style", + "keywords": [ + "Static code analysis", + "fixer", + "standards", + "static analysis" + ], "support": { - "issues": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/issues", - "source": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/tree/v3.8.0" + "issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues", + "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.16.0" }, "funding": [ { @@ -957,20 +983,20 @@ "type": "github" } ], - "time": "2022-03-18T17:20:59+00:00" + "time": "2023-04-02T19:30:06+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": { @@ -1008,7 +1034,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": [ { @@ -1016,20 +1042,20 @@ "type": "tidelift" } ], - "time": "2022-03-03T13:19:32+00:00" + "time": "2023-03-08T13:26:56+00:00" }, { "name": "nikic/php-parser", - "version": "v4.13.2", + "version": "v4.15.4", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "210577fe3cf7badcc5814d99455df46564f3c077" + "reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/210577fe3cf7badcc5814d99455df46564f3c077", - "reference": "210577fe3cf7badcc5814d99455df46564f3c077", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/6bb5176bc4af8bcb7d926f88718db9b96a2d4290", + "reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290", "shasum": "" }, "require": { @@ -1070,9 +1096,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.13.2" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.4" }, - "time": "2021-11-30T19:35:32+00:00" + "time": "2023-03-05T19:49:14+00:00" }, { "name": "phar-io/manifest", @@ -1185,58 +1211,6 @@ }, "time": "2022-02-21T01:04:05+00:00" }, - { - "name": "php-cs-fixer/diff", - "version": "v2.0.2", - "source": { - "type": "git", - "url": "https://github.com/PHP-CS-Fixer/diff.git", - "reference": "29dc0d507e838c4580d018bd8b5cb412474f7ec3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/PHP-CS-Fixer/diff/zipball/29dc0d507e838c4580d018bd8b5cb412474f7ec3", - "reference": "29dc0d507e838c4580d018bd8b5cb412474f7ec3", - "shasum": "" - }, - "require": { - "php": "^5.6 || ^7.0 || ^8.0" - }, - "require-dev": { - "phpunit/phpunit": "^5.7.23 || ^6.4.3 || ^7.0", - "symfony/process": "^3.3" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" - } - ], - "description": "sebastian/diff v3 backport support for PHP 5.6+", - "homepage": "https://github.com/PHP-CS-Fixer", - "keywords": [ - "diff" - ], - "support": { - "issues": "https://github.com/PHP-CS-Fixer/diff/issues", - "source": "https://github.com/PHP-CS-Fixer/diff/tree/v2.0.2" - }, - "time": "2020-10-14T08:32:19+00:00" - }, { "name": "phpdocumentor/reflection-common", "version": "2.2.0", @@ -1349,25 +1323,33 @@ }, { "name": "phpdocumentor/type-resolver", - "version": "1.6.0", + "version": "1.7.1", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "93ebd0014cab80c4ea9f5e297ea48672f1b87706" + "reference": "dfc078e8af9c99210337325ff5aa152872c98714" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/93ebd0014cab80c4ea9f5e297ea48672f1b87706", - "reference": "93ebd0014cab80c4ea9f5e297ea48672f1b87706", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/dfc078e8af9c99210337325ff5aa152872c98714", + "reference": "dfc078e8af9c99210337325ff5aa152872c98714", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0", - "phpdocumentor/reflection-common": "^2.0" + "doctrine/deprecations": "^1.0", + "php": "^7.4 || ^8.0", + "phpdocumentor/reflection-common": "^2.0", + "phpstan/phpdoc-parser": "^1.13" }, "require-dev": { "ext-tokenizer": "*", - "psalm/phar": "^4.8" + "phpbench/phpbench": "^1.2", + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-phpunit": "^1.1", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.13.9", + "vimeo/psalm": "^4.25" }, "type": "library", "extra": { @@ -1393,33 +1375,34 @@ "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", "support": { "issues": "https://github.com/phpDocumentor/TypeResolver/issues", - "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.6.0" + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.7.1" }, - "time": "2022-01-04T19:58:01+00:00" + "time": "2023-03-27T19:02:04+00:00" }, { "name": "phpspec/prophecy", - "version": "v1.15.0", + "version": "v1.17.0", "source": { "type": "git", "url": "https://github.com/phpspec/prophecy.git", - "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13" + "reference": "15873c65b207b07765dbc3c95d20fdf4a320cbe2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/bbcd7380b0ebf3961ee21409db7b38bc31d69a13", - "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13", + "url": "https://api.github.com/repos/phpspec/prophecy/zipball/15873c65b207b07765dbc3c95d20fdf4a320cbe2", + "reference": "15873c65b207b07765dbc3c95d20fdf4a320cbe2", "shasum": "" }, "require": { - "doctrine/instantiator": "^1.2", - "php": "^7.2 || ~8.0, <8.2", + "doctrine/instantiator": "^1.2 || ^2.0", + "php": "^7.2 || 8.0.* || 8.1.* || 8.2.*", "phpdocumentor/reflection-docblock": "^5.2", "sebastian/comparator": "^3.0 || ^4.0", "sebastian/recursion-context": "^3.0 || ^4.0" }, "require-dev": { "phpspec/phpspec": "^6.0 || ^7.0", + "phpstan/phpstan": "^1.9", "phpunit/phpunit": "^8.0 || ^9.0" }, "type": "library", @@ -1460,26 +1443,71 @@ ], "support": { "issues": "https://github.com/phpspec/prophecy/issues", - "source": "https://github.com/phpspec/prophecy/tree/v1.15.0" + "source": "https://github.com/phpspec/prophecy/tree/v1.17.0" + }, + "time": "2023-02-02T15:41:36+00:00" + }, + { + "name": "phpstan/phpdoc-parser", + "version": "1.20.3", + "source": { + "type": "git", + "url": "https://github.com/phpstan/phpdoc-parser.git", + "reference": "6c04009f6cae6eda2f040745b6b846080ef069c2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/6c04009f6cae6eda2f040745b6b846080ef069c2", + "reference": "6c04009f6cae6eda2f040745b6b846080ef069c2", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "php-parallel-lint/php-parallel-lint": "^1.2", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^1.5", + "phpstan/phpstan-phpunit": "^1.1", + "phpstan/phpstan-strict-rules": "^1.0", + "phpunit/phpunit": "^9.5", + "symfony/process": "^5.2" }, - "time": "2021-12-08T12:19:24+00:00" + "type": "library", + "autoload": { + "psr-4": { + "PHPStan\\PhpDocParser\\": [ + "src/" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "PHPDoc parser with support for nullable, intersection and generic types", + "support": { + "issues": "https://github.com/phpstan/phpdoc-parser/issues", + "source": "https://github.com/phpstan/phpdoc-parser/tree/1.20.3" + }, + "time": "2023-04-25T09:01:03+00:00" }, { "name": "phpstan/phpstan", - "version": "1.4.10", + "version": "1.10.14", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "898c479c39caa727bedf4311dd294a8f4e250e72" + "reference": "d232901b09e67538e5c86a724be841bea5768a7c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/898c479c39caa727bedf4311dd294a8f4e250e72", - "reference": "898c479c39caa727bedf4311dd294a8f4e250e72", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/d232901b09e67538e5c86a724be841bea5768a7c", + "reference": "d232901b09e67538e5c86a724be841bea5768a7c", "shasum": "" }, "require": { - "php": "^7.1|^8.0" + "php": "^7.2|^8.0" }, "conflict": { "phpstan/phpstan-shim": "*" @@ -1499,9 +1527,16 @@ "MIT" ], "description": "PHPStan - PHP Static Analysis Tool", + "keywords": [ + "dev", + "static analysis" + ], "support": { + "docs": "https://phpstan.org/user-guide/getting-started", + "forum": "https://github.com/phpstan/phpstan/discussions", "issues": "https://github.com/phpstan/phpstan/issues", - "source": "https://github.com/phpstan/phpstan/tree/1.4.10" + "security": "https://github.com/phpstan/phpstan/security/policy", + "source": "https://github.com/phpstan/phpstan-src" }, "funding": [ { @@ -1512,36 +1547,32 @@ "url": "https://github.com/phpstan", "type": "github" }, - { - "url": "https://www.patreon.com/phpstan", - "type": "patreon" - }, { "url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan", "type": "tidelift" } ], - "time": "2022-03-14T10:25:45+00:00" + "time": "2023-04-19T13:47:27+00:00" }, { "name": "phpunit/php-code-coverage", - "version": "9.2.15", + "version": "9.2.26", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "2e9da11878c4202f97915c1cb4bb1ca318a63f5f" + "reference": "443bc6912c9bd5b409254a40f4b0f4ced7c80ea1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/2e9da11878c4202f97915c1cb4bb1ca318a63f5f", - "reference": "2e9da11878c4202f97915c1cb4bb1ca318a63f5f", + "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.13.0", + "nikic/php-parser": "^4.15", "php": ">=7.3", "phpunit/php-file-iterator": "^3.0.3", "phpunit/php-text-template": "^2.0.2", @@ -1556,8 +1587,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": { @@ -1590,7 +1621,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.15" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.26" }, "funding": [ { @@ -1598,7 +1629,7 @@ "type": "github" } ], - "time": "2022-03-07T09:28:20+00:00" + "time": "2023-03-06T12:58:08+00:00" }, { "name": "phpunit/php-file-iterator", @@ -1843,20 +1874,20 @@ }, { "name": "phpunit/phpunit", - "version": "9.5.19", + "version": "9.6.7", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "35ea4b7f3acabb26f4bb640f8c30866c401da807" + "reference": "c993f0d3b0489ffc42ee2fe0bd645af1538a63b2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/35ea4b7f3acabb26f4bb640f8c30866c401da807", - "reference": "35ea4b7f3acabb26f4bb640f8c30866c401da807", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/c993f0d3b0489ffc42ee2fe0bd645af1538a63b2", + "reference": "c993f0d3b0489ffc42ee2fe0bd645af1538a63b2", "shasum": "" }, "require": { - "doctrine/instantiator": "^1.3.1", + "doctrine/instantiator": "^1.3.1 || ^2", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*", @@ -1867,7 +1898,6 @@ "phar-io/manifest": "^2.0.3", "phar-io/version": "^3.0.2", "php": ">=7.3", - "phpspec/prophecy": "^1.12.1", "phpunit/php-code-coverage": "^9.2.13", "phpunit/php-file-iterator": "^3.0.5", "phpunit/php-invoker": "^3.1.1", @@ -1875,23 +1905,19 @@ "phpunit/php-timer": "^5.0.2", "sebastian/cli-parser": "^1.0.1", "sebastian/code-unit": "^1.0.6", - "sebastian/comparator": "^4.0.5", + "sebastian/comparator": "^4.0.8", "sebastian/diff": "^4.0.3", "sebastian/environment": "^5.1.3", - "sebastian/exporter": "^4.0.3", + "sebastian/exporter": "^4.0.5", "sebastian/global-state": "^5.0.1", "sebastian/object-enumerator": "^4.0.3", "sebastian/resource-operations": "^3.0.3", - "sebastian/type": "^3.0", + "sebastian/type": "^3.2", "sebastian/version": "^3.0.2" }, - "require-dev": { - "ext-pdo": "*", - "phpspec/prophecy-phpunit": "^2.0.1" - }, "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" @@ -1899,7 +1925,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "9.5-dev" + "dev-master": "9.6-dev" } }, "autoload": { @@ -1930,7 +1956,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.19" + "security": "https://github.com/sebastianbergmann/phpunit/security/policy", + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.7" }, "funding": [ { @@ -1940,26 +1967,30 @@ { "url": "https://github.com/sebastianbergmann", "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit", + "type": "tidelift" } ], - "time": "2022-03-15T09:57:31+00:00" + "time": "2023-04-14T08:58:40+00:00" }, { "name": "psr/cache", - "version": "1.0.1", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/php-fig/cache.git", - "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8" + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8", - "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8", + "url": "https://api.github.com/repos/php-fig/cache/zipball/aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": ">=8.0.0" }, "type": "library", "extra": { @@ -1979,7 +2010,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for caching libraries", @@ -1989,9 +2020,9 @@ "psr-6" ], "support": { - "source": "https://github.com/php-fig/cache/tree/master" + "source": "https://github.com/php-fig/cache/tree/3.0.0" }, - "time": "2016-08-06T20:24:11+00:00" + "time": "2021-02-03T23:26:27+00:00" }, { "name": "psr/event-dispatcher", @@ -2212,16 +2243,16 @@ }, { "name": "sebastian/comparator", - "version": "4.0.6", + "version": "4.0.8", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "55f4261989e546dc112258c7a75935a81a7ce382" + "reference": "fa0f136dd2334583309d32b62544682ee972b51a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/55f4261989e546dc112258c7a75935a81a7ce382", - "reference": "55f4261989e546dc112258c7a75935a81a7ce382", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a", + "reference": "fa0f136dd2334583309d32b62544682ee972b51a", "shasum": "" }, "require": { @@ -2274,7 +2305,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/comparator/issues", - "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.6" + "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8" }, "funding": [ { @@ -2282,7 +2313,7 @@ "type": "github" } ], - "time": "2020-10-26T15:49:45+00:00" + "time": "2022-09-14T12:41:17+00:00" }, { "name": "sebastian/complexity", @@ -2409,16 +2440,16 @@ }, { "name": "sebastian/environment", - "version": "5.1.3", + "version": "5.1.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "388b6ced16caa751030f6a69e588299fa09200ac" + "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/388b6ced16caa751030f6a69e588299fa09200ac", - "reference": "388b6ced16caa751030f6a69e588299fa09200ac", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", + "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", "shasum": "" }, "require": { @@ -2460,7 +2491,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/environment/issues", - "source": "https://github.com/sebastianbergmann/environment/tree/5.1.3" + "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5" }, "funding": [ { @@ -2468,20 +2499,20 @@ "type": "github" } ], - "time": "2020-09-28T05:52:38+00:00" + "time": "2023-02-03T06:03:51+00:00" }, { "name": "sebastian/exporter", - "version": "4.0.4", + "version": "4.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9" + "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/65e8b7db476c5dd267e65eea9cab77584d3cfff9", - "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d", + "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d", "shasum": "" }, "require": { @@ -2537,7 +2568,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.4" + "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.5" }, "funding": [ { @@ -2545,7 +2576,7 @@ "type": "github" } ], - "time": "2021-11-11T14:18:36+00:00" + "time": "2022-09-14T06:03:37+00:00" }, { "name": "sebastian/global-state", @@ -2782,16 +2813,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": { @@ -2830,10 +2861,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": [ { @@ -2841,7 +2872,7 @@ "type": "github" } ], - "time": "2020-10-26T13:17:30+00:00" + "time": "2023-02-03T06:07:39+00:00" }, { "name": "sebastian/resource-operations", @@ -2900,16 +2931,16 @@ }, { "name": "sebastian/type", - "version": "3.0.0", + "version": "3.2.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/type.git", - "reference": "b233b84bc4465aff7b57cf1c4bc75c86d00d6dad" + "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/b233b84bc4465aff7b57cf1c4bc75c86d00d6dad", - "reference": "b233b84bc4465aff7b57cf1c4bc75c86d00d6dad", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", + "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", "shasum": "" }, "require": { @@ -2921,7 +2952,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "3.2-dev" } }, "autoload": { @@ -2944,7 +2975,7 @@ "homepage": "https://github.com/sebastianbergmann/type", "support": { "issues": "https://github.com/sebastianbergmann/type/issues", - "source": "https://github.com/sebastianbergmann/type/tree/3.0.0" + "source": "https://github.com/sebastianbergmann/type/tree/3.2.1" }, "funding": [ { @@ -2952,7 +2983,7 @@ "type": "github" } ], - "time": "2022-03-15T09:54:48+00:00" + "time": "2023-02-03T06:13:03+00:00" }, { "name": "sebastian/version", @@ -3009,16 +3040,16 @@ }, { "name": "squizlabs/php_codesniffer", - "version": "3.6.2", + "version": "3.7.2", "source": { "type": "git", "url": "https://github.com/squizlabs/PHP_CodeSniffer.git", - "reference": "5e4e71592f69da17871dba6e80dd51bce74a351a" + "reference": "ed8e00df0a83aa96acf703f8c2979ff33341f879" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/5e4e71592f69da17871dba6e80dd51bce74a351a", - "reference": "5e4e71592f69da17871dba6e80dd51bce74a351a", + "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/ed8e00df0a83aa96acf703f8c2979ff33341f879", + "reference": "ed8e00df0a83aa96acf703f8c2979ff33341f879", "shasum": "" }, "require": { @@ -3054,57 +3085,55 @@ "homepage": "https://github.com/squizlabs/PHP_CodeSniffer", "keywords": [ "phpcs", - "standards" + "standards", + "static analysis" ], "support": { "issues": "https://github.com/squizlabs/PHP_CodeSniffer/issues", "source": "https://github.com/squizlabs/PHP_CodeSniffer", "wiki": "https://github.com/squizlabs/PHP_CodeSniffer/wiki" }, - "time": "2021-12-12T21:44:58+00:00" + "time": "2023-02-22T23:07:41+00:00" }, { "name": "symfony/console", - "version": "v5.4.5", + "version": "v6.2.10", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "d8111acc99876953f52fe16d4c50eb60940d49ad" + "reference": "12288d9f4500f84a4d02254d4aa968b15488476f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/d8111acc99876953f52fe16d4c50eb60940d49ad", - "reference": "d8111acc99876953f52fe16d4c50eb60940d49ad", + "url": "https://api.github.com/repos/symfony/console/zipball/12288d9f4500f84a4d02254d4aa968b15488476f", + "reference": "12288d9f4500f84a4d02254d4aa968b15488476f", "shasum": "" }, "require": { - "php": ">=7.2.5", + "php": ">=8.1", "symfony/deprecation-contracts": "^2.1|^3", "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php73": "^1.9", - "symfony/polyfill-php80": "^1.16", "symfony/service-contracts": "^1.1|^2|^3", - "symfony/string": "^5.1|^6.0" + "symfony/string": "^5.4|^6.0" }, "conflict": { - "psr/log": ">=3", - "symfony/dependency-injection": "<4.4", - "symfony/dotenv": "<5.1", - "symfony/event-dispatcher": "<4.4", - "symfony/lock": "<4.4", - "symfony/process": "<4.4" + "symfony/dependency-injection": "<5.4", + "symfony/dotenv": "<5.4", + "symfony/event-dispatcher": "<5.4", + "symfony/lock": "<5.4", + "symfony/process": "<5.4" }, "provide": { - "psr/log-implementation": "1.0|2.0" + "psr/log-implementation": "1.0|2.0|3.0" }, "require-dev": { - "psr/log": "^1|^2", - "symfony/config": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/event-dispatcher": "^4.4|^5.0|^6.0", - "symfony/lock": "^4.4|^5.0|^6.0", - "symfony/process": "^4.4|^5.0|^6.0", - "symfony/var-dumper": "^4.4|^5.0|^6.0" + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", + "symfony/event-dispatcher": "^5.4|^6.0", + "symfony/lock": "^5.4|^6.0", + "symfony/process": "^5.4|^6.0", + "symfony/var-dumper": "^5.4|^6.0" }, "suggest": { "psr/log": "For using the console logger", @@ -3139,12 +3168,12 @@ "homepage": "https://symfony.com", "keywords": [ "cli", - "command line", + "command-line", "console", "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.5" + "source": "https://github.com/symfony/console/tree/v6.2.10" }, "funding": [ { @@ -3160,29 +3189,29 @@ "type": "tidelift" } ], - "time": "2022-02-24T12:45:35+00:00" + "time": "2023-04-28T13:37:43+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v2.5.0", + "version": "v3.2.1", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "6f981ee24cf69ee7ce9736146d1c57c2780598a8" + "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/6f981ee24cf69ee7ce9736146d1c57c2780598a8", - "reference": "6f981ee24cf69ee7ce9736146d1c57c2780598a8", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", + "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", "shasum": "" }, "require": { - "php": ">=7.1" + "php": ">=8.1" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "2.5-dev" + "dev-main": "3.3-dev" }, "thanks": { "name": "symfony/contracts", @@ -3211,7 +3240,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.0" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.2.1" }, "funding": [ { @@ -3227,44 +3256,42 @@ "type": "tidelift" } ], - "time": "2021-07-12T14:48:14+00:00" + "time": "2023-03-01T10:25:55+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v5.4.3", + "version": "v6.2.8", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "dec8a9f58d20df252b9cd89f1c6c1530f747685d" + "reference": "04046f35fd7d72f9646e721fc2ecb8f9c67d3339" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/dec8a9f58d20df252b9cd89f1c6c1530f747685d", - "reference": "dec8a9f58d20df252b9cd89f1c6c1530f747685d", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/04046f35fd7d72f9646e721fc2ecb8f9c67d3339", + "reference": "04046f35fd7d72f9646e721fc2ecb8f9c67d3339", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/event-dispatcher-contracts": "^2|^3", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1", + "symfony/event-dispatcher-contracts": "^2|^3" }, "conflict": { - "symfony/dependency-injection": "<4.4" + "symfony/dependency-injection": "<5.4" }, "provide": { "psr/event-dispatcher-implementation": "1.0", - "symfony/event-dispatcher-implementation": "2.0" + "symfony/event-dispatcher-implementation": "2.0|3.0" }, "require-dev": { "psr/log": "^1|^2|^3", - "symfony/config": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/error-handler": "^4.4|^5.0|^6.0", - "symfony/expression-language": "^4.4|^5.0|^6.0", - "symfony/http-foundation": "^4.4|^5.0|^6.0", + "symfony/config": "^5.4|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", + "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/stopwatch": "^4.4|^5.0|^6.0" + "symfony/stopwatch": "^5.4|^6.0" }, "suggest": { "symfony/dependency-injection": "", @@ -3296,7 +3323,7 @@ "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v5.4.3" + "source": "https://github.com/symfony/event-dispatcher/tree/v6.2.8" }, "funding": [ { @@ -3312,24 +3339,24 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:53:40+00:00" + "time": "2023-03-20T16:06:02+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v2.5.0", + "version": "v3.2.1", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "66bea3b09be61613cd3b4043a65a8ec48cfa6d2a" + "reference": "0ad3b6f1e4e2da5690fefe075cd53a238646d8dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/66bea3b09be61613cd3b4043a65a8ec48cfa6d2a", - "reference": "66bea3b09be61613cd3b4043a65a8ec48cfa6d2a", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0ad3b6f1e4e2da5690fefe075cd53a238646d8dd", + "reference": "0ad3b6f1e4e2da5690fefe075cd53a238646d8dd", "shasum": "" }, "require": { - "php": ">=7.2.5", + "php": ">=8.1", "psr/event-dispatcher": "^1" }, "suggest": { @@ -3338,7 +3365,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.5-dev" + "dev-main": "3.3-dev" }, "thanks": { "name": "symfony/contracts", @@ -3375,7 +3402,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v2.5.0" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.2.1" }, "funding": [ { @@ -3391,27 +3418,26 @@ "type": "tidelift" } ], - "time": "2021-07-12T14:48:14+00:00" + "time": "2023-03-01T10:32:47+00:00" }, { "name": "symfony/filesystem", - "version": "v5.4.6", + "version": "v6.2.10", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "d53a45039974952af7f7ebc461ccdd4295e29440" + "reference": "fd588debf7d1bc16a2c84b4b3b71145d9946b894" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/d53a45039974952af7f7ebc461ccdd4295e29440", - "reference": "d53a45039974952af7f7ebc461ccdd4295e29440", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/fd588debf7d1bc16a2c84b4b3b71145d9946b894", + "reference": "fd588debf7d1bc16a2c84b4b3b71145d9946b894", "shasum": "" }, "require": { - "php": ">=7.2.5", + "php": ">=8.1", "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-mbstring": "~1.8", - "symfony/polyfill-php80": "^1.16" + "symfony/polyfill-mbstring": "~1.8" }, "type": "library", "autoload": { @@ -3439,7 +3465,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.4.6" + "source": "https://github.com/symfony/filesystem/tree/v6.2.10" }, "funding": [ { @@ -3455,26 +3481,27 @@ "type": "tidelift" } ], - "time": "2022-03-02T12:42:23+00:00" + "time": "2023-04-18T13:46:08+00:00" }, { "name": "symfony/finder", - "version": "v5.4.3", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "231313534dded84c7ecaa79d14bc5da4ccb69b7d" + "reference": "20808dc6631aecafbe67c186af5dcb370be3a0eb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/231313534dded84c7ecaa79d14bc5da4ccb69b7d", - "reference": "231313534dded84c7ecaa79d14bc5da4ccb69b7d", + "url": "https://api.github.com/repos/symfony/finder/zipball/20808dc6631aecafbe67c186af5dcb370be3a0eb", + "reference": "20808dc6631aecafbe67c186af5dcb370be3a0eb", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1" + }, + "require-dev": { + "symfony/filesystem": "^6.0" }, "type": "library", "autoload": { @@ -3502,7 +3529,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v5.4.3" + "source": "https://github.com/symfony/finder/tree/v6.2.7" }, "funding": [ { @@ -3518,27 +3545,25 @@ "type": "tidelift" } ], - "time": "2022-01-26T16:34:36+00:00" + "time": "2023-02-16T09:57:23+00:00" }, { "name": "symfony/options-resolver", - "version": "v5.4.3", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "cc1147cb11af1b43f503ac18f31aa3bec213aba8" + "reference": "aa0e85b53bbb2b4951960efd61d295907eacd629" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/cc1147cb11af1b43f503ac18f31aa3bec213aba8", - "reference": "cc1147cb11af1b43f503ac18f31aa3bec213aba8", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/aa0e85b53bbb2b4951960efd61d295907eacd629", + "reference": "aa0e85b53bbb2b4951960efd61d295907eacd629", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php73": "~1.0", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.1|^3" }, "type": "library", "autoload": { @@ -3571,7 +3596,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v5.4.3" + "source": "https://github.com/symfony/options-resolver/tree/v6.2.7" }, "funding": [ { @@ -3587,20 +3612,20 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:53:40+00:00" + "time": "2023-02-14T08:44:56+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.25.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "30885182c981ab175d4d034db0f6f469898070ab" + "reference": "5bbc823adecdae860bb64756d639ecfec17b050a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/30885182c981ab175d4d034db0f6f469898070ab", - "reference": "30885182c981ab175d4d034db0f6f469898070ab", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/5bbc823adecdae860bb64756d639ecfec17b050a", + "reference": "5bbc823adecdae860bb64756d639ecfec17b050a", "shasum": "" }, "require": { @@ -3615,7 +3640,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.23-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3653,7 +3678,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.25.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.27.0" }, "funding": [ { @@ -3669,20 +3694,20 @@ "type": "tidelift" } ], - "time": "2021-10-20T20:35:02+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.25.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "81b86b50cf841a64252b439e738e97f4a34e2783" + "reference": "511a08c03c1960e08a883f4cffcacd219b758354" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/81b86b50cf841a64252b439e738e97f4a34e2783", - "reference": "81b86b50cf841a64252b439e738e97f4a34e2783", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/511a08c03c1960e08a883f4cffcacd219b758354", + "reference": "511a08c03c1960e08a883f4cffcacd219b758354", "shasum": "" }, "require": { @@ -3694,7 +3719,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.23-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3734,7 +3759,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.25.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.27.0" }, "funding": [ { @@ -3750,20 +3775,20 @@ "type": "tidelift" } ], - "time": "2021-11-23T21:10:46+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.25.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "8590a5f561694770bdcd3f9b5c69dde6945028e8" + "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/8590a5f561694770bdcd3f9b5c69dde6945028e8", - "reference": "8590a5f561694770bdcd3f9b5c69dde6945028e8", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/19bd1e4fcd5b91116f14d8533c57831ed00571b6", + "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6", "shasum": "" }, "require": { @@ -3775,7 +3800,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.23-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3818,7 +3843,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.25.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.27.0" }, "funding": [ { @@ -3834,20 +3859,20 @@ "type": "tidelift" } ], - "time": "2021-02-19T12:13:01+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.25.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "0abb51d2f102e00a4eefcf46ba7fec406d245825" + "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/0abb51d2f102e00a4eefcf46ba7fec406d245825", - "reference": "0abb51d2f102e00a4eefcf46ba7fec406d245825", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/8ad114f6b39e2c98a8b0e3bd907732c207c2b534", + "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534", "shasum": "" }, "require": { @@ -3862,7 +3887,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.23-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3901,86 +3926,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.25.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2021-11-30T18:21:41+00:00" - }, - { - "name": "symfony/polyfill-php73", - "version": "v1.25.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "cc5db0e22b3cb4111010e48785a97f670b350ca5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/cc5db0e22b3cb4111010e48785a97f670b350ca5", - "reference": "cc5db0e22b3cb4111010e48785a97f670b350ca5", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.23-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php73\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.25.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.27.0" }, "funding": [ { @@ -3996,20 +3942,20 @@ "type": "tidelift" } ], - "time": "2021-06-05T21:20:04+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-php80", - "version": "v1.25.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "4407588e0d3f1f52efb65fbe92babe41f37fe50c" + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/4407588e0d3f1f52efb65fbe92babe41f37fe50c", - "reference": "4407588e0d3f1f52efb65fbe92babe41f37fe50c", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", "shasum": "" }, "require": { @@ -4018,7 +3964,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.23-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4063,7 +4009,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.25.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0" }, "funding": [ { @@ -4079,20 +4025,20 @@ "type": "tidelift" } ], - "time": "2022-03-04T08:16:47+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-php81", - "version": "v1.25.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php81.git", - "reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f" + "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/5de4ba2d41b15f9bd0e19b2ab9674135813ec98f", - "reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f", + "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/707403074c8ea6e2edaf8794b0157a0bfa52157a", + "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a", "shasum": "" }, "require": { @@ -4101,7 +4047,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.23-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4142,7 +4088,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.25.0" + "source": "https://github.com/symfony/polyfill-php81/tree/v1.27.0" }, "funding": [ { @@ -4158,25 +4104,24 @@ "type": "tidelift" } ], - "time": "2021-09-13T13:58:11+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/process", - "version": "v5.4.5", + "version": "v6.2.10", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "95440409896f90a5f85db07a32b517ecec17fa4c" + "reference": "b34cdbc9c5e75d45a3703e63a48ad07aafa8bf2e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/95440409896f90a5f85db07a32b517ecec17fa4c", - "reference": "95440409896f90a5f85db07a32b517ecec17fa4c", + "url": "https://api.github.com/repos/symfony/process/zipball/b34cdbc9c5e75d45a3703e63a48ad07aafa8bf2e", + "reference": "b34cdbc9c5e75d45a3703e63a48ad07aafa8bf2e", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1" }, "type": "library", "autoload": { @@ -4204,7 +4149,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.4.5" + "source": "https://github.com/symfony/process/tree/v6.2.10" }, "funding": [ { @@ -4220,26 +4165,26 @@ "type": "tidelift" } ], - "time": "2022-01-30T18:16:22+00:00" + "time": "2023-04-18T13:56:57+00:00" }, { "name": "symfony/service-contracts", - "version": "v2.5.0", + "version": "v2.5.2", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "1ab11b933cd6bc5464b08e81e2c5b07dec58b0fc" + "reference": "4b426aac47d6427cc1a1d0f7e2ac724627f5966c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/1ab11b933cd6bc5464b08e81e2c5b07dec58b0fc", - "reference": "1ab11b933cd6bc5464b08e81e2c5b07dec58b0fc", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/4b426aac47d6427cc1a1d0f7e2ac724627f5966c", + "reference": "4b426aac47d6427cc1a1d0f7e2ac724627f5966c", "shasum": "" }, "require": { "php": ">=7.2.5", "psr/container": "^1.1", - "symfony/deprecation-contracts": "^2.1" + "symfony/deprecation-contracts": "^2.1|^3" }, "conflict": { "ext-psr": "<1.1|>=2" @@ -4287,7 +4232,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v2.5.0" + "source": "https://github.com/symfony/service-contracts/tree/v2.5.2" }, "funding": [ { @@ -4303,24 +4248,24 @@ "type": "tidelift" } ], - "time": "2021-11-04T16:48:04+00:00" + "time": "2022-05-30T19:17:29+00:00" }, { "name": "symfony/stopwatch", - "version": "v5.4.5", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "4d04b5c24f3c9a1a168a131f6cbe297155bc0d30" + "reference": "f3adc98c1061875dd2edcd45e5b04e63d0e29f8f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/4d04b5c24f3c9a1a168a131f6cbe297155bc0d30", - "reference": "4d04b5c24f3c9a1a168a131f6cbe297155bc0d30", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/f3adc98c1061875dd2edcd45e5b04e63d0e29f8f", + "reference": "f3adc98c1061875dd2edcd45e5b04e63d0e29f8f", "shasum": "" }, "require": { - "php": ">=7.2.5", + "php": ">=8.1", "symfony/service-contracts": "^1|^2|^3" }, "type": "library", @@ -4349,7 +4294,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v5.4.5" + "source": "https://github.com/symfony/stopwatch/tree/v6.2.7" }, "funding": [ { @@ -4365,38 +4310,38 @@ "type": "tidelift" } ], - "time": "2022-02-18T16:06:09+00:00" + "time": "2023-02-14T08:44:56+00:00" }, { "name": "symfony/string", - "version": "v5.4.3", + "version": "v6.2.8", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "92043b7d8383e48104e411bc9434b260dbeb5a10" + "reference": "193e83bbd6617d6b2151c37fff10fa7168ebddef" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/92043b7d8383e48104e411bc9434b260dbeb5a10", - "reference": "92043b7d8383e48104e411bc9434b260dbeb5a10", + "url": "https://api.github.com/repos/symfony/string/zipball/193e83bbd6617d6b2151c37fff10fa7168ebddef", + "reference": "193e83bbd6617d6b2151c37fff10fa7168ebddef", "shasum": "" }, "require": { - "php": ">=7.2.5", + "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", - "symfony/polyfill-php80": "~1.15" + "symfony/polyfill-mbstring": "~1.0" }, "conflict": { - "symfony/translation-contracts": ">=3.0" + "symfony/translation-contracts": "<2.0" }, "require-dev": { - "symfony/error-handler": "^4.4|^5.0|^6.0", - "symfony/http-client": "^4.4|^5.0|^6.0", - "symfony/translation-contracts": "^1.1|^2", - "symfony/var-exporter": "^4.4|^5.0|^6.0" + "symfony/error-handler": "^5.4|^6.0", + "symfony/http-client": "^5.4|^6.0", + "symfony/intl": "^6.2", + "symfony/translation-contracts": "^2.0|^3.0", + "symfony/var-exporter": "^5.4|^6.0" }, "type": "library", "autoload": { @@ -4435,7 +4380,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.4.3" + "source": "https://github.com/symfony/string/tree/v6.2.8" }, "funding": [ { @@ -4451,7 +4396,7 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:53:40+00:00" + "time": "2023-03-20T16:06:02+00:00" }, { "name": "theseer/tokenizer", @@ -4505,21 +4450,21 @@ }, { "name": "webmozart/assert", - "version": "1.10.0", + "version": "1.11.0", "source": { "type": "git", "url": "https://github.com/webmozarts/assert.git", - "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25" + "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/webmozarts/assert/zipball/6964c76c7804814a842473e0c8fd15bab0f18e25", - "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/11cb2199493b2f8a3b53e7f19068fc6aac760991", + "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0", - "symfony/polyfill-ctype": "^1.8" + "ext-ctype": "*", + "php": "^7.2 || ^8.0" }, "conflict": { "phpstan/phpstan": "<0.12.20", @@ -4557,9 +4502,9 @@ ], "support": { "issues": "https://github.com/webmozarts/assert/issues", - "source": "https://github.com/webmozarts/assert/tree/1.10.0" + "source": "https://github.com/webmozarts/assert/tree/1.11.0" }, - "time": "2021-03-09T10:59:23+00:00" + "time": "2022-06-03T18:03:27+00:00" } ], "aliases": [], @@ -4568,9 +4513,9 @@ "prefer-stable": true, "prefer-lowest": false, "platform": { - "php": ">=7.4 || >=8.0", + "php": ">=8.1", "ext-json": "*" }, "platform-dev": [], - "plugin-api-version": "2.0.0" + "plugin-api-version": "2.1.0" } diff --git a/src/Factory/FactoryFormatterProviderTrait.php b/src/Factory/FactoryFormatterProviderTrait.php index 3ec7340..c9b15c3 100755 --- a/src/Factory/FactoryFormatterProviderTrait.php +++ b/src/Factory/FactoryFormatterProviderTrait.php @@ -11,28 +11,16 @@ use Psr\Container\ContainerInterface; use Psr\Container\NotFoundExceptionInterface; -/** - * Trait used to allow factories to resolve a Formatter from configuration options - * - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory - */ trait FactoryFormatterProviderTrait { /** - * @param ContainerInterface $container - * @param string|FormatterInterface $formatter - * @param string $serviceName - * - * @return FormatterInterface - * * @throws ServiceNotCreatedException * @throws ContainerExceptionInterface * @throws NotFoundExceptionInterface */ private function getFormatter( ContainerInterface $container, - $formatter, + string|FormatterInterface $formatter, string $serviceName ): FormatterInterface { if (is_string($formatter)) { diff --git a/src/Factory/FactoryLoggerProviderTrait.php b/src/Factory/FactoryLoggerProviderTrait.php index 2deb05a..6889bce 100755 --- a/src/Factory/FactoryLoggerProviderTrait.php +++ b/src/Factory/FactoryLoggerProviderTrait.php @@ -14,25 +14,12 @@ use Psr\Log\LoggerInterface; use Psr\Log\NullLogger; -/** - * Provides service factories the ability to resolve loggers from the container - * - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory - */ trait FactoryLoggerProviderTrait { - /** - * @var string - */ protected string $loggerService = Logger::class; /** - * @param ContainerInterface|ServiceLocatorInterface $container - * @param LoggerInterface|string|array $logger - * @param string $serviceName - * - * @return LoggerInterface + * @param LoggerInterface|string|array $logger * * @throws ServiceNotCreatedException * @throws ContainerExceptionInterface @@ -72,9 +59,6 @@ public function getLogger(ContainerInterface $container, $logger, string $servic return $logger; } - /** - * @param string $loggerService - */ public function setLoggerService(string $loggerService): void { $this->loggerService = $loggerService; diff --git a/src/Factory/Formatter/AbstractNormalizerFormatterFactory.php b/src/Factory/Formatter/AbstractNormalizerFormatterFactory.php index a22332a..2a9a4c3 100755 --- a/src/Factory/Formatter/AbstractNormalizerFormatterFactory.php +++ b/src/Factory/Formatter/AbstractNormalizerFormatterFactory.php @@ -7,17 +7,10 @@ use Arp\LaminasFactory\AbstractFactory; use Monolog\Formatter\NormalizerFormatter; -/** - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Formatter - */ abstract class AbstractNormalizerFormatterFactory extends AbstractFactory { /** - * Configure the normalizer formatter with the provided $options - * - * @param NormalizerFormatter $formatter - * @param array $options + * @param array $options */ protected function configureNormalizerFormatter(NormalizerFormatter $formatter, array $options): void { diff --git a/src/Factory/Formatter/HtmlFormatterFactory.php b/src/Factory/Formatter/HtmlFormatterFactory.php index 49773e6..70ab128 100755 --- a/src/Factory/Formatter/HtmlFormatterFactory.php +++ b/src/Factory/Formatter/HtmlFormatterFactory.php @@ -9,19 +9,9 @@ use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerInterface; -/** - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Formatter - */ final class HtmlFormatterFactory extends AbstractNormalizerFormatterFactory { /** - * @param ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return HtmlFormatter - * * @throws ServiceNotCreatedException * @throws ContainerExceptionInterface */ diff --git a/src/Factory/Formatter/JsonFormatterFactory.php b/src/Factory/Formatter/JsonFormatterFactory.php index 61a0f87..8d83705 100755 --- a/src/Factory/Formatter/JsonFormatterFactory.php +++ b/src/Factory/Formatter/JsonFormatterFactory.php @@ -9,19 +9,9 @@ use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerInterface; -/** - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Formatter - */ final class JsonFormatterFactory extends AbstractNormalizerFormatterFactory { /** - * @param ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return JsonFormatter - * * @throws ServiceNotCreatedException * @throws ContainerExceptionInterface */ diff --git a/src/Factory/Formatter/LineFormatterFactory.php b/src/Factory/Formatter/LineFormatterFactory.php index 69da2f4..3590e78 100755 --- a/src/Factory/Formatter/LineFormatterFactory.php +++ b/src/Factory/Formatter/LineFormatterFactory.php @@ -9,21 +9,9 @@ use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerInterface; -/** - * Create a new LineFormatter instance based on configuration options - * - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Formatter - */ final class LineFormatterFactory extends AbstractNormalizerFormatterFactory { /** - * @param ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return LineFormatter - * * @throws ServiceNotCreatedException * @throws ContainerExceptionInterface */ diff --git a/src/Factory/Handler/ErrorLogHandlerFactory.php b/src/Factory/Handler/ErrorLogHandlerFactory.php index 9592c3a..fbd4b38 100755 --- a/src/Factory/Handler/ErrorLogHandlerFactory.php +++ b/src/Factory/Handler/ErrorLogHandlerFactory.php @@ -13,21 +13,12 @@ use Psr\Log\LogLevel; /** - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Handler - * * @phpstan-import-type Level from \Monolog\Logger * @phpstan-import-type LevelName from \Monolog\Logger */ final class ErrorLogHandlerFactory extends AbstractFactory { /** - * @param ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return ErrorLogHandler - * * @throws ServiceNotCreatedException * @throws ContainerExceptionInterface */ diff --git a/src/Factory/Handler/NoopHandlerFactory.php b/src/Factory/Handler/NoopHandlerFactory.php index e24e31e..f1f4e28 100755 --- a/src/Factory/Handler/NoopHandlerFactory.php +++ b/src/Factory/Handler/NoopHandlerFactory.php @@ -8,19 +8,8 @@ use Monolog\Handler\NoopHandler; use Psr\Container\ContainerInterface; -/** - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Handler - */ final class NoopHandlerFactory extends AbstractFactory { - /** - * @param ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return NoopHandler - */ public function __invoke(ContainerInterface $container, string $requestedName, array $options = null): NoopHandler { return new NoopHandler(); diff --git a/src/Factory/Handler/NullHandlerFactory.php b/src/Factory/Handler/NullHandlerFactory.php index 2d634ef..d02ede3 100755 --- a/src/Factory/Handler/NullHandlerFactory.php +++ b/src/Factory/Handler/NullHandlerFactory.php @@ -11,19 +11,9 @@ use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerInterface; -/** - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Handler - */ final class NullHandlerFactory extends AbstractFactory { /** - * @param ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return NullHandler - * * @throws ServiceNotCreatedException * @throws ContainerExceptionInterface */ diff --git a/src/Factory/Handler/PsrHandlerFactory.php b/src/Factory/Handler/PsrHandlerFactory.php index a9138f9..e92ae7b 100755 --- a/src/Factory/Handler/PsrHandlerFactory.php +++ b/src/Factory/Handler/PsrHandlerFactory.php @@ -8,7 +8,6 @@ use Arp\LaminasMonolog\Factory\FactoryFormatterProviderTrait; use Arp\LaminasMonolog\Factory\FactoryLoggerProviderTrait; use Laminas\ServiceManager\Exception\ServiceNotCreatedException; -use Laminas\ServiceManager\ServiceLocatorInterface; use Monolog\Handler\PsrHandler; use Monolog\Logger; use Psr\Container\ContainerExceptionInterface; @@ -16,9 +15,6 @@ use Psr\Log\LogLevel; /** - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Handler - * * @phpstan-import-type Level from \Monolog\Logger * @phpstan-import-type LevelName from \Monolog\Logger */ @@ -28,12 +24,6 @@ final class PsrHandlerFactory extends AbstractFactory use FactoryFormatterProviderTrait; /** - * @param ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return PsrHandler - * * @throws ServiceNotCreatedException * @throws ContainerExceptionInterface */ diff --git a/src/Factory/Handler/StreamHandlerFactory.php b/src/Factory/Handler/StreamHandlerFactory.php index d52a931..c75ad75 100755 --- a/src/Factory/Handler/StreamHandlerFactory.php +++ b/src/Factory/Handler/StreamHandlerFactory.php @@ -5,27 +5,21 @@ namespace Arp\LaminasMonolog\Factory\Handler; use Arp\LaminasFactory\AbstractFactory; +use Arp\LaminasMonolog\Factory\FactoryFormatterProviderTrait; use Laminas\ServiceManager\Exception\ServiceNotCreatedException; -use Monolog\Formatter\FormatterInterface; use Monolog\Formatter\LineFormatter; use Monolog\Handler\StreamHandler; use Monolog\Logger; +use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerInterface; -/** - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Handler - */ final class StreamHandlerFactory extends AbstractFactory { + use FactoryFormatterProviderTrait; + /** - * @param ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return StreamHandler - * * @throws ServiceNotCreatedException + * @throws ContainerExceptionInterface */ public function __invoke(ContainerInterface $container, string $requestedName, array $options = null): StreamHandler { @@ -59,46 +53,10 @@ public function __invoke(ContainerInterface $container, string $requestedName, a $options['use_locking'] ?? true ); - $formatter = $this->getFormatter( - $container, - $options['formatter'] ?? LineFormatter::class, - $requestedName + $streamHandler->setFormatter( + $this->getFormatter($container, $options['formatter'] ?? LineFormatter::class, $requestedName), ); - $streamHandler->setFormatter($formatter); - return $streamHandler; } - - /** - * @param ContainerInterface $container - * @param string|FormatterInterface $formatter - * @param string $serviceName - * - * @return FormatterInterface - * - * @throws ServiceNotCreatedException - */ - private function getFormatter( - ContainerInterface $container, - $formatter, - string $serviceName - ): FormatterInterface { - if (is_string($formatter)) { - $formatter = $this->getService($container, $formatter, $serviceName); - } - - if (!$formatter instanceof FormatterInterface) { - throw new ServiceNotCreatedException( - sprintf( - 'The Monolog formatter must be an object of type \'%s\'; \'%s\' provided for service \'%s\'', - FormatterInterface::class, - is_object($formatter) ? get_class($formatter) : gettype($formatter), - $serviceName, - ) - ); - } - - return $formatter; - } } diff --git a/src/Factory/Handler/SyslogHandlerFactory.php b/src/Factory/Handler/SyslogHandlerFactory.php index 5e49313..271faca 100755 --- a/src/Factory/Handler/SyslogHandlerFactory.php +++ b/src/Factory/Handler/SyslogHandlerFactory.php @@ -8,22 +8,14 @@ use Laminas\ServiceManager\Exception\ServiceNotCreatedException; use Monolog\Handler\SyslogHandler; use Monolog\Logger; +use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerInterface; -/** - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Handler - */ final class SyslogHandlerFactory extends AbstractFactory { /** - * @param ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return SyslogHandler - * * @throws ServiceNotCreatedException + * @throws ContainerExceptionInterface */ public function __invoke( ContainerInterface $container, @@ -43,7 +35,7 @@ public function __invoke( $ident, $options['facility'] ?? LOG_USER, $options['level'] ?? Logger::DEBUG, - isset($options['bubble']) ? (bool)$options['bubble'] : true, + !isset($options['bubble']) || (bool)$options['bubble'], $options['logopts'] ?? LOG_PID ); } diff --git a/src/Factory/LoggerFactory.php b/src/Factory/LoggerFactory.php index aa66771..5a4691f 100755 --- a/src/Factory/LoggerFactory.php +++ b/src/Factory/LoggerFactory.php @@ -10,24 +10,16 @@ use Monolog\Handler\HandlerInterface; use Monolog\Logger; use Monolog\Processor\ProcessorInterface; +use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerInterface; -/** - * Factory class used to create a new instance of a Monolog\Logger based on configuration options - * - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory - */ class LoggerFactory extends AbstractFactory { /** - * @param ServiceLocatorInterface&ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return Logger + * @param ContainerInterface&ServiceLocatorInterface $container * * @throws ServiceNotCreatedException + * @throws ContainerExceptionInterface */ public function __invoke(ContainerInterface $container, string $requestedName, array $options = null): Logger { @@ -45,12 +37,12 @@ public function __invoke(ContainerInterface $container, string $requestedName, a /** * @param ServiceLocatorInterface&ContainerInterface $container - * @param array $handlerConfigs - * @param string $serviceName + * @param array $handlerConfigs * * @return array * * @throws ServiceNotCreatedException + * @throws ContainerExceptionInterface */ private function getHandlers( ServiceLocatorInterface $container, @@ -89,12 +81,12 @@ private function getHandlers( /** * @param ServiceLocatorInterface&ContainerInterface $container - * @param array $processorConfigs - * @param string $serviceName + * @param array $processorConfigs * * @return array * * @throws ServiceNotCreatedException + * @throws ContainerExceptionInterface */ private function getProcessors( ServiceLocatorInterface $container, diff --git a/src/Factory/Processor/GitProcessorFactory.php b/src/Factory/Processor/GitProcessorFactory.php index 27fd8b8..77db401 100755 --- a/src/Factory/Processor/GitProcessorFactory.php +++ b/src/Factory/Processor/GitProcessorFactory.php @@ -8,22 +8,14 @@ use Laminas\ServiceManager\Exception\ServiceNotCreatedException; use Monolog\Logger; use Monolog\Processor\GitProcessor; +use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerInterface; -/** - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Processor - */ final class GitProcessorFactory extends AbstractFactory { /** - * @param ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return GitProcessor - * * @throws ServiceNotCreatedException + * @throws ContainerExceptionInterface */ public function __invoke(ContainerInterface $container, string $requestedName, array $options = null): GitProcessor { diff --git a/src/Factory/Processor/MemoryPeakUsageProcessorFactory.php b/src/Factory/Processor/MemoryPeakUsageProcessorFactory.php index 89ebec4..576d9b1 100755 --- a/src/Factory/Processor/MemoryPeakUsageProcessorFactory.php +++ b/src/Factory/Processor/MemoryPeakUsageProcessorFactory.php @@ -7,22 +7,14 @@ use Arp\LaminasFactory\AbstractFactory; use Laminas\ServiceManager\Exception\ServiceNotCreatedException; use Monolog\Processor\MemoryPeakUsageProcessor; +use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerInterface; -/** - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Processor - */ final class MemoryPeakUsageProcessorFactory extends AbstractFactory { /** - * @param ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return MemoryPeakUsageProcessor - * * @throws ServiceNotCreatedException + * @throws ContainerExceptionInterface */ public function __invoke( ContainerInterface $container, diff --git a/src/Factory/Processor/MemoryUsageProcessorFactory.php b/src/Factory/Processor/MemoryUsageProcessorFactory.php index c1b1b01..c7c0a1f 100755 --- a/src/Factory/Processor/MemoryUsageProcessorFactory.php +++ b/src/Factory/Processor/MemoryUsageProcessorFactory.php @@ -7,22 +7,14 @@ use Arp\LaminasFactory\AbstractFactory; use Laminas\ServiceManager\Exception\ServiceNotCreatedException; use Monolog\Processor\MemoryUsageProcessor; +use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerInterface; -/** - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Processor - */ final class MemoryUsageProcessorFactory extends AbstractFactory { /** - * @param ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return MemoryUsageProcessor - * * @throws ServiceNotCreatedException + * @throws ContainerExceptionInterface */ public function __invoke( ContainerInterface $container, diff --git a/src/Factory/Processor/PsrLogMessageProcessorFactory.php b/src/Factory/Processor/PsrLogMessageProcessorFactory.php index 354f44b..eeba02c 100755 --- a/src/Factory/Processor/PsrLogMessageProcessorFactory.php +++ b/src/Factory/Processor/PsrLogMessageProcessorFactory.php @@ -7,22 +7,14 @@ use Arp\LaminasFactory\AbstractFactory; use Laminas\ServiceManager\Exception\ServiceNotCreatedException; use Monolog\Processor\PsrLogMessageProcessor; +use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerInterface; -/** - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Processor - */ final class PsrLogMessageProcessorFactory extends AbstractFactory { /** - * @param ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return PsrLogMessageProcessor - * * @throws ServiceNotCreatedException + * @throws ContainerExceptionInterface */ public function __invoke( ContainerInterface $container, diff --git a/src/Factory/Processor/TagProcessorFactory.php b/src/Factory/Processor/TagProcessorFactory.php index 6dfc4f3..e289cef 100755 --- a/src/Factory/Processor/TagProcessorFactory.php +++ b/src/Factory/Processor/TagProcessorFactory.php @@ -7,22 +7,14 @@ use Arp\LaminasFactory\AbstractFactory; use Laminas\ServiceManager\Exception\ServiceNotCreatedException; use Monolog\Processor\TagProcessor; +use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerInterface; -/** - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Processor - */ final class TagProcessorFactory extends AbstractFactory { /** - * @param ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return TagProcessor - * * @throws ServiceNotCreatedException + * @throws ContainerExceptionInterface */ public function __invoke(ContainerInterface $container, string $requestedName, array $options = null): TagProcessor { diff --git a/src/Factory/Processor/UidProcessorFactory.php b/src/Factory/Processor/UidProcessorFactory.php index f6753ed..fc091ac 100755 --- a/src/Factory/Processor/UidProcessorFactory.php +++ b/src/Factory/Processor/UidProcessorFactory.php @@ -7,22 +7,14 @@ use Arp\LaminasFactory\AbstractFactory; use Laminas\ServiceManager\Exception\ServiceNotCreatedException; use Monolog\Processor\UidProcessor; +use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerInterface; -/** - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Processor - */ final class UidProcessorFactory extends AbstractFactory { /** - * @param ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return UidProcessor - * * @throws ServiceNotCreatedException + * @throws ContainerExceptionInterface */ public function __invoke(ContainerInterface $container, string $requestedName, array $options = null): UidProcessor { diff --git a/src/Factory/Processor/WebProcessorFactory.php b/src/Factory/Processor/WebProcessorFactory.php index da8201e..41f0f75 100755 --- a/src/Factory/Processor/WebProcessorFactory.php +++ b/src/Factory/Processor/WebProcessorFactory.php @@ -7,12 +7,9 @@ use Arp\LaminasFactory\AbstractFactory; use Laminas\ServiceManager\Exception\ServiceNotCreatedException; use Monolog\Processor\WebProcessor; +use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerInterface; -/** - * @author Alex Patterson - * @package Arp\LaminasMonolog\Factory\Processor - */ final class WebProcessorFactory extends AbstractFactory { /** @@ -27,13 +24,8 @@ final class WebProcessorFactory extends AbstractFactory ]; /** - * @param ContainerInterface $container - * @param string $requestedName - * @param array|null $options - * - * @return WebProcessor - * * @throws ServiceNotCreatedException + * @throws ContainerExceptionInterface */ public function __invoke(ContainerInterface $container, string $requestedName, array $options = null): WebProcessor { diff --git a/src/Module.php b/src/Module.php index 82c4494..cd4d31c 100755 --- a/src/Module.php +++ b/src/Module.php @@ -4,10 +4,6 @@ namespace Arp\LaminasMonolog; -/** - * @author Alex Patterson - * @package Arp\LaminasMonolog - */ class Module { /** diff --git a/test/unit/Factory/Formatter/HtmlFormatterFactoryTest.php b/test/unit/Factory/Formatter/HtmlFormatterFactoryTest.php index 2da2411..abf4f6a 100755 --- a/test/unit/Factory/Formatter/HtmlFormatterFactoryTest.php +++ b/test/unit/Factory/Formatter/HtmlFormatterFactoryTest.php @@ -16,9 +16,6 @@ /** * @covers \Arp\LaminasMonolog\Factory\Formatter\HtmlFormatterFactory * @covers \Arp\LaminasMonolog\Factory\Formatter\AbstractNormalizerFormatterFactory - * - * @author Alex Patterson - * @package ArpTest\LaminasMonolog\Factory\Formatter */ final class HtmlFormatterFactoryTest extends TestCase { diff --git a/test/unit/Factory/Formatter/JsonFormatterFactoryTest.php b/test/unit/Factory/Formatter/JsonFormatterFactoryTest.php index 3cefcfc..f09f5fb 100755 --- a/test/unit/Factory/Formatter/JsonFormatterFactoryTest.php +++ b/test/unit/Factory/Formatter/JsonFormatterFactoryTest.php @@ -16,9 +16,6 @@ /** * @covers \Arp\LaminasMonolog\Factory\Formatter\JsonFormatterFactory * @covers \Arp\LaminasMonolog\Factory\Formatter\AbstractNormalizerFormatterFactory - * - * @author Alex Patterson - * @package ArpTest\LaminasMonolog\Factory\Formatter */ final class JsonFormatterFactoryTest extends TestCase { diff --git a/test/unit/Factory/Formatter/LineFormatterFactoryTest.php b/test/unit/Factory/Formatter/LineFormatterFactoryTest.php index 0f3c177..5fc44fa 100755 --- a/test/unit/Factory/Formatter/LineFormatterFactoryTest.php +++ b/test/unit/Factory/Formatter/LineFormatterFactoryTest.php @@ -16,9 +16,6 @@ /** * @covers \Arp\LaminasMonolog\Factory\Formatter\LineFormatterFactory * @covers \Arp\LaminasMonolog\Factory\Formatter\AbstractNormalizerFormatterFactory - * - * @author Alex Patterson - * @package ArpTest\LaminasMonolog\Factory\Formatter */ final class LineFormatterFactoryTest extends TestCase { diff --git a/test/unit/Factory/Handler/ErrorLogHandlerFactoryTest.php b/test/unit/Factory/Handler/ErrorLogHandlerFactoryTest.php index e59593d..5ed373e 100755 --- a/test/unit/Factory/Handler/ErrorLogHandlerFactoryTest.php +++ b/test/unit/Factory/Handler/ErrorLogHandlerFactoryTest.php @@ -15,9 +15,6 @@ /** * @covers \Arp\LaminasMonolog\Factory\Handler\ErrorLogHandlerFactory - * - * @author Alex Patterson - * @package ArpTest\LaminasMonolog\Factory\Handler */ final class ErrorLogHandlerFactoryTest extends TestCase { @@ -26,9 +23,6 @@ final class ErrorLogHandlerFactoryTest extends TestCase */ private ContainerInterface $container; - /** - * Prepare the test case dependencies - */ public function setUp(): void { $this->container = $this->createMock(ContainerInterface::class); diff --git a/test/unit/Factory/Handler/NoopHandlerFactoryTest.php b/test/unit/Factory/Handler/NoopHandlerFactoryTest.php new file mode 100755 index 0000000..6ada2c4 --- /dev/null +++ b/test/unit/Factory/Handler/NoopHandlerFactoryTest.php @@ -0,0 +1,41 @@ +container = $this->createMock(ContainerInterface::class); + } + + public function testImplementsFactoryInterface(): void + { + $factory = new NoopHandlerFactory(); + $this->assertInstanceOf(FactoryInterface::class, $factory); + } + + /** + * @throws ServiceNotCreatedException + */ + public function testInvoke(): void + { + $factory = new NoopHandlerFactory(); + + $this->assertInstanceOf(NoopHandler::class, $factory($this->container, NoopHandler::class)); + } +} diff --git a/test/unit/Factory/Handler/NullHandlerFactoryTest.php b/test/unit/Factory/Handler/NullHandlerFactoryTest.php index f6900c0..e54cdf2 100755 --- a/test/unit/Factory/Handler/NullHandlerFactoryTest.php +++ b/test/unit/Factory/Handler/NullHandlerFactoryTest.php @@ -16,9 +16,6 @@ /** * @covers \Arp\LaminasMonolog\Factory\Handler\NullHandlerFactory - * - * @author Alex Patterson - * @package Factory\Handler */ final class NullHandlerFactoryTest extends TestCase { @@ -27,9 +24,6 @@ final class NullHandlerFactoryTest extends TestCase */ private ContainerInterface $container; - /** - * Prepare the test case dependencies - */ public function setUp(): void { $this->container = $this->createMock(ContainerInterface::class); diff --git a/test/unit/Factory/Handler/PsrHandlerFactoryTest.php b/test/unit/Factory/Handler/PsrHandlerFactoryTest.php index 007a6de..8acea6d 100755 --- a/test/unit/Factory/Handler/PsrHandlerFactoryTest.php +++ b/test/unit/Factory/Handler/PsrHandlerFactoryTest.php @@ -7,6 +7,7 @@ use Arp\LaminasFactory\FactoryInterface; use Arp\LaminasMonolog\Factory\Handler\PsrHandlerFactory; use Laminas\ServiceManager\Exception\ServiceNotCreatedException; +use Monolog\Formatter\FormatterInterface; use Monolog\Handler\HandlerInterface; use Monolog\Handler\PsrHandler; use Monolog\Logger; @@ -20,9 +21,6 @@ * @covers \Arp\LaminasMonolog\Factory\Handler\PsrHandlerFactory * @covers \Arp\LaminasMonolog\Factory\FactoryLoggerProviderTrait * @covers \Arp\LaminasMonolog\Factory\FactoryFormatterProviderTrait - * - * @author Alex Patterson - * @package ArpTest\LaminasMonolog\Factory\Handler */ final class PsrHandlerFactoryTest extends TestCase { @@ -31,9 +29,6 @@ final class PsrHandlerFactoryTest extends TestCase */ private ContainerInterface $container; - /** - * Prepare the test case dependencies - */ public function setUp(): void { $this->container = $this->createMock(ContainerInterface::class); @@ -105,6 +100,64 @@ public function getInvokeWillReturnConfiguredPsrHandlerInstanceData(): array 'logger' => $this->createMock(LoggerInterface::class), 'handler' => $this->createMock(HandlerInterface::class), ] + ], + ]; + } + + /** + * @dataProvider getInvokeWillConfigureFormatterData + * + * @param array $options + * + * @throws ContainerExceptionInterface + * @throws ServiceNotCreatedException + */ + public function testInvokeWillConfigureFormatter(array $options): void + { + $options = array_merge( + [ + 'logger' => $this->createMock(LoggerInterface::class), + ], + $options, + ); + + $factory = new PsrHandlerFactory(); + + if (is_string($options['formatter'])) { + $this->container->expects($this->once()) + ->method('has') + ->with($options['formatter']) + ->willReturn(true); + + /** @var FormatterInterface&MockObject $formatter */ + $formatter = $this->createMock(FormatterInterface::class); + + $this->container->expects($this->once()) + ->method('get') + ->with($options['formatter']) + ->willReturn($formatter); + } + + $handler = $factory($this->container, PsrHandler::class, $options); + + $this->assertInstanceOf(PsrHandler::class, $handler); + } + + /** + * @return array>> + */ + public function getInvokeWillConfigureFormatterData(): array + { + return [ + [ + [ + 'formatter' => $this->createMock(FormatterInterface::class), + ], + ], + [ + [ + 'formatter' => 'FooFormatter', + ], ] ]; } diff --git a/test/unit/Factory/Handler/StreamHandlerFactoryTest.php b/test/unit/Factory/Handler/StreamHandlerFactoryTest.php new file mode 100755 index 0000000..e4d6c4d --- /dev/null +++ b/test/unit/Factory/Handler/StreamHandlerFactoryTest.php @@ -0,0 +1,141 @@ +container = $this->createMock(ContainerInterface::class); + } + + public function testImplementsFactoryInterface(): void + { + $factory = new StreamHandlerFactory(); + $this->assertInstanceOf(FactoryInterface::class, $factory); + } + + /** + * @throws ServiceNotCreatedException + * @throws ContainerExceptionInterface + */ + public function testMissingStreamConfigurationThrowsServiceNotCreatedException(): void + { + $factory = new StreamHandlerFactory(); + + $requestedName = StreamHandlerFactory::class; + + $this->expectException(ServiceNotCreatedException::class); + $this->expectExceptionMessage( + sprintf('The required \'stream\' configuration option is missing for service \'%s\'', $requestedName) + ); + + $factory($this->container, $requestedName, []); + } + + /** + * @throws ContainerExceptionInterface + */ + public function testInvalidClassNameConfigurationThrowsServiceNotCreatedException(): void + { + $factory = new StreamHandlerFactory(); + + $requestedName = StreamHandlerFactory::class; + + $options = [ + 'class_name' => \stdClass::class, + 'stream' => 'stream value', + ]; + + $this->expectException(ServiceNotCreatedException::class); + $this->expectExceptionMessage( + sprintf( + 'The stream handler provided via configuration option \'class_name\' is invalid: ' + . 'The stream handler class must extend from \'%s\'; \'%s\' provided for service \'%s\'', + StreamHandler::class, + $options['class_name'], + $requestedName, + ), + ); + + $factory($this->container, $requestedName, $options); + } + + /** + * @dataProvider getInvokeData + * + * @param array $options + * + * @throws ContainerExceptionInterface + * @throws ServiceNotCreatedException + */ + public function testInvoke(array $options): void + { + $requestedName = StreamHandler::class; + $options = array_merge( + [ + 'stream' => 'Mock stream value', + ], + $options, + ); + + $factory = new StreamHandlerFactory(); + + $this->container->expects($this->once()) + ->method('has') + ->with($options['formatter'] ?? LineFormatter::class) + ->willReturn(true); + + /** @var FormatterInterface&MockObject $formatter */ + $formatter = $this->createMock(FormatterInterface::class); + $this->container->expects($this->once()) + ->method('get') + ->with($options['formatter'] ?? LineFormatter::class) + ->willReturn($formatter); + + $this->assertInstanceOf(StreamHandler::class, $factory($this->container, $requestedName, $options)); + } + + /** + * @return array>> + */ + public function getInvokeData(): array + { + return [ + [ + [], + ], + [ + [ + 'level' => Logger::CRITICAL, + 'bubble' => false, + ], + ], + [ + [ + 'file_permission' => 655, + 'use_locking' => false, + ], + ] + ]; + } +} diff --git a/test/unit/Factory/Handler/SyslogHandlerFactoryTest.php b/test/unit/Factory/Handler/SyslogHandlerFactoryTest.php new file mode 100755 index 0000000..eef5463 --- /dev/null +++ b/test/unit/Factory/Handler/SyslogHandlerFactoryTest.php @@ -0,0 +1,21 @@ +assertInstanceOf(FactoryInterface::class, $handler); + } +} diff --git a/test/unit/Factory/LoggerFactoryTest.php b/test/unit/Factory/LoggerFactoryTest.php index a2e5268..47caf51 100755 --- a/test/unit/Factory/LoggerFactoryTest.php +++ b/test/unit/Factory/LoggerFactoryTest.php @@ -17,9 +17,6 @@ /** * @covers \Arp\LaminasMonolog\Factory\LoggerFactory - * - * @author Alex Patterson - * @package ArpTest\LaminasMonolog\Factory */ final class LoggerFactoryTest extends TestCase { @@ -28,9 +25,6 @@ final class LoggerFactoryTest extends TestCase */ private $container; - /** - * Prepare the test case dependencies - */ public function setUp(): void { $this->container = $this->createMock(ServiceLocatorInterface::class);