Dropping Docker in Favor of Composer Install for Better Developer Experience

Some developers see Docker as default-to-use for Rector. Yet they struggle to run it successfully with fundamental changes like renaming class from underscore to namespace.

It's very frustrating for them, and they often end-up up deleting the tool with a bad feeling inside.

This cannot happen.

The core team around Rector is not using Docker for running because there is no need for it. The current Docker version is naturally obsolete and lacking behind PHP code development.

Use Rector like PHPUnit

With downgrades and prefixed release repository, Rector can be easily installed on any project:

composer require rector/rector --dev

Rector can save you hundreds of hours on automated refactoring and instant upgrades. But the main added features are in the long-term feedback and everyday work it resolves for you. With new rules and sets, you should never upgrade manually ever again. How?

The same way PHPUnit checks your tests in CI, the same way Rector works in CI for you.


If the PHP version is the limit, Docker will not help as Rector requires PHP 7.1 to run. There is PHP 5.6 sponsorware program for projects who want to make it happen.


Saying that, we're dropping Docker from native Rector support. Do you want to keep Docker for Rector alive? See the issue to propose community maintenance.


We believe this choice will radically improve experience for first time users and embrace focus on single codebase to make it strong and reliable.


Thank you and happy coding!