Version 2.15 is now on its way to CPAN. You can fetch it
from here:
http://wardley.org/perl/Template-Toolkit-2.15.tar.gz
This is a major maintenance release with a handful of new
features
thrown in for good measure.
Please note that v2.15 no longer includes the DBI, XML or GD
plugins.
You need to get those distributions separately. They're
also on their
way to CPAN
http
://wardley.org/perl/Template-DBI-2.64.tar.gz
http
://wardley.org/perl/Template-XML-2.15.tar.gz
http:
//wardley.org/perl/Template-GD-2.66.tar.gz
The Latex filters have also been removed from v2.15 but I
haven't got
around to creating a separate distribution for those yet.
If you're
relying on the Latex filters then you probably shouldn't
upgrade to 2.15
just yet. I'll try and get that done this weekend.
Changes for 2.15 and its developer release predecessor,
2.14a are
attached below.
Enjoy!
A
#-----------------------------------------------------------
------------
# Version 2.15 - 26th May 2006
#-----------------------------------------------------------
------------
Chomping Options
----------------
* Added the CHOMP_GREEDY option and '~' chomping flag.
Changed
CHOMP_COLLAPSE to greedily chomp all whitespace
(including multiple
newlines) and replace it with a single space. Previously
it only
chomped one line. Renamed the CHOMP_ALL option to
CHOMP_ONE which
makes more sense. CHOMP_ALL is still provided as an
alias for
CHOMP_ONE for backwards compatibility. Thanks to Paul
Seamons for
doing all the hard work on this.
http://tt2.org/pipermail/templates/2006-Februar
y/thread.html#8354
* Added code to the replace text virtual method to use a
faster and
simpler implementation if the replacement text doesn't
contain any
back references. Thanks to Josh Rosenbaum for all his
efforts on
this.
http://tt2.org/pipermail/templates/2006-February/008
344.html
Stash
-----
* Changed various tests for private/hidden variables
(starting '_'
or '.') to use a regex defined in the $PRIVATE package
variable in
Template::Stash. This can be redefined or undefined.
Note that
the XS Stash only looks to see if $PRIVATE is defined or
not, and
currently hard-codes the regex.
Plugins
-------
* Changed the Image plugin tag() method to call the name()
method
instead of accessing the name directly, making it easier
for
subclasses to provide an alternate name. Thanks to Cees
Hek for
his patch.
http://tt2.org/pipermail/templates/2006-February/008
423.html
* Change the AUTOLOAD regex in the Table plugin to be more
robust.
http://tt2.org/pipermail/templates/2006-May/008602.html
a>
Documentation
-------------
* Added the Template::Toolkit documentation pointing people
to
the right place.
* Updated the Template::Stash::XS documentation to remove
the
"experimental" description and tidy things up
a bit.
#-----------------------------------------------------------
------------
# Version 2.14a - 2nd February 2006 ##
DEVELOPER RELEASE ##
#-----------------------------------------------------------
------------
Stash
-----
* Activated a patch in Template::Stash from Stephen Howard
which adds
code for the full set of fallbacks for dot ops called
against
objects which don't implement the specific method. For
example
[% hashobj.vmethod %] [% listobj.2 %] and [%
listobj.vmethod %] now
all work with the Perl Template::Stash. Added code to
the XS Stash
to do the same and updated tests.
http://tt2.org/pipermail/templates/2003-December/005
417.html
* Added full support for tied hashes and tied lists in the
XS Stash.
Added some further tests to make sure it's all working
as expected.
http://tt2.org/pipermail/templates/2006-January/00826
6.html
* Applied path from Slaven Rezic to Template::Stash::XS to
check
return code in tt_fetch_item() in a way which plays
nicely with tied
hashes.
http:/
/rt.cpan.org/Ticket/Display.html?id=7830
* Changed Template::Stash and Template::Stash::XS to
evaluate list
vmethods in lvalues.
http://tt2.org/pipermail/templates/2006-January/00819
8.html
* Changed Template::Stash to be a little more strict about
what it
considers a failed method call. This allows exception
thrown within
called methods to be propagated correctly rather than
being ignored
as undefined method. Thanks to Dave Howorth, Tom Insam
and Stig
Brautaset for reporting the problem and providing fixes.
http://tt2.org/pipermail/templates/2005-April/007375.ht
ml
http://tt2.org/pipermail/templates/2006-February/008
367.html
* Removed redundant performance profiling code from
Template::Stash::XS. Must check with Doug that this is
OK and he's
not still using it...
Virtual Methods
---------------
* Added the scalar.remove, scalar.substr, hash.delete,
hash.items,
hash.pairs, list.import and list.hash virtual methods.
* Changed the scalar.replace method to work properly with
back
references ($1, $2, etc) by incorporating ideas, code and
tests from
Nik Clayton, Paul Seamon, Sergey Martynoff, Josh
Rosenbaum and
others.
http://tt2.org/pipermail/templates/2006-February/008
306.html
http://tt2.org/pipermail/templates/2006-February/008
326.html
* Changed list.push and list.unshift to accept multiple
arguments,
thanks to Bill Moseley.
http://tt2.org/pipermail/templates/2006-January/00829
4.html
* Fixed the split scalar virtual method which wasn't
accepting the
second argument (limit) correctly. Thanks to Josh
Rosenbaum for
pointing out the problem.
http://tt2.org/pipermail/templates/2005-October/00798
2.html
* Documented the fact that hash.list is going to change in
the future,
recommending people switch to hash.pairs.
http://tt2.org/pipermail/templates/2006-January/00825
6.html
http://tt2.org/pipermail/templates/2006-February/008
312.html
* Added the global option to the 'match' scalar virtual
method.
* Changed $element to $component in Template::Context to fix
callers
bug, thanks to Andy Maas who identified the problem and
found the
solution:
http://tt2.org/pipermail/templates/2004-December/007
020.html
* Changed the sort and nsort list virtual methods to always
return
references to lists, avoiding any ambiguity in return
results.
* Changed the hash.defined method to do the same thing as
scalar.defined when called without arguments. Added
list.defined to
do the same thing as hash.defined.
http:/
/rt.cpan.org/Ticket/Display.html?id=9094
* Moved all the tests into t/vmethods/*
Plugins
-------
* Added the $Template::Plugins::PLUGIN_BASE package variable
to define
the default 'Template::Plugin' value for the
PLUGIN_BASE option. By
clearing this value before calling the Template new()
constructor,
you can avoid having Template::Plugin added to the
PLUGIN_BASE by
default. Also changed PLUGINS search to look for lower
case plugin
name as well as case-specific name. Thanks yet again
Josh for
addressing this issue.
http://tt2.org/pipermail/templates/2006-January/00822
5.html
* Applied a single character patch from Lubomir Host which
fixes the
user attribute in Template::Plugin::File.
* Added the Math Plugin to MANIFEST.
* Changed the URL plugin to ignore parameters that are unset
(e.g.
defined but zero length)
* Applied two patches to the Image plugin from Bill Moseley
to escape
attributes in the tag() method and to provide the
'file' options.
Also adds proper documentation for the 'root' option.
http://tt2.org/pipermail/templates/2005-November/008
086.html
http://tt2.org/pipermail/templates/2005-December/008
189.html
* Added the $JOINT package variable to Template::Plugin::URL
to
provide a work-around for the URL plugin which
incorrectly (as
we now know) encodes '&' as '&'
http
://rt.cpan.org//Ticket/Display.html?id=11551
http://tt2.org/pipermail/templates/2005-December/008
158.html
* Added substr() method to the String plugin, as suggested
here:
http:/
/rt.cpan.org/Ticket/Display.html?id=2619
* Moved all XML plugins and related tests into a separate
Template-XML
distribution.
* Moved DBI plugin and tests into Template-DBI distribution.
* Moved GD plugins and tests into Template-GD distribution.
Filters
-------
* Applied a patch to the truncate() filter from
"Ashley" which
adds a second argument.
http://tt2.org/pipermail/templates/2005-December/008
145.html
* Fixed a bug in the same truncate() filter to stop it from
truncating
strings that are exactly as long as the limit (change
'<' to '<='),
thanks to Nicholas at oxhoej.dk.
http:/
/rt.cpan.org/Ticket/Display.html?id=8911
* Added "use locale" to Template::Filters to
enable locale-specific
filters.
http:/
/rt.cpan.org/Ticket/Display.html?id=9094
http:/
/rt.cpan.org/Ticket/Display.html?id=5695
* Updated documentation to reflect the fact that the html
filter also
escapes " as " Thanks to Geoff Richards
for reporting it.
* Moved Latex filters into Template-Latex distribution.
ttree
-----
* Applied patch from Yuri Pimenov to prevent ttree from
raising a
warning when the --depend_debug option is used.
http://tt2.org/pipermail/templates/2005-May/007400.html
a>
* Applied a patch to ttree from Slaven Rezic which fixes the
arguments
passed to mkpath.
http
://rt.cpan.org//Ticket/Display.html?id=14216
* Applied a patch to ttree from Mike Schilli to prevent it
from going
into an infinite loop on encountering a directory called
"0"
http
s://rt.cpan.org/Ticket/Display.html?id=14905
* Fixed configuration section to not prompt "Do you
want me to create
a sample .ttreerc file?" if the -h/--help options
are specified,
thanks to Slaven Rezic for reporting the problem.
http:/
/rt.cpan.org/Ticket/Display.html?id=4180
* added AppConfig EXPAND => EXPAND_ALL option to
perl5lib,
template_plugin_base, template_compile_dir and
depend_file
configuration options to allow them to contain ~ to
indicate
the user's home directory, or $WHATEVER for environment
variables,
as per the other path-specific options like src, lib,
etc.
Miscellaneous
-------------
* Added code to Makefile.PL to detect
$ENV to
accept all defaults. Thanks to KANE.
http:
//rt.cpan.org/Ticket/Display.html?id=14613
* Removed vStrings from Template: ocument.
Thanks to Dave Cross for
reporting the problem.
http://tt2.org/pipermail/templates/2005-April/007357.ht
ml
* Applied a patch from Barrie Slaymaker which corrects a bug
in the
Template::Parser line counting when using chomp flags.
http://tt2.org/pipermail/templates/2005-December/008
157.html
* Applied a patch from Jess Robinson to move the
Template::Provider
check for file freshness into a separate method, in order
to
play nicely with his Template::Provider: BI
module.
http://tt2.org/pipermail/templates/2005-December/008
143.html
* Fixed the regex matching relative paths in
Template::Provider, thanks
to Josh Rosenbaum
http://tt2.org/pipermail/templates/2005-January/00714
1.html
* Applied a patch to Template::Provider to prevent a
misleading error
message, thanks to Slaven Rezic.
http:/
/rt.cpan.org/Ticket/Display.html?id=5327
* Added an eval wrapper around mkpath() in
Template::Provider to handle
errors more nicely.
* Numerous documentation fixes.
_______________________________________________
templates mailing list
templates template-toolkit.org
http://lists.template-toolkit.org/mailman/listinfo/t
emplates
|