diff --git a/.gitignore b/.gitignore
index 0d68d412..0a7692e7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,4 @@
-.phpunit.result.cache
+/.phpunit.result.cache
/clover.xml
/coveralls-upload.json
/docs/html/
@@ -7,4 +7,5 @@
/phpunit.xml
/vendor/
/test/_files/test.maildir/
-.phpcs-cache
+/.phpcs-cache
+/.phpunit.cache/
diff --git a/composer.json b/composer.json
index 2182b9b8..e939b024 100644
--- a/composer.json
+++ b/composer.json
@@ -13,7 +13,7 @@
"laminas/laminas-loader": "^2.9.0",
"laminas/laminas-mime": "^2.11.0",
"laminas/laminas-stdlib": "^3.17.0",
- "laminas/laminas-validator": "^2.30.1",
+ "laminas/laminas-validator": "^2.31.0",
"symfony/polyfill-mbstring": "^1.27.0",
"webmozart/assert": "^1.11.0",
"symfony/polyfill-intl-idn": "^1.27.0"
@@ -21,16 +21,16 @@
"require-dev": {
"laminas/laminas-coding-standard": "~2.5.0",
"laminas/laminas-crypt": "^3.10.0",
- "laminas/laminas-db": "^2.17",
- "laminas/laminas-servicemanager": "^3.20",
- "phpunit/phpunit": "^9.6.5",
+ "laminas/laminas-db": "^2.18",
+ "laminas/laminas-servicemanager": "^3.21",
+ "phpunit/phpunit": "^10.1.3",
"psalm/plugin-phpunit": "^0.18.4",
- "symfony/process": "^6.2.7",
- "vimeo/psalm": "^5.8"
+ "symfony/process": "^6.2.10",
+ "vimeo/psalm": "^5.11"
},
"suggest": {
"laminas/laminas-crypt": "^3.10 Crammd5 support in SMTP Auth",
- "laminas/laminas-servicemanager": "^3.20 when using SMTP to deliver messages"
+ "laminas/laminas-servicemanager": "^3.21 when using SMTP to deliver messages"
},
"config": {
"sort-packages": true,
diff --git a/composer.lock b/composer.lock
index a057e86b..602ac21a 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "adb400a33e6b6fbffb3045bf4686266f",
+ "content-hash": "ff7a7449f0dedf8f339662493072a3a5",
"packages": [
{
"name": "laminas/laminas-loader",
@@ -125,26 +125,26 @@
},
{
"name": "laminas/laminas-servicemanager",
- "version": "3.20.0",
+ "version": "3.21.0",
"source": {
"type": "git",
"url": "https://github.com/laminas/laminas-servicemanager.git",
- "reference": "bc2c2cbe2dd90db8b9d16b0618f542692b76ab59"
+ "reference": "625f2aa3bc6dd02688b2da5155b3a69870812bda"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laminas/laminas-servicemanager/zipball/bc2c2cbe2dd90db8b9d16b0618f542692b76ab59",
- "reference": "bc2c2cbe2dd90db8b9d16b0618f542692b76ab59",
+ "url": "https://api.github.com/repos/laminas/laminas-servicemanager/zipball/625f2aa3bc6dd02688b2da5155b3a69870812bda",
+ "reference": "625f2aa3bc6dd02688b2da5155b3a69870812bda",
"shasum": ""
},
"require": {
- "laminas/laminas-stdlib": "^3.2.1",
- "php": "~8.0.0 || ~8.1.0 || ~8.2.0",
+ "laminas/laminas-stdlib": "^3.17",
+ "php": "~8.1.0 || ~8.2.0",
"psr/container": "^1.0"
},
"conflict": {
"ext-psr": "*",
- "laminas/laminas-code": "<3.3.1",
+ "laminas/laminas-code": "<4.10.0",
"zendframework/zend-code": "<3.3.1",
"zendframework/zend-servicemanager": "*"
},
@@ -156,18 +156,19 @@
},
"require-dev": {
"composer/package-versions-deprecated": "^1.11.99.5",
- "laminas/laminas-coding-standard": "~2.4.0",
+ "friendsofphp/proxy-manager-lts": "^1.0.14",
+ "laminas/laminas-code": "^4.10.0",
+ "laminas/laminas-coding-standard": "~2.5.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"
+ "mikey179/vfsstream": "^1.6.11",
+ "phpbench/phpbench": "^1.2.9",
+ "phpunit/phpunit": "^10.0.17",
+ "psalm/plugin-phpunit": "^0.18.4",
+ "vimeo/psalm": "^5.8.0"
},
"suggest": {
- "ocramius/proxy-manager": "ProxyManager ^2.1.1 to handle lazy initialization of services"
+ "friendsofphp/proxy-manager-lts": "ProxyManager ^2.1.1 to handle lazy initialization of services"
},
"bin": [
"bin/generate-deps-for-config-factory",
@@ -211,7 +212,7 @@
"type": "community_bridge"
}
],
- "time": "2022-12-01T17:03:38+00:00"
+ "time": "2023-05-14T12:24:54+00:00"
},
{
"name": "laminas/laminas-stdlib",
@@ -274,40 +275,40 @@
},
{
"name": "laminas/laminas-validator",
- "version": "2.30.1",
+ "version": "2.31.0",
"source": {
"type": "git",
"url": "https://github.com/laminas/laminas-validator.git",
- "reference": "b7d217b5e4951955fda9a3a5ada91b717b5c8d5c"
+ "reference": "7dc274aa5afd5e23be0dbea13363e3d66ba5808b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laminas/laminas-validator/zipball/b7d217b5e4951955fda9a3a5ada91b717b5c8d5c",
- "reference": "b7d217b5e4951955fda9a3a5ada91b717b5c8d5c",
+ "url": "https://api.github.com/repos/laminas/laminas-validator/zipball/7dc274aa5afd5e23be0dbea13363e3d66ba5808b",
+ "reference": "7dc274aa5afd5e23be0dbea13363e3d66ba5808b",
"shasum": ""
},
"require": {
- "laminas/laminas-servicemanager": "^3.12.0",
+ "laminas/laminas-servicemanager": "^3.21.0",
"laminas/laminas-stdlib": "^3.13",
- "php": "~8.0.0 || ~8.1.0 || ~8.2.0",
- "psr/http-message": "^1.0.1"
+ "php": "~8.1.0 || ~8.2.0",
+ "psr/http-message": "^1.0.1 || ^2.0.0"
},
"conflict": {
"zendframework/zend-validator": "*"
},
"require-dev": {
- "laminas/laminas-coding-standard": "^2.4.0",
- "laminas/laminas-db": "^2.16",
- "laminas/laminas-filter": "^2.28.1",
+ "laminas/laminas-coding-standard": "^2.5",
+ "laminas/laminas-db": "^2.18",
+ "laminas/laminas-filter": "^2.32",
"laminas/laminas-http": "^2.18",
- "laminas/laminas-i18n": "^2.19",
- "laminas/laminas-session": "^2.15",
+ "laminas/laminas-i18n": "^2.23",
+ "laminas/laminas-session": "^2.16",
"laminas/laminas-uri": "^2.10.0",
- "phpunit/phpunit": "^9.5.26",
- "psalm/plugin-phpunit": "^0.18.3",
- "psr/http-client": "^1.0.1",
- "psr/http-factory": "^1.0.1",
- "vimeo/psalm": "^5.0"
+ "phpunit/phpunit": "^10.1.3",
+ "psalm/plugin-phpunit": "^0.18.4",
+ "psr/http-client": "^1.0.2",
+ "psr/http-factory": "^1.0.2",
+ "vimeo/psalm": "^5.11"
},
"suggest": {
"laminas/laminas-db": "Laminas\\Db component, required by the (No)RecordExists validator",
@@ -355,7 +356,7 @@
"type": "community_bridge"
}
],
- "time": "2023-01-30T22:41:19+00:00"
+ "time": "2023-05-19T09:42:26+00:00"
},
{
"name": "psr/container",
@@ -407,25 +408,25 @@
},
{
"name": "psr/http-message",
- "version": "1.0.1",
+ "version": "2.0",
"source": {
"type": "git",
"url": "https://github.com/php-fig/http-message.git",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
+ "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
+ "url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71",
+ "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71",
"shasum": ""
},
"require": {
- "php": ">=5.3.0"
+ "php": "^7.2 || ^8.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0.x-dev"
+ "dev-master": "2.0.x-dev"
}
},
"autoload": {
@@ -440,7 +441,7 @@
"authors": [
{
"name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
+ "homepage": "https://www.php-fig.org/"
}
],
"description": "Common interface for HTTP messages",
@@ -454,9 +455,9 @@
"response"
],
"support": {
- "source": "https://github.com/php-fig/http-message/tree/master"
+ "source": "https://github.com/php-fig/http-message/tree/2.0"
},
- "time": "2016-08-06T14:39:51+00:00"
+ "time": "2023-04-04T09:54:51+00:00"
},
{
"name": "symfony/polyfill-intl-idn",
@@ -1417,76 +1418,6 @@
},
"time": "2019-12-04T15:06:13+00:00"
},
- {
- "name": "doctrine/instantiator",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/doctrine/instantiator.git",
- "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/c6222283fa3f4ac679f8b9ced9a4e23f163e80d0",
- "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0",
- "shasum": ""
- },
- "require": {
- "php": "^8.1"
- },
- "require-dev": {
- "doctrine/coding-standard": "^11",
- "ext-pdo": "*",
- "ext-phar": "*",
- "phpbench/phpbench": "^1.2",
- "phpstan/phpstan": "^1.9.4",
- "phpstan/phpstan-phpunit": "^1.3",
- "phpunit/phpunit": "^9.5.27",
- "vimeo/psalm": "^5.4"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Marco Pivetta",
- "email": "ocramius@gmail.com",
- "homepage": "https://ocramius.github.io/"
- }
- ],
- "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
- "homepage": "https://www.doctrine-project.org/projects/instantiator.html",
- "keywords": [
- "constructor",
- "instantiate"
- ],
- "support": {
- "issues": "https://github.com/doctrine/instantiator/issues",
- "source": "https://github.com/doctrine/instantiator/tree/2.0.0"
- },
- "funding": [
- {
- "url": "https://www.doctrine-project.org/sponsorship.html",
- "type": "custom"
- },
- {
- "url": "https://www.patreon.com/phpdoctrine",
- "type": "patreon"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator",
- "type": "tidelift"
- }
- ],
- "time": "2022-12-30T00:23:10+00:00"
- },
{
"name": "felixfbecker/advanced-json-rpc",
"version": "v3.2.1",
@@ -1771,16 +1702,16 @@
},
{
"name": "laminas/laminas-db",
- "version": "2.17.0",
+ "version": "2.18.0",
"source": {
"type": "git",
"url": "https://github.com/laminas/laminas-db.git",
- "reference": "9020ba27ffa4966c03cac743144bfd6716fdab60"
+ "reference": "4df7a3f7ffe268e8683306fcec125c269408b295"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laminas/laminas-db/zipball/9020ba27ffa4966c03cac743144bfd6716fdab60",
- "reference": "9020ba27ffa4966c03cac743144bfd6716fdab60",
+ "url": "https://api.github.com/repos/laminas/laminas-db/zipball/4df7a3f7ffe268e8683306fcec125c269408b295",
+ "reference": "4df7a3f7ffe268e8683306fcec125c269408b295",
"shasum": ""
},
"require": {
@@ -1838,7 +1769,7 @@
"type": "community_bridge"
}
],
- "time": "2023-01-31T12:09:24+00:00"
+ "time": "2023-05-05T16:22:28+00:00"
},
{
"name": "laminas/laminas-math",
@@ -1968,16 +1899,16 @@
},
{
"name": "netresearch/jsonmapper",
- "version": "v4.1.0",
+ "version": "v4.2.0",
"source": {
"type": "git",
"url": "https://github.com/cweiske/jsonmapper.git",
- "reference": "cfa81ea1d35294d64adb9c68aa4cb9e92400e53f"
+ "reference": "f60565f8c0566a31acf06884cdaa591867ecc956"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/cfa81ea1d35294d64adb9c68aa4cb9e92400e53f",
- "reference": "cfa81ea1d35294d64adb9c68aa4cb9e92400e53f",
+ "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/f60565f8c0566a31acf06884cdaa591867ecc956",
+ "reference": "f60565f8c0566a31acf06884cdaa591867ecc956",
"shasum": ""
},
"require": {
@@ -2013,22 +1944,22 @@
"support": {
"email": "cweiske@cweiske.de",
"issues": "https://github.com/cweiske/jsonmapper/issues",
- "source": "https://github.com/cweiske/jsonmapper/tree/v4.1.0"
+ "source": "https://github.com/cweiske/jsonmapper/tree/v4.2.0"
},
- "time": "2022-12-08T20:46:14+00:00"
+ "time": "2023-04-09T17:37:40+00:00"
},
{
"name": "nikic/php-parser",
- "version": "v4.15.4",
+ "version": "v4.15.5",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
- "reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290"
+ "reference": "11e2663a5bc9db5d714eedb4277ee300403b4a9e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/6bb5176bc4af8bcb7d926f88718db9b96a2d4290",
- "reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290",
+ "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/11e2663a5bc9db5d714eedb4277ee300403b4a9e",
+ "reference": "11e2663a5bc9db5d714eedb4277ee300403b4a9e",
"shasum": ""
},
"require": {
@@ -2069,9 +2000,9 @@
],
"support": {
"issues": "https://github.com/nikic/PHP-Parser/issues",
- "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.4"
+ "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.5"
},
- "time": "2023-03-05T19:49:14+00:00"
+ "time": "2023-05-19T20:20:00+00:00"
},
{
"name": "phar-io/manifest",
@@ -2395,16 +2326,16 @@
},
{
"name": "phpunit/php-code-coverage",
- "version": "9.2.26",
+ "version": "10.1.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "443bc6912c9bd5b409254a40f4b0f4ced7c80ea1"
+ "reference": "884a0da7f9f46f28b2cb69134217fd810b793974"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/443bc6912c9bd5b409254a40f4b0f4ced7c80ea1",
- "reference": "443bc6912c9bd5b409254a40f4b0f4ced7c80ea1",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/884a0da7f9f46f28b2cb69134217fd810b793974",
+ "reference": "884a0da7f9f46f28b2cb69134217fd810b793974",
"shasum": ""
},
"require": {
@@ -2412,18 +2343,18 @@
"ext-libxml": "*",
"ext-xmlwriter": "*",
"nikic/php-parser": "^4.15",
- "php": ">=7.3",
- "phpunit/php-file-iterator": "^3.0.3",
- "phpunit/php-text-template": "^2.0.2",
- "sebastian/code-unit-reverse-lookup": "^2.0.2",
- "sebastian/complexity": "^2.0",
- "sebastian/environment": "^5.1.2",
- "sebastian/lines-of-code": "^1.0.3",
- "sebastian/version": "^3.0.1",
+ "php": ">=8.1",
+ "phpunit/php-file-iterator": "^4.0",
+ "phpunit/php-text-template": "^3.0",
+ "sebastian/code-unit-reverse-lookup": "^3.0",
+ "sebastian/complexity": "^3.0",
+ "sebastian/environment": "^6.0",
+ "sebastian/lines-of-code": "^2.0",
+ "sebastian/version": "^4.0",
"theseer/tokenizer": "^1.2.0"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.1"
},
"suggest": {
"ext-pcov": "PHP extension that provides line coverage",
@@ -2432,7 +2363,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "9.2-dev"
+ "dev-main": "10.1-dev"
}
},
"autoload": {
@@ -2460,7 +2391,8 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
- "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.26"
+ "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy",
+ "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/10.1.1"
},
"funding": [
{
@@ -2468,32 +2400,32 @@
"type": "github"
}
],
- "time": "2023-03-06T12:58:08+00:00"
+ "time": "2023-04-17T12:15:40+00:00"
},
{
"name": "phpunit/php-file-iterator",
- "version": "3.0.6",
+ "version": "4.0.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf"
+ "reference": "5647d65443818959172645e7ed999217360654b6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf",
- "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/5647d65443818959172645e7ed999217360654b6",
+ "reference": "5647d65443818959172645e7ed999217360654b6",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0-dev"
+ "dev-main": "4.0-dev"
}
},
"autoload": {
@@ -2520,7 +2452,8 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/php-file-iterator/issues",
- "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.6"
+ "security": "https://github.com/sebastianbergmann/php-file-iterator/security/policy",
+ "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/4.0.2"
},
"funding": [
{
@@ -2528,28 +2461,28 @@
"type": "github"
}
],
- "time": "2021-12-02T12:48:52+00:00"
+ "time": "2023-05-07T09:13:23+00:00"
},
{
"name": "phpunit/php-invoker",
- "version": "3.1.1",
+ "version": "4.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-invoker.git",
- "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67"
+ "reference": "f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67",
- "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7",
+ "reference": "f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
"ext-pcntl": "*",
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"suggest": {
"ext-pcntl": "*"
@@ -2557,7 +2490,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1-dev"
+ "dev-main": "4.0-dev"
}
},
"autoload": {
@@ -2583,7 +2516,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/php-invoker/issues",
- "source": "https://github.com/sebastianbergmann/php-invoker/tree/3.1.1"
+ "source": "https://github.com/sebastianbergmann/php-invoker/tree/4.0.0"
},
"funding": [
{
@@ -2591,32 +2524,32 @@
"type": "github"
}
],
- "time": "2020-09-28T05:58:55+00:00"
+ "time": "2023-02-03T06:56:09+00:00"
},
{
"name": "phpunit/php-text-template",
- "version": "2.0.4",
+ "version": "3.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28"
+ "reference": "9f3d3709577a527025f55bcf0f7ab8052c8bb37d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28",
- "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/9f3d3709577a527025f55bcf0f7ab8052c8bb37d",
+ "reference": "9f3d3709577a527025f55bcf0f7ab8052c8bb37d",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0-dev"
+ "dev-main": "3.0-dev"
}
},
"autoload": {
@@ -2642,7 +2575,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/php-text-template/issues",
- "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4"
+ "source": "https://github.com/sebastianbergmann/php-text-template/tree/3.0.0"
},
"funding": [
{
@@ -2650,32 +2583,32 @@
"type": "github"
}
],
- "time": "2020-10-26T05:33:50+00:00"
+ "time": "2023-02-03T06:56:46+00:00"
},
{
"name": "phpunit/php-timer",
- "version": "5.0.3",
+ "version": "6.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2"
+ "reference": "e2a2d67966e740530f4a3343fe2e030ffdc1161d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2",
- "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/e2a2d67966e740530f4a3343fe2e030ffdc1161d",
+ "reference": "e2a2d67966e740530f4a3343fe2e030ffdc1161d",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.0-dev"
+ "dev-main": "6.0-dev"
}
},
"autoload": {
@@ -2701,7 +2634,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/php-timer/issues",
- "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3"
+ "source": "https://github.com/sebastianbergmann/php-timer/tree/6.0.0"
},
"funding": [
{
@@ -2709,24 +2642,23 @@
"type": "github"
}
],
- "time": "2020-10-26T13:16:10+00:00"
+ "time": "2023-02-03T06:57:52+00:00"
},
{
"name": "phpunit/phpunit",
- "version": "9.6.5",
+ "version": "10.1.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "86e761949019ae83f49240b2f2123fb5ab3b2fc5"
+ "reference": "2379ebafc1737e71cdc84f402acb6b7f04198b9d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/86e761949019ae83f49240b2f2123fb5ab3b2fc5",
- "reference": "86e761949019ae83f49240b2f2123fb5ab3b2fc5",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/2379ebafc1737e71cdc84f402acb6b7f04198b9d",
+ "reference": "2379ebafc1737e71cdc84f402acb6b7f04198b9d",
"shasum": ""
},
"require": {
- "doctrine/instantiator": "^1.3.1 || ^2",
"ext-dom": "*",
"ext-json": "*",
"ext-libxml": "*",
@@ -2736,27 +2668,26 @@
"myclabs/deep-copy": "^1.10.1",
"phar-io/manifest": "^2.0.3",
"phar-io/version": "^3.0.2",
- "php": ">=7.3",
- "phpunit/php-code-coverage": "^9.2.13",
- "phpunit/php-file-iterator": "^3.0.5",
- "phpunit/php-invoker": "^3.1.1",
- "phpunit/php-text-template": "^2.0.3",
- "phpunit/php-timer": "^5.0.2",
- "sebastian/cli-parser": "^1.0.1",
- "sebastian/code-unit": "^1.0.6",
- "sebastian/comparator": "^4.0.8",
- "sebastian/diff": "^4.0.3",
- "sebastian/environment": "^5.1.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.2",
- "sebastian/version": "^3.0.2"
+ "php": ">=8.1",
+ "phpunit/php-code-coverage": "^10.1.1",
+ "phpunit/php-file-iterator": "^4.0",
+ "phpunit/php-invoker": "^4.0",
+ "phpunit/php-text-template": "^3.0",
+ "phpunit/php-timer": "^6.0",
+ "sebastian/cli-parser": "^2.0",
+ "sebastian/code-unit": "^2.0",
+ "sebastian/comparator": "^5.0",
+ "sebastian/diff": "^5.0",
+ "sebastian/environment": "^6.0",
+ "sebastian/exporter": "^5.0",
+ "sebastian/global-state": "^6.0",
+ "sebastian/object-enumerator": "^5.0",
+ "sebastian/recursion-context": "^5.0",
+ "sebastian/type": "^4.0",
+ "sebastian/version": "^4.0"
},
"suggest": {
- "ext-soap": "To be able to generate mocks based on WSDL files",
- "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage"
+ "ext-soap": "To be able to generate mocks based on WSDL files"
},
"bin": [
"phpunit"
@@ -2764,7 +2695,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "9.6-dev"
+ "dev-main": "10.1-dev"
}
},
"autoload": {
@@ -2795,7 +2726,8 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
- "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.5"
+ "security": "https://github.com/sebastianbergmann/phpunit/security/policy",
+ "source": "https://github.com/sebastianbergmann/phpunit/tree/10.1.3"
},
"funding": [
{
@@ -2811,7 +2743,7 @@
"type": "tidelift"
}
],
- "time": "2023-03-09T06:34:10+00:00"
+ "time": "2023-05-11T05:16:22+00:00"
},
{
"name": "psalm/plugin-phpunit",
@@ -2925,28 +2857,28 @@
},
{
"name": "sebastian/cli-parser",
- "version": "1.0.1",
+ "version": "2.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/cli-parser.git",
- "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2"
+ "reference": "efdc130dbbbb8ef0b545a994fd811725c5282cae"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2",
- "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2",
+ "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/efdc130dbbbb8ef0b545a994fd811725c5282cae",
+ "reference": "efdc130dbbbb8ef0b545a994fd811725c5282cae",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0-dev"
+ "dev-main": "2.0-dev"
}
},
"autoload": {
@@ -2969,7 +2901,7 @@
"homepage": "https://github.com/sebastianbergmann/cli-parser",
"support": {
"issues": "https://github.com/sebastianbergmann/cli-parser/issues",
- "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.1"
+ "source": "https://github.com/sebastianbergmann/cli-parser/tree/2.0.0"
},
"funding": [
{
@@ -2977,32 +2909,32 @@
"type": "github"
}
],
- "time": "2020-09-28T06:08:49+00:00"
+ "time": "2023-02-03T06:58:15+00:00"
},
{
"name": "sebastian/code-unit",
- "version": "1.0.8",
+ "version": "2.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/code-unit.git",
- "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120"
+ "reference": "a81fee9eef0b7a76af11d121767abc44c104e503"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120",
- "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120",
+ "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/a81fee9eef0b7a76af11d121767abc44c104e503",
+ "reference": "a81fee9eef0b7a76af11d121767abc44c104e503",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0-dev"
+ "dev-main": "2.0-dev"
}
},
"autoload": {
@@ -3025,7 +2957,7 @@
"homepage": "https://github.com/sebastianbergmann/code-unit",
"support": {
"issues": "https://github.com/sebastianbergmann/code-unit/issues",
- "source": "https://github.com/sebastianbergmann/code-unit/tree/1.0.8"
+ "source": "https://github.com/sebastianbergmann/code-unit/tree/2.0.0"
},
"funding": [
{
@@ -3033,32 +2965,32 @@
"type": "github"
}
],
- "time": "2020-10-26T13:08:54+00:00"
+ "time": "2023-02-03T06:58:43+00:00"
},
{
"name": "sebastian/code-unit-reverse-lookup",
- "version": "2.0.3",
+ "version": "3.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
- "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5"
+ "reference": "5e3a687f7d8ae33fb362c5c0743794bbb2420a1d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5",
- "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5",
+ "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/5e3a687f7d8ae33fb362c5c0743794bbb2420a1d",
+ "reference": "5e3a687f7d8ae33fb362c5c0743794bbb2420a1d",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0-dev"
+ "dev-main": "3.0-dev"
}
},
"autoload": {
@@ -3080,7 +3012,7 @@
"homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
"support": {
"issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues",
- "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/2.0.3"
+ "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/3.0.0"
},
"funding": [
{
@@ -3088,34 +3020,36 @@
"type": "github"
}
],
- "time": "2020-09-28T05:30:19+00:00"
+ "time": "2023-02-03T06:59:15+00:00"
},
{
"name": "sebastian/comparator",
- "version": "4.0.8",
+ "version": "5.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "fa0f136dd2334583309d32b62544682ee972b51a"
+ "reference": "72f01e6586e0caf6af81297897bd112eb7e9627c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a",
- "reference": "fa0f136dd2334583309d32b62544682ee972b51a",
+ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/72f01e6586e0caf6af81297897bd112eb7e9627c",
+ "reference": "72f01e6586e0caf6af81297897bd112eb7e9627c",
"shasum": ""
},
"require": {
- "php": ">=7.3",
- "sebastian/diff": "^4.0",
- "sebastian/exporter": "^4.0"
+ "ext-dom": "*",
+ "ext-mbstring": "*",
+ "php": ">=8.1",
+ "sebastian/diff": "^5.0",
+ "sebastian/exporter": "^5.0"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.0-dev"
+ "dev-main": "5.0-dev"
}
},
"autoload": {
@@ -3154,7 +3088,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/comparator/issues",
- "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8"
+ "source": "https://github.com/sebastianbergmann/comparator/tree/5.0.0"
},
"funding": [
{
@@ -3162,33 +3096,33 @@
"type": "github"
}
],
- "time": "2022-09-14T12:41:17+00:00"
+ "time": "2023-02-03T07:07:16+00:00"
},
{
"name": "sebastian/complexity",
- "version": "2.0.2",
+ "version": "3.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/complexity.git",
- "reference": "739b35e53379900cc9ac327b2147867b8b6efd88"
+ "reference": "e67d240970c9dc7ea7b2123a6d520e334dd61dc6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/739b35e53379900cc9ac327b2147867b8b6efd88",
- "reference": "739b35e53379900cc9ac327b2147867b8b6efd88",
+ "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/e67d240970c9dc7ea7b2123a6d520e334dd61dc6",
+ "reference": "e67d240970c9dc7ea7b2123a6d520e334dd61dc6",
"shasum": ""
},
"require": {
- "nikic/php-parser": "^4.7",
- "php": ">=7.3"
+ "nikic/php-parser": "^4.10",
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0-dev"
+ "dev-main": "3.0-dev"
}
},
"autoload": {
@@ -3211,7 +3145,7 @@
"homepage": "https://github.com/sebastianbergmann/complexity",
"support": {
"issues": "https://github.com/sebastianbergmann/complexity/issues",
- "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.2"
+ "source": "https://github.com/sebastianbergmann/complexity/tree/3.0.0"
},
"funding": [
{
@@ -3219,33 +3153,33 @@
"type": "github"
}
],
- "time": "2020-10-26T15:52:27+00:00"
+ "time": "2023-02-03T06:59:47+00:00"
},
{
"name": "sebastian/diff",
- "version": "4.0.4",
+ "version": "5.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d"
+ "reference": "912dc2fbe3e3c1e7873313cc801b100b6c68c87b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d",
- "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d",
+ "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/912dc2fbe3e3c1e7873313cc801b100b6c68c87b",
+ "reference": "912dc2fbe3e3c1e7873313cc801b100b6c68c87b",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3",
+ "phpunit/phpunit": "^10.0",
"symfony/process": "^4.2 || ^5"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.0-dev"
+ "dev-main": "5.0-dev"
}
},
"autoload": {
@@ -3277,7 +3211,8 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/diff/issues",
- "source": "https://github.com/sebastianbergmann/diff/tree/4.0.4"
+ "security": "https://github.com/sebastianbergmann/diff/security/policy",
+ "source": "https://github.com/sebastianbergmann/diff/tree/5.0.3"
},
"funding": [
{
@@ -3285,27 +3220,27 @@
"type": "github"
}
],
- "time": "2020-10-26T13:10:38+00:00"
+ "time": "2023-05-01T07:48:21+00:00"
},
{
"name": "sebastian/environment",
- "version": "5.1.5",
+ "version": "6.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed"
+ "reference": "43c751b41d74f96cbbd4e07b7aec9675651e2951"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed",
- "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed",
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/43c751b41d74f96cbbd4e07b7aec9675651e2951",
+ "reference": "43c751b41d74f96cbbd4e07b7aec9675651e2951",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"suggest": {
"ext-posix": "*"
@@ -3313,7 +3248,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.1-dev"
+ "dev-main": "6.0-dev"
}
},
"autoload": {
@@ -3332,7 +3267,7 @@
}
],
"description": "Provides functionality to handle HHVM/PHP environments",
- "homepage": "http://www.github.com/sebastianbergmann/environment",
+ "homepage": "https://github.com/sebastianbergmann/environment",
"keywords": [
"Xdebug",
"environment",
@@ -3340,7 +3275,8 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/environment/issues",
- "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5"
+ "security": "https://github.com/sebastianbergmann/environment/security/policy",
+ "source": "https://github.com/sebastianbergmann/environment/tree/6.0.1"
},
"funding": [
{
@@ -3348,34 +3284,34 @@
"type": "github"
}
],
- "time": "2023-02-03T06:03:51+00:00"
+ "time": "2023-04-11T05:39:26+00:00"
},
{
"name": "sebastian/exporter",
- "version": "4.0.5",
+ "version": "5.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d"
+ "reference": "f3ec4bf931c0b31e5b413f5b4fc970a7d03338c0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d",
- "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d",
+ "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/f3ec4bf931c0b31e5b413f5b4fc970a7d03338c0",
+ "reference": "f3ec4bf931c0b31e5b413f5b4fc970a7d03338c0",
"shasum": ""
},
"require": {
- "php": ">=7.3",
- "sebastian/recursion-context": "^4.0"
+ "ext-mbstring": "*",
+ "php": ">=8.1",
+ "sebastian/recursion-context": "^5.0"
},
"require-dev": {
- "ext-mbstring": "*",
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.0-dev"
+ "dev-main": "5.0-dev"
}
},
"autoload": {
@@ -3417,7 +3353,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/exporter/issues",
- "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.5"
+ "source": "https://github.com/sebastianbergmann/exporter/tree/5.0.0"
},
"funding": [
{
@@ -3425,38 +3361,35 @@
"type": "github"
}
],
- "time": "2022-09-14T06:03:37+00:00"
+ "time": "2023-02-03T07:06:49+00:00"
},
{
"name": "sebastian/global-state",
- "version": "5.0.5",
+ "version": "6.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2"
+ "reference": "aab257c712de87b90194febd52e4d184551c2d44"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/0ca8db5a5fc9c8646244e629625ac486fa286bf2",
- "reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2",
+ "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/aab257c712de87b90194febd52e4d184551c2d44",
+ "reference": "aab257c712de87b90194febd52e4d184551c2d44",
"shasum": ""
},
"require": {
- "php": ">=7.3",
- "sebastian/object-reflector": "^2.0",
- "sebastian/recursion-context": "^4.0"
+ "php": ">=8.1",
+ "sebastian/object-reflector": "^3.0",
+ "sebastian/recursion-context": "^5.0"
},
"require-dev": {
"ext-dom": "*",
- "phpunit/phpunit": "^9.3"
- },
- "suggest": {
- "ext-uopz": "*"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.0-dev"
+ "dev-main": "6.0-dev"
}
},
"autoload": {
@@ -3481,7 +3414,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/global-state/issues",
- "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.5"
+ "source": "https://github.com/sebastianbergmann/global-state/tree/6.0.0"
},
"funding": [
{
@@ -3489,33 +3422,33 @@
"type": "github"
}
],
- "time": "2022-02-14T08:28:10+00:00"
+ "time": "2023-02-03T07:07:38+00:00"
},
{
"name": "sebastian/lines-of-code",
- "version": "1.0.3",
+ "version": "2.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/lines-of-code.git",
- "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc"
+ "reference": "17c4d940ecafb3d15d2cf916f4108f664e28b130"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/c1c2e997aa3146983ed888ad08b15470a2e22ecc",
- "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc",
+ "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/17c4d940ecafb3d15d2cf916f4108f664e28b130",
+ "reference": "17c4d940ecafb3d15d2cf916f4108f664e28b130",
"shasum": ""
},
"require": {
- "nikic/php-parser": "^4.6",
- "php": ">=7.3"
+ "nikic/php-parser": "^4.10",
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0-dev"
+ "dev-main": "2.0-dev"
}
},
"autoload": {
@@ -3538,7 +3471,7 @@
"homepage": "https://github.com/sebastianbergmann/lines-of-code",
"support": {
"issues": "https://github.com/sebastianbergmann/lines-of-code/issues",
- "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.3"
+ "source": "https://github.com/sebastianbergmann/lines-of-code/tree/2.0.0"
},
"funding": [
{
@@ -3546,34 +3479,34 @@
"type": "github"
}
],
- "time": "2020-11-28T06:42:11+00:00"
+ "time": "2023-02-03T07:08:02+00:00"
},
{
"name": "sebastian/object-enumerator",
- "version": "4.0.4",
+ "version": "5.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/object-enumerator.git",
- "reference": "5c9eeac41b290a3712d88851518825ad78f45c71"
+ "reference": "202d0e344a580d7f7d04b3fafce6933e59dae906"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71",
- "reference": "5c9eeac41b290a3712d88851518825ad78f45c71",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/202d0e344a580d7f7d04b3fafce6933e59dae906",
+ "reference": "202d0e344a580d7f7d04b3fafce6933e59dae906",
"shasum": ""
},
"require": {
- "php": ">=7.3",
- "sebastian/object-reflector": "^2.0",
- "sebastian/recursion-context": "^4.0"
+ "php": ">=8.1",
+ "sebastian/object-reflector": "^3.0",
+ "sebastian/recursion-context": "^5.0"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.0-dev"
+ "dev-main": "5.0-dev"
}
},
"autoload": {
@@ -3595,7 +3528,7 @@
"homepage": "https://github.com/sebastianbergmann/object-enumerator/",
"support": {
"issues": "https://github.com/sebastianbergmann/object-enumerator/issues",
- "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4"
+ "source": "https://github.com/sebastianbergmann/object-enumerator/tree/5.0.0"
},
"funding": [
{
@@ -3603,32 +3536,32 @@
"type": "github"
}
],
- "time": "2020-10-26T13:12:34+00:00"
+ "time": "2023-02-03T07:08:32+00:00"
},
{
"name": "sebastian/object-reflector",
- "version": "2.0.4",
+ "version": "3.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/object-reflector.git",
- "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7"
+ "reference": "24ed13d98130f0e7122df55d06c5c4942a577957"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7",
- "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/24ed13d98130f0e7122df55d06c5c4942a577957",
+ "reference": "24ed13d98130f0e7122df55d06c5c4942a577957",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0-dev"
+ "dev-main": "3.0-dev"
}
},
"autoload": {
@@ -3650,7 +3583,7 @@
"homepage": "https://github.com/sebastianbergmann/object-reflector/",
"support": {
"issues": "https://github.com/sebastianbergmann/object-reflector/issues",
- "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4"
+ "source": "https://github.com/sebastianbergmann/object-reflector/tree/3.0.0"
},
"funding": [
{
@@ -3658,32 +3591,32 @@
"type": "github"
}
],
- "time": "2020-10-26T13:14:26+00:00"
+ "time": "2023-02-03T07:06:18+00:00"
},
{
"name": "sebastian/recursion-context",
- "version": "4.0.5",
+ "version": "5.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1"
+ "reference": "05909fb5bc7df4c52992396d0116aed689f93712"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1",
- "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1",
+ "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/05909fb5bc7df4c52992396d0116aed689f93712",
+ "reference": "05909fb5bc7df4c52992396d0116aed689f93712",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.0-dev"
+ "dev-main": "5.0-dev"
}
},
"autoload": {
@@ -3713,7 +3646,7 @@
"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.5"
+ "source": "https://github.com/sebastianbergmann/recursion-context/tree/5.0.0"
},
"funding": [
{
@@ -3721,87 +3654,32 @@
"type": "github"
}
],
- "time": "2023-02-03T06:07:39+00:00"
- },
- {
- "name": "sebastian/resource-operations",
- "version": "3.0.3",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/resource-operations.git",
- "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8",
- "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides a list of PHP built-in functions that operate on resources",
- "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
- "support": {
- "issues": "https://github.com/sebastianbergmann/resource-operations/issues",
- "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.3"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2020-09-28T06:45:17+00:00"
+ "time": "2023-02-03T07:05:40+00:00"
},
{
"name": "sebastian/type",
- "version": "3.2.1",
+ "version": "4.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/type.git",
- "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7"
+ "reference": "462699a16464c3944eefc02ebdd77882bd3925bf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7",
- "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7",
+ "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/462699a16464c3944eefc02ebdd77882bd3925bf",
+ "reference": "462699a16464c3944eefc02ebdd77882bd3925bf",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.5"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.2-dev"
+ "dev-main": "4.0-dev"
}
},
"autoload": {
@@ -3824,7 +3702,7 @@
"homepage": "https://github.com/sebastianbergmann/type",
"support": {
"issues": "https://github.com/sebastianbergmann/type/issues",
- "source": "https://github.com/sebastianbergmann/type/tree/3.2.1"
+ "source": "https://github.com/sebastianbergmann/type/tree/4.0.0"
},
"funding": [
{
@@ -3832,29 +3710,29 @@
"type": "github"
}
],
- "time": "2023-02-03T06:13:03+00:00"
+ "time": "2023-02-03T07:10:45+00:00"
},
{
"name": "sebastian/version",
- "version": "3.0.2",
+ "version": "4.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/version.git",
- "reference": "c6c1022351a901512170118436c764e473f6de8c"
+ "reference": "c51fa83a5d8f43f1402e3f32a005e6262244ef17"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c",
- "reference": "c6c1022351a901512170118436c764e473f6de8c",
+ "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c51fa83a5d8f43f1402e3f32a005e6262244ef17",
+ "reference": "c51fa83a5d8f43f1402e3f32a005e6262244ef17",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0-dev"
+ "dev-main": "4.0-dev"
}
},
"autoload": {
@@ -3877,7 +3755,7 @@
"homepage": "https://github.com/sebastianbergmann/version",
"support": {
"issues": "https://github.com/sebastianbergmann/version/issues",
- "source": "https://github.com/sebastianbergmann/version/tree/3.0.2"
+ "source": "https://github.com/sebastianbergmann/version/tree/4.0.1"
},
"funding": [
{
@@ -3885,7 +3763,7 @@
"type": "github"
}
],
- "time": "2020-09-28T06:39:44+00:00"
+ "time": "2023-02-07T11:34:05+00:00"
},
{
"name": "slevomat/coding-standard",
@@ -3950,16 +3828,16 @@
},
{
"name": "spatie/array-to-xml",
- "version": "3.1.5",
+ "version": "3.1.6",
"source": {
"type": "git",
"url": "https://github.com/spatie/array-to-xml.git",
- "reference": "13f76acef5362d15c71ae1ac6350cc3df5e25e43"
+ "reference": "e210b98957987c755372465be105d32113f339a4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/spatie/array-to-xml/zipball/13f76acef5362d15c71ae1ac6350cc3df5e25e43",
- "reference": "13f76acef5362d15c71ae1ac6350cc3df5e25e43",
+ "url": "https://api.github.com/repos/spatie/array-to-xml/zipball/e210b98957987c755372465be105d32113f339a4",
+ "reference": "e210b98957987c755372465be105d32113f339a4",
"shasum": ""
},
"require": {
@@ -3997,7 +3875,7 @@
"xml"
],
"support": {
- "source": "https://github.com/spatie/array-to-xml/tree/3.1.5"
+ "source": "https://github.com/spatie/array-to-xml/tree/3.1.6"
},
"funding": [
{
@@ -4009,7 +3887,7 @@
"type": "github"
}
],
- "time": "2022-12-24T13:43:51+00:00"
+ "time": "2023-05-11T14:04:07+00:00"
},
{
"name": "squizlabs/php_codesniffer",
@@ -4070,16 +3948,16 @@
},
{
"name": "symfony/console",
- "version": "v6.2.7",
+ "version": "v6.2.10",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "cbad09eb8925b6ad4fb721c7a179344dc4a19d45"
+ "reference": "12288d9f4500f84a4d02254d4aa968b15488476f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/cbad09eb8925b6ad4fb721c7a179344dc4a19d45",
- "reference": "cbad09eb8925b6ad4fb721c7a179344dc4a19d45",
+ "url": "https://api.github.com/repos/symfony/console/zipball/12288d9f4500f84a4d02254d4aa968b15488476f",
+ "reference": "12288d9f4500f84a4d02254d4aa968b15488476f",
"shasum": ""
},
"require": {
@@ -4141,12 +4019,12 @@
"homepage": "https://symfony.com",
"keywords": [
"cli",
- "command line",
+ "command-line",
"console",
"terminal"
],
"support": {
- "source": "https://github.com/symfony/console/tree/v6.2.7"
+ "source": "https://github.com/symfony/console/tree/v6.2.10"
},
"funding": [
{
@@ -4162,7 +4040,7 @@
"type": "tidelift"
}
],
- "time": "2023-02-25T17:00:03+00:00"
+ "time": "2023-04-28T13:37:43+00:00"
},
{
"name": "symfony/deprecation-contracts",
@@ -4233,16 +4111,16 @@
},
{
"name": "symfony/filesystem",
- "version": "v6.2.7",
+ "version": "v6.2.10",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
- "reference": "82b6c62b959f642d000456f08c6d219d749215b3"
+ "reference": "fd588debf7d1bc16a2c84b4b3b71145d9946b894"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/82b6c62b959f642d000456f08c6d219d749215b3",
- "reference": "82b6c62b959f642d000456f08c6d219d749215b3",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/fd588debf7d1bc16a2c84b4b3b71145d9946b894",
+ "reference": "fd588debf7d1bc16a2c84b4b3b71145d9946b894",
"shasum": ""
},
"require": {
@@ -4276,7 +4154,7 @@
"description": "Provides basic utilities for the filesystem",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/filesystem/tree/v6.2.7"
+ "source": "https://github.com/symfony/filesystem/tree/v6.2.10"
},
"funding": [
{
@@ -4292,7 +4170,7 @@
"type": "tidelift"
}
],
- "time": "2023-02-14T08:44:56+00:00"
+ "time": "2023-04-18T13:46:08+00:00"
},
{
"name": "symfony/polyfill-ctype",
@@ -4459,16 +4337,16 @@
},
{
"name": "symfony/process",
- "version": "v6.2.7",
+ "version": "v6.2.10",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
- "reference": "680e8a2ea6b3f87aecc07a6a65a203ae573d1902"
+ "reference": "b34cdbc9c5e75d45a3703e63a48ad07aafa8bf2e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/680e8a2ea6b3f87aecc07a6a65a203ae573d1902",
- "reference": "680e8a2ea6b3f87aecc07a6a65a203ae573d1902",
+ "url": "https://api.github.com/repos/symfony/process/zipball/b34cdbc9c5e75d45a3703e63a48ad07aafa8bf2e",
+ "reference": "b34cdbc9c5e75d45a3703e63a48ad07aafa8bf2e",
"shasum": ""
},
"require": {
@@ -4500,7 +4378,7 @@
"description": "Executes commands in sub-processes",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/process/tree/v6.2.7"
+ "source": "https://github.com/symfony/process/tree/v6.2.10"
},
"funding": [
{
@@ -4516,7 +4394,7 @@
"type": "tidelift"
}
],
- "time": "2023-02-24T10:42:00+00:00"
+ "time": "2023-04-18T13:56:57+00:00"
},
{
"name": "symfony/service-contracts",
@@ -4603,16 +4481,16 @@
},
{
"name": "symfony/string",
- "version": "v6.2.7",
+ "version": "v6.2.8",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
- "reference": "67b8c1eec78296b85dc1c7d9743830160218993d"
+ "reference": "193e83bbd6617d6b2151c37fff10fa7168ebddef"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/string/zipball/67b8c1eec78296b85dc1c7d9743830160218993d",
- "reference": "67b8c1eec78296b85dc1c7d9743830160218993d",
+ "url": "https://api.github.com/repos/symfony/string/zipball/193e83bbd6617d6b2151c37fff10fa7168ebddef",
+ "reference": "193e83bbd6617d6b2151c37fff10fa7168ebddef",
"shasum": ""
},
"require": {
@@ -4669,7 +4547,7 @@
"utf8"
],
"support": {
- "source": "https://github.com/symfony/string/tree/v6.2.7"
+ "source": "https://github.com/symfony/string/tree/v6.2.8"
},
"funding": [
{
@@ -4685,7 +4563,7 @@
"type": "tidelift"
}
],
- "time": "2023-02-24T10:42:00+00:00"
+ "time": "2023-03-20T16:06:02+00:00"
},
{
"name": "theseer/tokenizer",
@@ -4739,16 +4617,16 @@
},
{
"name": "vimeo/psalm",
- "version": "5.8.0",
+ "version": "5.11.0",
"source": {
"type": "git",
"url": "https://github.com/vimeo/psalm.git",
- "reference": "9cf4f60a333f779ad3bc704a555920e81d4fdcda"
+ "reference": "c9b192ab8400fdaf04b2b13d110575adc879aa90"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/vimeo/psalm/zipball/9cf4f60a333f779ad3bc704a555920e81d4fdcda",
- "reference": "9cf4f60a333f779ad3bc704a555920e81d4fdcda",
+ "url": "https://api.github.com/repos/vimeo/psalm/zipball/c9b192ab8400fdaf04b2b13d110575adc879aa90",
+ "reference": "c9b192ab8400fdaf04b2b13d110575adc879aa90",
"shasum": ""
},
"require": {
@@ -4780,6 +4658,7 @@
"psalm/psalm": "self.version"
},
"require-dev": {
+ "amphp/phpunit-util": "^2.0",
"bamarni/composer-bin-plugin": "^1.4",
"brianium/paratest": "^6.9",
"ext-curl": "*",
@@ -4838,9 +4717,9 @@
],
"support": {
"issues": "https://github.com/vimeo/psalm/issues",
- "source": "https://github.com/vimeo/psalm/tree/5.8.0"
+ "source": "https://github.com/vimeo/psalm/tree/5.11.0"
},
- "time": "2023-03-09T04:14:35+00:00"
+ "time": "2023-05-04T21:35:44+00:00"
},
{
"name": "webimpress/coding-standard",
diff --git a/phpunit.xml.dist b/phpunit.xml.dist
index 7bf32933..ec78d9e6 100644
--- a/phpunit.xml.dist
+++ b/phpunit.xml.dist
@@ -1,37 +1,27 @@
-
-
- ./test/
-
-
-
-
-
- disable
-
-
-
-
-
- ./src
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/psalm-baseline.xml b/psalm-baseline.xml
index 70b8cdd7..88d83696 100644
--- a/psalm-baseline.xml
+++ b/psalm-baseline.xml
@@ -1,5 +1,5 @@
-
+
! is_string($email)
@@ -297,13 +297,12 @@
is_array($headers)
is_string($headerFieldNameOrLine)
-
- headers]]>
- headers]]>
-
mixed
+
+ pluginClassLoader->load($key) ?: GenericHeader::class]]>
+
$headers
$value
@@ -325,7 +324,6 @@
$current
$current
- $header
$i
$index
$name
@@ -336,10 +334,6 @@
HeaderInterface
false|ArrayIterator|HeaderInterface
-
- setEncoding
- setEncoding
-
$i
@@ -349,6 +343,9 @@
$results[0]
$results[0]
+
+ ]]>
+
@@ -612,7 +609,6 @@
$endPos
- $string
$string
escapeString($old, $new)]]>
escapeString($reference, $mailbox)]]>
@@ -629,7 +625,6 @@
$tokens[2][3]
- $string
$tokens
@@ -852,6 +847,7 @@
$aliases
+ $factories
$instanceOf
@@ -2307,9 +2303,6 @@
}
}]]>
-
- $type
-
@@ -2319,14 +2312,6 @@
-
-
- ProtocolTrait::class
-
-
- getCryptoMethod
-
-
$result
@@ -3177,10 +3162,6 @@
-
- setMethods
- setMethods
-
$connectedTimeAfterFirstMail
diff --git a/src/Header/HeaderLocatorInterface.php b/src/Header/HeaderLocatorInterface.php
index 28a93dc9..eafc1987 100644
--- a/src/Header/HeaderLocatorInterface.php
+++ b/src/Header/HeaderLocatorInterface.php
@@ -9,6 +9,10 @@
*/
interface HeaderLocatorInterface
{
+ /**
+ * @param class-string|null $default
+ * @return class-string|null
+ */
public function get(string $name, ?string $default = null): ?string;
public function has(string $name): bool;
diff --git a/src/Headers.php b/src/Headers.php
index 840edec5..626fd3a0 100644
--- a/src/Headers.php
+++ b/src/Headers.php
@@ -566,8 +566,9 @@ public function loadHeader($headerLine)
{
[$name] = GenericHeader::splitHeaderLine($headerLine);
- /** @var HeaderInterface $class */
$class = $this->resolveHeaderClass($name);
+ assert(null !== $class);
+
return $class::fromString($headerLine);
}
@@ -581,16 +582,18 @@ protected function lazyLoadHeader($index)
$key = $this->headersKeys[$index];
- /** @var GenericHeader $class */
$class = $this->resolveHeaderClass($key);
+ assert(null !== $class);
$encoding = $current->getEncoding();
$headers = $class::fromString($current->toString());
if (is_array($headers)) {
$current = array_shift($headers);
+ assert($current instanceof HeaderInterface);
$current->setEncoding($encoding);
$this->headers[$index] = $current;
foreach ($headers as $header) {
+ assert($header instanceof HeaderInterface);
$header->setEncoding($encoding);
$this->headersKeys[] = $key;
$this->headers[] = $header;
@@ -617,9 +620,9 @@ protected function normalizeFieldName($fieldName)
/**
* @param string $key
- * @return null|string
+ * @return null|class-string
*/
- private function resolveHeaderClass($key)
+ private function resolveHeaderClass($key): ?string
{
if ($this->pluginClassLoader) {
return $this->pluginClassLoader->load($key) ?: GenericHeader::class;
diff --git a/test/AddressTest.php b/test/AddressTest.php
index 0faffe70..62e62581 100644
--- a/test/AddressTest.php
+++ b/test/AddressTest.php
@@ -43,7 +43,7 @@ public function testSetAddressInvalidAddressObject($email, $name): void
new Address($email, $name);
}
- public function invalidSenderDataProvider(): array
+ public static function invalidSenderDataProvider(): array
{
return [
// Description => [sender address, sender name],
@@ -74,7 +74,7 @@ public function testSetAddressValidAddressObject($email, $name): void
$this->assertInstanceOf(Address::class, $address);
}
- public function validSenderDataProvider(): array
+ public static function validSenderDataProvider(): array
{
return [
// Description => [sender address, sender name],
diff --git a/test/Header/AddressListHeaderTest.php b/test/Header/AddressListHeaderTest.php
index 7e558323..67044b39 100644
--- a/test/Header/AddressListHeaderTest.php
+++ b/test/Header/AddressListHeaderTest.php
@@ -67,7 +67,7 @@ public function testFieldValueIsCreatedFromAddressList(): void
$header = new To();
$list = $header->getAddressList();
$this->populateAddressList($list);
- $expected = $this->getExpectedFieldValue();
+ $expected = self::getExpectedFieldValue();
$this->assertEquals($expected, $header->getFieldValue());
}
@@ -80,7 +80,7 @@ public function populateAddressList(AddressList $list): void
$list->add('first@last.example.com', 'Last, First');
}
- public function getExpectedFieldValue(): string
+ public static function getExpectedFieldValue(): string
{
// @codingStandardsIgnoreStart
return "Example Test ,\r\n list@example.com,\r\n Example Announce List ,\r\n \"Last, First\" ";
@@ -93,13 +93,13 @@ public function getExpectedFieldValue(): string
public function testStringRepresentationIncludesHeaderAndFieldValue(AbstractAddressList $header, string $type): void
{
$this->populateAddressList($header->getAddressList());
- $expected = sprintf('%s: %s', $type, $this->getExpectedFieldValue());
+ $expected = sprintf('%s: %s', $type, self::getExpectedFieldValue());
$this->assertEquals($expected, $header->toString());
}
- public function getStringHeaders(): array
+ public static function getStringHeaders(): array
{
- $value = $this->getExpectedFieldValue();
+ $value = self::getExpectedFieldValue();
return [
'cc' => ['Cc: ' . $value, Cc::class],
'bcc' => ['Bcc: ' . $value, Bcc::class],
@@ -134,9 +134,9 @@ public function testDeserializationFromString(string $headerLine, string $class)
$this->assertEquals('Last, First', $address->getName());
}
- public function getStringHeadersWithNoWhitespaceSeparator(): array
+ public static function getStringHeadersWithNoWhitespaceSeparator(): array
{
- $value = $this->getExpectedFieldValue();
+ $value = self::getExpectedFieldValue();
return [
'cc' => ['Cc:' . $value, Cc::class],
'bcc' => ['Bcc:' . $value, Bcc::class],
@@ -157,7 +157,7 @@ public function testDeserializationFromStringWithComments(string $value): void
$this->assertTrue($list->has('user@example.com'));
}
- public function getHeadersWithComments(): array
+ public static function getHeadersWithComments(): array
{
return [
['From: user@example.com (Comment)'],
@@ -180,7 +180,7 @@ public function testTrimSurroundingSingleQuotes(string $value): void
/**
* @return string[][]
*/
- public function getHeadersWithSurroundingSingleQuotes(): array
+ public static function getHeadersWithSurroundingSingleQuotes(): array
{
return [
['To: <\'foo@example.com\'>'],
@@ -229,7 +229,7 @@ public function testAddressListWithGroup(string $input, int $count, $sample): vo
}
}
- public function getAddressListsWithGroup(): array
+ public static function getAddressListsWithGroup(): array
{
return [
['To: undisclosed-recipients:;', 0, null],
@@ -237,7 +237,7 @@ public function getAddressListsWithGroup(): array
];
}
- public function specialCharHeaderProvider(): array
+ public static function specialCharHeaderProvider(): array
{
return [
[
@@ -274,7 +274,7 @@ public function testDeserializationFromSpecialCharString(
}
}
- public function unconventionalHeaderLinesProvider(): array
+ public static function unconventionalHeaderLinesProvider(): array
{
return [
// Description => [header line, expected]
diff --git a/test/Header/ContentDispositionTest.php b/test/Header/ContentDispositionTest.php
index abd3323a..9df7a42f 100644
--- a/test/Header/ContentDispositionTest.php
+++ b/test/Header/ContentDispositionTest.php
@@ -197,7 +197,7 @@ public function testRemoveParameter(): void
$this->assertEquals(true, $header->removeParameter('name'));
}
- public function setDispositionProvider(): array
+ public static function setDispositionProvider(): array
{
// @codingStandardsIgnoreStart
$foldingFieldValue = "attachment;\r\n filename=\"this-test-filename-is-long-enough-to-flow-to-two-lines.txt\"";
@@ -257,7 +257,7 @@ public function setDispositionProvider(): array
// @codingStandardsIgnoreEnd
}
- public function invalidParametersProvider(): array
+ public static function invalidParametersProvider(): array
{
$invalidArgumentException = InvalidArgumentException::class;
@@ -270,7 +270,7 @@ public function invalidParametersProvider(): array
// @codingStandardsIgnoreEnd
}
- public function invalidHeaderLinesProvider(): array
+ public static function invalidHeaderLinesProvider(): array
{
$invalidArgumentException = InvalidArgumentException::class;
@@ -287,7 +287,7 @@ public function invalidHeaderLinesProvider(): array
// @codingStandardsIgnoreEnd
}
- public function getParameterProvider(): array
+ public static function getParameterProvider(): array
{
// @codingStandardsIgnoreStart
return [
@@ -303,7 +303,7 @@ public function getParameterProvider(): array
// @codingStandardsIgnoreEnd
}
- public function parameterWrappingProvider(): iterable
+ public static function parameterWrappingProvider(): iterable
{
// @codingStandardsIgnoreStart
yield 'Without sequence number' => [
@@ -326,7 +326,7 @@ public function parameterWrappingProvider(): iterable
// @codingStandardsIgnoreEnd
}
- public function parameterWrappingProviderExceptions(): iterable
+ public static function parameterWrappingProviderExceptions(): iterable
{
// @codingStandardsIgnoreStart
yield 'With non-numeric-sequence' => [
@@ -339,7 +339,7 @@ public function parameterWrappingProviderExceptions(): iterable
// @codingStandardsIgnoreEnd
}
- public function unconventionalHeaderLinesProvider(): array
+ public static function unconventionalHeaderLinesProvider(): array
{
return [
// Description => [header line, expected]
diff --git a/test/Header/ContentTransferEncodingTest.php b/test/Header/ContentTransferEncodingTest.php
index 345ce011..d1d3d2d8 100644
--- a/test/Header/ContentTransferEncodingTest.php
+++ b/test/Header/ContentTransferEncodingTest.php
@@ -18,7 +18,7 @@
*/
class ContentTransferEncodingTest extends TestCase
{
- public function dataValidEncodings(): array
+ public static function dataValidEncodings(): array
{
return [
['7bit'],
@@ -28,7 +28,7 @@ public function dataValidEncodings(): array
];
}
- public function dataInvalidEncodings(): array
+ public static function dataInvalidEncodings(): array
{
return [
['9bit'],
@@ -111,7 +111,7 @@ public function testFromStringRaisesExceptionOnInvalidHeaderName(): void
ContentTransferEncoding::fromString('Content-Transfer-Encoding' . chr(32) . ': 8bit');
}
- public function headerLines(): array
+ public static function headerLines(): array
{
return [
'newline' => ["Content-Transfer-Encoding: 8bit\n7bit"],
@@ -171,7 +171,7 @@ public function testChangeEncodingHasNoEffect(): void
$this->assertSame('ASCII', $header->getEncoding());
}
- public function unconventionalHeaderLinesProvider(): array
+ public static function unconventionalHeaderLinesProvider(): array
{
return [
// Description => [header line, expected value]
diff --git a/test/Header/ContentTypeTest.php b/test/Header/ContentTypeTest.php
index 314766cc..5ef13857 100644
--- a/test/Header/ContentTypeTest.php
+++ b/test/Header/ContentTypeTest.php
@@ -153,7 +153,7 @@ public function testAddParameterThrowException(
$header->addParameter($paramName, $paramValue);
}
- public function setTypeProvider(): array
+ public static function setTypeProvider(): array
{
$foldingHeaderLine = "Content-Type: foo/baz;\r\n charset=\"us-ascii\"";
$foldingFieldValue = "foo/baz;\r\n charset=\"us-ascii\"";
@@ -174,7 +174,7 @@ public function setTypeProvider(): array
// @codingStandardsIgnoreEnd
}
- public function invalidParametersProvider(): array
+ public static function invalidParametersProvider(): array
{
$invalidArgumentException = Exception\InvalidArgumentException::class;
@@ -188,7 +188,7 @@ public function invalidParametersProvider(): array
// @codingStandardsIgnoreEnd
}
- public function invalidHeaderLinesProvider(): array
+ public static function invalidHeaderLinesProvider(): array
{
$invalidArgumentException = Exception\InvalidArgumentException::class;
@@ -263,7 +263,7 @@ public function testRemoveParameterNotExists(): void
$this->assertFalse($header->removeParameter('level'));
}
- public function parameterWrappingProvider(): iterable
+ public static function parameterWrappingProvider(): iterable
{
yield 'Example from RFC2231' => [
"Content-Type: application/x-stuff; title*=us-ascii'en-us'This%20is%20%2A%2A%2Afun%2A%2A%2A",
@@ -271,7 +271,7 @@ public function parameterWrappingProvider(): iterable
];
}
- public function unconventionalHeaderLinesProvider(): array
+ public static function unconventionalHeaderLinesProvider(): array
{
return [
// Description => [header line, expected value]
diff --git a/test/Header/DateTest.php b/test/Header/DateTest.php
index b3fb9c3a..1a779842 100644
--- a/test/Header/DateTest.php
+++ b/test/Header/DateTest.php
@@ -11,7 +11,7 @@
*/
class DateTest extends TestCase
{
- public function headerLines(): array
+ public static function headerLines(): array
{
return [
'newline' => ["Date: xxx yyy\n"],
diff --git a/test/Header/GenericHeaderTest.php b/test/Header/GenericHeaderTest.php
index 862cb5e1..55bce76d 100644
--- a/test/Header/GenericHeaderTest.php
+++ b/test/Header/GenericHeaderTest.php
@@ -16,7 +16,7 @@
class GenericHeaderTest extends TestCase
{
/** @return array */
- public function invalidHeaderLines(): array
+ public static function invalidHeaderLines(): array
{
return [
'append-chr-32' => [
@@ -46,7 +46,7 @@ public function testSplitHeaderLineRaisesExceptionOnInvalidHeader(string $line,
}
/** @return array */
- public function fieldNames(): array
+ public static function fieldNames(): array
{
return [
'append-chr-13' => ["Subject" . chr(13)],
@@ -81,7 +81,7 @@ public function testSetFieldNameRaisesExceptionOnInvalidFieldName(?string $field
}
/** @return array */
- public function fieldValues(): array
+ public static function fieldValues(): array
{
return [
'empty-lines' => ["\n\n\r\n\r\n\n"],
@@ -136,7 +136,7 @@ public function testSetFieldValueValidValue(string $decodedValue, string $encode
}
/** @return array */
- public function validFieldValuesProvider(): array
+ public static function validFieldValuesProvider(): array
{
return [
// Description => [decoded format, encoded format, encoding],
diff --git a/test/Header/HeaderLocatorTest.php b/test/Header/HeaderLocatorTest.php
index da8f5749..5de948e9 100644
--- a/test/Header/HeaderLocatorTest.php
+++ b/test/Header/HeaderLocatorTest.php
@@ -15,7 +15,7 @@ public function setUp(): void
$this->headerLocator = new Header\HeaderLocator();
}
- public function provideHeaderNames(): array
+ public static function provideHeaderNames(): array
{
return [
'with existing name' => ['to', Header\To::class],
@@ -25,8 +25,8 @@ public function provideHeaderNames(): array
}
/**
- * @param null|class-string $expected
- * @param null|class-string $default
+ * @param null|class-string $expected
+ * @param null|class-string $default
* @dataProvider provideHeaderNames
*/
public function testHeaderIsProperlyLoaded(string $name, ?string $expected, ?string $default = null): void
diff --git a/test/Header/HeaderNameTest.php b/test/Header/HeaderNameTest.php
index 3b9b9bce..6d1372ac 100644
--- a/test/Header/HeaderNameTest.php
+++ b/test/Header/HeaderNameTest.php
@@ -16,7 +16,7 @@ class HeaderNameTest extends TestCase
/**
* Data for filter name
*/
- public function getFilterNames(): array
+ public static function getFilterNames(): array
{
return [
['Subject', 'Subject'],
@@ -39,7 +39,7 @@ public function testFilterName(string $name, string $expected): void
$this->assertEquals($expected, HeaderName::filter($name));
}
- public function validateNames(): array
+ public static function validateNames(): array
{
return [
['Subject', 'assertTrue'],
@@ -61,7 +61,7 @@ public function testValidateName(string $name, string $assertion): void
$this->{$assertion}(HeaderName::isValid($name));
}
- public function assertNames(): array
+ public static function assertNames(): array
{
return [
['Subject:'],
diff --git a/test/Header/HeaderValueTest.php b/test/Header/HeaderValueTest.php
index afce9a80..c84425ac 100644
--- a/test/Header/HeaderValueTest.php
+++ b/test/Header/HeaderValueTest.php
@@ -14,7 +14,7 @@ class HeaderValueTest extends TestCase
/**
* Data for filter value
*/
- public function getFilterValues(): array
+ public static function getFilterValues(): array
{
return [
["This is a\n test", "This is a test"],
@@ -41,7 +41,7 @@ public function testFilterValue(string $value, string $expected): void
$this->assertEquals($expected, HeaderValue::filter($value));
}
- public function validateValues(): array
+ public static function validateValues(): array
{
return [
["This is a\n test", 'assertFalse'],
@@ -72,7 +72,7 @@ public function testValidateValue(string $value, string $assertion): void
$this->{$assertion}(HeaderValue::isValid($value));
}
- public function assertValues(): array
+ public static function assertValues(): array
{
return [
["This is a\n test"],
diff --git a/test/Header/IdentificationFieldTest.php b/test/Header/IdentificationFieldTest.php
index afa714ec..36322f91 100644
--- a/test/Header/IdentificationFieldTest.php
+++ b/test/Header/IdentificationFieldTest.php
@@ -12,7 +12,7 @@
class IdentificationFieldTest extends TestCase
{
- public function stringHeadersProvider(): array
+ public static function stringHeadersProvider(): array
{
return array_merge(
[
@@ -22,11 +22,11 @@ public function stringHeadersProvider(): array
['1234@local.machine.example', '3456@example.net'],
],
],
- $this->reversibleStringHeadersProvider()
+ self::reversibleStringHeadersProvider()
);
}
- public function reversibleStringHeadersProvider(): array
+ public static function reversibleStringHeadersProvider(): array
{
return [
[References::class, 'References: <1234@local.machine.example>', ['1234@local.machine.example']],
@@ -39,7 +39,7 @@ public function reversibleStringHeadersProvider(): array
];
}
- public function invalidIds(): array
+ public static function invalidIds(): array
{
return [
[References::class, ["1234@local.machine.example\r\n"]],
diff --git a/test/Header/MessageIdTest.php b/test/Header/MessageIdTest.php
index 804b2883..086e5f8c 100644
--- a/test/Header/MessageIdTest.php
+++ b/test/Header/MessageIdTest.php
@@ -46,7 +46,7 @@ public function testAutoGenerationWithServerVars(): void
$_SERVER = $serverBeforeTest;
}
- public function headerLines(): array
+ public static function headerLines(): array
{
return [
'newline' => ["Message-ID: foo\nbar"],
@@ -66,7 +66,7 @@ public function testFromStringPreventsCrlfInjectionOnDetection(string $header):
$messageid = Header\MessageId::fromString($header);
}
- public function invalidIdentifiers(): array
+ public static function invalidIdentifiers(): array
{
return [
'newline' => ["foo\nbar"],
diff --git a/test/Header/MimeVersionTest.php b/test/Header/MimeVersionTest.php
index 3cb7e01a..1ea5e30b 100644
--- a/test/Header/MimeVersionTest.php
+++ b/test/Header/MimeVersionTest.php
@@ -27,7 +27,7 @@ public function testDefaultVersion(): void
$this->assertEquals('MIME-Version: 1.0', $mime->toString());
}
- public function headerLines(): array
+ public static function headerLines(): array
{
return [
'newline' => ["MIME-Version: 5.0\nbar"],
@@ -47,7 +47,7 @@ public function testFromStringRaisesExceptionOnDetectionOfCrlfInjection(string $
$mime = Header\MimeVersion::fromString($header);
}
- public function invalidVersions(): array
+ public static function invalidVersions(): array
{
return [
'no-decimal' => ['1'],
@@ -88,7 +88,7 @@ public function testSetEncodingHasNoEffect(): void
$this->assertSame('ASCII', $header->getEncoding());
}
- public function unconventionalHeaderLinesProvider(): array
+ public static function unconventionalHeaderLinesProvider(): array
{
return [
// Description => [header line, expected value]
diff --git a/test/Header/ReceivedTest.php b/test/Header/ReceivedTest.php
index bc48c0fe..2e46c21b 100644
--- a/test/Header/ReceivedTest.php
+++ b/test/Header/ReceivedTest.php
@@ -46,7 +46,7 @@ public function testReceivedToStringReturnsHeaderFormattedString(): void
}
/** Implementation specific tests here */
- public function headerLines(): array
+ public static function headerLines(): array
{
return [
'newline' => ["Received: xx\nx"],
@@ -67,7 +67,7 @@ public function testRaisesExceptionViaFromStringOnDetectionOfCrlfInjection(strin
$received = Header\Received::fromString($header);
}
- public function invalidValues(): array
+ public static function invalidValues(): array
{
return [
'newline' => ["xx\nx"],
diff --git a/test/Header/SenderTest.php b/test/Header/SenderTest.php
index 20a7001b..30ac6b80 100644
--- a/test/Header/SenderTest.php
+++ b/test/Header/SenderTest.php
@@ -112,7 +112,7 @@ public function testSetAddressValidAddressObject($email, $name, $expectedFieldVa
$this->assertEquals($encoding, $header->getEncoding());
}
- public function validSenderDataProvider(): array
+ public static function validSenderDataProvider(): array
{
return [
// Description => [sender address, sender name, getFieldValue, encoded version, encoding],
@@ -140,10 +140,10 @@ public function validSenderDataProvider(): array
];
}
- public function validSenderHeaderDataProvider(): array
+ public static function validSenderHeaderDataProvider(): array
{
return array_merge(array_map(static fn($parameters)
- => array_slice($parameters, 2), $this->validSenderDataProvider()), [
+ => array_slice($parameters, 2), self::validSenderDataProvider()), [
// Per RFC 2822, 3.4 and 3.6.2, "Sender: foo@bar" is valid.
'Unbracketed email' => [
'',
@@ -153,7 +153,7 @@ public function validSenderHeaderDataProvider(): array
]);
}
- public function invalidSenderDataProvider(): array
+ public static function invalidSenderDataProvider(): array
{
$mailInvalidArgumentException = Exception\InvalidArgumentException::class;
@@ -176,7 +176,7 @@ public function invalidSenderDataProvider(): array
];
}
- public function invalidSenderEncodedDataProvider(): array
+ public static function invalidSenderEncodedDataProvider(): array
{
$mailInvalidArgumentException = Exception\InvalidArgumentException::class;
$headerInvalidArgumentException = Header\Exception\InvalidArgumentException::class;
@@ -213,7 +213,7 @@ public function testFromStringWithValidInput($headerString, $expectedName, $expe
$this->assertSame($expectedEmail, $header->getAddress()->getEmail());
}
- public function validHeaderLinesProvider(): array
+ public static function validHeaderLinesProvider(): array
{
// @codingStandardsIgnoreStart
return [
@@ -245,7 +245,7 @@ public function testFromStringWithInvalidInput($headerString, $expectedException
Header\Sender::fromString($headerString);
}
- public function invalidHeaderLinesProvider(): array
+ public static function invalidHeaderLinesProvider(): array
{
$mailInvalidArgumentException = Exception\InvalidArgumentException::class;
$headerInvalidArgumentException = Header\Exception\InvalidArgumentException::class;
diff --git a/test/Header/SubjectTest.php b/test/Header/SubjectTest.php
index d06d3a79..313174df 100644
--- a/test/Header/SubjectTest.php
+++ b/test/Header/SubjectTest.php
@@ -97,7 +97,7 @@ public function testSetSubjectValidValue($decodedValue, $encodedValue, $encoding
$this->assertEquals($encoding, $header->getEncoding());
}
- public function validSubjectValuesProvider(): array
+ public static function validSubjectValuesProvider(): array
{
return [
// Description => [decoded format, encoded format, encoding],
@@ -115,7 +115,7 @@ public function validSubjectValuesProvider(): array
];
}
- public function invalidSubjectValuesProvider(): array
+ public static function invalidSubjectValuesProvider(): array
{
$invalidArgumentException = Exception\InvalidArgumentException::class;
$invalidHeaderValueDetected = 'Invalid header value detected';
diff --git a/test/Header/ToTest.php b/test/Header/ToTest.php
index 91aacd2d..75273ea7 100644
--- a/test/Header/ToTest.php
+++ b/test/Header/ToTest.php
@@ -30,7 +30,7 @@ public function testHeaderFoldingOccursProperly(): void
$this->assertEquals(10, count($emails));
}
- public function headerLines(): array
+ public static function headerLines(): array
{
return [
'newline' => ["To: xxx yyy\n"],
diff --git a/test/MessageFactoryTest.php b/test/MessageFactoryTest.php
index 11da700c..411372a0 100644
--- a/test/MessageFactoryTest.php
+++ b/test/MessageFactoryTest.php
@@ -96,7 +96,7 @@ public function testEmptyOption(): void
$this->assertInstanceOf(Message::class, $mail);
}
- public function invalidMessageOptions(): array
+ public static function invalidMessageOptions(): array
{
return [
'null' => [null],
diff --git a/test/MessageTest.php b/test/MessageTest.php
index 8e59a7b8..042e7b85 100644
--- a/test/MessageTest.php
+++ b/test/MessageTest.php
@@ -739,7 +739,7 @@ public function testPassEmptyArrayIntoSetPartsOfMimeMessageShouldReturnEmptyBody
$this->assertEquals('', $this->message->getBodyText());
}
- public function messageRecipients(): array
+ public static function messageRecipients(): array
{
return [
'setFrom' => ['setFrom'],
diff --git a/test/Protocol/ProtocolTraitTest.php b/test/Protocol/ProtocolTraitTest.php
index 44297ff4..c0be392f 100644
--- a/test/Protocol/ProtocolTraitTest.php
+++ b/test/Protocol/ProtocolTraitTest.php
@@ -12,7 +12,9 @@ class ProtocolTraitTest extends TestCase
{
public function testTls12Version(): void
{
- $mock = $this->getMockForTrait(ProtocolTrait::class);
+ $mock = new class {
+ use ProtocolTrait;
+ };
$this->assertNotEmpty(
STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT & $mock->getCryptoMethod(),
diff --git a/test/Protocol/SmtpPluginManagerCompatibilityTest.php b/test/Protocol/SmtpPluginManagerCompatibilityTest.php
index 7776dc28..23adfe09 100644
--- a/test/Protocol/SmtpPluginManagerCompatibilityTest.php
+++ b/test/Protocol/SmtpPluginManagerCompatibilityTest.php
@@ -13,7 +13,7 @@ class SmtpPluginManagerCompatibilityTest extends TestCase
{
use CommonPluginManagerTrait;
- protected function getPluginManager(): SmtpPluginManager
+ protected static function getPluginManager(): SmtpPluginManager
{
return new SmtpPluginManager(new ServiceManager());
}
diff --git a/test/Storage/MessageTest.php b/test/Storage/MessageTest.php
index c6aec8ab..860d8acd 100644
--- a/test/Storage/MessageTest.php
+++ b/test/Storage/MessageTest.php
@@ -501,7 +501,7 @@ public function testMultivaluedToHeader(): void
$this->assertEquals('nicpoń', $address->getName());
}
- public function filesProvider(): array
+ public static function filesProvider(): array
{
$filePath = __DIR__ . '/../_files/mail.eml';
$fileBlankLineOnTop = __DIR__ . '/../_files/mail_blank_top_line.eml';
diff --git a/test/Storage/ParamsNormalizerTest.php b/test/Storage/ParamsNormalizerTest.php
index 76d1b8e1..ff9edb00 100644
--- a/test/Storage/ParamsNormalizerTest.php
+++ b/test/Storage/ParamsNormalizerTest.php
@@ -10,7 +10,7 @@
class ParamsNormalizerTest extends TestCase
{
/** @psalm-return iterable */
- public function invalidParams(): iterable
+ public static function invalidParams(): iterable
{
yield 'null' => [null];
yield 'bool' => [true];
diff --git a/test/Transport/FactoryTest.php b/test/Transport/FactoryTest.php
index f23ca16f..7dd326cb 100644
--- a/test/Transport/FactoryTest.php
+++ b/test/Transport/FactoryTest.php
@@ -34,7 +34,7 @@ public function testInvalidSpecThrowsInvalidArgumentException(mixed $spec): void
Factory::create($spec);
}
- public function invalidSpecTypeProvider(): array
+ public static function invalidSpecTypeProvider(): array
{
return [
['spec'],
@@ -66,7 +66,7 @@ public function testCanCreateClassUsingTypeKey(string $type): void
$this->assertInstanceOf($type, $transport);
}
- public function typeProvider(): array
+ public static function typeProvider(): array
{
return [
[File::class],
@@ -89,7 +89,7 @@ public function testCanCreateClassFromTypeAlias(string $type, string $expectedCl
$this->assertInstanceOf($expectedClass, $transport);
}
- public function typeAliasProvider(): array
+ public static function typeAliasProvider(): array
{
return [
['file', File::class],
@@ -140,7 +140,7 @@ public function testInvalidClassThrowsDomainException(string $class): void
]);
}
- public function invalidClassProvider(): array
+ public static function invalidClassProvider(): array
{
return [
['stdClass'],
diff --git a/test/Transport/SendmailTest.php b/test/Transport/SendmailTest.php
index b96ca0db..6f36b21c 100644
--- a/test/Transport/SendmailTest.php
+++ b/test/Transport/SendmailTest.php
@@ -325,7 +325,7 @@ public function testHeadersToAndSubjectAreNotDuplicated(): void
);
}
- public function additionalParametersContainingFromSwitch(): iterable
+ public static function additionalParametersContainingFromSwitch(): iterable
{
yield 'leading' => ['-f\'foo@example.com\''];
yield 'not-leading' => ['-bs -f\'foo@example.com\''];
diff --git a/test/Transport/SmtpTest.php b/test/Transport/SmtpTest.php
index c10b3e35..88895e80 100644
--- a/test/Transport/SmtpTest.php
+++ b/test/Transport/SmtpTest.php
@@ -318,7 +318,7 @@ public function testAutoReconnect(): void
// Mock the connection
$connectionMock = $this->getMockBuilder(SmtpProtocol::class)
->disableOriginalConstructor()
- ->setMethods(['connect', 'helo', 'hasSession', 'mail', 'rcpt', 'data', 'rset'])
+ ->onlyMethods(['connect', 'helo', 'hasSession', 'mail', 'rcpt', 'data', 'rset'])
->getMock();
$connectionMock
@@ -358,7 +358,7 @@ public function testAutoReconnect(): void
// Mock the plugin manager so that lazyLoadConnection() works
$pluginManagerMock = $this->getMockBuilder(SmtpPluginManager::class)
->disableOriginalConstructor()
- ->setMethods(['get'])
+ ->onlyMethods(['get'])
->getMock();
$pluginManagerMock