Ce package étend Grumphp avec une tâche qui exécute RectorPHP pour vos projets Laravel ou toute application PHP.
Notez que nous avons ajouté l'option --dry-run , donc le code source n'a jamais changé.
La façon la plus simple d'installer ce package est le compositeur:
composer require --dev palpalani/grumphp-rector-task
Ajoutez le chargeur d'extension à votre grumphp.yml ou grumphp.yml.dist . La tâche vit sous l'espace de noms rector et a des paramètres configurables suivants:
# grumphp.yml
grumphp :
tasks :
rector :
whitelist_patterns : []
config : ' rector.php '
triggered_by : ['php']
clear-cache : false
ignore_patterns : []
no-progress-bar : false
files_on_pre_commit : false
paths : []
no_diffs : false
extensions :
- palPalaniGrumPhpRectorTaskExtensionLoaderPar défaut, cela ne metra pas à jour votre code, vous devez le faire manuellement.
Default: []
Si vous souhaitez exécuter uniquement des répertoires particuliers, spécifiez-le avec cette option.
Default: 'rector.php'
Si vous souhaitez utiliser un fichier de configuration différent de celui de rector.php par défaut, vous pouvez spécifier votre emplacement de fichier de configuration personnalisé avec cette option.
Default: [php]
Cette option spécifiera quelles extensions de fichiers déclenchera cette tâche.
Default: false
Effacer le cache pour les fichiers déjà vérifiés.
Default: false
Masquer la barre de progression. EG utile pour une plus belle sortie CI.
Default: false
Cette option permet d'utiliser les fichiers modifiés sous forme de chemins pendant les pré-comité. Il utilisera l'option Chemins pour s'assurer que seuls les fichiers engagés qui correspondent au chemin sont validés.
Default: false
Créez rector.php dans la racine de votre projet et configurez comme suit. Cet exemple de fichier IAM en utilisant mon projet Laravel, mais vous pouvez utiliser la bibliothèque avec n'importe quel projet PHP. Vous n'avez pas non plus besoin de définir tous ces paramètres, veuillez ajouter ou supprimer selon vos besoins.
<?php
declare (strict_types= 1 );
use Rector Core Configuration Option ;
use Rector Set ValueObject SetList ;
use Rector CodeQuality Rector If_ SimplifyIfReturnBoolRector ;
use Rector Config RectorConfig ;
use Rector Php74 Rector Property TypedPropertyRector ;
use Rector CodeQuality Rector Isset_ IssetOnPropertyObjectToPropertyExistsRector ;
return static function ( RectorConfig $ rectorConfig ): void {
$ rectorConfig -> parallel ();
$ rectorConfig -> paths ([
__DIR__ . ' /app ' ,
__DIR__ . ' /config ' ,
__DIR__ . ' /database ' ,
__DIR__ . ' /tests '
__DIR__ . ' /routes ' ,
]);
$ rectorConfig -> skip ([
IssetOnPropertyObjectToPropertyExistsRector::class,
__DIR__ . ' /app/Http/Middleware/* ' ,
]);
$ rectorConfig -> rules ([
ReturnTypeFromStrictBoolReturnExprRector::class,
//ReturnTypeFromStrictNativeFuncCallRector::class,
ReturnTypeFromStrictNewArrayRector::class,
ReturnTypeFromStrictScalarReturnExprRector::class,
ReturnTypeFromReturnNewRector::class,
]);
$ rectorConfig -> sets ([
SetList:: CODE_QUALITY ,
SetList:: CODING_STYLE ,
SetList:: DEAD_CODE ,
SetList:: TYPE_DECLARATION ,
SetList:: EARLY_RETURN ,
SetList:: PHP_81 ,
LevelSetList:: UP_TO_PHP_80 ,
]);
$ rectorConfig -> sets ([
LaravelSetList:: LARAVEL_CODE_QUALITY ,
LaravelSetList:: LARAVEL_90 ,
LaravelLevelSetList:: UP_TO_LARAVEL_80 ,
]);
};Veuillez visiter RectorPHP pour plus d'exemples de configuration.
Si vous souhaitez désinstaller cette extension, supprimez d'abord les fichiers de configuration: rector.php à partir de votre application.
Ensuite, supprimez le package:
composer remove palpalani/grumphp-rector-task
Veuillez consulter Changelog pour plus d'informations sur ce qui a changé récemment.
Veuillez consulter la contribution pour plus de détails.
Veuillez consulter notre politique de sécurité sur la façon de signaler les vulnérabilités de sécurité.
Nous utilisons Semver pour le versioning. Pour les versions disponibles, consultez les balises de ce référentiel.
La licence MIT (MIT). Veuillez consulter le fichier de licence pour plus d'informations.