./devel/py-mako, Hyperfast and lightweight templating for the Python platform

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 1.3.6, Package name: py312-mako-1.3.6, Maintainer: pkgsrc-users

Mako is a template library written in Python. It provides a familiar, non-XML
syntax which compiles into Python modules for maximum performance. Mako's
syntax and API borrows from the best ideas of many others, including Django
templates, Cheetah, Myghty, and Genshi. Conceptually, Mako is an embedded
Python (i.e. Python Server Page) language, which refines the familiar ideas of
componentized layout and inheritance to produce one of the most straightforward
and flexible models available, while also maintaining close ties to Python
calling and scoping semantics.


Required to run:
[devel/py-setuptools] [lang/python37]

Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 381.061 KB

Version history: (Expand)


CVS history: (Expand)


   2024-04-18 11:03:24 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
py-mako: update to 1.3.3.

    :version: 1.3.3
    :released: Wed Apr 10 2024

    .. change::
        :tags: bug, codegen
        :tickets: 146

        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.
        Pull request courtesy Hai Zhu.

    .. change::
        :tags: bug, parser
        :tickets: 320

        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.
        Pull request courtesy Hai Zhu.
   2024-02-02 09:12:34 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-mako: updated to 1.3.2

1.3.2

bug

[bug] [lexer]

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. Pull request courtesy Hai Zhu.
   2024-01-23 11:17:53 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-mako: updated to 1.3.1

1.3.1

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. Pull request courtesy Hai Zhu.
   2023-11-13 12:17:03 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
py-mako: update to 1.3.0.

Mako 1.3.0 bumps the minimum Python version to 3.8, as 3.7 is EOL as of
2023-06-27.   Python 3.12 is now supported explicitly.
   2022-11-16 14:55:36 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-mako: updated to 1.2.4

1.2.4
Fixed issue where unpacking nested tuples in a for loop using would raise a
"couldn't apply loop context" error if the loop context was used. The regex
used to match the for loop expression now allows the list of loop variables
to contain parenthesized sub-tuples. Pull request courtesy Matt Trescott.
   2022-10-25 13:18:04 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-mako: updated to 1.2.3

1.2.3

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.

1.2.2

Fixed issue in lexer where the regexp used to match tags would not correctly \ 
interpret quoted sections individually. While this parsing issue still produced \ 
the same expected tag structure later on, the mis-handling of quoted sections \ 
was also subject to a regexp crash if a tag had a large number of quotes within \ 
its quoted sections. 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.

1.2.1

Various fixes to the test suite in the area of exception message rendering to \ 
accommodate for variability in Python versions as well as Pygments.
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.

1.2.0
Corrected “universal wheel” directive in setup.cfg so that building a wheel \ 
does not target Python 2.
The bytestring_passthrough template argument is removed, as this flag only \ 
applied to Python 2.
With the removal of Python 2’s cStringIO, Mako now uses its own internal \ 
FastEncodingBuffer exclusively.
Removed disable_unicode flag, that’s no longer used in Python 3.
Refactored test utilities into mako.testing module. Removed unittest.TestCase \ 
dependency in favor of pytest.
Replaced the use of pkg_resources with the importlib library. For Python < \ 
3.8 the library importlib_metadata is used.
Removed support for Python 2 and Python 3.6. Mako now requires Python >= 3.7.
Mako now performs exception chaining using raise from, correctly identifying \ 
underlying exception conditions when it raises its own exceptions. Pull request \ 
courtesy Ram Rachum.
   2022-01-05 16:41:32 by Thomas Klausner | Files touched by this commit (289)
Log message:
python: egg.mk: add USE_PKG_RESOURCES flag

This flag should be set for packages that import pkg_resources
and thus need setuptools after the build step.

Set this flag for packages that need it and bump PKGREVISION.
   2022-01-04 21:55:40 by Thomas Klausner | Files touched by this commit (1595)
Log message:
*: bump PKGREVISION for egg.mk users

They now have a tool dependency on py-setuptools instead of a DEPENDS