The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Changes for version 2.05

  • 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

Documentation

evaluate a mason template and output the result
Index of Mason documentation
Information for Mason administrators
The building blocks of Mason
Recipes for common Mason tasks
Content filters in Mason
Getting started with Mason
Mason plugins
How request paths get mapped to page components
Mason component syntax reference
Mason tutorial
Summary of differences between Mason 1 and Mason 2

Modules

Powerful, high-performance templating for the web and beyond
Implementation of bin/mason
Result returned from Mason request
Performs compilation of a single component
Mason Component base class
Meta-information about Mason component class
Extra component imports
Moose policies and exports for Mason components
Exception objects thrown by Mason
Standard filters
Mason Interpreter
Mason Moose policies
Mason Moose role policies
Defer computing parts of output until the end of the request
Allow $. as substitution for $self-> and in attribute names
Create lvalue accessors for all rw component attributes
Tidy object files
Helper for defining Mason plugin roles
Mason Request Class
Result returned from Mason request

Provides

in lib/Mason/DynamicFilter.pm
in lib/Mason/Plugin.pm
in lib/Mason/PluginBundle.pm
in lib/Mason/PluginManager.pm
in lib/Mason/TieHandle.pm
in lib/Mason/Types.pm