From e01c3d5d29b437c4020f8b57eca8095d44ea4359 Mon Sep 17 00:00:00 2001 From: Tomas Votruba Date: Fri, 26 Aug 2022 08:24:05 +0000 Subject: [PATCH] Updated Rector to commit a75e56071aaf22d6751d2501b30272e7185e4873 https://github.com/rectorphp/rector-src/commit/a75e56071aaf22d6751d2501b30272e7185e4873 [DowngradePhp80/72] Handle DowngradeTrailingCommasInParamUseRector+DowngradeParameterTypeWideningRector (#2843) --- src/Application/VersionResolver.php | 4 ++-- src/ProcessAnalyzer/RectifiedAnalyzer.php | 23 ++++++++++++++++++++++- vendor/autoload.php | 2 +- vendor/composer/autoload_real.php | 14 +++++++------- vendor/composer/autoload_static.php | 8 ++++---- 5 files changed, 36 insertions(+), 15 deletions(-) diff --git a/src/Application/VersionResolver.php b/src/Application/VersionResolver.php index 07b6076d396..f44e70caa9c 100644 --- a/src/Application/VersionResolver.php +++ b/src/Application/VersionResolver.php @@ -17,12 +17,12 @@ final class VersionResolver * @api * @var string */ - public const PACKAGE_VERSION = '21695e77a8906dbdce7ada865b140ccbf73dca56'; + public const PACKAGE_VERSION = 'a75e56071aaf22d6751d2501b30272e7185e4873'; /** * @api * @var string */ - public const RELEASE_DATE = '2022-08-26 08:42:30'; + public const RELEASE_DATE = '2022-08-26 10:19:58'; /** * @var int */ diff --git a/src/ProcessAnalyzer/RectifiedAnalyzer.php b/src/ProcessAnalyzer/RectifiedAnalyzer.php index 1806becc86f..d4201ebe534 100644 --- a/src/ProcessAnalyzer/RectifiedAnalyzer.php +++ b/src/ProcessAnalyzer/RectifiedAnalyzer.php @@ -70,7 +70,9 @@ final class RectifiedAnalyzer */ private function shouldContinue(RectifiedNode $rectifiedNode, string $rectorClass, Node $node, ?Node $originalNode) : bool { - if ($rectifiedNode->getRectorClass() === $rectorClass && $rectifiedNode->getNode() === $node) { + $rectifiedNodeClass = $rectifiedNode->getRectorClass(); + $rectifiedNodeNode = $rectifiedNode->getNode(); + if ($rectifiedNodeClass === $rectorClass && $rectifiedNodeNode === $node) { /** * allow to revisit the Node with same Rector rule if Node is changed by other rule */ @@ -79,7 +81,26 @@ final class RectifiedAnalyzer if ($originalNode instanceof Node) { return \true; } + if ($this->isPreviousCreatedByRuleAttributeEquals($rectifiedNodeClass, $rectifiedNodeNode, $node)) { + return \true; + } $startTokenPos = $node->getStartTokenPos(); return $startTokenPos < 0; } + /** + * @param class-string $rectifiedNodeClass + */ + private function isPreviousCreatedByRuleAttributeEquals(string $rectifiedNodeClass, Node $rectifiedNodeNode, Node $node) : bool + { + /** @var class-string[] $createdByRule */ + $createdByRule = $node->getAttribute(AttributeKey::CREATED_BY_RULE) ?? []; + if (\count($createdByRule) !== 1) { + return \false; + } + // different rule, allowed + if (\current($createdByRule) !== $rectifiedNodeClass) { + return \true; + } + return $rectifiedNodeNode === $node; + } } diff --git a/vendor/autoload.php b/vendor/autoload.php index 40ec7460538..ae8fe0106f2 100644 --- a/vendor/autoload.php +++ b/vendor/autoload.php @@ -9,4 +9,4 @@ if (PHP_VERSION_ID < 50600) { require_once __DIR__ . '/composer/autoload_real.php'; -return ComposerAutoloaderInit247e8f9654d22e33915b5660b3fb3c6c::getLoader(); +return ComposerAutoloaderInit82b9108dc17b518700b194e5b11302e8::getLoader(); diff --git a/vendor/composer/autoload_real.php b/vendor/composer/autoload_real.php index 9f45a098d6d..95f179527d6 100644 --- a/vendor/composer/autoload_real.php +++ b/vendor/composer/autoload_real.php @@ -2,7 +2,7 @@ // autoload_real.php @generated by Composer -class ComposerAutoloaderInit247e8f9654d22e33915b5660b3fb3c6c +class ComposerAutoloaderInit82b9108dc17b518700b194e5b11302e8 { private static $loader; @@ -22,19 +22,19 @@ class ComposerAutoloaderInit247e8f9654d22e33915b5660b3fb3c6c return self::$loader; } - spl_autoload_register(array('ComposerAutoloaderInit247e8f9654d22e33915b5660b3fb3c6c', 'loadClassLoader'), true, true); + spl_autoload_register(array('ComposerAutoloaderInit82b9108dc17b518700b194e5b11302e8', 'loadClassLoader'), true, true); self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__)); - spl_autoload_unregister(array('ComposerAutoloaderInit247e8f9654d22e33915b5660b3fb3c6c', 'loadClassLoader')); + spl_autoload_unregister(array('ComposerAutoloaderInit82b9108dc17b518700b194e5b11302e8', 'loadClassLoader')); require __DIR__ . '/autoload_static.php'; - call_user_func(\Composer\Autoload\ComposerStaticInit247e8f9654d22e33915b5660b3fb3c6c::getInitializer($loader)); + call_user_func(\Composer\Autoload\ComposerStaticInit82b9108dc17b518700b194e5b11302e8::getInitializer($loader)); $loader->setClassMapAuthoritative(true); $loader->register(true); - $includeFiles = \Composer\Autoload\ComposerStaticInit247e8f9654d22e33915b5660b3fb3c6c::$files; + $includeFiles = \Composer\Autoload\ComposerStaticInit82b9108dc17b518700b194e5b11302e8::$files; foreach ($includeFiles as $fileIdentifier => $file) { - composerRequire247e8f9654d22e33915b5660b3fb3c6c($fileIdentifier, $file); + composerRequire82b9108dc17b518700b194e5b11302e8($fileIdentifier, $file); } return $loader; @@ -46,7 +46,7 @@ class ComposerAutoloaderInit247e8f9654d22e33915b5660b3fb3c6c * @param string $file * @return void */ -function composerRequire247e8f9654d22e33915b5660b3fb3c6c($fileIdentifier, $file) +function composerRequire82b9108dc17b518700b194e5b11302e8($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 724da893383..c99a0ae20be 100644 --- a/vendor/composer/autoload_static.php +++ b/vendor/composer/autoload_static.php @@ -4,7 +4,7 @@ namespace Composer\Autoload; -class ComposerStaticInit247e8f9654d22e33915b5660b3fb3c6c +class ComposerStaticInit82b9108dc17b518700b194e5b11302e8 { public static $files = array ( '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php', @@ -3256,9 +3256,9 @@ class ComposerStaticInit247e8f9654d22e33915b5660b3fb3c6c public static function getInitializer(ClassLoader $loader) { return \Closure::bind(function () use ($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInit247e8f9654d22e33915b5660b3fb3c6c::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInit247e8f9654d22e33915b5660b3fb3c6c::$prefixDirsPsr4; - $loader->classMap = ComposerStaticInit247e8f9654d22e33915b5660b3fb3c6c::$classMap; + $loader->prefixLengthsPsr4 = ComposerStaticInit82b9108dc17b518700b194e5b11302e8::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInit82b9108dc17b518700b194e5b11302e8::$prefixDirsPsr4; + $loader->classMap = ComposerStaticInit82b9108dc17b518700b194e5b11302e8::$classMap; }, null, ClassLoader::class); }