Changelog
Cherrycake adheres to Semantic Versioning, meaning version numbers match the <Major>
.
<Minor>
.
<Patch>
syntax:
Major version numbers change when there are changes that are incompatible with earlier major versions. For example: A Cherrycake application using major version
0
will need to be heavily modified in order to work with version1
.Minor version numbers change when there are new functionalities or improvements that are compatible with earlier minor versions. For example: A Cherrycake application using version
0.3.x
will work without much changes or no changes at all when upgraded to Cherrycake version0.4.x
.Path version numbers change when there are updates that solve bugs in a completely backwards compatibility fashion. For example: A Cherrycake application using version
0.3.4
will work without any changes at all when upgraded to0.3.5
.
Version 2.0.0b
A major upgrade to take advantage of PHP 8 improvements like named arguments, and constructor properties promotion, makes the code easier to read and maintain, and provides self documenting benefits.
This version also replaces the multilingual text methodology in spite of a newer approach based on auto-generated translation TOML files that makes it a lot easier to create multilingual applications.
This version breaks compatibility with older versions, see the Migration section for a guide on how to migrate your existing Cherrycake version 1.x application to version 2.x.
Changed
Upgrade to PHP 8.
Multi-language texts are managed by the easier to use new Translation module instead of the Locale module. The Locale module is still used for all other localization needs.
Version 1.0.0b
A major upgrade released on 2021-05-29, mainly based around leveraging class discovery to composer, and better organizing the code into namespaces and subnamespaces. UI Components are entirely removed after being considered as an obsolete UI architecture, and re-formulating Cherrycake's scope to not impose any UI-specific architecture. See the Migration section for a guide on how to migrate your existing Cherrycake version 0.x application to version 1.x.
Changed
Composer-based autoloading system, a standard class and module autloading mechanism that simplifies overall structure for Cherrycake apps.
Core modules are now stored in /src//.php
Core classes are now stored in /src/.php
App module are now stored in /src//.php by default
App classes are now stored in /src/.php by default
Modules are now set in their own subnamespace inside the
Cherrycake
namespace. For example, theActions
module now resides in the\Cherrycake\Actions
namespace and theOutput
module now resides in the\Cherrycake\Output
namespace.Because modules now reside in their own subnamespace, classes related to specific modules also reside now in the matching subnamespace. For example, the
Action
,ActionHtml
,Request
,RequestPathComponent
and alike all now reside in the\Cherrycake\Actions
namespace.Class and module files must now have
.php
extension instead of.class.php
Module configuration files are now autodetected, so
isConfigFile
property for modules is no longer needed.Janitor tasks configuration files are now autodetected, so
isConfigFile
property is no longer needed.Global constants are declared in
/constants.php
.Autoloading of classes is now handled via composer, so you need to add this to your
composer.json
file:
Removed
UIComponents are no longer part of Cherrycake because they were based on an obsolete web design standard, in favor of modern web UI techniques.
Last updated