From e8b69504e2cdede682363d85f28a6e083a7c42ee Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Mon, 8 Sep 2025 15:30:03 +0700 Subject: [PATCH 1/6] =?UTF-8?q?Revert=20"Revert=20"[DowngradePhp80]=20Regi?= =?UTF-8?q?ster=20Override=20and=20SensitiveParameter=20to=20skipped=20?= =?UTF-8?q?=E2=80=A6"=20(#319)"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit f29689b9940147a6f624d5a4b3288d733be31058. --- .../override_and_sensitive_parameters.php.inc | 40 +++++++++++++++++++ .../DowngradeAttributeToAnnotationRector.php | 8 +++- 2 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/override_and_sensitive_parameters.php.inc diff --git a/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/override_and_sensitive_parameters.php.inc b/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/override_and_sensitive_parameters.php.inc new file mode 100644 index 00000000..8765fcdc --- /dev/null +++ b/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/override_and_sensitive_parameters.php.inc @@ -0,0 +1,40 @@ +isTrue($param)) { + return 5; + } + + return '10'; + } + + private function isTrue($value) { + return $value === true; + } +} + +?> +----- +isTrue($param)) { + return 5; + } + + return '10'; + } + + private function isTrue($value) { + return $value === true; + } +} + +?> \ No newline at end of file diff --git a/rules/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector.php b/rules/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector.php index c20e2f00..e05154ca 100644 --- a/rules/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector.php +++ b/rules/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector.php @@ -34,7 +34,13 @@ final class DowngradeAttributeToAnnotationRector extends AbstractRector implemen /** * @var string[] */ - private const SKIPPED_ATTRIBUTES = ['Attribute', 'ReturnTypeWillChange', 'AllowDynamicProperties']; + private const SKIPPED_ATTRIBUTES = [ + 'Attribute', + 'ReturnTypeWillChange', + 'AllowDynamicProperties', + 'Override', + 'SensitiveParameter', + ]; /** * @var DowngradeAttributeToAnnotation[] From 60017cbd552348f9a1a8002b0ae2a0fdd72e713e Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Mon, 8 Sep 2025 15:46:57 +0700 Subject: [PATCH 2/6] handle param new line before --- .../override_and_sensitive_parameters.php.inc | 3 ++- .../Class_/DowngradeAttributeToAnnotationRector.php | 12 +++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/override_and_sensitive_parameters.php.inc b/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/override_and_sensitive_parameters.php.inc index 8765fcdc..94cd902c 100644 --- a/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/override_and_sensitive_parameters.php.inc +++ b/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/override_and_sensitive_parameters.php.inc @@ -23,7 +23,8 @@ final class OverrideAndSensitiveParameter extends Foo final class OverrideAndSensitiveParameter extends Foo { #[\Override] - public function run(#[\SensitiveParameter] + public function run( + #[\SensitiveParameter] bool $param) { if ($this->isTrue($param)) { return 5; diff --git a/rules/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector.php b/rules/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector.php index e05154ca..d4e78d14 100644 --- a/rules/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector.php +++ b/rules/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector.php @@ -120,7 +120,17 @@ public function refactor(Node $node): ?Node (string) $oldTokens[$attrGroup->getEndTokenPos() + 1], "\n" )) { - // add new line + if ($node instanceof Param) { + if (isset($oldTokens[$attrGroup->getStartTokenPos() - 1]) && ! str_contains( + (string) $oldTokens[$attrGroup->getStartTokenPos() - 1], + "\n" + )) { + // add new line before + $oldTokens[$attrGroup->getStartTokenPos() - 1]->text .= "\n "; + } + } + + // add new line after $oldTokens[$attrGroup->getEndTokenPos() + 1]->text = "\n" . $oldTokens[$attrGroup->getEndTokenPos() + 1]->text; $this->isDowngraded = true; } From 411d09f5547c7545fc14d6ca4e7822fe6902e79f Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Mon, 8 Sep 2025 15:53:35 +0700 Subject: [PATCH 3/6] space --- ..._override_and_sensitive_parameters.php.inc | 20 +++++++++++++++++++ .../DowngradeAttributeToAnnotationRector.php | 2 +- 2 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/skip_already_newlined_override_and_sensitive_parameters.php.inc diff --git a/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/skip_already_newlined_override_and_sensitive_parameters.php.inc b/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/skip_already_newlined_override_and_sensitive_parameters.php.inc new file mode 100644 index 00000000..8855816e --- /dev/null +++ b/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/skip_already_newlined_override_and_sensitive_parameters.php.inc @@ -0,0 +1,20 @@ +isTrue($param)) { + return 5; + } + + return '10'; + } + + private function isTrue($value) { + return $value === true; + } +} diff --git a/rules/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector.php b/rules/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector.php index d4e78d14..a2fc855c 100644 --- a/rules/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector.php +++ b/rules/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector.php @@ -126,7 +126,7 @@ public function refactor(Node $node): ?Node "\n" )) { // add new line before - $oldTokens[$attrGroup->getStartTokenPos() - 1]->text .= "\n "; + $oldTokens[$attrGroup->getStartTokenPos() - 1]->text .= "\n"; } } From 9dcdd2999801cc5de601925cc67a4cfbd8aa4310 Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Mon, 8 Sep 2025 15:54:39 +0700 Subject: [PATCH 4/6] namespace --- .../Fixture/override_and_sensitive_parameters.php.inc | 5 +++++ ...lready_newlined_override_and_sensitive_parameters.php.inc | 2 ++ 2 files changed, 7 insertions(+) diff --git a/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/override_and_sensitive_parameters.php.inc b/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/override_and_sensitive_parameters.php.inc index 94cd902c..2891dd77 100644 --- a/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/override_and_sensitive_parameters.php.inc +++ b/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/override_and_sensitive_parameters.php.inc @@ -1,5 +1,7 @@ Date: Mon, 8 Sep 2025 08:55:21 +0000 Subject: [PATCH 5/6] [ci-review] Rector Rectify --- .../DowngradeAttributeToAnnotationRector.php | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/rules/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector.php b/rules/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector.php index a2fc855c..a6f1a527 100644 --- a/rules/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector.php +++ b/rules/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector.php @@ -120,14 +120,12 @@ public function refactor(Node $node): ?Node (string) $oldTokens[$attrGroup->getEndTokenPos() + 1], "\n" )) { - if ($node instanceof Param) { - if (isset($oldTokens[$attrGroup->getStartTokenPos() - 1]) && ! str_contains( - (string) $oldTokens[$attrGroup->getStartTokenPos() - 1], - "\n" - )) { - // add new line before - $oldTokens[$attrGroup->getStartTokenPos() - 1]->text .= "\n"; - } + if ($node instanceof Param && (isset($oldTokens[$attrGroup->getStartTokenPos() - 1]) && ! str_contains( + (string) $oldTokens[$attrGroup->getStartTokenPos() - 1], + "\n" + ))) { + // add new line before + $oldTokens[$attrGroup->getStartTokenPos() - 1]->text .= "\n"; } // add new line after From 73ca43520ef4d5c5d4f958adab52b87c965835ea Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Mon, 8 Sep 2025 15:58:26 +0700 Subject: [PATCH 6/6] space --- .../Fixture/override_and_sensitive_parameters.php.inc | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/override_and_sensitive_parameters.php.inc b/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/override_and_sensitive_parameters.php.inc index 2891dd77..9636c1b7 100644 --- a/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/override_and_sensitive_parameters.php.inc +++ b/rules-tests/DowngradePhp80/Rector/Class_/DowngradeAttributeToAnnotationRector/Fixture/override_and_sensitive_parameters.php.inc @@ -23,13 +23,12 @@ final class OverrideAndSensitiveParameter extends Foo isTrue($param)) { return 5;