Fwd: [Mason] ANNOUNCE: Mason 2

Fwd: [Mason] ANNOUNCE: Mason 2

am 21.02.2011 19:24:03 von Perrin Harkins

In case any of you Mason users on the mod_perl list aren't on the Mason lis=
t...

- Perrin

---------- Forwarded message ----------
From: Jonathan Swartz
Date: Mon, Feb 21, 2011 at 11:16 AM
Subject: [Mason] ANNOUNCE: Mason 2
To: Mason-Users List


I'm pleased to announce Mason 2, the first major version of Mason in ten ye=
ars:

=A0 =A0http://search.cpan.org/perldoc?Mason

Mason 2 has been rearchitected and reimplemented from the ground up,
to take advantage of modern Perl techniques (Moose, Plack/PSGI) and to
correct long-standing feature and syntax inadequacies. Its new
foundations should allow its performance and flexibility to far exceed
Mason 1.

Though little original code or documentation remains, Mason's core
philosophy is intact; it should still "feel like Mason" to existing
users.

Major changes:

* Name. The name is now Mason, instead of HTML::Mason.

* Component classes. Each component is represented by its own (Moose)
class, rather than just an instance of a common class. This means that
components have their own namespaces, subroutines, methods, and
attributes, and can truly inherit from one other. See
http://search.cpan.org/perldoc?Mason::Manual::Components

* Filters. A single powerful filter syntax and mechanism consolidates
three separate filter mechanisms from Mason 1 (filter blocks,
components with content, and escape flags). See
http://search.cpan.org/perldoc?Mason::Manual::Filters

* Plugins. Moose roles are utilized to create a flexible plugin system
that can modify nearly every aspect of Mason's operation. Previously
core features such as caching can now be implemented in plugins. See
http://search.cpan.org/perldoc?Mason::Manual::Plugins

* Web integration. Mason 1's bulky custom web handling code
(ApacheHandler, CGIHandler) has been replaced with a simple PSGI
handler and with plugins for web frameworks like Catalyst and Dancer.
The core Mason distribution is now completely web-agnostic. See
http://search.cpan.org/perldoc?Mason::Plugin::PSGIHandler

* File naming. Mason now facilitates and enforces (in a customizable
way) standard file extensions for components: .m (top-level
components), .mi (internal components), and .pm (pure-perl
components).

See http://search.cpan.org/perldoc?Mason::Manual::UpgradingFromM ason1
for a more detailed list of changes.

Mason 2 is obviously still in alpha status, but it has a fair sized
test suite and I'm eager to start building web projects with it. I
hope you'll give it a try and let us know what you think!

Best
Jon