mirror of
https://github.com/rectorphp/rector.git
synced 2025-01-17 21:38:22 +01:00
Rector - Reconstruct your Legacy Code to Modern Codebase
This tool will upgrade your application for you.
All Reconstructors
At the moment these packages are supported:
Install
composer require rector/rector --dev
Use (WIP)
vendor/bin/rector reconstruct src --level=nette24
vendor/bin/rector reconstruct src --level=symfony40
6 Steps to Add New Rector
Just extend Rector\Rector\AbstractRector
.
It will prepare 2 methods processing the node.
public function isCandidate(Node $node): bool
{
}
public function refactor(Node $node): ?Node
{
}
- Put it under
namespace Rector\Contrib\<set>;
namespace
<?php declare(strict_types=1);
namespace Rector\Contrib\Symfony;
use Rector\Rector\AbstractRector;
final class MyRector extends AbstractRector
{
// ...
}
-
Add a Test Case
-
Add to specific level, e.g.
/src/config/level/nette/nette24.yml
-
Submit PR
-
👍
How to Contribute
Just follow 3 rules:
-
1 feature per pull-request
-
New feature needs tests
-
Tests, coding standard and PHPStan checks must pass
composer all
Don you need to fix coding standards? Run:
composer fix-cs
We would be happy to merge your feature then.
Description
Languages
PHP
99.9%