diff --git a/README.md b/README.md index 982915f86ca..36dc7effb34 100644 --- a/README.md +++ b/README.md @@ -72,7 +72,7 @@ vendor/bin/rector process src ## Documentation * Find [full documentation here](https://getrector.com/documentation/). -* [Explore Rector Rules](/docs/rector_rules_overview.md) +* [Explore Rector Rules](https://getrector.com/find-rule)
diff --git a/docs/rector_rules_overview.md b/docs/rector_rules_overview.md index fe087979335..71a923d14be 100644 --- a/docs/rector_rules_overview.md +++ b/docs/rector_rules_overview.md @@ -1,5 +1,9 @@ # 382 Rules Overview +**This overview is deprecated and replaced by more advanced web search. There you can search and filter by nodes, copy-paste configs for configurable rules and more.** + +Use https://getrector.com/find-rule instead! +
## Categories diff --git a/src/Application/VersionResolver.php b/src/Application/VersionResolver.php index 8f27d00f6e8..16b32a5ac50 100644 --- a/src/Application/VersionResolver.php +++ b/src/Application/VersionResolver.php @@ -19,12 +19,12 @@ final class VersionResolver * @api * @var string */ - public const PACKAGE_VERSION = '59585ae75aafa8c5e2666b047a84f13ab35fb59f'; + public const PACKAGE_VERSION = '67238d841a46b5fecc9ef204ffef4ba773e82cb9'; /** * @api * @var string */ - public const RELEASE_DATE = '2024-08-07 08:05:18'; + public const RELEASE_DATE = '2024-08-08 13:51:11'; /** * @var int */ diff --git a/vendor/autoload.php b/vendor/autoload.php index db7e4c78d7b..7dd5b3f0bb6 100644 --- a/vendor/autoload.php +++ b/vendor/autoload.php @@ -22,4 +22,4 @@ require_once __DIR__ . '/composer/autoload_real.php'; -return ComposerAutoloaderInit4bcaef4da4b0314c67dae59e30837b25::getLoader(); +return ComposerAutoloaderInit969cf4fb8686733ba64d08544d342ca0::getLoader(); diff --git a/vendor/composer/autoload_real.php b/vendor/composer/autoload_real.php index 449f2fcaf85..cc09b4b55be 100644 --- a/vendor/composer/autoload_real.php +++ b/vendor/composer/autoload_real.php @@ -2,7 +2,7 @@ // autoload_real.php @generated by Composer -class ComposerAutoloaderInit4bcaef4da4b0314c67dae59e30837b25 +class ComposerAutoloaderInit969cf4fb8686733ba64d08544d342ca0 { private static $loader; @@ -22,17 +22,17 @@ public static function getLoader() return self::$loader; } - spl_autoload_register(array('ComposerAutoloaderInit4bcaef4da4b0314c67dae59e30837b25', 'loadClassLoader'), true, true); + spl_autoload_register(array('ComposerAutoloaderInit969cf4fb8686733ba64d08544d342ca0', 'loadClassLoader'), true, true); self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__)); - spl_autoload_unregister(array('ComposerAutoloaderInit4bcaef4da4b0314c67dae59e30837b25', 'loadClassLoader')); + spl_autoload_unregister(array('ComposerAutoloaderInit969cf4fb8686733ba64d08544d342ca0', 'loadClassLoader')); require __DIR__ . '/autoload_static.php'; - call_user_func(\Composer\Autoload\ComposerStaticInit4bcaef4da4b0314c67dae59e30837b25::getInitializer($loader)); + call_user_func(\Composer\Autoload\ComposerStaticInit969cf4fb8686733ba64d08544d342ca0::getInitializer($loader)); $loader->setClassMapAuthoritative(true); $loader->register(true); - $filesToLoad = \Composer\Autoload\ComposerStaticInit4bcaef4da4b0314c67dae59e30837b25::$files; + $filesToLoad = \Composer\Autoload\ComposerStaticInit969cf4fb8686733ba64d08544d342ca0::$files; $requireFile = \Closure::bind(static function ($fileIdentifier, $file) { if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true; diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php index eaee0cb6846..258f981c7f2 100644 --- a/vendor/composer/autoload_static.php +++ b/vendor/composer/autoload_static.php @@ -4,7 +4,7 @@ namespace Composer\Autoload; -class ComposerStaticInit4bcaef4da4b0314c67dae59e30837b25 +class ComposerStaticInit969cf4fb8686733ba64d08544d342ca0 { public static $files = array ( 'ad155f8f1cf0d418fe49e248db8c661b' => __DIR__ . '/..' . '/react/promise/src/functions_include.php', @@ -2797,9 +2797,9 @@ class ComposerStaticInit4bcaef4da4b0314c67dae59e30837b25 public static function getInitializer(ClassLoader $loader) { return \Closure::bind(function () use ($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInit4bcaef4da4b0314c67dae59e30837b25::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInit4bcaef4da4b0314c67dae59e30837b25::$prefixDirsPsr4; - $loader->classMap = ComposerStaticInit4bcaef4da4b0314c67dae59e30837b25::$classMap; + $loader->prefixLengthsPsr4 = ComposerStaticInit969cf4fb8686733ba64d08544d342ca0::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInit969cf4fb8686733ba64d08544d342ca0::$prefixDirsPsr4; + $loader->classMap = ComposerStaticInit969cf4fb8686733ba64d08544d342ca0::$classMap; }, null, ClassLoader::class); } diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json index d43d4664d04..5a1e26538f7 100644 --- a/vendor/composer/installed.json +++ b/vendor/composer/installed.json @@ -620,21 +620,21 @@ }, { "name": "nette\/utils", - "version": "v4.0.4", - "version_normalized": "4.0.4.0", + "version": "v4.0.5", + "version_normalized": "4.0.5.0", "source": { "type": "git", "url": "https:\/\/github.com\/nette\/utils.git", - "reference": "d3ad0aa3b9f934602cb3e3902ebccf10be34d218" + "reference": "736c567e257dbe0fcf6ce81b4d6dbe05c6899f96" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/nette\/utils\/zipball\/d3ad0aa3b9f934602cb3e3902ebccf10be34d218", - "reference": "d3ad0aa3b9f934602cb3e3902ebccf10be34d218", + "url": "https:\/\/api.github.com\/repos\/nette\/utils\/zipball\/736c567e257dbe0fcf6ce81b4d6dbe05c6899f96", + "reference": "736c567e257dbe0fcf6ce81b4d6dbe05c6899f96", "shasum": "" }, "require": { - "php": ">=8.0 <8.4" + "php": "8.0 - 8.4" }, "conflict": { "nette\/finder": "<3", @@ -654,7 +654,7 @@ "ext-mbstring": "to use Strings::lower() etc...", "ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()" }, - "time": "2024-01-17T16:50:36+00:00", + "time": "2024-08-07T15:39:19+00:00", "type": "library", "extra": { "branch-alias": { @@ -703,7 +703,7 @@ ], "support": { "issues": "https:\/\/github.com\/nette\/utils\/issues", - "source": "https:\/\/github.com\/nette\/utils\/tree\/v4.0.4" + "source": "https:\/\/github.com\/nette\/utils\/tree\/v4.0.5" }, "install-path": "..\/nette\/utils" }, @@ -1688,12 +1688,12 @@ "source": { "type": "git", "url": "https:\/\/github.com\/rectorphp\/rector-doctrine.git", - "reference": "3ba7adbca3491a977b81147d93eb78084ed8e454" + "reference": "11ac7b9060990b62f972a42330cceab294ee097e" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-doctrine\/zipball\/3ba7adbca3491a977b81147d93eb78084ed8e454", - "reference": "3ba7adbca3491a977b81147d93eb78084ed8e454", + "url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-doctrine\/zipball\/11ac7b9060990b62f972a42330cceab294ee097e", + "reference": "11ac7b9060990b62f972a42330cceab294ee097e", "shasum": "" }, "require": { @@ -1712,13 +1712,13 @@ "symplify\/easy-coding-standard": "^12.3", "symplify\/phpstan-extensions": "^11.4", "symplify\/phpstan-rules": "^13.0", - "symplify\/rule-doc-generator": "^12.2", + "symplify\/rule-doc-generator": "^12.2.5", "symplify\/vendor-patches": "^11.3", "tomasvotruba\/class-leak": "^0.2.15", "tomasvotruba\/unused-public": "^0.3", "tracy\/tracy": "^2.10" }, - "time": "2024-07-25T15:38:30+00:00", + "time": "2024-08-08T13:34:44+00:00", "default-branch": true, "type": "rector-extension", "extra": { @@ -1810,12 +1810,12 @@ "source": { "type": "git", "url": "https:\/\/github.com\/rectorphp\/rector-phpunit.git", - "reference": "acfcef8cfbceefee966253ef5f1b2ec57bc10e22" + "reference": "2bacfc618ca1987deab1e70f87720805a171a1a8" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-phpunit\/zipball\/acfcef8cfbceefee966253ef5f1b2ec57bc10e22", - "reference": "acfcef8cfbceefee966253ef5f1b2ec57bc10e22", + "url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-phpunit\/zipball\/2bacfc618ca1987deab1e70f87720805a171a1a8", + "reference": "2bacfc618ca1987deab1e70f87720805a171a1a8", "shasum": "" }, "require": { @@ -1834,12 +1834,12 @@ "symplify\/easy-coding-standard": "^12.3", "symplify\/phpstan-extensions": "^11.2", "symplify\/phpstan-rules": "^13.0", - "symplify\/rule-doc-generator": "^12.0", + "symplify\/rule-doc-generator": "^12.2.5", "symplify\/vendor-patches": "^11.2", "tomasvotruba\/class-leak": "^0.2", "tracy\/tracy": "^2.10" }, - "time": "2024-07-31T14:43:42+00:00", + "time": "2024-08-08T13:39:23+00:00", "default-branch": true, "type": "rector-extension", "extra": { @@ -1875,12 +1875,12 @@ "source": { "type": "git", "url": "https:\/\/github.com\/rectorphp\/rector-symfony.git", - "reference": "01e3fe74284092db2c4b6cec28a0ae723d419f31" + "reference": "ece927272de55206ad2832bb7fe3993c814fae01" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-symfony\/zipball\/01e3fe74284092db2c4b6cec28a0ae723d419f31", - "reference": "01e3fe74284092db2c4b6cec28a0ae723d419f31", + "url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-symfony\/zipball\/ece927272de55206ad2832bb7fe3993c814fae01", + "reference": "ece927272de55206ad2832bb7fe3993c814fae01", "shasum": "" }, "require": { @@ -1904,13 +1904,13 @@ "symplify\/easy-coding-standard": "^12.3", "symplify\/phpstan-extensions": "^11.4", "symplify\/phpstan-rules": "^13.0", - "symplify\/rule-doc-generator": "^12.2.2", + "symplify\/rule-doc-generator": "^12.2.5", "symplify\/vendor-patches": "^11.3", "tomasvotruba\/class-leak": "^0.2", "tomasvotruba\/unused-public": "^0.3.10", "tracy\/tracy": "^2.10" }, - "time": "2024-08-05T15:01:30+00:00", + "time": "2024-08-08T13:37:21+00:00", "default-branch": true, "type": "rector-extension", "extra": { diff --git a/vendor/composer/installed.php b/vendor/composer/installed.php index b8a05b22133..8bbbbab4adb 100644 --- a/vendor/composer/installed.php +++ b/vendor/composer/installed.php @@ -2,4 +2,4 @@ namespace RectorPrefix202408; -return array('root' => array('name' => 'rector/rector-src', 'pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => null, 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \false), 'versions' => array('clue/ndjson-react' => array('pretty_version' => 'v1.3.0', 'version' => '1.3.0.0', 'reference' => '392dc165fce93b5bb5c637b67e59619223c931b0', 'type' => 'library', 'install_path' => __DIR__ . '/../clue/ndjson-react', 'aliases' => array(), 'dev_requirement' => \false), 'composer/pcre' => array('pretty_version' => '3.2.0', 'version' => '3.2.0.0', 'reference' => 'ea4ab6f9580a4fd221e0418f2c357cdd39102a90', 'type' => 'library', 'install_path' => __DIR__ . '/./pcre', 'aliases' => array(), 'dev_requirement' => \false), 'composer/semver' => array('pretty_version' => '3.4.2', 'version' => '3.4.2.0', 'reference' => 'c51258e759afdb17f1fd1fe83bc12baaef6309d6', 'type' => 'library', 'install_path' => __DIR__ . '/./semver', 'aliases' => array(), 'dev_requirement' => \false), 'composer/xdebug-handler' => array('pretty_version' => '3.0.5', 'version' => '3.0.5.0', 'reference' => '6c1925561632e83d60a44492e0b344cf48ab85ef', 'type' => 'library', 'install_path' => __DIR__ . '/./xdebug-handler', 'aliases' => array(), 'dev_requirement' => \false), 'doctrine/inflector' => array('pretty_version' => '2.0.10', 'version' => '2.0.10.0', 'reference' => '5817d0659c5b50c9b950feb9af7b9668e2c436bc', 'type' => 'library', 'install_path' => __DIR__ . '/../doctrine/inflector', 'aliases' => array(), 'dev_requirement' => \false), 'evenement/evenement' => array('pretty_version' => 'v3.0.2', 'version' => '3.0.2.0', 'reference' => '0a16b0d71ab13284339abb99d9d2bd813640efbc', 'type' => 'library', 'install_path' => __DIR__ . '/../evenement/evenement', 'aliases' => array(), 'dev_requirement' => \false), 'fidry/cpu-core-counter' => array('pretty_version' => '1.1.0', 'version' => '1.1.0.0', 'reference' => 'f92996c4d5c1a696a6a970e20f7c4216200fcc42', 'type' => 'library', 'install_path' => __DIR__ . '/../fidry/cpu-core-counter', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/container' => array('pretty_version' => 'v11.20.0', 'version' => '11.20.0.0', 'reference' => 'f47be671981a4438257c4fbfc3ad257f4e3e929a', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/container', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/contracts' => array('pretty_version' => 'v11.20.0', 'version' => '11.20.0.0', 'reference' => '34ead9385e0eab7e947807d77da66faf9bdf95ff', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/contracts', 'aliases' => array(), 'dev_requirement' => \false), 'nette/utils' => array('pretty_version' => 'v4.0.4', 'version' => '4.0.4.0', 'reference' => 'd3ad0aa3b9f934602cb3e3902ebccf10be34d218', 'type' => 'library', 'install_path' => __DIR__ . '/../nette/utils', 'aliases' => array(), 'dev_requirement' => \false), 'nikic/php-parser' => array('pretty_version' => 'v4.19.1', 'version' => '4.19.1.0', 'reference' => '4e1b88d21c69391150ace211e9eaf05810858d0b', 'type' => 'library', 'install_path' => __DIR__ . '/../nikic/php-parser', 'aliases' => array(), 'dev_requirement' => \false), 'ondram/ci-detector' => array('pretty_version' => '4.2.0', 'version' => '4.2.0.0', 'reference' => '8b0223b5ed235fd377c75fdd1bfcad05c0f168b8', 'type' => 'library', 'install_path' => __DIR__ . '/../ondram/ci-detector', 'aliases' => array(), 'dev_requirement' => \false), 'phpstan/phpdoc-parser' => array('pretty_version' => '1.29.1', 'version' => '1.29.1.0', 'reference' => 'fcaefacf2d5c417e928405b71b400d4ce10daaf4', 'type' => 'library', 'install_path' => __DIR__ . '/../phpstan/phpdoc-parser', 'aliases' => array(), 'dev_requirement' => \false), 'phpstan/phpstan' => array('dev_requirement' => \false, 'replaced' => array(0 => '^1.11.9')), 'psr/container' => array('pretty_version' => '2.0.2', 'version' => '2.0.2.0', 'reference' => 'c71ecc56dfe541dbd90c5360474fbc405f8d5963', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/container', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.1|2.0')), 'psr/log' => array('pretty_version' => '3.0.0', 'version' => '3.0.0.0', 'reference' => 'fe5ea303b0887d5caefd3d431c3e61ad47037001', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/log', 'aliases' => array(), 'dev_requirement' => \false), 'psr/log-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0|2.0|3.0')), 'psr/simple-cache' => array('pretty_version' => '3.0.0', 'version' => '3.0.0.0', 'reference' => '764e0b3939f5ca87cb904f570ef9be2d78a07865', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/simple-cache', 'aliases' => array(), 'dev_requirement' => \false), 'react/cache' => array('pretty_version' => 'v1.2.0', 'version' => '1.2.0.0', 'reference' => 'd47c472b64aa5608225f47965a484b75c7817d5b', 'type' => 'library', 'install_path' => __DIR__ . '/../react/cache', 'aliases' => array(), 'dev_requirement' => \false), 'react/child-process' => array('pretty_version' => 'v0.6.5', 'version' => '0.6.5.0', 'reference' => 'e71eb1aa55f057c7a4a0d08d06b0b0a484bead43', 'type' => 'library', 'install_path' => __DIR__ . '/../react/child-process', 'aliases' => array(), 'dev_requirement' => \false), 'react/dns' => array('pretty_version' => 'v1.13.0', 'version' => '1.13.0.0', 'reference' => 'eb8ae001b5a455665c89c1df97f6fb682f8fb0f5', 'type' => 'library', 'install_path' => __DIR__ . '/../react/dns', 'aliases' => array(), 'dev_requirement' => \false), 'react/event-loop' => array('pretty_version' => 'v1.5.0', 'version' => '1.5.0.0', 'reference' => 'bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354', 'type' => 'library', 'install_path' => __DIR__ . '/../react/event-loop', 'aliases' => array(), 'dev_requirement' => \false), 'react/promise' => array('pretty_version' => 'v3.2.0', 'version' => '3.2.0.0', 'reference' => '8a164643313c71354582dc850b42b33fa12a4b63', 'type' => 'library', 'install_path' => __DIR__ . '/../react/promise', 'aliases' => array(), 'dev_requirement' => \false), 'react/socket' => array('pretty_version' => 'v1.16.0', 'version' => '1.16.0.0', 'reference' => '23e4ff33ea3e160d2d1f59a0e6050e4b0fb0eac1', 'type' => 'library', 'install_path' => __DIR__ . '/../react/socket', 'aliases' => array(), 'dev_requirement' => \false), 'react/stream' => array('pretty_version' => 'v1.4.0', 'version' => '1.4.0.0', 'reference' => '1e5b0acb8fe55143b5b426817155190eb6f5b18d', 'type' => 'library', 'install_path' => __DIR__ . '/../react/stream', 'aliases' => array(), 'dev_requirement' => \false), 'rector/extension-installer' => array('pretty_version' => '0.11.2', 'version' => '0.11.2.0', 'reference' => '05544e9b195863b8571ae2a3b903cbec7fa062e0', 'type' => 'composer-plugin', 'install_path' => __DIR__ . '/../rector/extension-installer', 'aliases' => array(), 'dev_requirement' => \false), 'rector/rector' => array('dev_requirement' => \false, 'replaced' => array(0 => 'dev-main')), 'rector/rector-doctrine' => array('pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => '3ba7adbca3491a977b81147d93eb78084ed8e454', 'type' => 'rector-extension', 'install_path' => __DIR__ . '/../rector/rector-doctrine', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'rector/rector-downgrade-php' => array('pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => 'c053b9795a81bb9fd5b8d59e05c7556f19267893', 'type' => 'rector-extension', 'install_path' => __DIR__ . '/../rector/rector-downgrade-php', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'rector/rector-phpunit' => array('pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => 'acfcef8cfbceefee966253ef5f1b2ec57bc10e22', 'type' => 'rector-extension', 'install_path' => __DIR__ . '/../rector/rector-phpunit', 'aliases' => array(0 => '0.11.x-dev'), 'dev_requirement' => \false), 'rector/rector-src' => array('pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => null, 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'rector/rector-symfony' => array('pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => '01e3fe74284092db2c4b6cec28a0ae723d419f31', 'type' => 'rector-extension', 'install_path' => __DIR__ . '/../rector/rector-symfony', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'sebastian/diff' => array('pretty_version' => '5.1.1', 'version' => '5.1.1.0', 'reference' => 'c41e007b4b62af48218231d6c2275e4c9b975b2e', 'type' => 'library', 'install_path' => __DIR__ . '/../sebastian/diff', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/console' => array('pretty_version' => 'v6.4.10', 'version' => '6.4.10.0', 'reference' => '504974cbe43d05f83b201d6498c206f16fc0cdbc', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/console', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v3.5.0', 'version' => '3.5.0.0', 'reference' => '0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/filesystem' => array('pretty_version' => 'v6.4.9', 'version' => '6.4.9.0', 'reference' => 'b51ef8059159330b74a4d52f68e671033c0fe463', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/filesystem', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/finder' => array('pretty_version' => 'v6.4.10', 'version' => '6.4.10.0', 'reference' => 'af29198d87112bebdd397bd7735fbd115997824c', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/finder', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-ctype' => array('dev_requirement' => \false, 'replaced' => array(0 => '*')), 'symfony/polyfill-intl-grapheme' => array('dev_requirement' => \false, 'replaced' => array(0 => '*')), 'symfony/polyfill-mbstring' => array('pretty_version' => 'v1.30.0', 'version' => '1.30.0.0', 'reference' => 'fd22ab50000ef01661e2a31d850ebaa297f8e03c', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/process' => array('pretty_version' => 'v6.4.8', 'version' => '6.4.8.0', 'reference' => '8d92dd79149f29e89ee0f480254db595f6a6a2c5', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/process', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/service-contracts' => array('pretty_version' => 'v3.5.0', 'version' => '3.5.0.0', 'reference' => 'bd1d9e59a81d8fa4acdcea3f617c581f7475a80f', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/service-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/string' => array('dev_requirement' => \false, 'replaced' => array(0 => '*')), 'symfony/yaml' => array('pretty_version' => 'v7.1.1', 'version' => '7.1.1.0', 'reference' => 'fa34c77015aa6720469db7003567b9f772492bf2', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/yaml', 'aliases' => array(), 'dev_requirement' => \false), 'symplify/easy-parallel' => array('pretty_version' => '11.2.2', 'version' => '11.2.2.0', 'reference' => '8586c18bb8efb31cd192a4e5cc94ae7813f72ed9', 'type' => 'library', 'install_path' => __DIR__ . '/../symplify/easy-parallel', 'aliases' => array(), 'dev_requirement' => \false), 'symplify/rule-doc-generator-contracts' => array('pretty_version' => '11.2.0', 'version' => '11.2.0.0', 'reference' => '479cfcfd46047f80624aba931d9789e50475b5c6', 'type' => 'library', 'install_path' => __DIR__ . '/../symplify/rule-doc-generator-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'webmozart/assert' => array('pretty_version' => '1.11.0', 'version' => '1.11.0.0', 'reference' => '11cb2199493b2f8a3b53e7f19068fc6aac760991', 'type' => 'library', 'install_path' => __DIR__ . '/../webmozart/assert', 'aliases' => array(), 'dev_requirement' => \false))); +return array('root' => array('name' => 'rector/rector-src', 'pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => null, 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \false), 'versions' => array('clue/ndjson-react' => array('pretty_version' => 'v1.3.0', 'version' => '1.3.0.0', 'reference' => '392dc165fce93b5bb5c637b67e59619223c931b0', 'type' => 'library', 'install_path' => __DIR__ . '/../clue/ndjson-react', 'aliases' => array(), 'dev_requirement' => \false), 'composer/pcre' => array('pretty_version' => '3.2.0', 'version' => '3.2.0.0', 'reference' => 'ea4ab6f9580a4fd221e0418f2c357cdd39102a90', 'type' => 'library', 'install_path' => __DIR__ . '/./pcre', 'aliases' => array(), 'dev_requirement' => \false), 'composer/semver' => array('pretty_version' => '3.4.2', 'version' => '3.4.2.0', 'reference' => 'c51258e759afdb17f1fd1fe83bc12baaef6309d6', 'type' => 'library', 'install_path' => __DIR__ . '/./semver', 'aliases' => array(), 'dev_requirement' => \false), 'composer/xdebug-handler' => array('pretty_version' => '3.0.5', 'version' => '3.0.5.0', 'reference' => '6c1925561632e83d60a44492e0b344cf48ab85ef', 'type' => 'library', 'install_path' => __DIR__ . '/./xdebug-handler', 'aliases' => array(), 'dev_requirement' => \false), 'doctrine/inflector' => array('pretty_version' => '2.0.10', 'version' => '2.0.10.0', 'reference' => '5817d0659c5b50c9b950feb9af7b9668e2c436bc', 'type' => 'library', 'install_path' => __DIR__ . '/../doctrine/inflector', 'aliases' => array(), 'dev_requirement' => \false), 'evenement/evenement' => array('pretty_version' => 'v3.0.2', 'version' => '3.0.2.0', 'reference' => '0a16b0d71ab13284339abb99d9d2bd813640efbc', 'type' => 'library', 'install_path' => __DIR__ . '/../evenement/evenement', 'aliases' => array(), 'dev_requirement' => \false), 'fidry/cpu-core-counter' => array('pretty_version' => '1.1.0', 'version' => '1.1.0.0', 'reference' => 'f92996c4d5c1a696a6a970e20f7c4216200fcc42', 'type' => 'library', 'install_path' => __DIR__ . '/../fidry/cpu-core-counter', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/container' => array('pretty_version' => 'v11.20.0', 'version' => '11.20.0.0', 'reference' => 'f47be671981a4438257c4fbfc3ad257f4e3e929a', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/container', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/contracts' => array('pretty_version' => 'v11.20.0', 'version' => '11.20.0.0', 'reference' => '34ead9385e0eab7e947807d77da66faf9bdf95ff', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/contracts', 'aliases' => array(), 'dev_requirement' => \false), 'nette/utils' => array('pretty_version' => 'v4.0.5', 'version' => '4.0.5.0', 'reference' => '736c567e257dbe0fcf6ce81b4d6dbe05c6899f96', 'type' => 'library', 'install_path' => __DIR__ . '/../nette/utils', 'aliases' => array(), 'dev_requirement' => \false), 'nikic/php-parser' => array('pretty_version' => 'v4.19.1', 'version' => '4.19.1.0', 'reference' => '4e1b88d21c69391150ace211e9eaf05810858d0b', 'type' => 'library', 'install_path' => __DIR__ . '/../nikic/php-parser', 'aliases' => array(), 'dev_requirement' => \false), 'ondram/ci-detector' => array('pretty_version' => '4.2.0', 'version' => '4.2.0.0', 'reference' => '8b0223b5ed235fd377c75fdd1bfcad05c0f168b8', 'type' => 'library', 'install_path' => __DIR__ . '/../ondram/ci-detector', 'aliases' => array(), 'dev_requirement' => \false), 'phpstan/phpdoc-parser' => array('pretty_version' => '1.29.1', 'version' => '1.29.1.0', 'reference' => 'fcaefacf2d5c417e928405b71b400d4ce10daaf4', 'type' => 'library', 'install_path' => __DIR__ . '/../phpstan/phpdoc-parser', 'aliases' => array(), 'dev_requirement' => \false), 'phpstan/phpstan' => array('dev_requirement' => \false, 'replaced' => array(0 => '^1.11.9')), 'psr/container' => array('pretty_version' => '2.0.2', 'version' => '2.0.2.0', 'reference' => 'c71ecc56dfe541dbd90c5360474fbc405f8d5963', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/container', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.1|2.0')), 'psr/log' => array('pretty_version' => '3.0.0', 'version' => '3.0.0.0', 'reference' => 'fe5ea303b0887d5caefd3d431c3e61ad47037001', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/log', 'aliases' => array(), 'dev_requirement' => \false), 'psr/log-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0|2.0|3.0')), 'psr/simple-cache' => array('pretty_version' => '3.0.0', 'version' => '3.0.0.0', 'reference' => '764e0b3939f5ca87cb904f570ef9be2d78a07865', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/simple-cache', 'aliases' => array(), 'dev_requirement' => \false), 'react/cache' => array('pretty_version' => 'v1.2.0', 'version' => '1.2.0.0', 'reference' => 'd47c472b64aa5608225f47965a484b75c7817d5b', 'type' => 'library', 'install_path' => __DIR__ . '/../react/cache', 'aliases' => array(), 'dev_requirement' => \false), 'react/child-process' => array('pretty_version' => 'v0.6.5', 'version' => '0.6.5.0', 'reference' => 'e71eb1aa55f057c7a4a0d08d06b0b0a484bead43', 'type' => 'library', 'install_path' => __DIR__ . '/../react/child-process', 'aliases' => array(), 'dev_requirement' => \false), 'react/dns' => array('pretty_version' => 'v1.13.0', 'version' => '1.13.0.0', 'reference' => 'eb8ae001b5a455665c89c1df97f6fb682f8fb0f5', 'type' => 'library', 'install_path' => __DIR__ . '/../react/dns', 'aliases' => array(), 'dev_requirement' => \false), 'react/event-loop' => array('pretty_version' => 'v1.5.0', 'version' => '1.5.0.0', 'reference' => 'bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354', 'type' => 'library', 'install_path' => __DIR__ . '/../react/event-loop', 'aliases' => array(), 'dev_requirement' => \false), 'react/promise' => array('pretty_version' => 'v3.2.0', 'version' => '3.2.0.0', 'reference' => '8a164643313c71354582dc850b42b33fa12a4b63', 'type' => 'library', 'install_path' => __DIR__ . '/../react/promise', 'aliases' => array(), 'dev_requirement' => \false), 'react/socket' => array('pretty_version' => 'v1.16.0', 'version' => '1.16.0.0', 'reference' => '23e4ff33ea3e160d2d1f59a0e6050e4b0fb0eac1', 'type' => 'library', 'install_path' => __DIR__ . '/../react/socket', 'aliases' => array(), 'dev_requirement' => \false), 'react/stream' => array('pretty_version' => 'v1.4.0', 'version' => '1.4.0.0', 'reference' => '1e5b0acb8fe55143b5b426817155190eb6f5b18d', 'type' => 'library', 'install_path' => __DIR__ . '/../react/stream', 'aliases' => array(), 'dev_requirement' => \false), 'rector/extension-installer' => array('pretty_version' => '0.11.2', 'version' => '0.11.2.0', 'reference' => '05544e9b195863b8571ae2a3b903cbec7fa062e0', 'type' => 'composer-plugin', 'install_path' => __DIR__ . '/../rector/extension-installer', 'aliases' => array(), 'dev_requirement' => \false), 'rector/rector' => array('dev_requirement' => \false, 'replaced' => array(0 => 'dev-main')), 'rector/rector-doctrine' => array('pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => '11ac7b9060990b62f972a42330cceab294ee097e', 'type' => 'rector-extension', 'install_path' => __DIR__ . '/../rector/rector-doctrine', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'rector/rector-downgrade-php' => array('pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => 'c053b9795a81bb9fd5b8d59e05c7556f19267893', 'type' => 'rector-extension', 'install_path' => __DIR__ . '/../rector/rector-downgrade-php', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'rector/rector-phpunit' => array('pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => '2bacfc618ca1987deab1e70f87720805a171a1a8', 'type' => 'rector-extension', 'install_path' => __DIR__ . '/../rector/rector-phpunit', 'aliases' => array(0 => '0.11.x-dev'), 'dev_requirement' => \false), 'rector/rector-src' => array('pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => null, 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'rector/rector-symfony' => array('pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => 'ece927272de55206ad2832bb7fe3993c814fae01', 'type' => 'rector-extension', 'install_path' => __DIR__ . '/../rector/rector-symfony', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'sebastian/diff' => array('pretty_version' => '5.1.1', 'version' => '5.1.1.0', 'reference' => 'c41e007b4b62af48218231d6c2275e4c9b975b2e', 'type' => 'library', 'install_path' => __DIR__ . '/../sebastian/diff', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/console' => array('pretty_version' => 'v6.4.10', 'version' => '6.4.10.0', 'reference' => '504974cbe43d05f83b201d6498c206f16fc0cdbc', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/console', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v3.5.0', 'version' => '3.5.0.0', 'reference' => '0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/filesystem' => array('pretty_version' => 'v6.4.9', 'version' => '6.4.9.0', 'reference' => 'b51ef8059159330b74a4d52f68e671033c0fe463', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/filesystem', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/finder' => array('pretty_version' => 'v6.4.10', 'version' => '6.4.10.0', 'reference' => 'af29198d87112bebdd397bd7735fbd115997824c', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/finder', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-ctype' => array('dev_requirement' => \false, 'replaced' => array(0 => '*')), 'symfony/polyfill-intl-grapheme' => array('dev_requirement' => \false, 'replaced' => array(0 => '*')), 'symfony/polyfill-mbstring' => array('pretty_version' => 'v1.30.0', 'version' => '1.30.0.0', 'reference' => 'fd22ab50000ef01661e2a31d850ebaa297f8e03c', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/process' => array('pretty_version' => 'v6.4.8', 'version' => '6.4.8.0', 'reference' => '8d92dd79149f29e89ee0f480254db595f6a6a2c5', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/process', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/service-contracts' => array('pretty_version' => 'v3.5.0', 'version' => '3.5.0.0', 'reference' => 'bd1d9e59a81d8fa4acdcea3f617c581f7475a80f', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/service-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/string' => array('dev_requirement' => \false, 'replaced' => array(0 => '*')), 'symfony/yaml' => array('pretty_version' => 'v7.1.1', 'version' => '7.1.1.0', 'reference' => 'fa34c77015aa6720469db7003567b9f772492bf2', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/yaml', 'aliases' => array(), 'dev_requirement' => \false), 'symplify/easy-parallel' => array('pretty_version' => '11.2.2', 'version' => '11.2.2.0', 'reference' => '8586c18bb8efb31cd192a4e5cc94ae7813f72ed9', 'type' => 'library', 'install_path' => __DIR__ . '/../symplify/easy-parallel', 'aliases' => array(), 'dev_requirement' => \false), 'symplify/rule-doc-generator-contracts' => array('pretty_version' => '11.2.0', 'version' => '11.2.0.0', 'reference' => '479cfcfd46047f80624aba931d9789e50475b5c6', 'type' => 'library', 'install_path' => __DIR__ . '/../symplify/rule-doc-generator-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'webmozart/assert' => array('pretty_version' => '1.11.0', 'version' => '1.11.0.0', 'reference' => '11cb2199493b2f8a3b53e7f19068fc6aac760991', 'type' => 'library', 'install_path' => __DIR__ . '/../webmozart/assert', 'aliases' => array(), 'dev_requirement' => \false))); diff --git a/vendor/nette/utils/composer.json b/vendor/nette/utils/composer.json index c37b96c58d6..9c81acc20e0 100644 --- a/vendor/nette/utils/composer.json +++ b/vendor/nette/utils/composer.json @@ -34,7 +34,7 @@ } ], "require": { - "php": ">=8.0 <8.4" + "php": "8.0 - 8.4" }, "require-dev": { "nette\/tester": "^2.5", diff --git a/vendor/nette/utils/readme.md b/vendor/nette/utils/readme.md index 530915f8f82..0038f534f41 100644 --- a/vendor/nette/utils/readme.md +++ b/vendor/nette/utils/readme.md @@ -1,5 +1,4 @@ -Nette Utility Classes -===================== +[![Nette Utils](https://github.com/nette/utils/assets/194960/c33fdb74-0652-4cad-ac6e-c1ce0d29e32a)](https://doc.nette.org/en/utils) [![Downloads this Month](https://img.shields.io/packagist/dm/nette/utils.svg)](https://packagist.org/packages/nette/utils) [![Tests](https://github.com/nette/utils/workflows/Tests/badge.svg?branch=master)](https://github.com/nette/utils/actions) @@ -11,25 +10,27 @@ Nette Utility Classes Introduction ------------ -In package nette/utils you will find a set of [useful classes](https://doc.nette.org/utils) for everyday use: - -- [Arrays](https://doc.nette.org/utils/arrays) - manipulate arrays -- [Callback](https://doc.nette.org/utils/callback) - PHP callbacks -- [Date and Time](https://doc.nette.org/utils/datetime) - modify times and dates -- [Filesystem](https://doc.nette.org/utils/filesystem) - copying, renaming, … -- [Finder](https://doc.nette.org/utils/finder) - finds files and directories -- [Helper Functions](https://doc.nette.org/utils/helpers) -- [HTML elements](https://doc.nette.org/utils/html-elements) - generate HTML -- [Images](https://doc.nette.org/utils/images) - crop, resize, rotate images -- [JSON](https://doc.nette.org/utils/json) - encoding and decoding -- [Generating Random Strings](https://doc.nette.org/utils/random) -- [Paginator](https://doc.nette.org/utils/paginator) - pagination math -- [PHP Reflection](https://doc.nette.org/utils/reflection) -- [Strings](https://doc.nette.org/utils/strings) - useful text functions -- [SmartObject](https://doc.nette.org/utils/smartobject) - PHP object enhancements -- [Validation](https://doc.nette.org/utils/validators) - validate inputs -- [Type](https://doc.nette.org/utils/type) - PHP data type - +In package nette/utils you will find a set of useful classes for everyday use: + +✅ [Arrays](https://doc.nette.org/utils/arrays)
+✅ [Callback](https://doc.nette.org/utils/callback) - PHP callbacks
+✅ [Filesystem](https://doc.nette.org/utils/filesystem) - copying, renaming, …
+✅ [Finder](https://doc.nette.org/utils/finder) - finds files and directories
+✅ [Floats](https://doc.nette.org/utils/floats) - floating point numbers
+✅ [Helper Functions](https://doc.nette.org/utils/helpers)
+✅ [HTML elements](https://doc.nette.org/utils/html-elements) - generate HTML
+✅ [Images](https://doc.nette.org/utils/images) - crop, resize, rotate images
+✅ [Iterables](https://doc.nette.org/utils/iterables)
+✅ [JSON](https://doc.nette.org/utils/json) - encoding and decoding
+✅ [Generating Random Strings](https://doc.nette.org/utils/random)
+✅ [Paginator](https://doc.nette.org/utils/paginator) - pagination math
+✅ [PHP Reflection](https://doc.nette.org/utils/reflection)
+✅ [Strings](https://doc.nette.org/utils/strings) - useful text functions
+✅ [SmartObject](https://doc.nette.org/utils/smartobject) - PHP object enhancements
+✅ [Type](https://doc.nette.org/utils/type) - PHP data type
+✅ [Validation](https://doc.nette.org/utils/validators) - validate inputs
+ +  Installation ------------ @@ -40,11 +41,9 @@ The recommended way to install is via Composer: composer require nette/utils ``` -- Nette Utils 4.0 is compatible with PHP 8.0 to 8.3 -- Nette Utils 3.2 is compatible with PHP 7.2 to 8.3 -- Nette Utils 3.1 is compatible with PHP 7.1 to 8.0 -- Nette Utils 3.0 is compatible with PHP 7.1 to 8.0 -- Nette Utils 2.5 is compatible with PHP 5.6 to 8.0 +Nette Utils 4.0 is compatible with PHP 8.0 to 8.4. + +  [Support Me](https://github.com/sponsors/dg) -------------------------------------------- diff --git a/vendor/nette/utils/src/Iterators/CachingIterator.php b/vendor/nette/utils/src/Iterators/CachingIterator.php index 28404b94ff4..d8dd9acd049 100644 --- a/vendor/nette/utils/src/Iterators/CachingIterator.php +++ b/vendor/nette/utils/src/Iterators/CachingIterator.php @@ -27,22 +27,13 @@ class CachingIterator extends \CachingIterator implements \Countable * @var int */ private $counter = 0; - public function __construct($iterator) + /** + * @param iterable|\stdClass $iterable + */ + public function __construct($iterable) { - if (\is_array($iterator) || $iterator instanceof \stdClass) { - $iterator = new \ArrayIterator($iterator); - } elseif ($iterator instanceof \IteratorAggregate) { - do { - $iterator = $iterator->getIterator(); - } while ($iterator instanceof \IteratorAggregate); - \assert($iterator instanceof \Iterator); - } elseif ($iterator instanceof \Iterator) { - } elseif ($iterator instanceof \Traversable) { - $iterator = new \IteratorIterator($iterator); - } else { - throw new Nette\InvalidArgumentException(\sprintf('Invalid argument passed to %s; array or Traversable expected, %s given.', self::class, \get_debug_type($iterator))); - } - parent::__construct($iterator, 0); + $iterable = $iterable instanceof \stdClass ? new \ArrayIterator($iterable) : Nette\Utils\Iterables::toIterator($iterable); + parent::__construct($iterable, 0); } /** * Is the current element the first one? diff --git a/vendor/nette/utils/src/Iterators/Mapper.php b/vendor/nette/utils/src/Iterators/Mapper.php index c99e40f74ed..2aefa8c45bc 100644 --- a/vendor/nette/utils/src/Iterators/Mapper.php +++ b/vendor/nette/utils/src/Iterators/Mapper.php @@ -8,7 +8,7 @@ namespace RectorPrefix202408\Nette\Iterators; /** - * Applies the callback to the elements of the inner iterator. + * @deprecated use Nette\Utils\Iterables::map() */ class Mapper extends \IteratorIterator { diff --git a/vendor/nette/utils/src/Utils/Arrays.php b/vendor/nette/utils/src/Utils/Arrays.php index 2c071fc4c0e..d4dd90fe2f4 100644 --- a/vendor/nette/utils/src/Utils/Arrays.php +++ b/vendor/nette/utils/src/Utils/Arrays.php @@ -103,10 +103,11 @@ public static function contains(array $array, $value) : bool } /** * Returns the first item (matching the specified predicate if given). If there is no such item, it returns result of invoking $else or null. - * The $predicate has the signature `function (mixed $value, int|string $key, array $array): bool`. - * @template T - * @param array $array - * @return ?T + * @template K of int|string + * @template V + * @param array $array + * @param ?callable(V, K, array): bool $predicate + * @return ?V */ public static function first(array $array, ?callable $predicate = null, ?callable $else = null) { @@ -115,10 +116,11 @@ public static function first(array $array, ?callable $predicate = null, ?callabl } /** * Returns the last item (matching the specified predicate if given). If there is no such item, it returns result of invoking $else or null. - * The $predicate has the signature `function (mixed $value, int|string $key, array $array): bool`. - * @template T - * @param array $array - * @return ?T + * @template K of int|string + * @template V + * @param array $array + * @param ?callable(V, K, array): bool $predicate + * @return ?V */ public static function last(array $array, ?callable $predicate = null, ?callable $else = null) { @@ -127,8 +129,11 @@ public static function last(array $array, ?callable $predicate = null, ?callable } /** * Returns the key of first item (matching the specified predicate if given) or null if there is no such item. - * The $predicate has the signature `function (mixed $value, int|string $key, array $array): bool`. - * @return int|string|null + * @template K of int|string + * @template V + * @param array $array + * @param ?callable(V, K, array): bool $predicate + * @return ?K */ public static function firstKey(array $array, ?callable $predicate = null) { @@ -145,8 +150,11 @@ public static function firstKey(array $array, ?callable $predicate = null) } /** * Returns the key of last item (matching the specified predicate if given) or null if there is no such item. - * The $predicate has the signature `function (mixed $value, int|string $key, array $array): bool`. - * @return int|string|null + * @template K of int|string + * @template V + * @param array $array + * @param ?callable(V, K, array): bool $predicate + * @return ?K */ public static function lastKey(array $array, ?callable $predicate = null) { @@ -328,12 +336,11 @@ public static function pick(array &$array, $key, $default = null) } } /** - * Tests whether at least one element in the array passes the test implemented by the provided function, - * which has the signature `function ($value, $key, array $array): bool`. - * @template K + * Tests whether at least one element in the array passes the test implemented by the provided function. + * @template K of int|string * @template V - * @param iterable $array - * @param callable(V, K, ($array is array ? array : iterable)): bool $predicate + * @param array $array + * @param callable(V, K, array): bool $predicate */ public static function some(iterable $array, callable $predicate) : bool { @@ -345,12 +352,11 @@ public static function some(iterable $array, callable $predicate) : bool return \false; } /** - * Tests whether all elements in the array pass the test implemented by the provided function, - * which has the signature `function ($value, $key, array $array): bool`. - * @template K + * Tests whether all elements in the array pass the test implemented by the provided function. + * @template K of int|string * @template V - * @param iterable $array - * @param callable(V, K, ($array is array ? array : iterable)): bool $predicate + * @param array $array + * @param callable(V, K, array): bool $predicate */ public static function every(iterable $array, callable $predicate) : bool { @@ -363,11 +369,10 @@ public static function every(iterable $array, callable $predicate) : bool } /** * Returns a new array containing all key-value pairs matching the given $predicate. - * The callback has the signature `function (mixed $value, int|string $key, array $array): bool`. - * @template K of array-key + * @template K of int|string * @template V - * @param array $array - * @param callable(V, K, array): bool $predicate + * @param array $array + * @param callable(V, K, array): bool $predicate * @return array */ public static function filter(array $array, callable $predicate) : array @@ -382,12 +387,11 @@ public static function filter(array $array, callable $predicate) : array } /** * Returns an array containing the original keys and results of applying the given transform function to each element. - * The function has signature `function ($value, $key, array $array): mixed`. - * @template K of array-key + * @template K of int|string * @template V * @template R - * @param iterable $array - * @param callable(V, K, ($array is array ? array : iterable)): R $transformer + * @param array $array + * @param callable(V, K, array): R $transformer * @return array */ public static function map(iterable $array, callable $transformer) : array @@ -398,6 +402,28 @@ public static function map(iterable $array, callable $transformer) : array } return $res; } + /** + * Returns an array containing new keys and values generated by applying the given transform function to each element. + * If the function returns null, the element is skipped. + * @template K of int|string + * @template V + * @template ResK of int|string + * @template ResV + * @param array $array + * @param callable(V, K, array): ?array{ResK, ResV} $transformer + * @return array + */ + public static function mapWithKeys(array $array, callable $transformer) : array + { + $res = []; + foreach ($array as $k => $v) { + $pair = $transformer($v, $k, $array); + if ($pair) { + $res[$pair[0]] = $pair[1]; + } + } + return $res; + } /** * Invokes all callbacks and returns array of results. * @param callable[] $callbacks diff --git a/vendor/nette/utils/src/Utils/Callback.php b/vendor/nette/utils/src/Utils/Callback.php index b7091342c87..5efabbb038b 100644 --- a/vendor/nette/utils/src/Utils/Callback.php +++ b/vendor/nette/utils/src/Utils/Callback.php @@ -77,7 +77,7 @@ public static function toReflection($callable) $callable = self::unwrap($callable); } if (is_string($callable) && \strpos($callable, '::') !== \false) { - return new ReflectionMethod($callable); + return new ReflectionMethod(...\explode('::', $callable, 2)); } elseif (is_array($callable)) { return new ReflectionMethod($callable[0], $callable[1]); } elseif (is_object($callable) && !$callable instanceof \Closure) { diff --git a/vendor/nette/utils/src/Utils/Image.php b/vendor/nette/utils/src/Utils/Image.php index 51cb3be8296..3b277a0e136 100644 --- a/vendor/nette/utils/src/Utils/Image.php +++ b/vendor/nette/utils/src/Utils/Image.php @@ -133,9 +133,7 @@ public static function rgb(int $red, int $green, int $blue, int $transparency = */ public static function fromFile(string $file, ?int &$type = null) { - if (!\extension_loaded('gd')) { - throw new Nette\NotSupportedException('PHP extension GD is not loaded.'); - } + self::ensureExtension(); $type = self::detectTypeFromFile($file); if (!$type) { throw new UnknownImageFileException(\is_file($file) ? "Unknown type of file '{$file}'." : "File '{$file}' not found."); @@ -150,9 +148,7 @@ public static function fromFile(string $file, ?int &$type = null) */ public static function fromString(string $s, ?int &$type = null) { - if (!\extension_loaded('gd')) { - throw new Nette\NotSupportedException('PHP extension GD is not loaded.'); - } + self::ensureExtension(); $type = self::detectTypeFromString($s); if (!$type) { throw new UnknownImageFileException('Unknown type of image.'); @@ -185,9 +181,7 @@ private static function invokeSafe(string $func, string $arg, string $message, s */ public static function fromBlank(int $width, int $height, $color = null) { - if (!\extension_loaded('gd')) { - throw new Nette\NotSupportedException('PHP extension GD is not loaded.'); - } + self::ensureExtension(); if ($width < 1 || $height < 1) { throw new Nette\InvalidArgumentException('Image width and height must be greater than zero.'); } @@ -257,6 +251,7 @@ public static function typeToMimeType(int $type) : string */ public static function isTypeSupported(int $type) : bool { + self::ensureExtension(); switch ($type) { case ImageType::JPEG: return \IMG_JPG; @@ -277,6 +272,7 @@ public static function isTypeSupported(int $type) : bool /** @return ImageType[] */ public static function getSupportedTypes() : array { + self::ensureExtension(); $flag = \imagetypes(); return \array_filter([ $flag & \IMG_GIF ? ImageType::GIF : null, @@ -526,6 +522,7 @@ public function place(self $image, $left = 0, $top = 0, int $opacity = 100) */ public static function calculateTextBox(string $text, string $fontFile, float $size, float $angle = 0, array $options = []) : array { + self::ensureExtension(); $box = \imagettfbbox($size, $angle, $fontFile, $text, $options); return ['left' => $minX = \min([$box[0], $box[2], $box[4], $box[6]]), 'top' => $minY = \min([$box[1], $box[3], $box[5], $box[7]]), 'width' => \max([$box[0], $box[2], $box[4], $box[6]]) - $minX + 1, 'height' => \max([$box[1], $box[3], $box[5], $box[7]]) - $minY + 1]; } @@ -684,4 +681,10 @@ public function resolveColor($color) : int $color = $color instanceof ImageColor ? $color->toRGBA() : \array_values($color); return \imagecolorallocatealpha($this->image, ...$color) ?: \imagecolorresolvealpha($this->image, ...$color); } + private static function ensureExtension() : void + { + if (!\extension_loaded('gd')) { + throw new Nette\NotSupportedException('PHP extension GD is not loaded.'); + } + } } diff --git a/vendor/nette/utils/src/Utils/Iterables.php b/vendor/nette/utils/src/Utils/Iterables.php index b1f4bda25a6..1b4ab2a8d47 100644 --- a/vendor/nette/utils/src/Utils/Iterables.php +++ b/vendor/nette/utils/src/Utils/Iterables.php @@ -42,10 +42,11 @@ public static function containsKey(iterable $iterable, $key) : bool } /** * Returns the first item (matching the specified predicate if given). If there is no such item, it returns result of invoking $else or null. - * The $predicate has the signature `function (mixed $value, mixed $key, iterable $iterable): bool`. - * @template T - * @param iterable $iterable - * @return ?T + * @template K + * @template V + * @param iterable $iterable + * @param ?callable(V, K, iterable): bool $predicate + * @return ?V */ public static function first(iterable $iterable, ?callable $predicate = null, ?callable $else = null) { @@ -58,10 +59,11 @@ public static function first(iterable $iterable, ?callable $predicate = null, ?c } /** * Returns the key of first item (matching the specified predicate if given). If there is no such item, it returns result of invoking $else or null. - * The $predicate has the signature `function (mixed $value, mixed $key, iterable $iterable): bool`. - * @template T - * @param iterable $iterable - * @return ?T + * @template K + * @template V + * @param iterable $iterable + * @param ?callable(V, K, iterable): bool $predicate + * @return ?K */ public static function firstKey(iterable $iterable, ?callable $predicate = null, ?callable $else = null) { @@ -73,11 +75,10 @@ public static function firstKey(iterable $iterable, ?callable $predicate = null, return $else ? $else() : null; } /** - * Tests whether at least one element in the iterator passes the test implemented by the - * provided callback with signature `function (mixed $value, mixed $key, iterable $iterable): bool`. + * Tests whether at least one element in the iterator passes the test implemented by the provided function. * @template K * @template V - * @param iterable $iterable + * @param iterable $iterable * @param callable(V, K, iterable): bool $predicate */ public static function some(iterable $iterable, callable $predicate) : bool @@ -90,11 +91,10 @@ public static function some(iterable $iterable, callable $predicate) : bool return \false; } /** - * Tests whether all elements in the iterator pass the test implemented by the provided function, - * which has the signature `function (mixed $value, mixed $key, iterable $iterable): bool`. + * Tests whether all elements in the iterator pass the test implemented by the provided function. * @template K * @template V - * @param iterable $iterable + * @param iterable $iterable * @param callable(V, K, iterable): bool $predicate */ public static function every(iterable $iterable, callable $predicate) : bool @@ -108,11 +108,10 @@ public static function every(iterable $iterable, callable $predicate) : bool } /** * Iterator that filters elements according to a given $predicate. Maintains original keys. - * The callback has the signature `function (mixed $value, mixed $key, iterable $iterable): bool`. * @template K * @template V - * @param iterable $iterable - * @param callable(V, K, iterable): bool $predicate + * @param iterable $iterable + * @param callable(V, K, iterable): bool $predicate * @return \Generator */ public static function filter(iterable $iterable, callable $predicate) : \Generator @@ -125,12 +124,11 @@ public static function filter(iterable $iterable, callable $predicate) : \Genera } /** * Iterator that transforms values by calling $transformer. Maintains original keys. - * The callback has the signature `function (mixed $value, mixed $key, iterable $iterable): bool`. * @template K * @template V * @template R - * @param iterable $iterable - * @param callable(V, K, iterable): R $transformer + * @param iterable $iterable + * @param callable(V, K, iterable): R $transformer * @return \Generator */ public static function map(iterable $iterable, callable $transformer) : \Generator @@ -139,4 +137,89 @@ public static function map(iterable $iterable, callable $transformer) : \Generat (yield $k => $transformer($v, $k, $iterable)); } } + /** + * Iterator that transforms keys and values by calling $transformer. If it returns null, the element is skipped. + * @template K + * @template V + * @template ResV + * @template ResK + * @param iterable $iterable + * @param callable(V, K, iterable): ?array{ResV, ResK} $transformer + * @return \Generator + */ + public static function mapWithKeys(iterable $iterable, callable $transformer) : \Generator + { + foreach ($iterable as $k => $v) { + $pair = $transformer($v, $k, $iterable); + if ($pair) { + (yield $pair[0] => $pair[1]); + } + } + } + /** + * Wraps around iterator and caches its keys and values during iteration. + * This allows the data to be re-iterated multiple times. + * @template K + * @template V + * @param iterable $iterable + * @return \IteratorAggregate + */ + public static function memoize(iterable $iterable) : iterable + { + return new class(self::toIterator($iterable)) implements \IteratorAggregate + { + /** + * @var \Iterator + */ + private $iterator; + /** + * @var mixed[] + */ + private $cache = []; + public function __construct(\Iterator $iterator, array $cache = []) + { + $this->iterator = $iterator; + $this->cache = $cache; + } + public function getIterator() : \Generator + { + if (!$this->cache) { + $this->iterator->rewind(); + } + $i = 0; + while (\true) { + if (isset($this->cache[$i])) { + [$k, $v] = $this->cache[$i]; + } elseif ($this->iterator->valid()) { + $k = $this->iterator->key(); + $v = $this->iterator->current(); + $this->iterator->next(); + $this->cache[$i] = [$k, $v]; + } else { + break; + } + (yield $k => $v); + $i++; + } + } + }; + } + /** + * Creates an iterator from anything that is iterable. + * @template K + * @template V + * @param iterable $iterable + * @return \Iterator + */ + public static function toIterator(iterable $iterable) : \Iterator + { + switch (\true) { + case $iterable instanceof \Iterator: + return $iterable; + case $iterable instanceof \IteratorAggregate: + return self::toIterator($iterable->getIterator()); + case \is_array($iterable): + return new \ArrayIterator($iterable); + } + } } diff --git a/vendor/nette/utils/src/Utils/Reflection.php b/vendor/nette/utils/src/Utils/Reflection.php index 523f88b6872..771f899012c 100644 --- a/vendor/nette/utils/src/Utils/Reflection.php +++ b/vendor/nette/utils/src/Utils/Reflection.php @@ -75,7 +75,7 @@ public static function getMethodDeclaringMethod(\ReflectionMethod $method) : \Re return $method; } $hash = [$method->getFileName(), $method->getStartLine(), $method->getEndLine()]; - if (($alias = $decl->getTraitAliases()[$method->name] ?? null) && ($m = new \ReflectionMethod($alias)) && $hash === [$m->getFileName(), $m->getStartLine(), $m->getEndLine()]) { + if (($alias = $decl->getTraitAliases()[$method->name] ?? null) && ($m = new \ReflectionMethod(...\explode('::', $alias, 2))) && $hash === [$m->getFileName(), $m->getStartLine(), $m->getEndLine()]) { return self::getMethodDeclaringMethod($m); } foreach ($decl->getTraits() as $trait) { @@ -91,7 +91,7 @@ public static function getMethodDeclaringMethod(\ReflectionMethod $method) : \Re public static function areCommentsAvailable() : bool { static $res; - return $res ?? ($res = (bool) (new \ReflectionMethod(__METHOD__))->getDocComment()); + return $res ?? ($res = (bool) (new \ReflectionMethod(self::class, __FUNCTION__))->getDocComment()); } public static function toString(\Reflector $ref) : string { @@ -100,7 +100,7 @@ public static function toString(\Reflector $ref) : string } elseif ($ref instanceof \ReflectionMethod) { return $ref->getDeclaringClass()->name . '::' . $ref->name . '()'; } elseif ($ref instanceof \ReflectionFunction) { - return $ref->name . '()'; + return \PHP_VERSION_ID >= 80200 && $ref->isAnonymous() ? '{closure}()' : $ref->name . '()'; } elseif ($ref instanceof \ReflectionProperty) { return self::getPropertyDeclaringClass($ref)->name . '::$' . $ref->name; } elseif ($ref instanceof \ReflectionParameter) { diff --git a/vendor/nette/utils/src/Utils/Strings.php b/vendor/nette/utils/src/Utils/Strings.php index 3d6dd7ea1ff..5758965547c 100644 --- a/vendor/nette/utils/src/Utils/Strings.php +++ b/vendor/nette/utils/src/Utils/Strings.php @@ -486,6 +486,7 @@ public static function match( /** * Searches the string for all occurrences matching the regular expression and * returns an array of arrays containing the found expression and each subexpression. + * @return ($lazy is true ? \Generator : array[]) * @param bool|int $captureOffset */ public static function matchAll( @@ -498,17 +499,35 @@ public static function matchAll( int $offset = 0, bool $unmatchedAsNull = \false, bool $patternOrder = \false, - bool $utf8 = \false - ) : array + bool $utf8 = \false, + bool $lazy = \false + ) { - $flags = \is_int($captureOffset) ? $captureOffset : ($captureOffset ? \PREG_OFFSET_CAPTURE : 0) | ($unmatchedAsNull ? \PREG_UNMATCHED_AS_NULL : 0) | ($patternOrder ? \PREG_PATTERN_ORDER : 0); if ($utf8) { $offset = strlen(self::substring($subject, 0, $offset)); $pattern .= 'u'; } + if ($lazy) { + $flags = \PREG_OFFSET_CAPTURE | ($unmatchedAsNull ? \PREG_UNMATCHED_AS_NULL : 0); + return (function () use($utf8, $captureOffset, $flags, $subject, $pattern, $offset) { + $counter = 0; + while ($offset <= strlen($subject) - ($counter ? 1 : 0) && self::pcre('preg_match', [$pattern, $subject, &$m, $flags, $offset])) { + $offset = $m[0][1] + \max(1, strlen($m[0][0])); + if (!$captureOffset) { + $m = \array_map(function ($item) { + return $item[0]; + }, $m); + } elseif ($utf8) { + $m = self::bytesToChars($subject, [$m])[0]; + } + (yield $counter++ => $m); + } + })(); + } if ($offset > strlen($subject)) { return []; } + $flags = \is_int($captureOffset) ? $captureOffset : ($captureOffset ? \PREG_OFFSET_CAPTURE : 0) | ($unmatchedAsNull ? \PREG_UNMATCHED_AS_NULL : 0) | ($patternOrder ? \PREG_PATTERN_ORDER : 0); self::pcre('preg_match_all', [$pattern, $subject, &$m, $flags & \PREG_PATTERN_ORDER ? $flags : $flags | \PREG_SET_ORDER, $offset]); return $utf8 && $captureOffset ? self::bytesToChars($subject, $m) : $m; } diff --git a/vendor/rector/extension-installer/src/GeneratedConfig.php b/vendor/rector/extension-installer/src/GeneratedConfig.php index b7615a5319d..91d8923cee5 100644 --- a/vendor/rector/extension-installer/src/GeneratedConfig.php +++ b/vendor/rector/extension-installer/src/GeneratedConfig.php @@ -9,7 +9,7 @@ */ final class GeneratedConfig { - public const EXTENSIONS = array('rector/rector-doctrine' => array('install_path' => '/home/runner/work/rector-src/rector-src/rector-build/vendor/rector/rector-doctrine', 'relative_install_path' => '../../rector-doctrine', 'extra' => NULL, 'version' => 'dev-main 3ba7adb'), 'rector/rector-downgrade-php' => array('install_path' => '/home/runner/work/rector-src/rector-src/rector-build/vendor/rector/rector-downgrade-php', 'relative_install_path' => '../../rector-downgrade-php', 'extra' => NULL, 'version' => 'dev-main c053b97'), 'rector/rector-phpunit' => array('install_path' => '/home/runner/work/rector-src/rector-src/rector-build/vendor/rector/rector-phpunit', 'relative_install_path' => '../../rector-phpunit', 'extra' => NULL, 'version' => 'dev-main acfcef8'), 'rector/rector-symfony' => array('install_path' => '/home/runner/work/rector-src/rector-src/rector-build/vendor/rector/rector-symfony', 'relative_install_path' => '../../rector-symfony', 'extra' => NULL, 'version' => 'dev-main 01e3fe7')); + public const EXTENSIONS = array('rector/rector-doctrine' => array('install_path' => '/home/runner/work/rector-src/rector-src/rector-build/vendor/rector/rector-doctrine', 'relative_install_path' => '../../rector-doctrine', 'extra' => NULL, 'version' => 'dev-main 11ac7b9'), 'rector/rector-downgrade-php' => array('install_path' => '/home/runner/work/rector-src/rector-src/rector-build/vendor/rector/rector-downgrade-php', 'relative_install_path' => '../../rector-downgrade-php', 'extra' => NULL, 'version' => 'dev-main c053b97'), 'rector/rector-phpunit' => array('install_path' => '/home/runner/work/rector-src/rector-src/rector-build/vendor/rector/rector-phpunit', 'relative_install_path' => '../../rector-phpunit', 'extra' => NULL, 'version' => 'dev-main 2bacfc6'), 'rector/rector-symfony' => array('install_path' => '/home/runner/work/rector-src/rector-src/rector-build/vendor/rector/rector-symfony', 'relative_install_path' => '../../rector-symfony', 'extra' => NULL, 'version' => 'dev-main ece9272')); private function __construct() { } diff --git a/vendor/rector/rector-doctrine/README.md b/vendor/rector/rector-doctrine/README.md index b844e632b2c..ba34bf4f9f7 100644 --- a/vendor/rector/rector-doctrine/README.md +++ b/vendor/rector/rector-doctrine/README.md @@ -1,6 +1,6 @@ # Rector Rules for Doctrine -See available [Doctrine rules](/docs/rector_rules_overview.md) +See available [Doctrine rules](https://getrector.com/find-rule?query=doctrine+rules) ## Install diff --git a/vendor/rector/rector-doctrine/composer.json b/vendor/rector/rector-doctrine/composer.json index eb7701015e9..e720d6b5919 100644 --- a/vendor/rector/rector-doctrine/composer.json +++ b/vendor/rector/rector-doctrine/composer.json @@ -19,7 +19,7 @@ "symplify\/easy-coding-standard": "^12.3", "symplify\/phpstan-extensions": "^11.4", "symplify\/phpstan-rules": "^13.0", - "symplify\/rule-doc-generator": "^12.2", + "symplify\/rule-doc-generator": "^12.2.5", "symplify\/vendor-patches": "^11.3", "tomasvotruba\/class-leak": "^0.2.15", "tomasvotruba\/unused-public": "^0.3", @@ -51,10 +51,7 @@ "phpstan": "vendor\/bin\/phpstan analyse --ansi --error-format symplify", "rector": "vendor\/bin\/rector --ansi", "check-cs": "vendor\/bin\/ecs check --ansi", - "fix-cs": "vendor\/bin\/ecs check --fix --ansi", - "docs": [ - "vendor\/bin\/rule-doc-generator generate src rules --output-file docs\/rector_rules_overview.md --ansi" - ] + "fix-cs": "vendor\/bin\/ecs check --fix --ansi" }, "extra": { "enable-patching": true diff --git a/vendor/rector/rector-doctrine/docs/rector_rules_overview.md b/vendor/rector/rector-doctrine/docs/rector_rules_overview.md index d5b7a3e4169..d78e20f77c7 100644 --- a/vendor/rector/rector-doctrine/docs/rector_rules_overview.md +++ b/vendor/rector/rector-doctrine/docs/rector_rules_overview.md @@ -1,5 +1,11 @@ # 18 Rules Overview +**This overview is deprecated and replaced by more advanced web search. There you can search and filter by nodes, copy-paste configs for configurable rules and more.** + +Use https://getrector.com/find-rule?query=doctrine+rules instead! + +--- + ## AddReturnDocBlockToCollectionPropertyGetterByToManyAnnotationRector Adds `@return` PHPDoc type to Collection property getter by *ToMany annotation/attribute diff --git a/vendor/rector/rector-phpunit/README.md b/vendor/rector/rector-phpunit/README.md index 0a8aa1b4d91..9969a772d98 100644 --- a/vendor/rector/rector-phpunit/README.md +++ b/vendor/rector/rector-phpunit/README.md @@ -1,6 +1,6 @@ # Rector Rules for PHPUnit -See available [PHPUnit rules](/docs/rector_rules_overview.md) +See available [PHPUnit rules](https://getrector.com/find-rule?query=phpunit+rules) ## Install diff --git a/vendor/rector/rector-phpunit/composer.json b/vendor/rector/rector-phpunit/composer.json index 739566dcb65..2f1db523320 100644 --- a/vendor/rector/rector-phpunit/composer.json +++ b/vendor/rector/rector-phpunit/composer.json @@ -13,7 +13,7 @@ "symplify\/phpstan-rules": "^13.0", "symplify\/phpstan-extensions": "^11.2", "symplify\/easy-coding-standard": "^12.3", - "symplify\/rule-doc-generator": "^12.0", + "symplify\/rule-doc-generator": "^12.2.5", "phpstan\/extension-installer": "^1.4", "phpstan\/phpstan-webmozart-assert": "^1.2", "symplify\/vendor-patches": "^11.2", @@ -53,8 +53,7 @@ "check-cs": "vendor\/bin\/ecs check --ansi", "class-leak": "vendor\/bin\/class-leak check config src rules --skip-suffix \"Rector\"", "fix-cs": "vendor\/bin\/ecs check --fix --ansi", - "rector": "vendor\/bin\/rector process --ansi", - "docs": "vendor\/bin\/rule-doc-generator generate src rules --output-file docs\/rector_rules_overview.md --ansi" + "rector": "vendor\/bin\/rector process --ansi" }, "extra": { "enable-patching": true, diff --git a/vendor/rector/rector-phpunit/docs/rector_rules_overview.md b/vendor/rector/rector-phpunit/docs/rector_rules_overview.md index 860013602ea..7a7c5c8caa4 100644 --- a/vendor/rector/rector-phpunit/docs/rector_rules_overview.md +++ b/vendor/rector/rector-phpunit/docs/rector_rules_overview.md @@ -1,5 +1,11 @@ # 55 Rules Overview +**This overview is deprecated and replaced by more advanced web search. There you can search and filter by nodes, copy-paste configs for configurable rules and more.** + +Use https://getrector.com/find-rule?query=phpunit+rules instead! + +--- + ## AddCoversClassAttributeRector Adds `#[CoversClass(...)]` attribute to test files guessing source class name. diff --git a/vendor/rector/rector-symfony/README.md b/vendor/rector/rector-symfony/README.md index 400e9cce4fe..bac702cd501 100644 --- a/vendor/rector/rector-symfony/README.md +++ b/vendor/rector/rector-symfony/README.md @@ -1,6 +1,6 @@ # Rector Rules for Symfony -See available [Symfony rules](/docs/rector_rules_overview.md) +See available [Symfony rules](https://getrector.com/find-rule?query=symfony+rules) ## Install diff --git a/vendor/rector/rector-symfony/composer.json b/vendor/rector/rector-symfony/composer.json index a56c2580a92..b041e630ee2 100644 --- a/vendor/rector/rector-symfony/composer.json +++ b/vendor/rector/rector-symfony/composer.json @@ -24,7 +24,7 @@ "symplify\/easy-coding-standard": "^12.3", "symplify\/phpstan-extensions": "^11.4", "symplify\/phpstan-rules": "^13.0", - "symplify\/rule-doc-generator": "^12.2.2", + "symplify\/rule-doc-generator": "^12.2.5", "symplify\/vendor-patches": "^11.3", "tomasvotruba\/class-leak": "^0.2", "tomasvotruba\/unused-public": "^0.3.10", @@ -52,8 +52,7 @@ "scripts": { "phpstan": "vendor\/bin\/phpstan analyse --ansi --error-format symplify", "check-cs": "vendor\/bin\/ecs check --ansi", - "fix-cs": "vendor\/bin\/ecs check --fix --ansi", - "docs": "vendor\/bin\/rule-doc-generator generate src rules --output-file docs\/rector_rules_overview.md --ansi" + "fix-cs": "vendor\/bin\/ecs check --fix --ansi" }, "extra": { "enable-patching": true diff --git a/vendor/rector/rector-symfony/docs/rector_rules_overview.md b/vendor/rector/rector-symfony/docs/rector_rules_overview.md index a8d419e04f9..505300b8de0 100644 --- a/vendor/rector/rector-symfony/docs/rector_rules_overview.md +++ b/vendor/rector/rector-symfony/docs/rector_rules_overview.md @@ -1,5 +1,11 @@ # 85 Rules Overview +**This overview is deprecated and replaced by more advanced web search. There you can search and filter by nodes, copy-paste configs for configurable rules and more.** + +Use https://getrector.com/find-rule?query=symfony+rules instead! + +--- + ## ActionSuffixRemoverRector Removes Action suffixes from methods in Symfony Controllers diff --git a/vendor/scoper-autoload.php b/vendor/scoper-autoload.php index d6373ed5ef5..612ce7570cf 100644 --- a/vendor/scoper-autoload.php +++ b/vendor/scoper-autoload.php @@ -14,7 +14,7 @@ // Restore the backup and ensure the excluded files are properly marked as loaded $GLOBALS['__composer_autoload_files'] = \array_merge( $existingComposerAutoloadFiles, - \array_fill_keys(['0e6d7bf4a5811bfa5cf40c5ccd6fae6a', '5928a00fa978807cf85d90ec3f4b0147'], true) + \array_fill_keys(['5928a00fa978807cf85d90ec3f4b0147', '0e6d7bf4a5811bfa5cf40c5ccd6fae6a'], true) ); return $loader; @@ -30,7 +30,7 @@ function humbug_phpscoper_expose_class($exposed, $prefixed) { } } humbug_phpscoper_expose_class('AutoloadIncluder', 'RectorPrefix202408\AutoloadIncluder'); -humbug_phpscoper_expose_class('ComposerAutoloaderInit4bcaef4da4b0314c67dae59e30837b25', 'RectorPrefix202408\ComposerAutoloaderInit4bcaef4da4b0314c67dae59e30837b25'); +humbug_phpscoper_expose_class('ComposerAutoloaderInit969cf4fb8686733ba64d08544d342ca0', 'RectorPrefix202408\ComposerAutoloaderInit969cf4fb8686733ba64d08544d342ca0'); humbug_phpscoper_expose_class('Product', 'RectorPrefix202408\Product'); // Function aliases. For more information see: