Announcing CMS Made Simple v2.3-beta5

Project Announcements. This is read-only, as in... not for problems/bugs/feature request.
Post Reply
calguy1000
Support Guru
Support Guru
Posts: 8169
Joined: Tue Oct 19, 2004 6:44 pm
Location: Fernie British Columbia, Canada

Announcing CMS Made Simple v2.3-beta5

Post by calguy1000 »

This time it has been a couple of weeks since we issued a new beta.

There have been a number of bugs fixed, and we wish to really thank those that have been testing and found these issues so that they could be fixed. Not everything has been addressed yet... but the issues that remain will be addressed shortly.

There are a few relatively important changes in this release:

a: Stability.
As of now, CMSMS 2.3 will catch 'Throwable' errors when including user contributed php files. This included such as modules, simple plugins. and language files. "Throwables" include things like parse errors, and 'class not found errors'. When CMSMS catches one of these it attempts to put a mention into the CMSMS admin log, and continue on.

We all know that between user errors in UDT's or programmer errors, or environment changes there are times when a fatal error creeps in to the code breaking sites. Now, CMSMS will attempt to 'smoothly continue' in these cases.

What it means is that for modules, incompatible modules or modules with errors may not appear in the module manager list. Simple plugins may not execute, or your translations may not be loaded. But, CMSMS should continue to limp along.

The "Throwable" interface and some derived classes were introduced in PHP 7.0 and have been improved in each release since. PHP 7.3 can catch more things than 7.2 did so it is recommended.

This change is potentially a huge stability increase in CMSMS. However, the problems of why something is not working may not be on the screen. So watching your php error log, and your CMSMS admin log is critically important.

b: Support for child themes.
After discussion with a few users, and because the changes were relatively minor (while we were fixing other bugs anyway). We now have the ability to create 'child themes' from existing themes in the /assets/themes directory. Child themes can extend or override templates from the parent theme. Additionally, utilizing the {cms_module_hint} plugin themes can distribute templates for modules that may not be installed on the destination system. There is no limit to the number of descendant themes that can be created

Along with the removal of the whole divided page-template processing order issue, new tooks like {cms_queue_css}, {cms_render_css}, {cms_queue_script}, {cms_render_scripts}, {cms_pagestr}, {cms_theme_path}, {cms_theme_url}, and the cms_theme: smarty resource this makes implementing the design for your app much simpler and faster. Themes become re-usable and can be easily shared. It is even possible to distribute a theme as a module.

We feel that this functionality is a HUGE improvement to CMS Made Simple.

c: Path vs. URI issues because of Windows.
We spent some time addressing issues related to some modules not working in windows because of string comparisons and the DIRECTORY_SEPARATOR constant.
To summarize it turns out that the reason for this is because some functionality in CMSMS was assuming that because / works as a path separator in windows, and is a path separator in URI syntax it should be used as much as possible. Some module code assumes that the use of DIRECTORY_SEPARATOR is the correct mechanism. So, some modules broke in 2.3 because of this.

We have added a couple more functions to the API to a: detect if a string is a URI or not. Which is useful by modules when building paths. And another string that will take a string that is NOT a URI and change it to use separate paths via the DIRECTORY_SEPARATOR. We also changed the GetModulePath() method in the module api to use this new function.

Next, also explored the problems with the phar installer in Windows. This turns out to be a similar problem, but not directly related to us. The Smarty template engine uses the DIRECTORY_SEPARATOR constant to build paths... which, when then used in string comparisons with the phar: uri's built using phars... causes problems. So, at this time I think it is best to assume that the phar installer will not work in Windows, though the expanded installer works.

Version 2.3-beta5 is available to download from:
https://www.cmsmadesimple.org/downloads/cmsms/
or
http://dev.cmsmadesimple.org/projects/cmsmadesimple

The latest snapshot of the API docs generated from the source code are also available from the forge download page.

Please keep up the good work of testing. It is helping to make v2.3 a very stable and powerful release.
Follow me on twitter
Please post system information from "Extensions >> System Information" (there is a bbcode option) on all posts asking for assistance.
--------------------
If you can't bother explaining your problem well, you shouldn't expect much in the way of assistance.
calguy1000
Support Guru
Support Guru
Posts: 8169
Joined: Tue Oct 19, 2004 6:44 pm
Location: Fernie British Columbia, Canada

Re: Announcing CMS Made Simple v2.3-beta5

Post by calguy1000 »

I meant to do this over the weekend, but got busy with other tasks. So, here it is finally.

CMSMS 2.3-beta6 is out. and available for download from:
https://www.cmsmadesimple.org/downloads/cmsms

There are a number of less-than-obvious fixes in this release, but no significant new features.

The most obvious fixes are mostly related to {cms_stylesheet}, to the list of templates in the content manager, and content editor.

Additionally, in themes. templates can now be placed in a subfolder below /assets/themes/THEMENAME/templates.

We also fixed the 'text/cms-javascript' script type to not rely on javascript. So, if you are using <__script__ type="text/cms-javascript"> in a module template, and have {cms_render_scripts} at or near the the bottom of your page template, the defered javascript in your module template should execute just fine even if you do not use jquery.

Please, keep testing, finding the bugs and learning about CMSMS v2.3. There are a number of new and significant features that to date, only a few people have tested.

We are hoping to wrap up the beta process in September/October.. and call it a release. To do that, we will have to have confidence that all significant issues have been resolved, and have sign off from at least three dev team members.

In the mean time we will be preparing some documents to describe the new features in CMSMS v2.3. Including:

- Simple plugins
- Hooks, sending them and catching them
- Themes
- The new config entries
- The hook reference

We look forward to hearing from you.
Follow me on twitter
Please post system information from "Extensions >> System Information" (there is a bbcode option) on all posts asking for assistance.
--------------------
If you can't bother explaining your problem well, you shouldn't expect much in the way of assistance.
Post Reply

Return to “Announcements”