Sourced from jinja2's releases.
3.1.5
This is the Jinja 3.1.5 security fix release, which fixes security issues and bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.
PyPI: https://pypi.org/project/Jinja2/3.1.5/ Changes: https://jinja.palletsprojects.com/changes/#version-3-1-5 Milestone: https://github.com/pallets/jinja/milestone/16?closed=1
- The sandboxed environment handles indirect calls to
str.format
, such as by passing a stored reference to a filter that calls its argument. GHSA-q2x7-8rv6-6q7h- Escape template name before formatting it into error messages, to avoid issues with names that contain f-string syntax. #1792, GHSA-gmj6-6f8f-6699
- Sandbox does not allow
clear
andpop
on known mutable sequence types. #2032- Calling sync
render
for an async template usesasyncio.run
. #1952- Avoid unclosed
auto_aiter
warnings. #1960- Return an
aclose
-ableAsyncGenerator
fromTemplate.generate_async
. #1960- Avoid leaving
root_render_func()
unclosed inTemplate.generate_async
. #1960- Avoid leaving async generators unclosed in blocks, includes and extends. #1960
- The runtime uses the correct
concat
function for the current environment when calling block references. #1701- Make
|unique
async-aware, allowing it to be used after another async-aware filter. #1781|int
filter handlesOverflowError
from scientific notation. #1921- Make compiling deterministic for tuple unpacking in a
{% set ... %}
call. #2021- Fix dunder protocol (
copy
/pickle
/etc) interaction withUndefined
objects. #2025- Fix
copy
/pickle
support for the internalmissing
object. #2027Environment.overlay(enable_async)
is applied correctly. #2061- The error message from
FileSystemLoader
includes the paths that were searched. #1661PackageLoader
shows a clearer error message when the package does not contain the templates directory. #1705- Improve annotations for methods returning copies. #1880
urlize
does not addmailto:
to values like@a@b
. #1870- Tests decorated with
@pass_context
can be used with the|select
filter. #1624- Using
set
for multiple assignment (a, b = 1, 2
) does not fail when the target is a namespace attribute. #1413- Using
set
in all branches of{% if %}{% elif %}{% else %}
blocks does not cause the variable to be considered initially undefined. #1253
Sourced from jinja2's changelog.
Version 3.1.5
Released 2024-12-21
- The sandboxed environment handles indirect calls to
str.format
, such as by passing a stored reference to a filter that calls its argument. :ghsa:q2x7-8rv6-6q7h
- Escape template name before formatting it into error messages, to avoid issues with names that contain f-string syntax. :issue:
1792
, :ghsa:gmj6-6f8f-6699
- Sandbox does not allow
clear
andpop
on known mutable sequence types. :issue:2032
- Calling sync
render
for an async template usesasyncio.run
. :pr:1952
- Avoid unclosed
auto_aiter
warnings. :pr:1960
- Return an
aclose
-ableAsyncGenerator
fromTemplate.generate_async
. :pr:1960
- Avoid leaving
root_render_func()
unclosed inTemplate.generate_async
. :pr:1960
- Avoid leaving async generators unclosed in blocks, includes and extends. :pr:
1960
- The runtime uses the correct
concat
function for the current environment when calling block references. :issue:1701
- Make
|unique
async-aware, allowing it to be used after another async-aware filter. :issue:1781
|int
filter handlesOverflowError
from scientific notation. :issue:1921
- Make compiling deterministic for tuple unpacking in a
{% set ... %}
call. :issue:2021
- Fix dunder protocol (
copy
/pickle
/etc) interaction withUndefined
objects. :issue:2025
- Fix
copy
/pickle
support for the internalmissing
object. :issue:2027
Environment.overlay(enable_async)
is applied correctly. :pr:2061
- The error message from
FileSystemLoader
includes the paths that were searched. :issue:1661
PackageLoader
shows a clearer error message when the package does not contain the templates directory. :issue:1705
- Improve annotations for methods returning copies. :pr:
1880
urlize
does not addmailto:
to values like@a@b
. :pr:1870
- Tests decorated with
@pass_context`` can be used with the ``|select`` filter. :issue:
1624`- Using
set
for multiple assignment (a, b = 1, 2
) does not fail when the target is a namespace attribute. :issue:1413
- Using
set
in all branches of{% if %}{% elif %}{% else %}
blocks does not cause the variable to be considered initially undefined. :issue:1253
877f6e5
release version 3.1.58d58859
remove test pypieda8fe8
update dev dependenciesc8fdce1
Fix bug involving calling set on a template parameter within all
branches of ...66587ce
Fix bug where set would sometimes fail within iffbc3a69
Add support for namespaces in tuple parsing (#1664)b8f4831
more comments about nsref assignmentee83219
Add support for namespaces in tuple assignment1d55cdd
Triple quotes in docs (#2064)8a8eafc
edit block assignment section