Joomla 1.5.19 released with MooTools 1.2.4 support

mootoolsYesterday, the Joomla! project released an update to the core: 1.5.19.

The update includes some medium level security updates. The biggest new feature in this update, though, is the support for version 1.2.4 of the the Mootools javascript framework.

Read on to learn what this means for your Joomla website and why it took over two years to get there.

A moderate security release

Joomla 1.5 19 is a moderate security release, which contains four fixes for low and medium priority vulnerabilities. It's always adviced that you upgrade to the latest version of the Joomla core.

security-releaseSecurity

Plugins

  • Mootools 1.2.4 Upgrade Plug-in (21416). Note that this change does not have any impact on existing sites unless you choose to enable the new plug-in. See the wiki article What is the Mootools 1.2.4 plug-in? for more information.
Download Joomla 1.5.19

As always, do a full backup of your site and database before upgrading.

Check the Joomla 1.5.19 Post-Release FAQs to see if there are important items and helpful hints discovered after the release.

That said and done, let's look at what the new plug-in means. And why it took the project over two years to decide if Mootools 1.2 should be friends with Joomla 1.5.

The Mootools 1.2 in Joomla! 1.5 discussion

As you can see from the release notes above, with the release of Joomla! 1.5.19 you have the opportunity to run your site with MooTools 1.2.4. The Joomla! core has so far only had Mootools 1.11. The support for 1.2.4 will let developers create more modern solutions, using the latest version of this Javascript framework.

There has been some attempts to have Joomla 1.5 support Mootools 1.2.x, among them one from DwightJack:

Joomla 1.5 is still stuck at JS framework Mootools 1.11. The latest version of this framework, 1.2.x, introduced many new features and a complete re-engineered code. Due to these changes, Joomla developers plan to upgrade Mootools in the 1.6 release, to be able to spread code changes to all plug-ins, modules and components. Until that release we’ll be stuck at outdated, unsupported and often undocumented code.

The discussion amongst the project members on how to implement Mootools 1.2.x in Joomla has actually gone on since 2008 when it came out, so it's about time they got it into 1.5 and not have us wait for Joomla 1.6.

Amy Stephen brought up the issue in November last year and had some valid points:

I think part of the reason many of us have opted to use jQuery, instead of Mootools, is that Joomla! 1.5 has such an old version of Mootools, finding compatible plug-ins and "How to" blog posts is very challenging. In the past couple of years, the JS world has really taken off and there are better offerings for Mootools in the latest version.

If Joomla! 1.5 is anticipated to be around a couple of years following the 1.6 release, then upgrading Mootools becomes even more essential.

She followed up with a blog post on Alltogetherasawhole.org, which resulted in quite a discussion.

As one developer said:

It's just a matter of time anyways. ...with 1.6 already on 1.2.4, if you ask me being a component developer and supporting both versions of joomla is a much bigger pain in the ass if joomla 1.5 continues the moo 1.1 route.

Not much fun in having multiple versions of your scripts I tell you.

Switch between versions

In Joomla 1.5.19 you will have a switch to choose between Mootools 1.11 and 1.2.4. You decide, as you can switch the functionality on and off by enabling / disabling the Mootools 1.2.4 system plug-in.

System plug-in Mootools 1.2.4 upgrade

Before using 1.2.4, though, you should make sure that your template and modules actually supports it. As far as I understand, most of the template clubs and other developers have been preparing for this, so you will probably see upgrades to extensions, templates and template frameworks pretty soon. Others have switched to using jQuery.

Compatibility layer

The reason they chose to include support for both is that Mootools 1.11 is deprecated (unsupported) and Mootools 1.2.4 is apparently not backwards compatible. There will, however, be a compatibility layer included in the 1.2.4 version of mootools.js. This means that the the layer patches the old functions with the new ones, in turn meaning that developers don't have to support both versions in their code. If the compatibility layer works as promised, this will make it easier for developers to transition their extensions.

The compatilbility layer has been written by Aaron Newton, one of the lead Mootools developers and the author of Mootools Essentials, so it should be good.

Possible challenges

As one developer mentioned: "Because of how javascript works, a small error or omission in the compatibility layer can break a page".

Another issue can be with the browser caching the javascript. With the old mootools.js still in the browser cache and used instead of the new one it will throw errors.

Conclusion

Switching to Mootools 1.2.4 on your site might cause some trouble. Best way, I think, is to make a test copy of your site, upgrade and test your site extensively before deciding on which version to use.

Anyway, in my opinion the the possibility to use Mootools 1.2 will open up for new and better extensions and code, and make the life of Joomla developers easier, so I guess we're better off.

You can read more about the process leading up to the inclusion of Mootools 1.2 in Joomla 1.5 in this post by Ian McLennan at Joomla.org.

Read 8289 times Originally published on Thursday, 15 July 2010 09:46
Last modified on Friday, 16 July 2010 08:44
 
comments powered by Disqus