A standalone tool to automate code migrations between CakePHP framework versions and related libraries.
CakePHP Upgrade is a standalone command-line tool that automates code migrations when upgrading between different versions of the CakePHP framework. It uses Rector PHP to apply version-specific refactoring rules, handling deprecations and API changes required for framework upgrades. The tool also supports upgrading related libraries like Chronos and Migrations.
CakePHP developers and teams maintaining applications who need to migrate between CakePHP major or minor versions (e.g., from 4.x to 5.x) or upgrade associated libraries.
It significantly reduces the manual effort and potential errors involved in framework upgrades by automating repetitive code transformations, providing a reliable and consistent upgrade path backed by official CakePHP tooling.
Upgrade tools for CakePHP meant to facilitate migrating from one version of the framework to another
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides targeted rulesets for precise upgrades like cakephp44 or cakephp50, ensuring transformations align with deprecations and API changes documented by CakePHP.
Leverages Rector PHP to automatically refactor code, reducing manual effort and minimizing human error during repetitive upgrade tasks.
Includes rules for upgrading related libraries such as Chronos 3.x and Migrations 4.5/5.0, addressing common dependencies beyond the core framework.
Allows applying upgrades to specific directories like src or tests, optimizing performance and memory usage as advised in the README to avoid failures.
The README explicitly warns against pointing the tool to the root directory to prevent memory failures, indicating scalability issues with large or monolithic codebases.
Effectiveness is reduced without typehints or parameter annotations, as Rector cannot infer types, requiring prior code cleanup for optimal results.
Focuses on upgrades from CakePHP 3.x onwards, with no mention of support for older versions like 2.x, leaving gaps for legacy project migrations.