diff --git a/.github/linters/.codespellrc b/.github/linters/.codespellrc new file mode 100644 index 0000000..1375eee --- /dev/null +++ b/.github/linters/.codespellrc @@ -0,0 +1,2 @@ +[codespell] +skip = */tests/*,tests/**,*/composer.lock,*/composer.json diff --git a/CHANGELOG.md b/CHANGELOG.md index 51a411e..e315bf8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,10 @@ - Bug #226: Add support for `PHP 8.5` in `docker-compose.yml` and GitHub workflows (@terabytesoftw) - Enh #229: Add `php-forge/coding-standard` to development dependencies for code quality checks (@terabytesoftw) - Bug #230: Add section for automated refactoring using `Rector` in testing documentation (@terabytesoftw) +- Enh #229: Add `php-forge/coding-standard` to development dependencies for code quality checks (@terabytesoftw) +- Bug #230: Add section for automated refactoring using `Rector` in testing documentation (@terabytesoftw) +- Enh #236: Add `.codespellrc` configuration to skip specific files and directories for spell checking (@terabytesoftw) +- Enh #237: Update PHP requirement to `8.2` in `composer.json` and adjust PHP versions in `build.yml` (@terabytesoftw) ## 0.1.2 October 8, 2025 diff --git a/README.md b/README.md index 87916cf..e13acf8 100644 --- a/README.md +++ b/README.md @@ -131,8 +131,8 @@ final class SiteController extends Controller ## Package information -[![PHP](https://img.shields.io/badge/%3E%3D8.1-777BB4.svg?style=for-the-badge&logo=php&logoColor=white)](https://www.php.net/releases/8.1/en.php) -[![Yii 2.0.x](https://img.shields.io/badge/2.0.53-0073AA.svg?style=for-the-badge&logo=yii&logoColor=white)](https://github.com/yiisoft/yii2/tree/2.0.53) +[![PHP](https://img.shields.io/badge/%3E%3D8.2-777BB4.svg?style=for-the-badge&logo=php&logoColor=white)](https://www.php.net/releases/8.2/en.php) +[![Yii 2.0.x](https://img.shields.io/badge/2.0.54-0073AA.svg?style=for-the-badge&logo=yii&logoColor=white)](https://github.com/yiisoft/yii2/tree/2.0.54) [![Yii 22.0.x](https://img.shields.io/badge/22.0.x-0073AA.svg?style=for-the-badge&logo=yii&logoColor=white)](https://github.com/yiisoft/yii2/tree/22.0) [![GHCR](https://img.shields.io/badge/GHCR-Apache%20Image-blue?style=for-the-badge&logo=github&logoColor=white)](https://github.com/yii2-extensions/docker-images/pkgs/container/apache) diff --git a/composer.json b/composer.json index 9df2c16..46b0bde 100644 --- a/composer.json +++ b/composer.json @@ -11,7 +11,7 @@ "minimum-stability": "dev", "license": "BSD-3-Clause", "require": { - "php": ">=8.1", + "php": ">=8.2", "php-forge/foxy": "^0.2", "ui-awesome/html-svg": "^0.3", "vlucas/phpdotenv": "^5.6", diff --git a/composer.lock b/composer.lock index 1cc0637..c10a793 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": "15f1f55e055cec6430d8990101742c91", + "content-hash": "f17941c4508ef73fdcad78b1f79b1ce2", "packages": [ { "name": "cebe/markdown", @@ -220,12 +220,12 @@ "source": { "type": "git", "url": "https://github.com/composer/composer.git", - "reference": "285ea67245692ec23529f47a2264cd2c95bad3d3" + "reference": "09a63cc31bb0fbcb051624ebf6a250905d883c10" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/composer/zipball/285ea67245692ec23529f47a2264cd2c95bad3d3", - "reference": "285ea67245692ec23529f47a2264cd2c95bad3d3", + "url": "https://api.github.com/repos/composer/composer/zipball/09a63cc31bb0fbcb051624ebf6a250905d883c10", + "reference": "09a63cc31bb0fbcb051624ebf6a250905d883c10", "shasum": "" }, "require": { @@ -326,7 +326,7 @@ "type": "github" } ], - "time": "2026-01-22T13:08:50+00:00" + "time": "2026-02-05T10:46:36+00:00" }, { "name": "composer/metadata-minifier", @@ -863,16 +863,16 @@ }, { "name": "justinrainbow/json-schema", - "version": "6.6.4", + "version": "v6.7.2", "source": { "type": "git", "url": "https://github.com/jsonrainbow/json-schema.git", - "reference": "2eeb75d21cf73211335888e7f5e6fd7440723ec7" + "reference": "6fea66c7204683af437864e7c4e7abf383d14bc0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/jsonrainbow/json-schema/zipball/2eeb75d21cf73211335888e7f5e6fd7440723ec7", - "reference": "2eeb75d21cf73211335888e7f5e6fd7440723ec7", + "url": "https://api.github.com/repos/jsonrainbow/json-schema/zipball/6fea66c7204683af437864e7c4e7abf383d14bc0", + "reference": "6fea66c7204683af437864e7c4e7abf383d14bc0", "shasum": "" }, "require": { @@ -932,9 +932,9 @@ ], "support": { "issues": "https://github.com/jsonrainbow/json-schema/issues", - "source": "https://github.com/jsonrainbow/json-schema/tree/6.6.4" + "source": "https://github.com/jsonrainbow/json-schema/tree/v6.7.2" }, - "time": "2025-12-19T15:01:32+00:00" + "time": "2026-02-15T15:06:22+00:00" }, { "name": "marc-mabe/php-enum", @@ -942,12 +942,12 @@ "source": { "type": "git", "url": "https://github.com/marc-mabe/php-enum.git", - "reference": "ad41f0bfbcb32ab13c549265ed91f332694f6433" + "reference": "3a0d103f03b53844fa1489901b74b9a4254ec122" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/marc-mabe/php-enum/zipball/ad41f0bfbcb32ab13c549265ed91f332694f6433", - "reference": "ad41f0bfbcb32ab13c549265ed91f332694f6433", + "url": "https://api.github.com/repos/marc-mabe/php-enum/zipball/3a0d103f03b53844fa1489901b74b9a4254ec122", + "reference": "3a0d103f03b53844fa1489901b74b9a4254ec122", "shasum": "" }, "require": { @@ -957,7 +957,7 @@ "require-dev": { "phpbench/phpbench": "^0.16.10 || ^1.0.4", "phpstan/phpstan": "^1.3.1", - "phpunit/phpunit": "^7.5.20 | ^8.5.22 | ^9.5.11", + "phpunit/phpunit": "^7.5.20 | ^8.5.52 | ^9.6.33", "vimeo/psalm": "^4.17.0 | ^5.26.1" }, "default-branch": true, @@ -1008,7 +1008,7 @@ "issues": "https://github.com/marc-mabe/php-enum/issues", "source": "https://github.com/marc-mabe/php-enum/tree/master" }, - "time": "2025-11-23T17:06:57+00:00" + "time": "2026-02-09T21:42:46+00:00" }, { "name": "php-forge/foxy", @@ -1522,12 +1522,12 @@ "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "41e38717ac1dd7a46b6bda7d6a82af2d98a78894" + "reference": "0db91ea82d0fa2a012f3e3051c6f6969286d64da" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/41e38717ac1dd7a46b6bda7d6a82af2d98a78894", - "reference": "41e38717ac1dd7a46b6bda7d6a82af2d98a78894", + "url": "https://api.github.com/repos/symfony/console/zipball/0db91ea82d0fa2a012f3e3051c6f6969286d64da", + "reference": "0db91ea82d0fa2a012f3e3051c6f6969286d64da", "shasum": "" }, "require": { @@ -1612,7 +1612,7 @@ "type": "tidelift" } ], - "time": "2026-01-13T11:36:38+00:00" + "time": "2026-02-17T04:34:25+00:00" }, { "name": "symfony/deprecation-contracts", @@ -1692,16 +1692,17 @@ "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "e788f1e664154a75f655fdd92c82c39023979095" + "reference": "a16175055601091ab53d485071ee68f314b40309" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/e788f1e664154a75f655fdd92c82c39023979095", - "reference": "e788f1e664154a75f655fdd92c82c39023979095", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/a16175055601091ab53d485071ee68f314b40309", + "reference": "a16175055601091ab53d485071ee68f314b40309", "shasum": "" }, "require": { "php": ">=8.4", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-mbstring": "~1.8" }, @@ -1755,7 +1756,7 @@ "type": "tidelift" } ], - "time": "2025-12-19T08:37:21+00:00" + "time": "2026-02-10T15:29:17+00:00" }, { "name": "symfony/finder", @@ -1763,12 +1764,12 @@ "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "601193c7c5e12c691bccb484f44948cd0f6519d6" + "reference": "4009772b4f37203e952e4c47f0272312f4c151e3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/601193c7c5e12c691bccb484f44948cd0f6519d6", - "reference": "601193c7c5e12c691bccb484f44948cd0f6519d6", + "url": "https://api.github.com/repos/symfony/finder/zipball/4009772b4f37203e952e4c47f0272312f4c151e3", + "reference": "4009772b4f37203e952e4c47f0272312f4c151e3", "shasum": "" }, "require": { @@ -1824,7 +1825,7 @@ "type": "tidelift" } ], - "time": "2026-01-12T12:59:46+00:00" + "time": "2026-01-29T09:42:01+00:00" }, { "name": "symfony/polyfill-ctype", @@ -2499,12 +2500,12 @@ "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "c593135be689b21e6164b1e8f6f5dbf1506b065c" + "reference": "c46e854e79b52d07666e43924a20cb6dc546644e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/c593135be689b21e6164b1e8f6f5dbf1506b065c", - "reference": "c593135be689b21e6164b1e8f6f5dbf1506b065c", + "url": "https://api.github.com/repos/symfony/process/zipball/c46e854e79b52d07666e43924a20cb6dc546644e", + "reference": "c46e854e79b52d07666e43924a20cb6dc546644e", "shasum": "" }, "require": { @@ -2556,7 +2557,7 @@ "type": "tidelift" } ], - "time": "2026-01-15T13:23:20+00:00" + "time": "2026-01-23T16:02:12+00:00" }, { "name": "symfony/service-contracts", @@ -2564,12 +2565,12 @@ "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "09dd242537543ad34254b0e173ab287a7e39900b" + "reference": "639fa48ea277babeb67e1432ce60a029d795bd63" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/09dd242537543ad34254b0e173ab287a7e39900b", - "reference": "09dd242537543ad34254b0e173ab287a7e39900b", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/639fa48ea277babeb67e1432ce60a029d795bd63", + "reference": "639fa48ea277babeb67e1432ce60a029d795bd63", "shasum": "" }, "require": { @@ -2644,7 +2645,7 @@ "type": "tidelift" } ], - "time": "2026-01-05T13:30:16+00:00" + "time": "2026-02-13T20:42:21+00:00" }, { "name": "symfony/string", @@ -2652,12 +2653,12 @@ "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "6954e1726dbee36c314045e5ee702daf53ae7186" + "reference": "38ef56ae8e4d5ada76d807638689f135059dc648" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/6954e1726dbee36c314045e5ee702daf53ae7186", - "reference": "6954e1726dbee36c314045e5ee702daf53ae7186", + "url": "https://api.github.com/repos/symfony/string/zipball/38ef56ae8e4d5ada76d807638689f135059dc648", + "reference": "38ef56ae8e4d5ada76d807638689f135059dc648", "shasum": "" }, "require": { @@ -2735,20 +2736,20 @@ "type": "tidelift" } ], - "time": "2026-01-12T12:59:46+00:00" + "time": "2026-02-09T10:17:21+00:00" }, { "name": "ui-awesome/html-attribute", - "version": "0.5.1", + "version": "0.5.2", "source": { "type": "git", "url": "https://github.com/ui-awesome/html-attribute.git", - "reference": "e53a5484c4da197a3e26b679f069885a1f72671c" + "reference": "ae87d84df8d0986eb77fd4752fc7469062d143ef" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ui-awesome/html-attribute/zipball/e53a5484c4da197a3e26b679f069885a1f72671c", - "reference": "e53a5484c4da197a3e26b679f069885a1f72671c", + "url": "https://api.github.com/repos/ui-awesome/html-attribute/zipball/ae87d84df8d0986eb77fd4752fc7469062d143ef", + "reference": "ae87d84df8d0986eb77fd4752fc7469062d143ef", "shasum": "" }, "require": { @@ -2759,13 +2760,12 @@ "require-dev": { "infection/infection": "^0.27|^0.32", "maglnet/composer-require-checker": "^4.1", + "php-forge/coding-standard": "^0.1", "php-forge/support": "^0.3", "phpstan/extension-installer": "^1.4", "phpstan/phpstan": "^2.1", "phpstan/phpstan-strict-rules": "^2.0.3", - "phpunit/phpunit": "^10.5", - "rector/rector": "^2.2", - "symplify/easy-coding-standard": "^13.0" + "phpunit/phpunit": "^10.5" }, "type": "library", "extra": { @@ -2782,36 +2782,32 @@ "license": [ "BSD-3-Clause" ], - "description": "UI Awesome HTML Attribute for PHP.", + "description": "UI Awesome HTML Attribute Library for PHP.", "keywords": [ - "html-attribute", + "attribute", + "html", + "library", "php", "ui-awesome" ], "support": { "issues": "https://github.com/ui-awesome/html-attribute/issues", - "source": "https://github.com/ui-awesome/html-attribute/tree/0.5.1" + "source": "https://github.com/ui-awesome/html-attribute/tree/0.5.2" }, - "funding": [ - { - "url": "https://github.com/terabytesoftw", - "type": "github" - } - ], - "time": "2026-01-20T10:52:53+00:00" + "time": "2026-01-29T06:19:10+00:00" }, { "name": "ui-awesome/html-core", - "version": "0.5.1", + "version": "0.5.2", "source": { "type": "git", "url": "https://github.com/ui-awesome/html-core.git", - "reference": "af6ef9b0fc6870bdd4ada0d53cdba728ff9d6838" + "reference": "122728525b56f44c24f52a30ffa53058433cf566" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ui-awesome/html-core/zipball/af6ef9b0fc6870bdd4ada0d53cdba728ff9d6838", - "reference": "af6ef9b0fc6870bdd4ada0d53cdba728ff9d6838", + "url": "https://api.github.com/repos/ui-awesome/html-core/zipball/122728525b56f44c24f52a30ffa53058433cf566", + "reference": "122728525b56f44c24f52a30ffa53058433cf566", "shasum": "" }, "require": { @@ -2856,22 +2852,22 @@ ], "support": { "issues": "https://github.com/ui-awesome/html-core/issues", - "source": "https://github.com/ui-awesome/html-core/tree/0.5.1" + "source": "https://github.com/ui-awesome/html-core/tree/0.5.2" }, - "time": "2026-01-24T23:22:17+00:00" + "time": "2026-01-28T13:13:26+00:00" }, { "name": "ui-awesome/html-helper", - "version": "0.6.6", + "version": "0.6.9", "source": { "type": "git", "url": "https://github.com/ui-awesome/html-helper.git", - "reference": "8f9b41693296a1d93e34995fd2a9fadc6d8c8488" + "reference": "b51517afe4fb42cb9228a04386bc1b408e54a5fa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ui-awesome/html-helper/zipball/8f9b41693296a1d93e34995fd2a9fadc6d8c8488", - "reference": "8f9b41693296a1d93e34995fd2a9fadc6d8c8488", + "url": "https://api.github.com/repos/ui-awesome/html-helper/zipball/b51517afe4fb42cb9228a04386bc1b408e54a5fa", + "reference": "b51517afe4fb42cb9228a04386bc1b408e54a5fa", "shasum": "" }, "require": { @@ -2913,28 +2909,22 @@ ], "support": { "issues": "https://github.com/ui-awesome/html-helper/issues", - "source": "https://github.com/ui-awesome/html-helper/tree/0.6.6" + "source": "https://github.com/ui-awesome/html-helper/tree/0.6.9" }, - "funding": [ - { - "url": "https://github.com/terabytesoftw", - "type": "github" - } - ], - "time": "2026-01-25T01:35:32+00:00" + "time": "2026-02-14T15:58:57+00:00" }, { "name": "ui-awesome/html-interop", - "version": "0.2.1", + "version": "0.2.2", "source": { "type": "git", "url": "https://github.com/ui-awesome/html-interop.git", - "reference": "3100d3de962396f38c007b0655a9cfad1ecaa1ac" + "reference": "5adbf1825075adf858abe1cd5a3b5e3ab8d4cd6a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ui-awesome/html-interop/zipball/3100d3de962396f38c007b0655a9cfad1ecaa1ac", - "reference": "3100d3de962396f38c007b0655a9cfad1ecaa1ac", + "url": "https://api.github.com/repos/ui-awesome/html-interop/zipball/5adbf1825075adf858abe1cd5a3b5e3ab8d4cd6a", + "reference": "5adbf1825075adf858abe1cd5a3b5e3ab8d4cd6a", "shasum": "" }, "require": { @@ -2973,22 +2963,22 @@ ], "support": { "issues": "https://github.com/ui-awesome/html-interop/issues", - "source": "https://github.com/ui-awesome/html-interop/tree/0.2.1" + "source": "https://github.com/ui-awesome/html-interop/tree/0.2.2" }, - "time": "2026-01-25T01:04:04+00:00" + "time": "2026-01-28T10:26:25+00:00" }, { "name": "ui-awesome/html-mixin", - "version": "0.3.2", + "version": "0.3.3", "source": { "type": "git", "url": "https://github.com/ui-awesome/html-mixin.git", - "reference": "0d43b4909e80a8d8fd92997508f0273bf9149639" + "reference": "629499b6247f19de0537484275829016fe5a599a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ui-awesome/html-mixin/zipball/0d43b4909e80a8d8fd92997508f0273bf9149639", - "reference": "0d43b4909e80a8d8fd92997508f0273bf9149639", + "url": "https://api.github.com/repos/ui-awesome/html-mixin/zipball/629499b6247f19de0537484275829016fe5a599a", + "reference": "629499b6247f19de0537484275829016fe5a599a", "shasum": "" }, "require": { @@ -3030,22 +3020,22 @@ ], "support": { "issues": "https://github.com/ui-awesome/html-mixin/issues", - "source": "https://github.com/ui-awesome/html-mixin/tree/0.3.2" + "source": "https://github.com/ui-awesome/html-mixin/tree/0.3.3" }, - "time": "2026-01-24T22:07:39+00:00" + "time": "2026-01-28T09:35:14+00:00" }, { "name": "ui-awesome/html-svg", - "version": "0.3.1", + "version": "0.3.2", "source": { "type": "git", "url": "https://github.com/ui-awesome/html-svg.git", - "reference": "305ea6ea3229ca8b1282396b222bf058b4790dc1" + "reference": "c786d3ed3e110b3456a54da2df7040f42a87f246" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ui-awesome/html-svg/zipball/305ea6ea3229ca8b1282396b222bf058b4790dc1", - "reference": "305ea6ea3229ca8b1282396b222bf058b4790dc1", + "url": "https://api.github.com/repos/ui-awesome/html-svg/zipball/c786d3ed3e110b3456a54da2df7040f42a87f246", + "reference": "c786d3ed3e110b3456a54da2df7040f42a87f246", "shasum": "" }, "require": { @@ -3094,15 +3084,9 @@ ], "support": { "issues": "https://github.com/ui-awesome/html-svg/issues", - "source": "https://github.com/ui-awesome/html-svg/tree/0.3.1" + "source": "https://github.com/ui-awesome/html-svg/tree/0.3.2" }, - "funding": [ - { - "url": "https://github.com/terabytesoftw", - "type": "github" - } - ], - "time": "2026-01-24T22:17:17+00:00" + "time": "2026-01-28T11:04:29+00:00" }, { "name": "vlucas/phpdotenv", @@ -3389,20 +3373,24 @@ "source": { "type": "git", "url": "https://github.com/yiisoft/yii2-composer.git", - "reference": "e3c0eac06e0f1276fcfb2cb95a393336dd8300f1" + "reference": "495ec64ac810bf45398a78a89d7e507c83b725f2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/yiisoft/yii2-composer/zipball/e3c0eac06e0f1276fcfb2cb95a393336dd8300f1", - "reference": "e3c0eac06e0f1276fcfb2cb95a393336dd8300f1", + "url": "https://api.github.com/repos/yiisoft/yii2-composer/zipball/495ec64ac810bf45398a78a89d7e507c83b725f2", + "reference": "495ec64ac810bf45398a78a89d7e507c83b725f2", "shasum": "" }, "require": { - "composer-plugin-api": "^1.0 | ^2.0" + "composer-plugin-api": "^2.0", + "php": ">=7.4" }, "require-dev": { - "composer/composer": "^1.0 | ^2.0@dev", - "phpunit/phpunit": "<7" + "composer/composer": "^2.9.5", + "phpstan/phpstan": "^2.1", + "phpstan/phpstan-phpunit": "^2.0", + "phpunit/phpunit": "^9.6", + "yiisoft/yii2-coding-standards": "~3.0" }, "default-branch": true, "type": "composer-plugin", @@ -3458,7 +3446,7 @@ "type": "tidelift" } ], - "time": "2025-02-13T20:59:51+00:00" + "time": "2026-02-09T14:25:08+00:00" } ], "packages-dev": [ @@ -3609,12 +3597,12 @@ "source": { "type": "git", "url": "https://github.com/Codeception/Codeception.git", - "reference": "cb4c200ec0a7fe21964f51872bb403701f53f35b" + "reference": "83c2986ec2abe594cee2f706d9ec7aca2878fbe0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/Codeception/zipball/cb4c200ec0a7fe21964f51872bb403701f53f35b", - "reference": "cb4c200ec0a7fe21964f51872bb403701f53f35b", + "url": "https://api.github.com/repos/Codeception/Codeception/zipball/83c2986ec2abe594cee2f706d9ec7aca2878fbe0", + "reference": "83c2986ec2abe594cee2f706d9ec7aca2878fbe0", "shasum": "" }, "require": { @@ -3625,13 +3613,13 @@ "ext-json": "*", "ext-mbstring": "*", "php": "^8.2", - "phpunit/php-code-coverage": "^9.2 | ^10.0 | ^11.0 | ^12.0", - "phpunit/php-text-template": "^2.0 | ^3.0 | ^4.0 | ^5.0", - "phpunit/php-timer": "^5.0.3 | ^6.0 | ^7.0 | ^8.0", - "phpunit/phpunit": "^9.5.20 | ^10.0 | ^11.0 | ^12.0", + "phpunit/php-code-coverage": "^9.2 | ^10.0 | ^11.0 | ^12.0 | ^13.0", + "phpunit/php-text-template": "^2.0 | ^3.0 | ^4.0 | ^5.0 | ^6.0", + "phpunit/php-timer": "^5.0.3 | ^6.0 | ^7.0 | ^8.0 | ^9.0", + "phpunit/phpunit": "^9.5.20 | ^10.0 | ^11.0 | ^12.0 | ^13.0", "psy/psysh": "^0.11.2 | ^0.12", - "sebastian/comparator": "^4.0.5 | ^5.0 | ^6.0 | ^7.0", - "sebastian/diff": "^4.0.3 | ^5.0 | ^6.0 | ^7.0", + "sebastian/comparator": "^4.0.5 | ^5.0 | ^6.0 | ^7.0 | ^8.0", + "sebastian/diff": "^4.0.3 | ^5.0 | ^6.0 | ^7.0 | ^8.0", "symfony/console": ">=5.4.24 <9.0", "symfony/css-selector": ">=5.4.24 <9.0", "symfony/event-dispatcher": ">=5.4.24 <9.0", @@ -3650,7 +3638,7 @@ "require-dev": { "codeception/lib-innerbrowser": "*@dev", "codeception/lib-web": "*@dev", - "codeception/module-asserts": "*@dev", + "codeception/module-asserts": "dev-master", "codeception/module-cli": "*@dev", "codeception/module-db": "*@dev", "codeception/module-filesystem": "*@dev", @@ -3729,26 +3717,26 @@ "type": "open_collective" } ], - "time": "2026-01-14T11:55:19+00:00" + "time": "2026-02-18T06:18:00+00:00" }, { "name": "codeception/lib-asserts", - "version": "3.1.0", + "version": "3.2.0", "source": { "type": "git", "url": "https://github.com/Codeception/lib-asserts.git", - "reference": "8e161f38a71cdf3dc638c5427df21c0f01f12d13" + "reference": "f161e5d3a9e5ae573ca01cfb3b5601ff5303df03" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/lib-asserts/zipball/8e161f38a71cdf3dc638c5427df21c0f01f12d13", - "reference": "8e161f38a71cdf3dc638c5427df21c0f01f12d13", + "url": "https://api.github.com/repos/Codeception/lib-asserts/zipball/f161e5d3a9e5ae573ca01cfb3b5601ff5303df03", + "reference": "f161e5d3a9e5ae573ca01cfb3b5601ff5303df03", "shasum": "" }, "require": { "ext-dom": "*", "php": "^8.2 || ^8.3 || ^8.4 || ^8.5", - "phpunit/phpunit": "^11.5 || ^12.0" + "phpunit/phpunit": "^11.5 || ^12.0 || ^13.0" }, "type": "library", "autoload": { @@ -3781,22 +3769,22 @@ ], "support": { "issues": "https://github.com/Codeception/lib-asserts/issues", - "source": "https://github.com/Codeception/lib-asserts/tree/3.1.0" + "source": "https://github.com/Codeception/lib-asserts/tree/3.2.0" }, - "time": "2025-12-22T08:25:07+00:00" + "time": "2026-02-06T15:19:32+00:00" }, { "name": "codeception/lib-innerbrowser", - "version": "4.0.8", + "version": "4.1.0", "source": { "type": "git", "url": "https://github.com/Codeception/lib-innerbrowser.git", - "reference": "ea25ea6745941781861eb4509d134c97685fc833" + "reference": "8af7f8402f976b32f67a83dfd4e31f8f5b1f7db3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/lib-innerbrowser/zipball/ea25ea6745941781861eb4509d134c97685fc833", - "reference": "ea25ea6745941781861eb4509d134c97685fc833", + "url": "https://api.github.com/repos/Codeception/lib-innerbrowser/zipball/8af7f8402f976b32f67a83dfd4e31f8f5b1f7db3", + "reference": "8af7f8402f976b32f67a83dfd4e31f8f5b1f7db3", "shasum": "" }, "require": { @@ -3806,7 +3794,7 @@ "ext-json": "*", "ext-mbstring": "*", "php": "^8.1", - "phpunit/phpunit": "^10.0 || ^11.0 || ^12.0", + "phpunit/phpunit": "^10.0 || ^11.0 || ^12.0 || ^13.0", "symfony/browser-kit": "^4.4.24 || ^5.4 || ^6.0 || ^7.0 || ^8.0", "symfony/dom-crawler": "^4.4.30 || ^5.4 || ^6.0 || ^7.0 || ^8.0" }, @@ -3840,29 +3828,29 @@ ], "support": { "issues": "https://github.com/Codeception/lib-innerbrowser/issues", - "source": "https://github.com/Codeception/lib-innerbrowser/tree/4.0.8" + "source": "https://github.com/Codeception/lib-innerbrowser/tree/4.1.0" }, - "time": "2025-12-15T13:07:50+00:00" + "time": "2026-02-07T10:09:13+00:00" }, { "name": "codeception/lib-web", - "version": "2.0.1", + "version": "2.1.0", "source": { "type": "git", "url": "https://github.com/Codeception/lib-web.git", - "reference": "bbec12e789c3b810ec8cb86e5f46b5bfd673c441" + "reference": "a030a3a22fc8e856b5957086794ed5403c7992d9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/lib-web/zipball/bbec12e789c3b810ec8cb86e5f46b5bfd673c441", - "reference": "bbec12e789c3b810ec8cb86e5f46b5bfd673c441", + "url": "https://api.github.com/repos/Codeception/lib-web/zipball/a030a3a22fc8e856b5957086794ed5403c7992d9", + "reference": "a030a3a22fc8e856b5957086794ed5403c7992d9", "shasum": "" }, "require": { "ext-mbstring": "*", "guzzlehttp/psr7": "^2.0", "php": "^8.2", - "phpunit/phpunit": "^11.5 | ^12", + "phpunit/phpunit": "^11.5 | ^12 | ^13", "symfony/css-selector": ">=4.4.24 <9.0" }, "conflict": { @@ -3893,9 +3881,9 @@ ], "support": { "issues": "https://github.com/Codeception/lib-web/issues", - "source": "https://github.com/Codeception/lib-web/tree/2.0.1" + "source": "https://github.com/Codeception/lib-web/tree/2.1.0" }, - "time": "2025-11-27T21:09:09+00:00" + "time": "2026-02-06T15:22:13+00:00" }, { "name": "codeception/module-asserts", @@ -4136,27 +4124,27 @@ }, { "name": "codeception/stub", - "version": "4.2.1", + "version": "4.3.0", "source": { "type": "git", "url": "https://github.com/Codeception/Stub.git", - "reference": "0c573cd5c62a828dadadc41bc56f8434860bb7bb" + "reference": "6305b97eaf6ea9bdaed29a5bd4d6f2948f577d8f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/Stub/zipball/0c573cd5c62a828dadadc41bc56f8434860bb7bb", - "reference": "0c573cd5c62a828dadadc41bc56f8434860bb7bb", + "url": "https://api.github.com/repos/Codeception/Stub/zipball/6305b97eaf6ea9bdaed29a5bd4d6f2948f577d8f", + "reference": "6305b97eaf6ea9bdaed29a5bd4d6f2948f577d8f", "shasum": "" }, "require": { "php": "^8.1", - "phpunit/phpunit": "^8.4 | ^9.0 | ^10.0 | ^11 | ^12" + "phpunit/phpunit": "^8.4 | ^9.0 | ^10.0 | ^11 | ^12 | ^13" }, "conflict": { "codeception/codeception": "<5.0.6" }, "require-dev": { - "consolidation/robo": "^3.0" + "consolidation/robo": "^4.0" }, "type": "library", "autoload": { @@ -4171,9 +4159,9 @@ "description": "Flexible Stub wrapper for PHPUnit's Mock Builder", "support": { "issues": "https://github.com/Codeception/Stub/issues", - "source": "https://github.com/Codeception/Stub/tree/4.2.1" + "source": "https://github.com/Codeception/Stub/tree/4.3.0" }, - "time": "2025-12-05T13:37:14+00:00" + "time": "2026-02-06T15:19:04+00:00" }, { "name": "codeception/verify", @@ -5032,12 +5020,12 @@ "source": { "type": "git", "url": "https://github.com/phpstan/extension-installer.git", - "reference": "3233735de60eb92d21ba20b1b6b146661c9f639c" + "reference": "5e36c19cd31b9c8485829cea2e55c0a7a04138b3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/extension-installer/zipball/3233735de60eb92d21ba20b1b6b146661c9f639c", - "reference": "3233735de60eb92d21ba20b1b6b146661c9f639c", + "url": "https://api.github.com/repos/phpstan/extension-installer/zipball/5e36c19cd31b9c8485829cea2e55c0a7a04138b3", + "reference": "5e36c19cd31b9c8485829cea2e55c0a7a04138b3", "shasum": "" }, "require": { @@ -5073,15 +5061,15 @@ "issues": "https://github.com/phpstan/extension-installer/issues", "source": "https://github.com/phpstan/extension-installer/tree/1.4.x" }, - "time": "2025-12-15T08:43:48+00:00" + "time": "2026-02-19T21:27:50+00:00" }, { "name": "phpstan/phpstan", - "version": "2.1.x-dev", + "version": "2.2.x-dev", "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/95f7a4df78de47b8ac65601ca1529e5172059333", - "reference": "95f7a4df78de47b8ac65601ca1529e5172059333", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/1c5bad8b5fbf70d02bce6ec28f816a114d4b6af8", + "reference": "1c5bad8b5fbf70d02bce6ec28f816a114d4b6af8", "shasum": "" }, "require": { @@ -5127,7 +5115,7 @@ "type": "github" } ], - "time": "2026-01-25T09:09:54+00:00" + "time": "2026-02-20T22:32:05+00:00" }, { "name": "phpstan/phpstan-strict-rules", @@ -5135,17 +5123,17 @@ "source": { "type": "git", "url": "https://github.com/phpstan/phpstan-strict-rules.git", - "reference": "7493a9f2f13a46a6dbb4359e274832c750468bd1" + "reference": "3b3c435989d5ba56119e971d446b3afff36a279c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan-strict-rules/zipball/7493a9f2f13a46a6dbb4359e274832c750468bd1", - "reference": "7493a9f2f13a46a6dbb4359e274832c750468bd1", + "url": "https://api.github.com/repos/phpstan/phpstan-strict-rules/zipball/3b3c435989d5ba56119e971d446b3afff36a279c", + "reference": "3b3c435989d5ba56119e971d446b3afff36a279c", "shasum": "" }, "require": { "php": "^7.4 || ^8.0", - "phpstan/phpstan": "^2.1.29" + "phpstan/phpstan": "^2.1.39" }, "require-dev": { "php-parallel-lint/php-parallel-lint": "^1.2", @@ -5172,11 +5160,14 @@ "MIT" ], "description": "Extra strict and opinionated rules for PHPStan", + "keywords": [ + "static analysis" + ], "support": { "issues": "https://github.com/phpstan/phpstan-strict-rules/issues", "source": "https://github.com/phpstan/phpstan-strict-rules/tree/2.0.x" }, - "time": "2025-12-15T08:43:20+00:00" + "time": "2026-02-19T21:32:39+00:00" }, { "name": "phpunit/php-code-coverage", @@ -5184,12 +5175,12 @@ "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "cbc3baf923944dbb6d3debcdca12149c10d7eb40" + "reference": "d9c1b41a44bf44640f03d1be08596b156785c6bb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/cbc3baf923944dbb6d3debcdca12149c10d7eb40", - "reference": "cbc3baf923944dbb6d3debcdca12149c10d7eb40", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/d9c1b41a44bf44640f03d1be08596b156785c6bb", + "reference": "d9c1b41a44bf44640f03d1be08596b156785c6bb", "shasum": "" }, "require": { @@ -5198,7 +5189,6 @@ "ext-xmlwriter": "*", "nikic/php-parser": "^5.7.0", "php": ">=8.3", - "phpunit/php-file-iterator": "^6.0", "phpunit/php-text-template": "^5.0", "sebastian/complexity": "^5.0", "sebastian/environment": "^8.0.3", @@ -5265,7 +5255,7 @@ "type": "tidelift" } ], - "time": "2025-12-31T14:20:37+00:00" + "time": "2026-02-10T06:07:23+00:00" }, { "name": "phpunit/php-file-iterator", @@ -5273,12 +5263,12 @@ "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "08cc3764e9284021ae1a12fec628191d79df7d07" + "reference": "9ef51d100c7627f2614ca4d8331fc97c4dd48cf7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/08cc3764e9284021ae1a12fec628191d79df7d07", - "reference": "08cc3764e9284021ae1a12fec628191d79df7d07", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/9ef51d100c7627f2614ca4d8331fc97c4dd48cf7", + "reference": "9ef51d100c7627f2614ca4d8331fc97c4dd48cf7", "shasum": "" }, "require": { @@ -5338,7 +5328,7 @@ "type": "tidelift" } ], - "time": "2025-12-31T14:22:25+00:00" + "time": "2026-02-02T14:11:03+00:00" }, { "name": "phpunit/php-invoker", @@ -5566,12 +5556,12 @@ "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "79dee3d2685b80518e94b9ea741b3f822b213a5e" + "reference": "5e4d8826746d4d4bc0b008781b82d71b68fab420" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/79dee3d2685b80518e94b9ea741b3f822b213a5e", - "reference": "79dee3d2685b80518e94b9ea741b3f822b213a5e", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/5e4d8826746d4d4bc0b008781b82d71b68fab420", + "reference": "5e4d8826746d4d4bc0b008781b82d71b68fab420", "shasum": "" }, "require": { @@ -5585,8 +5575,8 @@ "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=8.3", - "phpunit/php-code-coverage": "^12.5.2", - "phpunit/php-file-iterator": "^6.0.0", + "phpunit/php-code-coverage": "^12.5.3", + "phpunit/php-file-iterator": "^6.0.1", "phpunit/php-invoker": "^6.0.0", "phpunit/php-text-template": "^5.0.0", "phpunit/php-timer": "^8.0.0", @@ -5597,6 +5587,7 @@ "sebastian/exporter": "^7.0.2", "sebastian/global-state": "^8.0.2", "sebastian/object-enumerator": "^7.0.0", + "sebastian/recursion-context": "^7.0.1", "sebastian/type": "^6.0.3", "sebastian/version": "^6.0.0", "staabm/side-effects-detector": "^1.0.5" @@ -5639,7 +5630,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/12.5.7" + "source": "https://github.com/sebastianbergmann/phpunit/tree/12.5" }, "funding": [ { @@ -5663,7 +5654,7 @@ "type": "tidelift" } ], - "time": "2026-01-24T16:12:53+00:00" + "time": "2026-02-19T15:05:44+00:00" }, { "name": "psr/event-dispatcher", @@ -5886,12 +5877,12 @@ "source": { "type": "git", "url": "https://github.com/bobthecow/psysh.git", - "reference": "ae78336dec4dc3623d3c84f590585f1eec923d28" + "reference": "9c30b71ec918123a0049e3f9ac5d6f3837757ac9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/bobthecow/psysh/zipball/ae78336dec4dc3623d3c84f590585f1eec923d28", - "reference": "ae78336dec4dc3623d3c84f590585f1eec923d28", + "url": "https://api.github.com/repos/bobthecow/psysh/zipball/9c30b71ec918123a0049e3f9ac5d6f3837757ac9", + "reference": "9c30b71ec918123a0049e3f9ac5d6f3837757ac9", "shasum": "" }, "require": { @@ -5958,7 +5949,7 @@ "issues": "https://github.com/bobthecow/psysh/issues", "source": "https://github.com/bobthecow/psysh/tree/main" }, - "time": "2026-01-23T15:00:11+00:00" + "time": "2026-02-18T12:17:45+00:00" }, { "name": "ralouphie/getallheaders", @@ -6006,21 +5997,21 @@ }, { "name": "rector/rector", - "version": "2.3.4", + "version": "2.3.7", "source": { "type": "git", "url": "https://github.com/rectorphp/rector.git", - "reference": "9227d7a24b0f23ae941057509364f948d5da9ab2" + "reference": "9c46ad17f57963932c9788fd1b0f1d07ff450370" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/rectorphp/rector/zipball/9227d7a24b0f23ae941057509364f948d5da9ab2", - "reference": "9227d7a24b0f23ae941057509364f948d5da9ab2", + "url": "https://api.github.com/repos/rectorphp/rector/zipball/9c46ad17f57963932c9788fd1b0f1d07ff450370", + "reference": "9c46ad17f57963932c9788fd1b0f1d07ff450370", "shasum": "" }, "require": { "php": "^7.4|^8.0", - "phpstan/phpstan": "^2.1.36" + "phpstan/phpstan": "^2.1.38" }, "conflict": { "rector/rector-doctrine": "*", @@ -6054,7 +6045,7 @@ ], "support": { "issues": "https://github.com/rectorphp/rector/issues", - "source": "https://github.com/rectorphp/rector/tree/2.3.4" + "source": "https://github.com/rectorphp/rector/tree/2.3.7" }, "funding": [ { @@ -6062,7 +6053,7 @@ "type": "github" } ], - "time": "2026-01-21T14:49:03+00:00" + "time": "2026-02-19T14:44:16+00:00" }, { "name": "sebastian/cli-parser", @@ -7163,12 +7154,12 @@ "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "9440ff5bfa623a81afed0912c5527eebd33e315d" + "reference": "f7c24bbef3be1d910223f98d757e7792d66a44c1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/9440ff5bfa623a81afed0912c5527eebd33e315d", - "reference": "9440ff5bfa623a81afed0912c5527eebd33e315d", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/f7c24bbef3be1d910223f98d757e7792d66a44c1", + "reference": "f7c24bbef3be1d910223f98d757e7792d66a44c1", "shasum": "" }, "require": { @@ -7225,7 +7216,7 @@ "type": "tidelift" } ], - "time": "2025-12-19T08:33:17+00:00" + "time": "2026-02-17T13:08:34+00:00" }, { "name": "symfony/dom-crawler", @@ -7233,12 +7224,12 @@ "source": { "type": "git", "url": "https://github.com/symfony/dom-crawler.git", - "reference": "71fd6a82fc357c8b5de22f78b228acfc43dee965" + "reference": "487ba8fa43da9a8e6503fe939b45ecd96875410e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/71fd6a82fc357c8b5de22f78b228acfc43dee965", - "reference": "71fd6a82fc357c8b5de22f78b228acfc43dee965", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/487ba8fa43da9a8e6503fe939b45ecd96875410e", + "reference": "487ba8fa43da9a8e6503fe939b45ecd96875410e", "shasum": "" }, "require": { @@ -7297,7 +7288,7 @@ "type": "tidelift" } ], - "time": "2026-01-05T08:47:25+00:00" + "time": "2026-02-17T07:53:42+00:00" }, { "name": "symfony/event-dispatcher", @@ -7472,12 +7463,12 @@ "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "0b0d49373b0da07ec7404beff6332078250de577" + "reference": "cbb9a099e99d9d22b26d099311e87ea077d547b2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/0b0d49373b0da07ec7404beff6332078250de577", - "reference": "0b0d49373b0da07ec7404beff6332078250de577", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/cbb9a099e99d9d22b26d099311e87ea077d547b2", + "reference": "cbb9a099e99d9d22b26d099311e87ea077d547b2", "shasum": "" }, "require": { @@ -7552,7 +7543,7 @@ "type": "tidelift" } ], - "time": "2026-01-01T23:09:20+00:00" + "time": "2026-02-15T10:53:36+00:00" }, { "name": "symfony/yaml", @@ -7560,12 +7551,12 @@ "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "39dbce7864fc9a237b38a11bccf3000d44ee86d6" + "reference": "ede97ef47f1c1b814e787d7739e4ee8317a271d9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/39dbce7864fc9a237b38a11bccf3000d44ee86d6", - "reference": "39dbce7864fc9a237b38a11bccf3000d44ee86d6", + "url": "https://api.github.com/repos/symfony/yaml/zipball/ede97ef47f1c1b814e787d7739e4ee8317a271d9", + "reference": "ede97ef47f1c1b814e787d7739e4ee8317a271d9", "shasum": "" }, "require": { @@ -7628,7 +7619,7 @@ "type": "tidelift" } ], - "time": "2026-01-12T17:40:36+00:00" + "time": "2026-02-14T11:35:47+00:00" }, { "name": "symplify/easy-coding-standard", @@ -8063,7 +8054,7 @@ "prefer-stable": false, "prefer-lowest": false, "platform": { - "php": ">=8.1" + "php": ">=8.2" }, "platform-dev": {}, "plugin-api-version": "2.9.0" diff --git a/docs/installation.md b/docs/installation.md index 0b061d1..3e41420 100644 --- a/docs/installation.md +++ b/docs/installation.md @@ -2,10 +2,10 @@ ## System requirements -- [`PHP`](https://www.php.net/downloads) 8.1 or higher. +- [`PHP`](https://www.php.net/downloads) 8.2 or higher. - [`Composer`](https://getcomposer.org/download/) for dependency management. - [`npm`](https://nodejs.org/en/download/) for frontend dependency management. -- [`Yii2`](https://github.com/yiisoft/yii2) 2.0.53+ or 22.x. +- [`Yii2`](https://github.com/yiisoft/yii2) 2.0.54+ or 22.x. ### Optional requirements