- Update to 1.3.8
* Reverted the fix for 🎫`140` released in Mako 1.3.7 as it produced
regressions in existing user code.
- from version 1.3.7
* During the lexical analysis phase, add an additional prefix for undeclared
identifiers that have the same name as built-in flags, and determine the
final filter to be used during the code generation phase based on the
context provided by the user. Pull request by Hai Zhu.
* Support the direct passing of dictionary literals when calling functions
and fix the errors caused by nested braces. This revises the fix that was
released in 1.3.4 and then reverted in 1.3.5. Pull request by Hai Zhu and
Jose Galvez.
OBS-URL: https://build.opensuse.org/request/show/1230021
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Mako?expand=0&rev=113
* Fixed regression caused by the fix for 🎫`320` where new
logic added to interpret list and dictionary comprehensions
would fail for expression oriented keys. As the parsing in
question was not necessary for these
keys, it's been removed.
* Fixed issue where a parsed expression which contained
sub-brackets, such as dictionary literals, would fail to be
interpreted correctly even though the
initial parsing is correct.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Mako?expand=0&rev=107
* Fixed unexpected error when use control lines which the
first control block with no bodies other than comments,
as `pass` is now added to the first empty block.
* Fixed unexpected syntax error in strict_undefined mode that
occurred when using comprehensions within a function in a Mako
Python code block.
Now, the local variable in comprehensions won't be added to the
checklist when using strict_undefined mode.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Mako?expand=0&rev=105
* Fixed parsing issue where attempting to render a single percent
sign % using an escaped percent %% would not function correctly
if the escaped percent were not the first character on a line.
Note that this is a revised version of a similar change made
in Mako 1.3.1 which caused unexpected parsing regressions,
resulting in the release being yanked.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Mako?expand=0&rev=103
* Mako 1.3.0 bumps the minimum Python version to 3.8
* Python 3.12 is now supported explicitly.
- Update to 1.2.4
correctly interpret quoted sections individually
* Fixed some issues with running the test suite which would
be revealed by running tests in random order.
- Use libalternatives instead of update-alternatives.
emit warnings under Python 3.10.
* The default template encoding is now utf-8
- update to 1.0.8
- fix up build for SLE11
- python3 package added
- Added new "loop" variable to templates, is provided within a %
for block to provide info about the loop such as index,
first/last, odd/even, etc. A migration path is also provided
for legacy templates via the "enable_loop" argument available
on Template, TemplateLookup, and <%page>.
- Added a real check for "reserved" names, that is names which
are never pulled from the context and cannot be passed to the
- The html_error_template() will now apply Pygments highlighting
to the source code displayed in the traceback, if Pygments if
- Added support for context managers,
- Added class-level flag to CacheImpl "pass_context"; when True,
the keyword argument 'context' will be passed to
- Template caching has been converted into a plugin system,
whereby the usage of Beaker is just the default plugin.
Template and TemplateLookup now accept a string "cache_impl"
parameter which refers to the name of a cache plugin,
defaulting to the name 'beaker'. New plugins can be registered
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Mako?expand=0&rev=99
* Fixed issue in lexer in the same category as that of 🎫`366` where
the regexp used to match an end tag didn't correctly organize for matching
characters surrounded by whitespace, leading to high memory / interpreter
hang if a closing tag incorrectly had a large amount of unterminated space
in it. Credit to Sebastian Chnelik for locating the issue.
* As Mako templates inherently render and directly invoke arbitrary Python
code from the template source, it is **never** appropriate to create
templates that contain untrusted input.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Mako?expand=0&rev=93
* [bug] [tests] Various fixes to the test suite in the area of exception
message rendering to accommodate for variability in Python versions as
well as Pygments.
* [performance] Optimized some codepaths within the lexer/Python code
generation process, improving performance for generation of templates
prior to their being cached. Pull request courtesy Takuto Ikuta.
* [changed] [py3k] Corrected "universal wheel" directive in setup.cfg so
that building a wheel does not target Python 2.
* [changed] [py3k] The bytestring_passthrough template argument is removed,
as this flag only applied to Python 2.
* [changed] [py3k] With the removal of Python 2's cStringIO, Mako now uses
its own internal FastEncodingBuffer exclusively.
* [changed] Refactored test utilities into mako.testing module. Removed
unittest.TestCase dependency in favor of pytest.
* [changed] [setup] Replaced the use of pkg_resources with the importlib
library. For Python < 3.8 the library importlib_metadata is used.
* [changed] [py3k] Removed support for Python 2 and Python 3.6. Mako now
requires Python >= 3.7.
* [bug] [py3k] Mako now performs exception chaining using raise from,
correctly identifying underlying exception conditions when it raises its
own exceptions. Pull request courtesy Ram Rachum.
- Remove python2 gubbins, since it is no longer supported.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Mako?expand=0&rev=88
* Replaced usage of the long-superseded “parser.suite” module in the mako.util
package for parsing the python magic encoding comment with the “ast.parse” function
* Added “babel” and “lingua” dependency entries to the setuptools entrypoints
for the babel and lingua extensions
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Mako?expand=0&rev=66
- version update to 1.0.14
* The n filter is now supported in the <%page> tag. This allows a template to omit the default expression filters throughout a whole template, for those cases where a
template-wide filter needs to have default filtering disabled.
* Fixed issue where the correct file URI would not be shown in the template-formatted exception traceback if the template filename were not known. Additionally fixes an issue
where stale filenames would be displayed if a stack trace alternated between different templates.
* Improved the line-number tracking for source lines inside of Python <% ... %> blocks, such that text- and HTML-formatted exception traces such as that of
html_error_template() now report the correct source line inside the block, rather than the first line of the block itself. Exceptions in <%! ... %> blocks which get raised
while loading the module are still not reported correctly, as these are handled before the Mako code is generated.
OBS-URL: https://build.opensuse.org/request/show/719500
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Mako?expand=0&rev=63