HTML-Mason

 view release on metacpan or  search on metacpan

UPGRADE  view on Meta::CPAN

provide a similar performance enhancement.

- Previous versions of Mason split the POD documentation into separate
.pod files from the code, which was in .pm files.  Now, these have
been combined into one file, the .pm file.  However, perldoc will look
for a .pod file before a .pm file.

During the install, we try to find these old .pod files and delete
them.  However, if that isn't successful, you may see the old
documentation for the following modules: HTML::Mason::Interp,
HTML::Mason::Request, HTML::Mason::ApacheHandler,
HTML::Mason::Component.  If you are experiencing this problem after
installing this new version of Mason, you will need to delete the old
.pod files manually.

- The taint_check parameter no longer exists in any form.  We
now automatically detect taint mode and act appropriately to untaint
component source and object files.

- The use_autohandlers, use_dhandlers, and
allow_recursive_autohandlers parameters have been removed, and the
autohandler_name and dhandler_name parameters no longer accept undef
as a valid value.

- The top_level_predicate parameter has been removed.  If you would
like to filter requests you can do this via the new prepare_request
method, which will give you a Request object that you can manipulate
before deciding to serve a request.

- The error_mode parameter has been replaced with two parameters,
error_format and error_mode, allowing more control over how errors are
processed.

- The args_method parameter has changed from being an import parameter, as in

  use HTML::Mason::ApacheHandler (args_method => 'mod_perl');

to a regular constructor parameter, as in

  my $ah = HTML::Mason::ApacheHandler->new(args_method => 'mod_perl');

You should preload the Apache::Request or CGI module in your handler
or httpd.conf, in order to save memory.

- The default HTTP argument processor is now Apache::Request instead
of CGI.pm. This entails several differences:

  - Apache::Request treats parameters case-insensitively for purposes
    of grouping. This would  only be a problem if you expect two arguments
    that differ only by case (e.g. "mode" and "MODE").

  - Apache::Request always parses the query string, even for POST requests.

- The out_mode parameter (batch vs. stream) has been replaced with
the autoflush parameter, which is a much simpler version of the same
idea.  See the Request class documentation for details.

- The ApacheHandler module now requires a minimum of mod_perl 1.22
(though using something more up to date is highly recommended).

- The ApacheHandler module will take care of chown'ing files created
during server startup, when needed. If you have a line like

   chown (Apache->server->uid, Apache->server->gid, $interp->files_written);

in your handler.pl, it is now unnecessary (but harmless).

- The MasonMultipleConfig parameter is no longer needed, and will
cause an error if given.  Mason can now figure out for itself whether
or not multiple ApacheHandler objects should be created.

- The debug file feature has been removed, as it could not accurately
support multiple versions of the Apache API. Use Apache::DB to run
your server through the debugger.

- The Previewer feature has been removed, as it relied on specific
internals that were changed. It will hopefully return better and
stronger in a future release.


Data Caching

Data caching has been completely rebuilt on top of Cache::Cache.
This means:

- The syntax of $m->cache and $m->cache_self have changed.  However,
the original API can still be used for a while by setting
data_cache_api to '1.0'.

- Cache files have a different pathname and format; old cache files
can be removed.

- The access_data_cache utility is no longer supported. See
"Accessing a Cache Externally" in the Developer's manual for
instructions on how to replace access_data_cache.


Semantics

- In older versions of Mason, calls to $m->flush_buffer were
ineffective when output needed to go through a <%filter>.  In 1.1x,
the filter may be called multiple times, each time with new output.


Component Syntax

- The "mc_" style commands, deprecated in 0.8, are no longer supported.
You will need to update to $m methods. The utility bin/convert0.8.pl
can help with this.

- The "perl_" prefix for Mason tags (like <%perl_args>), deprecated in 0.6,
is no longer supported. You will need to remove this prefix. The utility
bin/convert0.6.pl can help with this.

- The |h escape flag now uses HTML::Entities::encode instead of just
encoding <, >, ", and &.  This module escapes control and high-ascii
characters properly for ISO-8859-1 pages. However, it will wreak
havoc with different encodings. You can get the 1.0x behavior with

   $ah->interp->set_escape( h => \&HTML::Mason::Escapes::basic_html_escape );

- The backslash character now eliminates a newline at the end of
any line, not just before %-lines and section tags.



( run in 0.527 second using v1.01-cache-2.11-cpan-71847e10f99 )