ANNOUNCE: Mason 1.21

Dave Rolsky <[email protected]> Wed, 4 Jun 2003 15:56:57 -0500 (CDT)
Newsgroups gmane.comp.web.mason.user,gmane.comp.web.mason.announce
Message-ID <[email protected]>
I'm unofficially dubbing this the "taint mode is my nemesis" release.  All
future bug reports related to taint mode should be sent to the
perl5-porters list with the subject line "Why is taint mode so d**m
broken, huh?!" ;)


1.21  June 4, 2003

[ INCOMPATIBLE CHANGES ]

** The semantics of @_ for components now match Perl subroutines: @_
contains aliases to the caller's arguments, instead of copies.  For
example, if a component updates $_[0], the corresponding argument is
updated (or an error occurs if it is not updatable). The only users
that will notice this are those that update elements of @_ in
components and do not expect those changes to affect the caller. If
you have any doubts, grep your component tree for '\$_\[' and look for
assignment statements.

[ ENHANCEMENTS ]

- Cache the result of taint_is_on() for performance.
- Mason was copying arguments several times for a request, and several
more times for each component call. The unnecessary copies have been
eliminated.  As part of eliminating these copies, a new compiler
parameter has been added, "define_args_hash".  The default setting,
"auto", should work with all existing Mason components.  See the
HTML::Mason::Compiler::ToObject docs for details.  Task id #464.
Suggested by Doug Treder.
- Add more details about subclassing the compiler to the Subclassing
documentation.
- There is now a compiler parameter called "use_source_line_numbers",
which can be used to turn off line numbering based on the source file.
This can be useful when single stepping a component through the
debugger.  Task id #461.

[ BUG FIXES ]

- Fixed a serious error in which a Compiler that was used on a
component containing certain kinds of syntax errors would claim that
any future components also contained syntax errors.  Task id #467.
- Now assigning runtime properties (such as interp) to method
component objects as well as subcomponent objects.  Task id #462.
- Fixed the HTML error display.  Errors were not being properly
HTML-escaped.  Task id #468.  Reported by Jeremy Blain.
- A bad interaction between the XS version of Params::Validate, Perl
5.00503 and taint mode has been "fixed" by requiring Params::Validate
0.59, where the problem is fixed.  Task id #470.
- The test suite now runs the taint mode tests is no longer skipped on
earlier versions of Perl.  Task id #471.
- The ApacheHandler module would go into an infinite memory-eating
loop when run in taint mode with Perl 5.6.1.  Task id #469.  Reported
by William McKee.



-dave

/*=======================
House Absolute Consulting
www.houseabsolute.com
=======================*/


-------------------------------------------------------
This SF.net email is sponsored by:  Etnus, makers of TotalView, The best
thread debugger on the planet. Designed with thread debugging features
you've never dreamed of, try TotalView 6 free at www.etnus.com.