Two years ago at some conference I had a conversation with Sebastian about the need for a way to overload the new operator in PHP so, probably, bad designed code can be tested more easily by replacing specific classes with mocks. On the train ride home -- I like coding on a train without the disturbing Internet -- I came up with a proof-of-concept extension for PHP and sent it to Sebastian.

Then we more or less forgot about it or did other things until a few days ago where both, Sebastian and I, independently remembered it. Sebastian then pushed the code as part of a new test_helpers extension with some documentation to github and I fixed some bugs in it. The aim of the extension is to collect functionality which might be beneficial for phpUnit and other test scenarios but which should never reach a production environment.

Currently only the new overloading is part of this extension. A simple example might look like this:

As others wrote, or as you can read on php.net or in my twitter feed we've released the second, long awaited, release candidate of PHP 5.3.0.

5.3 isÂ rather big release including support for namespaces, closures, phar archives, internatioalization support via the new intl extension, improved SQLite support, mysqlnd as backend for the MySQL exensions, impressive performance improvements, ... and tons of other bigger and minor things.

Even though this server is running 5.3 already it's not suggested to be used in production evironments, yet but I'd really like to encourage
everybody to test it and give feedback! I'm also interested in positive
feedback, not only bug reports to support my good feeling about this release

It's done 5.3 finally, after quite some discussions, reached beta state. So if you're not already on it it's now the perfect time to test it. Problems found now can be fixed before we mark it stable. Issues not find might need workarounds in your software which will cost you more time in the end. Or the way I often put it: Test now and complain or don't test and live with the consequences - we do our best but we certainly can't cover every edge cases especially in a version like 5.3 where we did quite some internal cleanup and added tons of new features.

The NEWS entry file is, compared to some previous alpha versions, quite short this time but still worth reading if you tested a previous alpha release.

As most of you might have seen we recently announced the first alpha of PHP 5.3.0. The major changes are listed in the announcement. Source tarballs can be found on PHP's downloads site, as it's the first release I packaged I'm especially interested in feedback, whether it works or not . But we didn't only have changes on the source builds: A new team took over the creation of Windows builds. As they also did a major update to the Windows build architecture (supporting newer compiler versions on Windows and added experimental support for 64bit platforms) the build process got a bit delayed but builds should be available soon.

Remember: It's a release we packaged to get feedback from our users. So please test it. If you find issues please report them - the sooner we know about issues the sooner they can be addressed. Although our test coverage increased we can't cover all cases in our tests so please test it now and don't wait for the stable release, once the stable release is out your edge case might trigger a bug on a productive system, bugs reported now can be fixed before we release a final version.

If you want to give back to the PHP project - hey you probably make a living out of software you get for free - and can't fix bugs or assist in a similar way you probably could help our documentation team with improving the documentation, there are a few features without proper documentation, yet.

The PHP TestFest was mentioned on Planet PHP multiple times before, so let's make it one more: Pierre and me are currently working on organizing a TestFest event at Munich. So we are looking for feedback from folks somewhere in the Munich area (or even all of southern Germany) so we know how many people to expect and then set a date. The requirement is mainly having experience with PHP. Being able to read C code might help here and there but is no requirement - it's way more important to be interested in PHP. So if you're interested in meeting core devs and participating in the TestFest and possibly win a few nice prizes please take a look at the TestFest page to get more information and leave a note to me at johannes on php.net so I can do my planning.

Around Easter there are different holidays, in Germany for instance Friday and Monday are holidays. This gives you some time without annoying customers and colleagues asking you to do stuff. So what could you PHP geeks do when getting bored? - A good idea is to test PHP development snapshots.

Currently we have the second release candidate for PHP 5.2.6 out. Test it now with your code! We do our best to test it but we can't cover every use case so we need your testing! The simple rule is: Who doesn't test in time shouldn't complain later if their application breaks. 5.2.6 shouldn't brake anything but sometimes there are unexpected side-effects. Now we can fix them, it's harder after the release.

For 5.3 things are different. We are going to break stuff, but only with good intentions. The latest break we did is dropping the zend.ze1_compatibility_mode ini setting. That setting was broken from day one and gave lots of confusion. So test your applications in time and report unintended breaks you discover.

Of course you should always test the latest snapshots while doing your development but a few more free days might simply give you more time and a chance to give something back to the PHP project. For supporting PHP you might also read about the upcoming PHP TestFest and GSoC.