Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
==2.10
->==2.11.3
By merging this PR, the issue #7 will be automatically resolved and closed:
Release Notes
pallets/jinja (jinja2)
v2.11.3
Compare Source
Released 2021-01-31
urlize
filter by reducing regexbacktracking. Email matching requires a word character at the start
of the domain part, and only word characters in the TLD. :pr:
1343
v2.11.2
Compare Source
Released 2020-04-13
__getattr__
, like:class:
~unittest.mock.Mock
to be treated as a:func:
contextfunction
. :issue:1145
wordcount
filter to trigger :class:Undefined
methodsby wrapping the input in :func:
soft_str
. :pr:1160
:issue:
1162
AttributeError
on access doesn't cause a recursion error.:issue:
1177
~loaders.PackageLoader
from 2.10 whichremoved the dependency on setuptools and pkg_resources, and added
limited support for namespace packages. The changes caused issues
when using Pytest. Due to the difficulty in supporting Python 2 and
:pep:
451
simultaneously, the changes are reverted until 3.0.:pr:
1182
:pr:
1178
namespace()
assignment object in templates works inasync environments. :issue:
1180
lstrip_blocks
is enabled. :issue:1138
~nativetypes.NativeEnvironment
doesn't evaluateintermediate strings during rendering. This prevents early
evaluation which could change the value of an expression.
:issue:
1186
v2.11.1
Compare Source
Released 2020-01-30
(
{{ data.items[1:] }}
) in an async template. :issue:1141
v2.11.0
Compare Source
Released 2020-01-27
version to support Python 2.7 and 3.5.
ChainableUndefined
class to support getitem andgetattr on an undefined object. :issue:
977
{%+
syntax (with NOP behavior) whenlstrip_blocks
isdisabled. :issue:
748
default
parameter for themap
filter. :issue:557
:func:
meta.find_undeclared_variables
. :issue:931
2.56e-3. :issue:
912
, :pr:922
legibility, like 12_345. :pr:
923
LRUCache.setdefault
. :pr:1000
trim
filter takes an optional string of characters to trim.:pr:
828
jinja2.ext.debug
extension adds a{% debug %}
tag toquickly dump the current context and available filters and tests.
:issue:
174
, :pr:798, 983
:issue:
857
, :pr:858
{{ 2 * (3 < 5) }}
outputs "2" instead of "False".:issue:
755
, :pr:938
boolean
,false
,true
,integer
andfloat
tests. :pr:
824
finalize
function is only applied to theoutput of expressions (constant or not), not static template data.
:issue:
63
FileSystemLoader
, a templatecan have the same name as a directory. :issue:
821
Undefined
when omitting theelse
clausein a
{{ 'foo' if bar }}
expression, regardless of theenvironment's
undefined
class. Omitting theelse
clause is avalid shortcut and should not raise an error when using
:class:
StrictUndefined
. :issue:710
, :pr:1079
loop
control variables such aslength
andrevindex0
when looping over a generator. :issue:459, 751, 794
,:pr:
993
it, in order to avoid a slow initial import. :issue:
765
|map
filter will await the filtercall if needed. :pr:
913
loop
attributes, the iterator is notadvanced ahead of the current iteration unless
length
,revindex
,nextitem
, orlast
are accessed. This makes itless likely to break
groupby
results. :issue:555
, :pr:1101
loop
attributeslength
andrevindex
work for async iterators. :pr:1101
be awaited if needed. :pr:
1101
~loader.PackageLoader
doesn't depend on setuptools orpkg_resources. :issue:
970
PackageLoader
has limited support for :pep:420
namespacepackages. :issue:
1097
os.PathLike
objects in:class:
~loader.FileSystemLoader
and :class:~loader.ModuleLoader
.:issue:
870
~nativetypes.NativeTemplate
correctly handles quotesbetween expressions.
"'{{ a }}', '{{ b }}'"
renders as the tuple('1', '2')
rather than the string'1, 2'
. :issue:1020
~nativetypes.NativeTemplate
directly creates a:class:
~nativetypes.NativeEnvironment
instead of a default:class:
Environment
. :issue:1091
LRUCache.copy()
, the copy's queue methods point tothe correct queue. :issue:
843
system encoding. :issue:
889
|wordwrap
filter treats existing newlines as separate paragraphsto be wrapped individually, rather than creating short intermediate
lines. :issue:
175
break_on_hyphens
parameter to|wordwrap
filter.:issue:
550
passed the context. :pr:
1108
the result follows Python's behavior of returning
False
if anycomparison returns
False
, rather than only the last one.:issue:
1102
and source for Python >= 3.7. :issue:
1104
internal compiler frames. :issue:
763
DerivedContextReference
node that can be used byextensions to get the current context and local variables such as
loop
. :issue:860
that were previously overlooked. :issue:
733
TemplateSyntaxError.source
is not empty when raised from anincluded template. :issue:
457
Undefined
value toget_template
(such as throughextends
,import
, orinclude
), raises anUndefinedError
consistently.select_template
will show theundefined message in the list of attempts rather than the empty
string. :issue:
1037
TemplateSyntaxError
can be pickled. :pr:1117
v2.10.3
Compare Source
Released 2019-10-04
setup.py
that was preventinginstallation.
v2.10.2
Compare Source
Released 2019-10-04
range
in the sandboxed environment usesxrange
onPython 2 to avoid memory use. :issue:
933
using debug builds of Python 3.7. :issue:
1050
v2.10.1
Compare Source
Released 2019-04-06
SandboxedEnvironment
securely handlesstr.format_map
inorder to prevent code execution through untrusted format strings.
The sandbox already handled
str.format
.