Sourced from jinja2's releases.
\n\n\n3.0.0
\nNew major versions of all the core Pallets libraries, including Jinja 3.0, have been released! :tada:
\n\n
\n- Read the announcement on our blog: https://palletsprojects.com/blog/flask-2-0-released/
\n- Read the full list of changes: https://jinja.palletsprojects.com/changes/#version-3-0-0
\n- Retweet the announcement on Twitter: https://twitter.com/PalletsTeam/status/1392266507296514048
\n- Follow our blog, Twitter, or GitHub to see future announcements.
\nThis represents a significant amount of work, and there are quite a few changes. Be sure to carefully read the changelog, and use tools such as pip-compile and Dependabot to pin your dependencies and control your updates.
\n
Sourced from jinja2's changelog.
\n\n\nVersion 3.0.0
\nReleased 2021-05-11
\n\n
\n\n- Drop support for Python 2.7 and 3.5.
\n- Bump MarkupSafe dependency to >=1.1.
\n- Bump Babel optional dependency to >=2.1.
\n- Remove code that was marked deprecated.
\n- Add type hinting. :pr:
\n1412
- Use :pep:
\n451
API to load templates with\n:class:~loaders.PackageLoader
. :issue:1168
- Fix a bug that caused imported macros to not have access to the\ncurrent template's globals. :issue:
\n688
- Add ability to ignore
\ntrim_blocks
using+%}
. :issue:1036
- Fix a bug that caused custom async-only filters to fail with\nconstant input. :issue:
\n1279
- Fix UndefinedError incorrectly being thrown on an undefined variable\ninstead of
\nUndefined
being returned on\nNativeEnvironment
on Python 3.10. :issue:1335
- Blocks can be marked as
\nrequired
. They must be overridden at\nsome point, but not necessarily by the direct child. :issue:1147
- Deprecate the
\nautoescape
andwith
extensions, they are\nbuilt-in to the compiler. :issue:1203
- The
\nurlize
filter recognizesmailto:
links and takes\nextra_schemes
(orenv.policies["urlize.extra_schemes"]
) to\nrecognize other schemes. It tries to balance parentheses within a\nURL instead of ignoring trailing characters. The parsing in general\nhas been updated to be more efficient and match more cases. URLs\nwithout a scheme are linked ashttps://
instead ofhttp://
.\n:issue:522, 827, 1172
, :pr:1195
- Filters that get attributes, such as
\nmap
andgroupby
, can\nuse a false or empty value as a default. :issue:1331
- Fix a bug that prevented variables set in blocks or loops from\nbeing accessed in custom context functions. :issue:
\n768
- Fix a bug that caused scoped blocks from accessing special loop\nvariables. :issue:
\n1088
- Update the template globals when calling\n
\nEnvironment.get_template(globals=...)
even if the template was\nalready loaded. :issue:295
- Do not raise an error for undefined filters in unexecuted\nif-statements and conditional expressions. :issue:
\n842
- Add
\nis filter
andis test
tests to test if a name is a\nregistered filter or test. This allows checking if a filter is\navailable in a template before using it. Test functions can be\ndecorated with@pass_environment
,@pass_eval_context
,\nor@pass_context
. :issue:842
, :pr:1248
- Support
\npgettext
andnpgettext
(message contexts) in i18n\nextension. :issue:441
- The
\n|indent
filter'swidth
argument can be a string to
... (truncated)
\n417f822
Merge pull request #1417 from pallets/release-3.0.0b15fd1c
release version 3.0.0eed1546
update requirements9627e73
Merge pull request #1416 from pallets/pre-commit-ci-schedule6630044
update pre-commit monthlye1bf3bc
Merge pull request #1415 from pallets/pre-commit-ci-update-config0798a66
[pre-commit.ci] pre-commit autoupdate53fea33
Merge pull request #1414 from pallets/typing-markerba1f27e
fix py.typed in manifest1a3342b
Merge pull request #1412 from pallets/typing