0.3.0
0.3.0
Released: Fri Mar 5 2010
-
Python 2.3 support is dropped.
References: #123
-
Python 3 support is added ! See README.py3k
for installation and testing notes.References: #119
-
Unit tests now run with nose.
References: #127
-
Source code escaping has been simplified.
In particular, module source files are now
generated with the Python "magic encoding
comment", and source code is passed through
mostly unescaped, except for that code which
is regenerated from parsed Python source.
This fixes usage of unicode in
<%namespace:defname> tags.References: #99
-
RichTraceback(), html_error_template().render(),
text_error_template().render() now accept "error"
and "traceback" as optional arguments, and
these are now actually used.References: #122
-
The exception output generated when
format_exceptions=True will now be as a Python
unicode if it occurred during render_unicode(),
or an encoded string if during render(). -
A percent sign can be emitted as the first
non-whitespace character on a line by escaping
it as in "%%".References: #112
-
Template accepts empty control structure, i.e.
% if: %endif, etc.References: #94
-
The <%page args> tag can now be used in a base
inheriting template - the full set of render()
arguments are passed down through the inherits
chain. Undeclared arguments go into **pageargs
as usual.References: #116
-
defs declared within a <%namespace> section, an
uncommon feature, have been improved. The defs
no longer get doubly-rendered in the body() scope,
and now allow local variable assignment without
breakage.References: #109
-
Windows paths are handled correctly if a Template
is passed only an absolute filename (i.e. with c:
drive etc.) and no URI - the URI is converted
to a forward-slash path and module_directory
is treated as a windows path.References: #128
-
TemplateLookup raises TopLevelLookupException for
a given path that is a directory, not a filename,
instead of passing through to the template to
generate IOError.References: #73