This release has lots of fun new stuff. It's _more_ backwards compatible than 1.10-1.13, particularly as far as caching is concerned, which should help those who are interested in upgrading. It has a brand new spiffy "user-defined escapes" feature, which among other things allows you to easily HTML-escape something besides ISO-8859-1 (or UTF8) text.
Plus a bunch of bug fixes, improved docs, and it's less filling (uses less memory). 1.14 October 7, 2002 [ BACKWARDS COMPATIBILITY ] - Added compatibility layer for 1.0x cache API. It is now possible to use $m->cache and $m->cache_self in the old way by setting the data_cache_api parameter to '1.0'. L{Params/data_cache_api} - Added back $comp->create_time, which was renamed as $comp->load_time in 1.09_02, as a deprecated method. - Added back $interp->time and $m->current_time, which were removed in 1.09_01, as deprecated methods. [ ENHANCEMENTS ] - Implemented the long requested user-defined escapes feature. It is now possible to define your own escape flags, as well as overriding Mason's own 'h' and 'u' flags. L{Devel/Escaping expressions} - Implemented expire_if and busy_lock options in new $m->cache->get API. These retain the essence of the 1.0x options although both work a little differently. L{Devel/Data Caching} - Added new module to implement caching extensions, HTML::Mason::Cache::BaseCache, with accompanying documentation. - Enhanced Params.pod with TOC and full descriptions of all parameters. Standardized rest of documentation to link to Params.pod when referring to a parameter. - When a component path is not found, but that path matches a file on disk, we now print an extra warning, because this indicates that the user does not understand the distinction between component paths and filesystem paths. - The Request object's redirect() method now accepts an optional additional argument, allowing users to use a status code other than 302 for the redirect. - Mason should now work on a box with a fresh mod_perl 2/Apache 2 install. Previously, Mason unconditionally tried to load Apache::Status, which comes with mod_perl 1.x, but not (yet?) with mod_perl 2. [ BUG FIXES ] - Installation was failing when Exception::Class wasn't installed. - Calling <%def> subcomponents no longer changes base_comp, which is important in autohandlers. (reported by Ian Robertson) - The documentation incorrectly indicated that you could create an ApacheHandler object during server startup without providing a component root. This will also shown incorrectly in the sample handler.pl in the eg/ directory. - Reduced Mason's memory usage when compiling and serving components. This is particularly noticeable with very large components (1-2MB or greater). Work on this will continue for future versions. (reported by Todd Holbrook) - %ARGS and <%shared> variables could not be accessed from <%filter>. (reported by Adam Roth) - Switch.pm did not work in file-based components. (reported by Gert Thiel) - use_strict could not be turned off. (reported by Viacheslav Voytovich) - $m->clear_buffer (and $m->redirect) did not work inside a component call with content. (reported by Manuel Capinha) - Some tests were failing on Windows, because they assumed Unix style filesystem paths. This was a problem with the tests, not the core code, but still worth fixing. (reported by Adam Rinehart). - $m->caller() was inadvertently left out of the documentation - fixed. - Fixed a small documentation error about what kinds of things are valid keys in <%flags> and <%attr> blocks. - Configuring multiple component roots via the httpd.conf file failed silently (as opposed to releases 1.10 - 1.12, where this failed with an error). - Unreadable component source files caused the confusing error message "source callback returned no source". This will now throw a much more helpful exception. - Errors occuring in subrequests would cause error output to be mixed with regular output when the error_mode was "output" (the default with ApacheHandler and CGIHandler). Errors in subrequests should now look the same as errors in the top request. /*================== www.urth.org we await the New Sun ==================*/