Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bump to PHP 8.2 code #259

Merged
merged 1 commit into from
Feb 9, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 8 additions & 27 deletions rector.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,37 +4,18 @@

use Rector\Config\RectorConfig;
use Rector\Php55\Rector\String_\StringClassNameToClassConstantRector;
use Rector\PHPUnit\Set\PHPUnitSetList;
use Rector\Set\ValueObject\LevelSetList;
use Rector\Set\ValueObject\SetList;

return static function (RectorConfig $rectorConfig): void {
$rectorConfig->importNames();
$rectorConfig->removeUnusedImports();
$rectorConfig->paths([__DIR__ . '/src', __DIR__ . '/rules', __DIR__ . '/tests']);

$rectorConfig->skip([
// for tests
'*/Source/*',
'*/Fixture/*',
]);

$rectorConfig->sets([
LevelSetList::UP_TO_PHP_81,
PHPUnitSetList::PHPUNIT_100,
SetList::DEAD_CODE,
SetList::CODE_QUALITY,
SetList::CODING_STYLE,
SetList::NAMING,
SetList::TYPE_DECLARATION,
SetList::PRIVATIZATION,
]);

$rectorConfig->ruleWithConfiguration(StringClassNameToClassConstantRector::class, [
return RectorConfig::configure()
->withImportNames(removeUnusedImports: true)
->withPaths([__DIR__ . '/src', __DIR__ . '/rules', __DIR__ . '/tests'])
->withSkip(['*/Source/*', '*/Fixture/*'])
->withRootFiles()
->withPhpSets()
->withPreparedSets(deadCode: true, codeQuality: true, codingStyle: true, naming: true, typeDeclarations: true, privatization: true)
->withConfiguredRule(StringClassNameToClassConstantRector::class, [
'Doctrine\*',
'Gedmo\*',
'Knp\*',
'DateTime',
'DateTimeInterface',
]);
};
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,10 @@
use Rector\Doctrine\CodeQuality\NodeFactory\ArrayItemNodeFactory;
use Rector\Doctrine\CodeQuality\ValueObject\EntityMapping;

final class InheritanceClassAnnotationTransformer implements ClassAnnotationTransformerInterface
final readonly class InheritanceClassAnnotationTransformer implements ClassAnnotationTransformerInterface
{
public function __construct(
private readonly ArrayItemNodeFactory $arrayItemNodeFactory,
private ArrayItemNodeFactory $arrayItemNodeFactory,
) {
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@
use Rector\Doctrine\CodeQuality\NodeFactory\ArrayItemNodeFactory;
use Rector\Doctrine\CodeQuality\ValueObject\EntityMapping;

final class ColumnAnnotationTransformer implements PropertyAnnotationTransformerInterface
final readonly class ColumnAnnotationTransformer implements PropertyAnnotationTransformerInterface
{
public function __construct(
private readonly ArrayItemNodeFactory $arrayItemNodeFactory
private ArrayItemNodeFactory $arrayItemNodeFactory
) {
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@
use Rector\Doctrine\CodeQuality\NodeFactory\ArrayItemNodeFactory;
use Rector\Doctrine\CodeQuality\ValueObject\EntityMapping;

final class EmbeddedPropertyAnnotationTransformer implements PropertyAnnotationTransformerInterface
final readonly class EmbeddedPropertyAnnotationTransformer implements PropertyAnnotationTransformerInterface
{
public function __construct(
private readonly ArrayItemNodeFactory $arrayItemNodeFactory
private ArrayItemNodeFactory $arrayItemNodeFactory
) {
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@
use Rector\Doctrine\CodeQuality\NodeFactory\ArrayItemNodeFactory;
use Rector\Doctrine\CodeQuality\ValueObject\EntityMapping;

final class GedmoTimestampableAnnotationTransformer implements PropertyAnnotationTransformerInterface
final readonly class GedmoTimestampableAnnotationTransformer implements PropertyAnnotationTransformerInterface
{
public function __construct(
private readonly ArrayItemNodeFactory $arrayItemNodeFactory
private ArrayItemNodeFactory $arrayItemNodeFactory
) {
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@
use Rector\Doctrine\CodeQuality\NodeFactory\ArrayItemNodeFactory;
use Rector\Doctrine\CodeQuality\ValueObject\EntityMapping;

final class IdGeneratorAnnotationTransformer implements PropertyAnnotationTransformerInterface
final readonly class IdGeneratorAnnotationTransformer implements PropertyAnnotationTransformerInterface
{
public function __construct(
private readonly ArrayItemNodeFactory $arrayItemNodeFactory
private ArrayItemNodeFactory $arrayItemNodeFactory
) {
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@
use Rector\Doctrine\CodeQuality\NodeFactory\ArrayItemNodeFactory;
use Rector\Doctrine\CodeQuality\ValueObject\EntityMapping;

final class ManyToOneAnnotationTransformer implements PropertyAnnotationTransformerInterface
final readonly class ManyToOneAnnotationTransformer implements PropertyAnnotationTransformerInterface
{
public function __construct(
private readonly ArrayItemNodeFactory $arrayItemNodeFactory
private ArrayItemNodeFactory $arrayItemNodeFactory
) {
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@
use Rector\Doctrine\CodeQuality\NodeFactory\ArrayItemNodeFactory;
use Rector\Doctrine\CodeQuality\ValueObject\EntityMapping;

final class OneToManyAnnotationTransformer implements PropertyAnnotationTransformerInterface
final readonly class OneToManyAnnotationTransformer implements PropertyAnnotationTransformerInterface
{
public function __construct(
private readonly ArrayItemNodeFactory $arrayItemNodeFactory
private ArrayItemNodeFactory $arrayItemNodeFactory
) {
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,17 +11,17 @@
use Rector\Doctrine\CodeQuality\Contract\PropertyAnnotationTransformerInterface;
use Rector\Doctrine\CodeQuality\ValueObject\EntityMapping;

final class YamlToAnnotationTransformer
final readonly class YamlToAnnotationTransformer
{
/**
* @param ClassAnnotationTransformerInterface[] $classAnnotationTransformers
* @param PropertyAnnotationTransformerInterface[] $propertyAnnotationTransformers
*/
public function __construct(
private readonly iterable $classAnnotationTransformers,
private readonly iterable $propertyAnnotationTransformers,
private readonly PhpDocInfoFactory $phpDocInfoFactory,
private readonly DocBlockUpdater $docBlockUpdater,
private iterable $classAnnotationTransformers,
private iterable $propertyAnnotationTransformers,
private PhpDocInfoFactory $phpDocInfoFactory,
private DocBlockUpdater $docBlockUpdater,
) {
}

Expand Down
4 changes: 2 additions & 2 deletions src/NodeAnalyzer/AttributeFinder.php
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,10 @@
/**
* @api
*/
final class AttributeFinder
final readonly class AttributeFinder
{
public function __construct(
private readonly NodeNameResolver $nodeNameResolver,
private NodeNameResolver $nodeNameResolver,
) {
}

Expand Down
6 changes: 3 additions & 3 deletions src/NodeAnalyzer/AttrinationFinder.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,11 @@
/**
* @api
*/
final class AttrinationFinder
final readonly class AttrinationFinder
{
public function __construct(
private readonly PhpDocInfoFactory $phpDocInfoFactory,
private readonly AttributeFinder $attributeFinder,
private PhpDocInfoFactory $phpDocInfoFactory,
private AttributeFinder $attributeFinder,
) {
}

Expand Down
8 changes: 4 additions & 4 deletions src/NodeAnalyzer/ConstructorAssignPropertyAnalyzer.php
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,12 @@
use Rector\PhpParser\Node\BetterNodeFinder;
use Rector\ValueObject\MethodName;

final class ConstructorAssignPropertyAnalyzer
final readonly class ConstructorAssignPropertyAnalyzer
{
public function __construct(
private readonly BetterNodeFinder $betterNodeFinder,
private readonly NodeNameResolver $nodeNameResolver,
private readonly PropertyFetchAnalyzer $propertyFetchAnalyzer
private BetterNodeFinder $betterNodeFinder,
private NodeNameResolver $nodeNameResolver,
private PropertyFetchAnalyzer $propertyFetchAnalyzer
) {
}

Expand Down
6 changes: 3 additions & 3 deletions src/NodeAnalyzer/DoctrineEntityDetector.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,11 @@
use PHPStan\Reflection\ReflectionProvider;
use Rector\NodeAnalyzer\DoctrineEntityAnalyzer;

final class DoctrineEntityDetector
final readonly class DoctrineEntityDetector
{
public function __construct(
private readonly DoctrineEntityAnalyzer $doctrineEntityAnalyzer,
private readonly ReflectionProvider $reflectionProvider,
private DoctrineEntityAnalyzer $doctrineEntityAnalyzer,
private ReflectionProvider $reflectionProvider,
) {
}

Expand Down
6 changes: 3 additions & 3 deletions src/NodeAnalyzer/TargetEntityResolver.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@
use Rector\Exception\NotImplementedYetException;
use Rector\NodeNameResolver\NodeNameResolver;

final class TargetEntityResolver
final readonly class TargetEntityResolver
{
public function __construct(
private readonly NodeNameResolver $nodeNameResolver,
private readonly ReflectionProvider $reflectionProvider
private NodeNameResolver $nodeNameResolver,
private ReflectionProvider $reflectionProvider
) {
}

Expand Down
4 changes: 2 additions & 2 deletions src/NodeFactory/ArrayCollectionAssignFactory.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@
use PhpParser\Node\Stmt\Expression;
use Rector\PhpParser\Node\NodeFactory;

final class ArrayCollectionAssignFactory
final readonly class ArrayCollectionAssignFactory
{
public function __construct(
private readonly NodeFactory $nodeFactory,
private NodeFactory $nodeFactory,
) {
}

Expand Down
10 changes: 5 additions & 5 deletions src/NodeManipulator/ColumnPropertyTypeResolver.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
use Rector\Doctrine\NodeAnalyzer\AttributeFinder;
use Rector\NodeTypeResolver\PHPStan\Type\TypeFactory;

final class ColumnPropertyTypeResolver
final readonly class ColumnPropertyTypeResolver
{
/**
* @var string
Expand All @@ -39,10 +39,10 @@ final class ColumnPropertyTypeResolver
* @see https://www.doctrine-project.org/projects/doctrine-orm/en/2.6/reference/basic-mapping.html#doctrine-mapping-types
*/
public function __construct(
private readonly PhpDocInfoFactory $phpDocInfoFactory,
private readonly TypeFactory $typeFactory,
private readonly AttributeFinder $attributeFinder,
private readonly array $doctrineTypeToScalarType = [
private PhpDocInfoFactory $phpDocInfoFactory,
private TypeFactory $typeFactory,
private AttributeFinder $attributeFinder,
private array $doctrineTypeToScalarType = [
'tinyint' => new BooleanType(),
'boolean' => new BooleanType(),
// integers
Expand Down
6 changes: 3 additions & 3 deletions src/NodeManipulator/ConstructorManipulator.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@
use Rector\PhpParser\Node\NodeFactory;
use Rector\ValueObject\MethodName;

final class ConstructorManipulator
final readonly class ConstructorManipulator
{
public function __construct(
private readonly NodeFactory $nodeFactory,
private readonly ClassInsertManipulator $classInsertManipulator
private NodeFactory $nodeFactory,
private ClassInsertManipulator $classInsertManipulator
) {
}

Expand Down
8 changes: 4 additions & 4 deletions src/NodeManipulator/NullabilityColumnPropertyTypeResolver.php
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
use Rector\Doctrine\NodeAnalyzer\AttributeFinder;
use Rector\PhpParser\Node\Value\ValueResolver;

final class NullabilityColumnPropertyTypeResolver
final readonly class NullabilityColumnPropertyTypeResolver
{
/**
* @var string
Expand All @@ -25,9 +25,9 @@ final class NullabilityColumnPropertyTypeResolver
* @see https://www.doctrine-project.org/projects/doctrine-orm/en/2.6/reference/basic-mapping.html#doctrine-mapping-types
*/
public function __construct(
private readonly PhpDocInfoFactory $phpDocInfoFactory,
private readonly AttributeFinder $attributeFinder,
private readonly ValueResolver $valueResolver,
private PhpDocInfoFactory $phpDocInfoFactory,
private AttributeFinder $attributeFinder,
private ValueResolver $valueResolver,
) {
}

Expand Down
12 changes: 6 additions & 6 deletions src/NodeManipulator/ToManyRelationPropertyTypeResolver.php
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
use Rector\PhpParser\Node\Value\ValueResolver;
use Rector\StaticTypeMapper\ValueObject\Type\FullyQualifiedObjectType;

final class ToManyRelationPropertyTypeResolver
final readonly class ToManyRelationPropertyTypeResolver
{
/**
* @var string
Expand All @@ -33,11 +33,11 @@ final class ToManyRelationPropertyTypeResolver
];

public function __construct(
private readonly PhpDocInfoFactory $phpDocInfoFactory,
private readonly ShortClassExpander $shortClassExpander,
private readonly AttributeFinder $attributeFinder,
private readonly ValueResolver $valueResolver,
private readonly CollectionTypeFactory $collectionTypeFactory,
private PhpDocInfoFactory $phpDocInfoFactory,
private ShortClassExpander $shortClassExpander,
private AttributeFinder $attributeFinder,
private ValueResolver $valueResolver,
private CollectionTypeFactory $collectionTypeFactory,
) {
}

Expand Down
12 changes: 6 additions & 6 deletions src/NodeManipulator/ToOneRelationPropertyTypeResolver.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,19 +23,19 @@
use Rector\NodeTypeResolver\PHPStan\Type\TypeFactory;
use Rector\StaticTypeMapper\ValueObject\Type\FullyQualifiedObjectType;

final class ToOneRelationPropertyTypeResolver
final readonly class ToOneRelationPropertyTypeResolver
{
/**
* @var class-string[]
*/
private const TO_ONE_ANNOTATION_CLASSES = ['Doctrine\ORM\Mapping\ManyToOne', 'Doctrine\ORM\Mapping\OneToOne'];

public function __construct(
private readonly TypeFactory $typeFactory,
private readonly PhpDocInfoFactory $phpDocInfoFactory,
private readonly ClassAnnotationMatcher $classAnnotationMatcher,
private readonly AttributeFinder $attributeFinder,
private readonly TargetEntityResolver $targetEntityResolver,
private TypeFactory $typeFactory,
private PhpDocInfoFactory $phpDocInfoFactory,
private ClassAnnotationMatcher $classAnnotationMatcher,
private AttributeFinder $attributeFinder,
private TargetEntityResolver $targetEntityResolver,
) {
}

Expand Down
6 changes: 3 additions & 3 deletions src/PhpDoc/ShortClassExpander.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
use Rector\StaticTypeMapper\ValueObject\Type\ShortenedObjectType;
use Rector\TypeDeclaration\PHPStan\ObjectTypeSpecifier;

final class ShortClassExpander
final readonly class ShortClassExpander
{
/**
* @var string
Expand All @@ -22,8 +22,8 @@ final class ShortClassExpander
private const CLASS_CONST_REGEX = '#::class#';

public function __construct(
private readonly ReflectionProvider $reflectionProvider,
private readonly ObjectTypeSpecifier $objectTypeSpecifier
private ReflectionProvider $reflectionProvider,
private ObjectTypeSpecifier $objectTypeSpecifier
) {
}

Expand Down
4 changes: 2 additions & 2 deletions src/PhpDocParser/DoctrineDocBlockResolver.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@
use PhpParser\Node\Stmt\Class_;
use Rector\BetterPhpDocParser\PhpDocInfo\PhpDocInfoFactory;

final class DoctrineDocBlockResolver
final readonly class DoctrineDocBlockResolver
{
public function __construct(
private readonly PhpDocInfoFactory $phpDocInfoFactory
private PhpDocInfoFactory $phpDocInfoFactory
) {
}

Expand Down
Loading
Loading