MiaCMS Release Notes



Version 4.8.1 (code name hardrock - Official released 02/15/2009)


This version contains a handful of bug fixes to correct a few minor issues noted with the original 4.8 release. It also has a few minor performance enhancements. Patches are available from 4.6.5 to 4.8.1 and from 4.8.0 to 4.8.1. We recommend all users upgrade.



Version 4.8 (code name annabelport - Beta released 11/25/2008, Official released 01/16/2009)


Cliffnotes/Executive Summary

  1. OpenID 1 & 2 Support
  2. Content Versioning
  3. New JavaScript Architecture
  4. YUI Upgrade
  5. Related Articles Module Enhancement
  6. MOStlyCE Upgrade

Detailed Information


OpenID 1 & 2 Support

With version 4.8 we have added OpenID support. If enabled MiaCMS will allow users to login with an existing OpenID account. Learn more about OpenID at http://openid.net.

Some OpenID Screenshots
image


Content Versioning

As of version 4.8 users can enable content versioning. Users can control how many revisions are kept. A new revision is created when the apply or save buttons are clicked. Users can review any saved revision. It is simple to review the raw html, the rendered html, and/or the actual difference between the current content and the selected revision. Saved revisions are easily restored with the single click.

Screenshot of the various Content Versioning Areas
image


New JavaScript Architechture

The team has spent the last year researching the full spectrum of object oriented capabilities JavaScript has to offer. We have reviewed numerous JavaScript frameworks, patterns, books, etc. This process has lead to the the list of changes below…

  1. We’ve drastically reduced dependency on external JavaScript libraries. The core no longer needs JSCookMenu, WebFX Tabs, overLIB, or wz_tooltip. We have rewritten the code for each with YUI. The libraries are still shipped with the core for backwards compatibility, but will be removed in v5.0+.
  2. Every frontend & backend component has had its JavaScript either completely rewritten and/or at least seriously reworked.
  3. All core JavaScript is now properly namespaced to avoid collisions with 3rd party extensions. You’ll find most of the base functions under the new YAHOO.miacms.base namespace. Custom component JavaScript can be found under the YAHOO.component.componentname namespace.
  4. The core JavaScript makes use of event delegation to drastically reduce the number of event handlers required for various tasks throughout the system.
  5. Vastly reduced inline scripting (i.e.) onclick, onmouseover, etc. Plus minimal usage and/or complete elimination of outdated techniques such as "javascript: something()", void(0), href="#", etc.
  6. Modernized event handling, element selection, object detection, etc. Plus code reduction via greater reuse of base code.
  7. Minimized usage of eval(). As noted by Douglas Crockford, father of JSON, eval is evil – "the eval function provides access to the JavaScript compiler. This is sometimes necessary, but in most cases it indicates the presence of extremely bad coding".

If none of that made sense then just understand this… the Mambo CMS codebase from which MiaCMS was born is 7+ years old. It’s JavaScript layer has aged greatly and it has not kept up. Cross browser support is becoming an issue. Security, performance, and overall system usage are being impacted. We set out to fix that and feel confident we are now well on our way.

If you'd like to have a closer look at the new JavaScript foundation below are some SVN links to the three main files from which the rest of the system now builds. The base file is used on the frontend and the backend files. The old mambojavascript.js file is still loaded up, but now just maps the old functions to their new counterparts for compatibility. We'll do some additional articles around the new foundation over the coming weeks which will talk about how you can take full advantage of this new structure within your own custom extensions:
http://code.google.com/p/miacms/source/browse/trunk/4.8/includes/js/miacms_base_javascript.js
http://code.google.com/p/miacms/source/browse/trunk/4.8/includes/js/miacms_backend_javascript.js
http://code.google.com/p/miacms/source/browse/trunk/4.8/includes/js/miacms_frontend_javascript.js

Note: Most of our JavaScript changes account for backwards compatibility and therefore should work without any or at least with minimal 3rd party changes.

YUI Upgrade

This release includes the latest version of the Yahoo! User Interface (YUI) library, version 2.6.0. This brings with it lots of performance improvements, bug fixes, and some nice enhancements. More on the YUI 2.6.0 release here - http://yuiblog.com/blog/2008/10/01/yui-260/.

A enhancement has been made to the "Related Articles" module to allow for the display of an Author's other articles. There is a new module parameter within the module that allows users to adjust this behavior accordingly.

MOStlyCE Upgrade

Version 4.8 of MiaCMS also includes a new release of the MOStlyCE editor, version 3.1.0.1. The biggest change with this release is an upgrade to version 3.1.0.1 of the TinyMCE core. The full TinyMCE changelog can be found here - http://tinymce.moxiecode.com/js/tinymce/changelog.txt.

  • NOTE: It is important to point out that MiaCMS contains the code from the official MOStlyCE project. The Mambo team has chosen to take over the old MOStlyCE project on mambo-code.org without notification and/or permission and has declined restore proper ownership. Brilaps, LLC is the rightful owner of MOStlyCE and Chad Auld is it's creator/sole developer. Versions after 3.0.5 are only built for and supported with MiaCMS. The full back story on this notice an be found here.

Enjoy,
The MiaCMS Team



MiaCMS
ReleaseNotes
There are no comments on this page.
Copyright © 2008, The MiaCMS Team
Page was generated in 0.0327 seconds