CleverStyle Framework v1.88.4 Release Notes

  • ๐Ÿš€ Major change in this release happening to routing. \cs\Route class introduced and now covers all routing functionality instead of having part of it in \cs\Config and \cs\Index classes. Though, complete backward compatibility is present and will be kept until 2.0.

    ๐Ÿš€ This is the last or pre-last release before 2.0, be sure to keep your components up to date for easy and smooth upgrade to next major release!

    ๐Ÿ†• New components:

    • None

    ๐Ÿ†• New features:

    • Planned transition to Controller-based routing in System module
    • โšก๏ธ Big amount of code duplication removed using new generic methods for packages installation, updating and removal
    • ๐Ÿ†• New events:
      • System/Route/pre_routing_replace
      • System/Route/routing_replace

    โšก๏ธ Updates:

    • ๐Ÿ†• New upstream version of TinyMCE:
      • new plugin colorpicker now included
      • table styling since now will be done with css rather than with attributes
    • ๐Ÿ†• New upstream version of UPF (also with security improvements)

    ๐Ÿ›  Fixes and small improvements:

    • ๐ŸŽ GZ page compression removed on system level, it should be rather done on higher level (WebServer or proxy) with better performance
    • Protected constructor in \cs\User as in \cs\Singleton trait
    • ๐Ÿ‘Œ Improved security in case of allowing any user-submitted iframe elements
    • โž• Added support for removing nested empty directories during update process (only single directory was removed before)
    • โœ… Database and storage testing modal is now rendered purely on frontend
    • ๐Ÿ”จ Refactoring in cs\Config class, protection was really dubious
    • cs\Config::instance()->can_be_admin property refactored to method with the same name, backward compatibility still present
    • $_SERVER->protocol added which is more useful in many cases instead of ->secure property
    • ๐Ÿ›  Fix for cs\Page::config() with scalar values didn't work as expected on frontend
    • ๐Ÿ“œ Installation config is now in form of regular array instead of parsing JSON string O_o

    ๐Ÿ—„ Deprecations:

    • \cs\Core::api_request() method
    • \cs\User::system() method
    • \cs\Config::$can_be_admin property (use method with the same name instead)
    • \cs\Config::$server property
    • \cs\Config::$route property (use \cs\Route::$route instead)
    • \cs\Config::process_route() method (use \cs\Route::process_route() instead)
    • \cs\Index::$route_path property
    • \cs\Index::$route_ids property
    • ๐Ÿ—„ Deprecated events (use newer instead):
      • System/Config/pre_routing_replace
      • System/Config/routing_replace

    Possible partial compatibility breaking (very unlikely, but still possible):

    • None

    ๐Ÿ— Latest builds on downloads page or download source code and build it yourself