Prevent PHPStorm from highlighting errors in _buildFunctionList(), use [] instead of {} for string offset, use better regexp for function names
Use hex escapes for quotes in _jsEscape(), this allows quoting for inline JS
Use is_a() instead of PEAR::isError() and file_get_contents() instead of fopen() / fread()
Up the required version of PHP to 4.3.0 and required version of PEAR installer to a saner value
When saving a cache file, first write a temporary file, then rename it to a permanent name (see bug #19220)
touch() the cache file with the modification time of original template