CleverStyle Framework v1.110.0 Release Notes

  • ๐Ÿš€ Major change in this release happening to session management. \cs\Session class introduced and now covers all session management functionality instead of having everything in still large \cs\User class. Though, complete backward compatibility is present and will be kept until 2.0.

    ๐Ÿš€ Also this release brings new module Blockchain payment, this is actually first payment module, it integrates nicely with Shop module and any other if needed, and allows to accept payments in Bitcoin!

    ๐Ÿ— This is not all yet, now all builds are automatic! This means that all stable builds will be kept as long, as you need them, also bleeding edge nightly builds are prepared after each commit just for you!

    ๐Ÿš€ One more thing here - if you are using PHP 5.4 - it is encouraged to upgrade to 5.5 or even better 5.6, because 5.4 support will be dropped in 2.0 release together with all deprecated functionality.

    ๐Ÿ’… Look at SourceForge downloads page.

    ๐Ÿš€ This is the last release before 2.0, be sure to keep your components up to date for easy and smooth upgrade to next major release! ๐Ÿš€ Update to 2.0 will be available only from 1.110.0+, update older releases to 1.110 before moving forward!

    ๐Ÿ†• New components:

    • New Blockchain payment module, pay for anything in Bitcoin

    ๐Ÿ†• New features:

    • Shop: Notion of currency added to Shop module
    • ๐Ÿ†• New events:
      • System/Config/init/before
      • System/Config/init/after
      • System/Session/init/before
      • System/Session/init/after
      • System/Session/del/before
      • System/Session/del/after
      • System/Session/del_all
    • Now it is possible to use .cs-table-* classes in addition to custom elements with the same name
    • ๐Ÿ— Since now after each commit new builds will be published on SourceForge

    โšก๏ธ Updates:

    • ๐Ÿ†• New upstream version of BananaHTML
    • ๐Ÿ†• New upstream version of WebComponents.js, thankfully, no patches needed this time
    • ๐Ÿ†• New upstream version of UIkit
    • ๐Ÿ†• New upstream version of UPF:
      • Do not allow custom elements (with dash in name or regular elements with is property)

    ๐Ÿ›  Fixes and small improvements:

    • โšก๏ธ Throwing deprecated error on PHP 5.4 with recommendation to update to 5.5+
    • ๐Ÿš€ Run Travis CI tests on PHP 7, nightly builds currently, to be ready when it will be released officially as stable
    • ๐Ÿ‘ Shop: Some events now passes currency together with other arguments in order to provide better context
    • ๐Ÿ›  Fix for cs.config when passing array there
    • Shop: Do not show "Pay now" for cash payment method
    • Shop: Additional parameter in payment confirmation event - callback, to avoid redirects when it is not desirable
    • Shop: Repeated payment confirmation will have no effect, so can be freely executed as many times as needed
    • Shop: Fix for "Pay later" button didn't work
    • Shop: Fix for bug when after successful payment order status didn't change (paid property worked fine)
    • Shop: Fix for wrong recalculation of available units
    • ๐Ÿšš Big changes again: \cs\Session class introduced, all session-related work moved from \cs\User to new class
    • ๐Ÿšš User-specific settings processing moved to event handler instead of doing it in session object
    • System core and components switched to using \cs\Session for session-related things and it's events
    • โšก๏ธ Http server: Http server updated according to new structure of System core
    • ๐Ÿš€ release-notes.md added in oder to avoid relying purely on GitHub releases
    • Http server: Disable memory cache for \cs\User class under http server
    • ๐Ÿ”จ Hugely refactored, simplified and improved dependencies check
    • ๐Ÿ“ฆ Now dependency check will account conflicts in both sides, not only from side of package that is going to be installed
    • โšก๏ธ package item in some modules updated to reflect real name of package directory
    • ๐Ÿ›  Fix for inclusion multiple inline Web Components
    • ๐Ÿ”ง Inline scripts inclusion placed near file includes (placement depends on configuration)
    • ๐Ÿ‘Œ Support of new meta.json option for hiding module in main menu
    • ๐Ÿ“ฆ Do not use /dir file in module/plugin/theme distributive package, use package from meta.json file instead, but still keep file until 2.0 for backward compatibility
    • ๐Ÿ‘ท Force Travis CI to use container-based infrastructure
    • ๐Ÿ— Build scripts moved info single class
    • DarkEnergy theme doesn't have hardcoded copyright anymore, <!--bottom_blocks--> might be used to specify it instead, also <!--top_blocks--> might be used to customize header
    • ๐Ÿ“ฆ Do not use /version file in system core package anymore, keep for backward compatibility till 2.0
    • ๐Ÿ“ฆ meta.json added to system core package root
    • ๐Ÿ— Significantly faster build creation
    • ๐Ÿ‘ Allowed building multiple modules, plugins and themes at once in corresponding mode
    • ๐Ÿ›  Fix for admin page not opening because of missing \cs\Route class import
    • ๐Ÿ›  Fixed forms for permissions addition and editing
    • ๐Ÿšš Http server: Move some code in Http_server module into namespace
    • Actually no need for exit in Core class
    • Get rid of exit, we can actually replace them with echo + return statements
    • โšก๏ธ Files permissions updated
    • SensioLabInsight badge added, existing renamed and switched to SVG
    • ๐Ÿ›  Fix for incorrect detection of other components that provides the same functionality
    • Some tweaks suggested by SensioLabsInsight
    • ๐Ÿšš \cs\Language instance caching removed from __() function
    • ๐Ÿšš User-specific directories removed from .gitignore
    • ๐Ÿšš Multiple unused variables removed
    • ๐Ÿšš Multiple unused use statements removed
    • Photo gallery: Fix for potential bug with images deletion in Photo gallery module
    • ๐Ÿ”จ \cs\Mail class refactoring
    • Avoid using goto in \cs\Session
    • ๐Ÿ”จ Refactoring of \cs\DB\MySQLi
    • ๐Ÿ›  LOTS of smaller fixes all over the place

    ๐Ÿ—„ Deprecations:

    • ๐Ÿ—„ Deprecated events (use newer instead):
      • System/Config/before_init
      • System/Config/after_init
      • System/User/del_session/before
      • System/User/del_session/after
      • System/User/del_all_sessions

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

    • ๐Ÿšš Set of functions removed from global namespace because were used in one or two places only, and there was no need to add them into global namespace. Removed functions:
      • check_mcrypt
      • curl
      • apc
      • memcached

    ๐Ÿ— Latest builds on SourceForge downloads page (details about installation process) or download source code and build it yourself