Releases: sqlalchemy/mako
1.0.5
1.0.5
Released: Wed Nov 2 2016
- [bug] Updated the Sphinx documentation builder to work with recent
versions of Sphinx.
1.0.4
1.0.4
Released: Thu Mar 10 2016
-
[feature] [test] The default test runner is now py.test. Running "python setup.py test"
will make use of py.test instead of nose. nose still works as a test
runner as well, however. -
[bug] [lexer] Major improvements to lexing of intricate Python sections which may
contain complex backslash sequences, as well as support for the bitwise
operator (e.g. pipe symbol) inside of expression sections distinct
from the Mako "filter" operator, provided the operator is enclosed
within parentheses or brackets. Pull request courtesy Daniel Martin.References: pull request github:19
-
[feature] Added new method
Template.list_defs()
. Pull request courtesy
Jonathan Vanasco.
1.0.3
1.0.3
Released: Tue Oct 27 2015
- [babel] [bug] Fixed an issue where the Babel plugin would not handle a translation
symbol that contained non-ascii characters. Pull request courtesy
Roman Imankulov.
1.0.2
1.0.2
Released: Wed Aug 26 2015
-
[bug] [installation] The "universal wheel" marker is removed from setup.cfg, because
our setup.py currently makes use of conditional dependencies.
In #249, the discussion is ongoing on how to correct our
setup.cfg / setup.py fully so that we can handle the per-version
dependency changes while still maintaining optimal wheel settings,
so this issue is not yet fully resolved.References: #249
-
[bug] [py3k] Repair some calls within the ast module that no longer work on Python3.5;
additionally replace the use ofinspect.getargspec()
under
Python 3 (seems to be called from the TG plugin) to avoid deprecation
warnings.References: #250
-
[bug] Update the Lingua translation extraction plugin to correctly
handle templates mixing Python control statements (such as if,
for and while) with template fragments. Pull request courtesy
Laurent Daverio. -
[feature] Added
STOP_RENDERING
keyword for returning/exiting from a
template early, which is a synonym for an empty string""
.
Previously, the docs suggested a bare
return
, but this could causeNone
to appear in the
rendered template result.References: #236
1.0.1
1.0.1
Released: Thu Jan 22 2015
-
[feature] Added support for Lingua, a translation extraction system as an
alternative to Babel. Pull request courtesy Wichert Akkerman. -
[bug] [py3k] Modernized the examples/wsgi/run_wsgi.py file for Py3k.
Pull requset courtesy Cody Taylor.
1.0.0
1.0.0
Released: Sun Jun 8 2014
-
[bug] [py2k] Improved the error re-raise operation when a custom
Template.error_handler
is used that does not handle
the exception; the original stack trace etc. is now preserved.
Pull request courtesy Manfred Haltner. -
[bug] [filters] [py2k] Added an html_escape filter that works in "non unicode" mode.
Previously, when usingdisable_unicode=True
, theu
filter
would fail to handle non-ASCII bytes properly. Pull request
courtesy George Xie. -
[general] Compatibility changes; in order to modernize the codebase, Mako
is now dropping support for Python 2.4 and Python 2.5 altogether.
The source base is now targeted at Python 2.6 and forwards. -
[feature] Template modules now generate a JSON "metadata" structure at the bottom
of the source file which includes parseable information about the
templates' source file, encoding etc. as well as a mapping of module
source lines to template lines, thus replacing the "# SOURCE LINE"
markers throughout the source code. The structure also indicates those
lines that are explicitly not part of the template's source; the goal
here is to allow better integration with coverage and other tools. -
[bug] [py3k] Fixed bug in
decode.<encoding>
filter where a non-string object
would not be correctly interpreted in Python 3. -
[bug] [py3k] Fixed bug in Python parsing logic which would fail on Python 3
when a "try/except" targeted a tuple of exception types, rather
than a single exception.References: #227
-
[feature] mako-render is now implemented as a setuptools entrypoint script;
a standalone mako.cmd.cmdline() callable is now available, and the
system also uses argparse now instead of optparse. Pull request
courtesy Derek Harland. -
[feature] The mako-render script will now catch exceptions and run them
into the text error handler, and exit with a non-zero exit code.
Pull request courtesy Derek Harland. -
[bug] A rework of the mako-render script allows the script to run
correctly when given a file pathname that is outside of the current
directory, e.g.mako-render ../some_template.mako
. In this case,
the "template root" defaults to the directory in which the template
is located, instead of ".". The script also accepts a new argument
--template-dir
which can be specified multiple times to establish
template lookup directories. Standard input for templates also works
now too. Pull request courtesy Derek Harland. -
[feature] [py3k] Support is added for Python 3 "keyword only" arguments, as used in
defs. Pull request courtesy Eevee.References: pull request github:7
0.9.1
0.9.1
Released: Thu Dec 26 2013
-
[bug] Fixed bug in Babel plugin where translator comments
would be lost if intervening text nodes were encountered.
Fix courtesy Ned Batchelder.References: #225
-
[bug] Fixed TGPlugin.render method to support unicode template
names in Py2K - courtesy Vladimir Magamedov. -
[bug] Fixed an AST issue that was preventing correct operation
under alpha versions of Python 3.4. Pullreq courtesy Zer0-. -
[bug] Changed the format of the "source encoding" header output
by the code generator to use the format# -*- coding:%s -*-
instead of# -*- encoding:%s -*-
; the former is more common
and compatible with emacs. Courtesy Martin Geisler. -
[bug] Fixed issue where an old lexer rule prevented a template line
which looked like "#*" from being correctly parsed.References: #224
0.9.0
0.9.0
Released: Tue Aug 27 2013
-
[bug] The Context.locals_() method becomes a private underscored
method, as this method has a specific internal use. The purpose
of Context.kwargs has been clarified, in that it only delivers
top level keyword arguments originally passed to template.render().References: #219
-
[bug] Fixed the babel plugin to properly interpret ${} sections
inside of a "call" tag, i.e. <%self:some_tag attr="${_('foo')}"/>.
Code that's subject to babel escapes in here needs to be
specified as a Python expression, not a literal. This change
is backwards incompatible vs. code that is relying upon a _('')
translation to be working within a call tag. -
[bug] The Babel plugin has been repaired to work on Python 3.
References: #187
-
[bug] Using <%namespace import="*" module="somemodule"/> now
skips over module elements that are not explcitly callable,
avoiding TypeError when trying to produce partials.References: #207
-
[bug] Fixed Py3K bug where a "lambda" expression was not
interpreted correctly within a template tag; also
fixed in Py2.4.References: #190
0.8.1
0.8.1
Released: Fri May 24 2013
-
[bug] Changed setup.py to skip installing markupsafe
if Python version is < 2.6 or is between 3.0 and
less than 3.3, as Markupsafe now only supports 2.6->2.X,
3.3->3.X.References: #216
-
[bug] Fixed regression where "entity" filter wasn't
converted for py3k properly (added tests.)References: #214
-
[bug] Fixed bug where mako-render script wasn't
compatible with Py3k.References: #212
-
[bug] Cleaned up all the various deprecation/
file warnings when running the tests under
various Pythons with warnings turned on.References: #213
0.8.0
0.8.0
Released: Wed Apr 10 2013
-
[feature] Performance improvement to the
"legacy" HTML escape feature, used for XML
escaping and when markupsafe isn't present,
courtesy George Xie. -
[bug] Fixed bug whereby an exception in Python 3
against a module compiled to the filesystem would
fail trying to produce a RichTraceback due to the
content being in bytes.References: #209
-
[bug] Change default for compile()->reserved_names
from tuple to frozenset, as this is expected to be
a set by default.References: #208
-
[feature] Code has been reworked to support Python 2.4->
Python 3.xx in place. 2to3 no longer needed. -
[feature] Added lexer_cls argument to Template,
TemplateLookup, allows alternate Lexer classes
to be used. -
[feature] Added future_imports parameter to Template
and TemplateLookup, renders the future header
with desired capabilities at the top of the generated
template module. Courtesy Ben Trofatter.