I've converted the MonoBook template to a PHP function which doesn't require PHPTAL. This has a few advantages:
* Since it doesn't need to store a compiled template, this should greatly reduce the amount of problem reports we get due to unwritable temp directories, safe mode oddities, etc.
* We won't need to bundle a second version of PHPTAL for PHP 5 support: the pure PHP version works on both PHP 4 and PHP 5.
* We can save a few hundred kb from the distribution by removing the bundled PHPTAL and PEAR core. Since we're adding a crapload of support data files for Unicode and Chinese script conversion, this is nice.
* No one could read the template code anyway, why not make it uglier? ;)
In my crude tests, loads of a short wiki page with the PHP version are 5% faster than the PHPTAL version on PHP 5.0.2 with a PHPTAL 1.0.0 dev snapshot (no accelerator/opcode cache). This is probably due to time spent loading up PHPTAL and PEAR include files rather than the execution of the compiled template.
The new SkinTemplate.php is a slightly altered version of the prior SkinPHPTal.php; it does pretty much all the same stuff, but sends it to a different final output path. The new SkinPHPTal.php now inherits that code and interfaces to either PHPTAL 0.7 (on PHP 4) or 1.0 (on PHP 5). So, if you want to make a new custom PHPTAL-based skin it can still be done.
-- brion vibber (brion @ pobox.com)
wikitech-l@lists.wikimedia.org