Migration
Instructions on how to migrate your existing Cherrycake application from earlier versions of the Cherrycake engine.
Last updated
Was this helpful?
Instructions on how to migrate your existing Cherrycake application from earlier versions of the Cherrycake engine.
Last updated
Was this helpful?
Update your composer.json
file to require Cherrycake version 1.x instead of version 0.x:
Create the src
directory in your project and move your modules there. Remember modules still have their own subdirectory under src
. You can remove the now empty Modules
directory.
Move all your classes to the src
directory. Remember classes do not have their own subdirectory, so they reside on the root of src
. You can remove the now empty Classes
directory.
Rename all your modules and class files so they end with .php
instead of .class.php
. For example: MyModule.php
instead of MyModule.class.php
.
Assign all your modules to their own namespace by modifying or adding a namespace
directive at the top of the file. For example, if your module is called MyModule
, you should add this at the top of src/MyModule/MyModule.php
:
Remember also to correctly namespace the class your modules extend from. For example, instead of your module being declared like this:
declare it like this instead:
Assign all your classes the right namespace. If they're classes related to a module, move them to the related module's directory and add the matching namespace. For example, if your class is called ClassForMyModule
and is related to a module called MyModule
, move it to src/MyModule
and add this at the top of src/MyModule/ClassForMyModule.php
:
You'll need to change how you reference Cherrycake's core modules and classes throughout your code. For example, the following code:
Should be changed to this:
Autoloading of classes is now handled via composer, so you need to add this to your composer.json
file:
Update composer's autoload by running the command:
See the documentation at and the examples at to see examples using this new namespacing.