Revision history for Mason
** marks an incompatible change
2.20 Jul 12, 2012
* Improvements
- Implement and document trailing slash policy - perl-mason/pull/11 (Pedro Melo)
* Fixes
- Coerce undefined filter argument to the empty string (Tomohiro Hosaka)
- Eliminate "=for html" POD entries, which were mangling metacpan.org output (Pedro Melo)
- Fix some tests for Windows - perl-mason/pull/9 (Tomasz Konojacki)
* Documentation
- Moved eg/blog to Poet
2.19 May 2, 2012
* Improvements
- Add $.Tee standard filter, like $.Capture but outputs at same time
* Fixes
- Fix for Moose 2.06 - RT #76793 (doy)
* Documentation
- Mention Mason::Plugin::DefaultFilter more prominently
2.18 Apr 22, 2012
* Documentation
- Add references to Poet, Mason's new companion web framework
- Move Admin.pod to Setup.pod
- Fix lots of broken links
2.17 Mar 27, 2012
* Documentation
- Move FAQ pod sections up one level
* Fixes
- Use make_immutable on generated Mason subclasses (Tomohiro Hosaka)
- Properly quote paths when generating component class (Peter Franke)
2.16 Feb 24, 2012
* Documentation
- Add Mason::Manual::FAQ, and various documentation improvements/fixes
* Fixes
- Add prereq Exception::Class
- Use Data::Dumper in Mason::Util
2.15 Nov 27, 2011
** Incompatible changes
- Rename bin/mason to bin/mason.pl, to avoid conflict with the Mason firewall tool - RT #72497 (Florian)
* Fixes
- Fix parser bug with filters and comment characters (Tomohiro Hosaka)
2.14 Sep 6, 2011
** Incompatible changes
- Deprecate %%-lines, <%args> section and <%shared> section, which IMO add
unnecessary TMTOWTDI. Standardize on the <%class> section and Moose 'has'
declarations. These alternate syntaxes may make it into a plugin.
* Improvements
- Allow applications to specify Mason subclasses by naming convention.
- Document use of Mason subclasses in Mason::Manual::Subclasses.
* Fixes
- Respect Mason::CodeCache plugins (bokutin)
- Allow comments after filter markers {{ and }}
2.13 Jul 26, 2011
* Improvements
- Add process_output, an easy way to modify all Mason output in a plugin or subclass
2.12 Jul 3, 2011
* Fixes
- Fix $m->visit under PSGIHandler (Jozef Mojzis)
- Fix $m->visit when initial out_method passed
2.11 Jun 29, 2011
* Fixes
- Fix memory leaks between Interp, Request and Component; add test for leaks (StephenClouse)
2.10 Jun 23, 2011
* Fixes
- Fix filter pipe syntax, broken in 2.09 - RT #69038 (MDIETRICH)
- Specify and test execution order of multiple filters in pipe syntax
- Go back to generating version numbers for all sub-modules again
2.09 Jun 20, 2011
* Fixes
- Properly rename Mason::t::Defer test
2.08 Jun 18, 2011
** Incompatible changes
- Change apply filter syntax to
% $.Filter {{
...
% }}
as it reduces tag soup and better matches the typical use of filtering a block of content
* Improvements
- Add $m->filter to manually apply filters
- Add CLASS->no_wrap() as a convenient way to skip parent wrapping
- Set $_ as well as $_[0] to content for filtering, to make s// based filters easier
* Fixes
- Define $CLASS as well as CLASS in components, ala CLASS module
- Fix $. notation inside <& &>
- Re-fix compatibility with JSON version 1.x
- Untaint component source when in taint mode (e.g. mod_perl) as in Mason 1, otherwise
compiler regexes may fail
2.07 Apr 21, 2011
* Improvements
- Allow arguments to be passed to the content sub from a dynamic filter (e.g. CompCall)
- Throw error on unmatched %> or &>
- Fix error line numbers after method sections and multiple text sections
* Fixes
- Prevent false inheritance loops when component overrides its default parent (Jozef Mojzis)
- Fix compatibility with JSON version 1.x
* Other
- Only generate version numbers for .pm files with documentation, to reduce inter-version churn
2.06 Mar 14, 2011
* Fixes
- Use new file extensions in eg/blog (Jozef Mojzis)
2.05 Mar 6, 2011
** Incompatible changes
- Change default component file extensions due to conflict with Objective C's .m
(suggested by jomo). New extensions:
.mc - top-level component
.mi - internal component
.mp - pure-perl component
* Fixes
- Require comp_root parameter to Mason->new (cxreg)
- Require that request path is absolute
- Ignore whitespace at beginning of a <%args> and <%shared> line (cxreg)
* Improvements
- Forbid reserved names such as 'cmeta' in new method and attribute declarations
- Improve error message when request path not found - list all component paths searched
* Testing
- Stop using test counts - see http://bit.ly/eISu3R
* Documentation
- Add Mason/Manual/Intro.pod
2.04 Feb 26, 2011
* Fixes
- Fix broken $m->scomp (Tomohiro Hosaka)
* Testing
- Add a pile of tests to fill in coverage gaps
2.03 Feb 24, 2011
* Improvements
- Add -e option to bin/mason
* Fixes
- Depend on Log::Any 0.08, for Log::Any::Test (David Wheeler)
2.02 Feb 24, 2011
* Fixes
- Allow index file (index.m, index.pm) to be accessed directly with /index path (Matthias Dietrich)
- Fix error line # for invalid attribute
- Include HTMLFilters in eg/blog/install.sh (qiuhw)
- Fix t/mason-app.t to be perl-location-agnostic (qiuhw)
- Prevent CPAN from indexing built-in plugin implementation files
* Backend
- Remove InstanceMeta object, make args() a direct method of component
- Add pluggable Mason::Component::Import for importing non-Moose things into components
2.01 Feb 20, 2011
* Fixes
- Declare Devel::GlobalDestruction dependency; get rid of List::MoreUtils dependency
2.00 Feb 16, 2011
- Initial Mason 2 version - see HTML::Mason for previous versions