Skip to content

Commit

Permalink
Run CI against PHP 8.2
Browse files Browse the repository at this point in the history
  • Loading branch information
u01jmg3 committed Aug 11, 2023
1 parent f39fc79 commit 6628d90
Show file tree
Hide file tree
Showing 3 changed files with 92 additions and 103 deletions.
12 changes: 6 additions & 6 deletions .github/workflows/coding-standards.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,23 +45,23 @@ jobs:
- name: Install additional dependencies
run: |
composer config allow-plugins.bamarni/composer-bin-plugin true --no-plugins
composer require bamarni/composer-bin-plugin rector/rector:0.14.6 squizlabs/php_codesniffer --dev --quiet --no-scripts
composer require bamarni/composer-bin-plugin rector/rector squizlabs/php_codesniffer --dev --quiet --no-scripts
composer bin easy-coding-standard config allow-plugins.dealerdirect/phpcodesniffer-composer-installer true
composer bin easy-coding-standard require symplify/easy-coding-standard slevomat/coding-standard --dev --quiet --no-scripts
if: matrix.php == 7.4
if: matrix.php == 8.2

- name: Execute PHPCodeSniffer
run: vendor/bin/phpcs -n -s --standard=psr12 src
if: matrix.php == 7.4
if: matrix.php == 8.2

- name: Execute Rector
run: vendor/bin/rector process src --dry-run
if: matrix.php == 7.4
if: matrix.php == 8.2

- name: Execute ECS
run: vendor/bin/ecs check .
if: matrix.php == 7.4
if: matrix.php == 8.2

- name: Execute PHPStan
run: vendor/bin/phpstan analyse src
if: matrix.php == 7.4
if: matrix.php == 8.2
145 changes: 67 additions & 78 deletions rector.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
declare(strict_types=1);

use Rector\Config\RectorConfig;
use Rector\Core\Configuration\Option;
use Rector\Core\ValueObject\PhpVersion;
use Rector\Php53\Rector\Ternary\TernaryToElvisRector;
use Rector\Set\ValueObject\SetList;
Expand All @@ -13,85 +12,75 @@
return static function (RectorConfig $rectorConfig): void {
$rectorConfig->disableParallel();

$parameters = $rectorConfig->parameters();
$rectorConfig->importShortClasses(false);

$parameters->set(Option::IMPORT_SHORT_CLASSES, false);
$rectorConfig->phpVersion(PhpVersion::PHP_56);

$parameters->set(Option::PHP_VERSION_FEATURES, PhpVersion::PHP_56);
$rectorConfig->skip(
array(
Rector\CodeQuality\Rector\Class_\CompleteDynamicPropertiesRector::class,
Rector\CodeQuality\Rector\Concat\JoinStringConcatRector::class,
Rector\CodeQuality\Rector\FuncCall\ChangeArrayPushToArrayAssignRector::class,
Rector\CodeQuality\Rector\FuncCall\CompactToVariablesRector::class,
Rector\CodeQuality\Rector\FuncCall\InlineIsAInstanceOfRector::class,
Rector\CodeQuality\Rector\FuncCall\IntvalToTypeCastRector::class,
Rector\CodeQuality\Rector\FunctionLike\SimplifyUselessVariableRector::class,
Rector\CodeQuality\Rector\Identical\BooleanNotIdenticalToNotIdenticalRector::class,
Rector\CodeQuality\Rector\Identical\SimplifyBoolIdenticalTrueRector::class,
Rector\CodeQuality\Rector\If_\CombineIfRector::class,
Rector\CodeQuality\Rector\If_\ExplicitBoolCompareRector::class,
Rector\CodeQuality\Rector\If_\SimplifyIfElseToTernaryRector::class,
Rector\CodeQuality\Rector\If_\SimplifyIfReturnBoolRector::class,
Rector\CodeQuality\Rector\Isset_\IssetOnPropertyObjectToPropertyExistsRector::class,
Rector\CodingStyle\Rector\ClassMethod\UnSpreadOperatorRector::class,
Rector\CodingStyle\Rector\Closure\StaticClosureRector::class,
Rector\CodingStyle\Rector\Encapsed\EncapsedStringsToSprintfRector::class,
Rector\CodingStyle\Rector\PostInc\PostIncDecToPreIncDecRector::class,
Rector\CodingStyle\Rector\Stmt\NewlineAfterStatementRector::class,
Rector\CodingStyle\Rector\String_\SymplifyQuoteEscapeRector::class,
Rector\DeadCode\Rector\Assign\RemoveUnusedVariableAssignRector::class,
Rector\DeadCode\Rector\ClassMethod\RemoveUnusedPromotedPropertyRector::class,
Rector\DeadCode\Rector\ClassMethod\RemoveUselessParamTagRector::class,
Rector\DeadCode\Rector\ClassMethod\RemoveUselessReturnTagRector::class,
Rector\DeadCode\Rector\StaticCall\RemoveParentCallWithoutParentRector::class,
Rector\Php70\Rector\MethodCall\ThisCallOnStaticMethodToStaticCallRector::class,
Rector\Php70\Rector\StaticCall\StaticCallOnNonStaticToInstanceCallRector::class,
Rector\Php71\Rector\FuncCall\CountOnNullRector::class,
Rector\Php73\Rector\FuncCall\JsonThrowOnErrorRector::class,
Rector\Php74\Rector\Closure\ClosureToArrowFunctionRector::class,
Rector\Transform\Rector\String_\StringToClassConstantRector::class,
// PHP 5.6 incompatible
Rector\CodeQuality\Rector\Ternary\ArrayKeyExistsTernaryThenValueToCoalescingRector::class, // PHP 7
Rector\Php70\Rector\If_\IfToSpaceshipRector::class,
Rector\Php70\Rector\Ternary\TernaryToSpaceshipRector::class,
Rector\Php71\Rector\BooleanOr\IsIterableRector::class,
Rector\Php71\Rector\List_\ListToArrayDestructRector::class,
Rector\Php71\Rector\TryCatch\MultiExceptionCatchRector::class,
Rector\Php73\Rector\FuncCall\ArrayKeyFirstLastRector::class,
Rector\Php73\Rector\BooleanOr\IsCountableRector::class,
Rector\Php74\Rector\Assign\NullCoalescingOperatorRector::class,
Rector\Php74\Rector\FuncCall\ArraySpreadInsteadOfArrayMergeRector::class,
Rector\Php74\Rector\LNumber\AddLiteralSeparatorToNumberRector::class,
Rector\Php74\Rector\StaticCall\ExportToReflectionFunctionRector::class,
Rector\CodingStyle\Rector\ClassConst\RemoveFinalFromConstRector::class, // PHP 8
)
);

$parameters->set(Option::AUTOLOAD_PATHS, array(__DIR__ . '/vendor/autoload.php'));
$rectorConfig->sets(
array(
SetList::CODE_QUALITY,
SetList::CODING_STYLE,
SetList::DEAD_CODE,
SetList::PHP_70,
SetList::PHP_71,
SetList::PHP_72,
SetList::PHP_73,
SetList::PHP_74,
SetList::PHP_80,
SetList::PHP_81,
SetList::PHP_82,
)
);

$parameters->set(Option::SKIP, array(
// Rectors
Rector\CodeQuality\Rector\Class_\CompleteDynamicPropertiesRector::class,
Rector\CodeQuality\Rector\Concat\JoinStringConcatRector::class,
Rector\CodeQuality\Rector\FuncCall\ChangeArrayPushToArrayAssignRector::class,
Rector\CodeQuality\Rector\FuncCall\CompactToVariablesRector::class,
Rector\CodeQuality\Rector\FuncCall\IntvalToTypeCastRector::class,
Rector\CodeQuality\Rector\Identical\BooleanNotIdenticalToNotIdenticalRector::class,
Rector\CodeQuality\Rector\Identical\SimplifyBoolIdenticalTrueRector::class,
Rector\CodeQuality\Rector\If_\CombineIfRector::class,
Rector\CodeQuality\Rector\If_\ExplicitBoolCompareRector::class,
Rector\CodeQuality\Rector\If_\SimplifyIfElseToTernaryRector::class,
Rector\CodeQuality\Rector\If_\SimplifyIfReturnBoolRector::class,
Rector\CodeQuality\Rector\Isset_\IssetOnPropertyObjectToPropertyExistsRector::class,
Rector\CodeQuality\Rector\PropertyFetch\ExplicitMethodCallOverMagicGetSetRector::class,
Rector\CodeQuality\Rector\FunctionLike\SimplifyUselessLastVariableAssignRector::class,
Rector\CodeQuality\Rector\FunctionLike\SimplifyUselessVariableRector::class,
Rector\CodingStyle\Rector\ClassConst\VarConstantCommentRector::class,
Rector\CodingStyle\Rector\Encapsed\EncapsedStringsToSprintfRector::class,
Rector\CodingStyle\Rector\FuncCall\ConsistentPregDelimiterRector::class,
Rector\CodingStyle\Rector\String_\SymplifyQuoteEscapeRector::class,
Rector\DeadCode\Rector\Assign\RemoveUnusedVariableAssignRector::class,
Rector\Php70\Rector\FuncCall\NonVariableToVariableOnFunctionCallRector::class,
Rector\Php70\Rector\MethodCall\ThisCallOnStaticMethodToStaticCallRector::class,
Rector\Php70\Rector\StaticCall\StaticCallOnNonStaticToInstanceCallRector::class,
Rector\Php71\Rector\FuncCall\CountOnNullRector::class,
Rector\Php73\Rector\FuncCall\JsonThrowOnErrorRector::class,
Rector\Php74\Rector\Closure\ClosureToArrowFunctionRector::class,
Rector\Php74\Rector\Property\TypedPropertyRector::class,
Rector\TypeDeclaration\Rector\FunctionLike\ParamTypeDeclarationRector::class,
Rector\CodingStyle\Rector\ClassMethod\UnSpreadOperatorRector::class,
Rector\CodingStyle\Rector\PostInc\PostIncDecToPreIncDecRector::class,
Rector\DeadCode\Rector\ClassMethod\RemoveUselessParamTagRector::class,
Rector\DeadCode\Rector\ClassMethod\RemoveUnusedPromotedPropertyRector::class,
Rector\CodingStyle\Rector\Stmt\NewlineAfterStatementRector::class,
Rector\DeadCode\Rector\StaticCall\RemoveParentCallWithoutParentRector::class,
Rector\Transform\Rector\String_\StringToClassConstantRector::class,
Rector\CodeQuality\Rector\FuncCall\InlineIsAInstanceOfRector::class,
Rector\CodingStyle\Rector\Closure\StaticClosureRector::class,
Rector\DeadCode\Rector\ClassMethod\RemoveUselessReturnTagRector::class,
Rector\CodeQuality\Rector\ClassMethod\ReturnTypeFromStrictScalarReturnExprRector::class,
// PHP 5.6 incompatible
Rector\CodeQuality\Rector\Ternary\ArrayKeyExistsTernaryThenValueToCoalescingRector::class, // PHP 7
Rector\Php70\Rector\If_\IfToSpaceshipRector::class,
Rector\Php70\Rector\Ternary\TernaryToSpaceshipRector::class,
Rector\Php71\Rector\BooleanOr\IsIterableRector::class,
Rector\Php71\Rector\List_\ListToArrayDestructRector::class,
Rector\Php71\Rector\TryCatch\MultiExceptionCatchRector::class,
Rector\Php73\Rector\FuncCall\ArrayKeyFirstLastRector::class,
Rector\Php73\Rector\BooleanOr\IsCountableRector::class,
Rector\Php74\Rector\Assign\NullCoalescingOperatorRector::class,
Rector\Php74\Rector\FuncCall\ArraySpreadInsteadOfArrayMergeRector::class,
Rector\Php74\Rector\LNumber\AddLiteralSeparatorToNumberRector::class,
Rector\Php74\Rector\MethodCall\ChangeReflectionTypeToStringToGetNameRector::class,
Rector\Php74\Rector\StaticCall\ExportToReflectionFunctionRector::class,
Rector\CodingStyle\Rector\ClassConst\RemoveFinalFromConstRector::class, // PHP 8
));

$rectorConfig->import(SetList::CODE_QUALITY);
$rectorConfig->import(SetList::CODING_STYLE);
$rectorConfig->import(SetList::DEAD_CODE);
$rectorConfig->import(SetList::PHP_70);
$rectorConfig->import(SetList::PHP_71);
$rectorConfig->import(SetList::PHP_72);
$rectorConfig->import(SetList::PHP_73);
$rectorConfig->import(SetList::PHP_74);
$rectorConfig->import(SetList::PHP_80);
$rectorConfig->import(SetList::PHP_81);
$rectorConfig->import(SetList::PHP_82);

$services = $rectorConfig->services();

$services->set(TernaryToElvisRector::class);
$rectorConfig->rule(TernaryToElvisRector::class);
};
Loading

0 comments on commit 6628d90

Please sign in to comment.