diff --git a/README.md b/README.md index 74db7f7a8..8e52d930c 100644 --- a/README.md +++ b/README.md @@ -4,11 +4,29 @@ Unfortunately branch 2.x in original repository was taken down. -## Why I created this fork? 🤔 +## Why I created this fork? 🤔 -CakePHP 2 stopped getting updates in the end of 2019 (AFAIR). Unfortunately in my case it's too expensive to migrate to newer versions of CakePHP. I started migrating to Symfony framework but I still use ORM from CakePHP (and actually I like it). So in order to keep up with newest PHP versions I decided to create fork of the framework. +CakePHP 2 stopped getting updates in the end of 2019 (AFAIR). Unfortunately in my case it's too expensive to migrate to newer versions of CakePHP. I started migrating to Symfony framework, but I still use ORM from CakePHP (and actually I like it). So in order to keep up with the newest PHP versions I decided to create fork of the framework. -## ⚠️ Before using this fork ⚠️ +## Why you should NOT use? ⛔ + +- Intention of this fork is to support PHP 8.*. Fork is not going to receive new features. Instead, fork is going to get minimal set of patches to comply with newer versions of PHP. +- If for example you're still on 5.6 or 7.0, you should **not** use this fork. Original `cakephp/cakephp` works perfectly fine on all PHP 7.* versions. You should migrate to newer versions of PHP and keep using original code. Once your application is battle tested on production I suggest migrating to PHP 8. + +## When you could use this fork? ✅ + +Only prerequisite is to have your application already on PHP 7.4. Upgrade project to PHP 8.0 and replace CakePHP with this fork. + +### Migration + +Here are steps I took to migrate my project through all versions to PHP 8.1, maybe it can inspire you: + +1. Decouple your tests from `CakeTestCase` and other utilities that are coupled to old PHPUnit version. +2. Once decoupled you can upgrade PHPUnit to the newest version accordingly to your PHP version. +3. Start upgrading gradually to newer versions of PHP. CakePHP 2 works perfectly fine on 7.0 - 7.4. +4. Once you're on 7.4 you can switch to 8 and this fork. + +## Before using this fork ⚠️ - Tests of CakePHP framework aren't refactored yet to support PHP 8. Main issue is old version of PHPUnit that is tightly coupled to framework's tests. Issue for fixing this situation is here: https://github.com/kamilwylegala/cakephp2-php8/issues/7 - Due to lack of tests ☝️ - **you need to rely** on tests in your application after integrating with this fork. @@ -37,6 +55,10 @@ It means that composer will look at `master` branch of repository configured und ## Changelog +### 2022-01-15 + +- Readme file update - more explicit content. + ### 2022-01-04 - Fixed more deprecation notices