Este pacote estende o Grumphp com uma tarefa que executa o Rectorphp para seus projetos de Laravel ou qualquer aplicativo PHP.
Observe que adicionamos --dry-run , para que o código-fonte nunca mudasse.
A maneira mais fácil de instalar este pacote é através do compositor:
composer require --dev palpalani/grumphp-rector-task
Adicione o carregador de extensão ao seu grumphp.yml ou grumphp.yml.dist . A tarefa vive no espaço de nome rector e possui os seguintes parâmetros configuráveis:
# 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 :
- palPalaniGrumPhpRectorTaskExtensionLoaderPor padrão, isso não atualizará seu código, você precisa fazê -lo manualmente.
Default: []
Se você deseja executar apenas em diretórios específicos, especifique -o com esta opção.
Default: 'rector.php'
Se você deseja usar um arquivo de configuração diferente do rector.php padrão, poderá especificar o local do arquivo de configuração personalizado com esta opção.
Default: [php]
Esta opção especificará quais extensões de arquivo acionarão esta tarefa.
Default: false
Limpe o cache para arquivos já verificados.
Default: false
Ocultar a barra de progresso. Útil, por exemplo, para saída de IC mais agradável.
Default: false
Esta opção possibilita o uso dos arquivos alterados como caminhos durante os pré-compromissos. Ele usará a opção Caminhos para garantir que apenas arquivos comprometidos que correspondam ao caminho sejam validados.
Default: false
Crie rector.php na raiz do seu projeto e configure o seguinte. Este exemplo de arquivo está usando para o meu projeto Laravel, mas você pode usar a biblioteca com qualquer projeto PHP. Além disso, você não precisa definir todas essas configurações, adicione ou remova conforme seus requisitos.
<?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 ,
]);
};Visite Rectorphp para obter mais exemplos de configuração.
Se você deseja desinstalar esta extensão Remova os arquivos de configuração primeiro: rector.php do seu aplicativo.
Em seguida, remova o pacote:
composer remove palpalani/grumphp-rector-task
Consulte Changelog para obter mais informações sobre o que mudou recentemente.
Por favor, consulte a contribuição para obter detalhes.
Revise nossa política de segurança sobre como relatar vulnerabilidades de segurança.
Usamos o Semver para versões. Para as versões disponíveis, consulte as tags neste repositório.
A licença do MIT (MIT). Consulte o arquivo de licença para obter mais informações.