Release Candidate 2 Will Bring Huge Changes to Exponent 2.0!

Thursday, August 4, 2011 Tags: preview

In a sharp departure from a normal 'release candidate' (RC) testing process, RC2 will be significantly different than the recently released RC1!  Instead of just polishing up RC1 with a few bugfixes for a stable release of Exponent 2.0 in August, the developers are taking a much different approach.  This new approach should better establish 2.0 Stable as 'the baseline' for all future upgrades, yet it won't delay the planned release schedule and is already reaping tangible benefits.

instead of just looking "ahead" and simply taking Exponent toward a stable release, we took a look "back" at what we wanted this first stable release of 2.0 to be like.  "Most likely, 2.0 Stable will become the standard baseline for all future versions of Exponent," at least in the near future.  So, we wanted it to be organized in accordance with our planned design and not have to introduce major changes after the first stable release.  For example, when it comes time to develop a version 2.1, "What should 2.0 Stable have been to best acheive the project's design goals?"

To that end, the folder and file layout was changed to look more like the 2.0 design.  All of the older 1.0 modules and subsystems have been moved out of the root folder and into the framework where they will eventually be converted into the 2.0 standard.  Additionally, we ramped up the time table on converting the existing 1.0 subsystems.  This not only streamlined the page loading process, but seems to have made the whole system faster!  We have also updated all the included 3rd party libraries to their latest stable release.  This should help reduce any security risks and also improve system performance and reliability.

What does this mean to you, the end user?  Here's some things to bear in mind as you move from RC1 (or earlier) into RC2 (or later):

  • New, much cleaner folder layout - if you have any customized "old school" modules (or views), they will no longer be found in /modules, but will now be located in /framework/modules-1.  Also, the "datatypes' name has been updated to become more MVC (Model/View/Controller) compliant and are now named "models".  Additionally, these (new) models have been moved into the 2.0 module folders (along with the database 'definitions' folder) or into the /framework/core/models folder.  This includes the older 1.0 ones.  Also, the root level 1.0 subsystems have been moved to the /framework/core/subsystems-1 folder.  The global views, common theme assets, and the smarty plugins were moved inside the /framework folder.  Additionally, some files were consolidated and/or renamed.  All of which gives Exponent a much cleaner folder layout, more in-line with the design.  With that being said, it would probably be best to extract RC2 (or later) into an almost clean web root folder (/files, /conf/config.php, etc...could still remain)
  • The 1.0 theme engine has been deprecated - If you still haven't upgraded your custom themes to use the new expTheme::xxx calls, you still have some time, but it's drawing to a close.  The 1.0 theme engine has been completely moved into the new 2.0 theme engine, HOWEVER, we did create a compatibility layer for the old exponent_theme_xxx calls.  Most likely this compatibility layer will be dropped sometime after the stable release.
  • The /themes folder is now only used for user themes - The /themes folder no longer contains any system files! Therefore, you can safely delete everything in the themes folder if you want, except for the one theme folder you are using. (Exponent will still continue to be distributed with several themes)
  • 2.0 Stable will be the fastest "Exponent" ever distributed - Because we've  streamlined things and moved further away from '1.0', we've seen some noticable speed-ups which we're sure you, and your clients and users will appreciate.

Lastly, we'll need your help and feedback with RC2 to pave the way for the planned release of 'Stable' by the end of August.  This is especially important if you are using custom themes and templates (views).  RC2 is scheduled to be released on August 12th.