Today, I am officially announcing the end of support for PHP 5.2 on my products. In the next release series for all extensions, PHP 5.2 support will no longer be offered. This change is due to the unsupported nature of PHP 5.2 as an end of life product and in preparation for Joomla! 3.0.
Ending PHP 5.2 Support
The last release of PHP 5.2 was issued in January 2011 and was not a planned release of the 5.2 series. It was only issued due to a major security issue. Now, we are about 16 months after this last release, and numerous PHP 5.3.x releases have been made, including fixes for major security flaws, as well as the new PHP 5.4 release series being available. PHP 5.2 was supported by the Joomla! project for the 1.6/1.7/2.5 release series since PHP 5.3 was still relatively new and PHP 5.2 support didn't end until weeks before 1.6 Stable was released. Since then, the project has announced end of support for PHP 5.2 in the forthcoming 3.x series, and PHP 5.3 has been adapted by most decent hosting providers. At this point, if your hosting provider doesn't support PHP 5.3, you should either be pestering them constantly or be shopping around for a new place to host your site(s).
So, starting with Podcast Manager 2.1, Tweet Display Back 2.2, and Yet Another Social Plugin 1.1, PHP 5.2 will no longer be officially supported. Does that mean that I am going through the code to explicitly break PHP 5.2 support? Nope, but it does mean that I won't be using coding techniques that allow support in PHP 5.2. I conducted a review on my code recently and found that there is actually very little code that is a workaround for PHP 5.2 support, and modified some import statements to use the Joomla! API in place of PHP's include and require statements, which actually improves cross-version compatibility. That being said, just because the code may work in these environments, I won't be supporting its use there.
Preparing for Joomla! 3.0
Joomla! 3.0 will be out before we know it, and though there isn't a finalized product to develop against just yet, based on the development work that's been ongoing for the last few months, there's quite a few changes in the base API and templates in 3.0. This is going to require some work on my part to ensure that all of my extensions are able to support 3.0 while maintaining support with 2.5, especially in the template side of things as Joomla! 3.0 is using Twitter's Bootstrap as the foundation for the layout work. I have an idea in place on how to support both 2.5 and 3.0 in my extensions, but until there is a firm product to test (the Alpha release is expected around July 1), I won't know for sure whether those ideas will work completely.