summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Lord <davidism@gmail.com>2022-12-29 10:39:27 -0800
committerDavid Lord <davidism@gmail.com>2022-12-29 10:39:27 -0800
commit36b601f24b30a91fe2fdc857116382bcb7655466 (patch)
tree00e6017484912d679af5d5641984fa5566b71b7d
parentae53ea5350c5dd622c7e4b85f8aca5dedc5af7a7 (diff)
parent3fadee01b712580d811bdd2cb06cd8a1b5ee0821 (diff)
downloadjinja2-36b601f24b30a91fe2fdc857116382bcb7655466.tar.gz
Merge branch '3.1.x'
-rw-r--r--.pre-commit-config.yaml12
-rw-r--r--docs/templates.rst2
-rw-r--r--requirements/dev.txt36
-rw-r--r--requirements/docs.txt16
-rw-r--r--requirements/tests.txt12
-rw-r--r--requirements/typing.txt2
-rw-r--r--setup.cfg2
-rw-r--r--src/jinja2/async_utils.py2
-rw-r--r--src/jinja2/ext.py4
-rw-r--r--src/jinja2/loaders.py2
-rw-r--r--src/jinja2/runtime.py4
-rw-r--r--tests/test_loader.py6
12 files changed, 53 insertions, 47 deletions
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 9c9ab1e..0f24a4f 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -3,31 +3,31 @@ ci:
autoupdate_schedule: monthly
repos:
- repo: https://github.com/asottile/pyupgrade
- rev: v3.1.0
+ rev: v3.3.1
hooks:
- id: pyupgrade
args: ["--py37-plus"]
- repo: https://github.com/asottile/reorder_python_imports
- rev: v3.8.4
+ rev: v3.9.0
hooks:
- id: reorder-python-imports
args: ["--application-directories", "src"]
additional_dependencies: ["setuptools>60.9"]
- repo: https://github.com/psf/black
- rev: 22.10.0
+ rev: 22.12.0
hooks:
- id: black
- repo: https://github.com/PyCQA/flake8
- rev: 5.0.4
+ rev: 6.0.0
hooks:
- id: flake8
additional_dependencies: [flake8-bugbear]
- repo: https://github.com/peterdemin/pip-compile-multi
- rev: v2.4.6
+ rev: v2.6.1
hooks:
- id: pip-compile-multi-verify
- repo: https://github.com/pre-commit/pre-commit-hooks
- rev: v4.3.0
+ rev: v4.4.0
hooks:
- id: fix-byte-order-marker
- id: trailing-whitespace
diff --git a/docs/templates.rst b/docs/templates.rst
index ad17741..2471cea 100644
--- a/docs/templates.rst
+++ b/docs/templates.rst
@@ -1172,7 +1172,7 @@ none of the templates exist.
{% include ['special_sidebar.html', 'sidebar.html'] ignore missing %}
A variable, with either a template name or template object, can also be
-passed to the statment.
+passed to the statement.
.. _import:
diff --git a/requirements/dev.txt b/requirements/dev.txt
index 96a3792..bde64ee 100644
--- a/requirements/dev.txt
+++ b/requirements/dev.txt
@@ -8,49 +8,55 @@
-r docs.txt
-r tests.txt
-r typing.txt
-build==0.8.0
+build==0.9.0
# via pip-tools
+cachetools==5.2.0
+ # via tox
cfgv==3.3.1
# via pre-commit
+chardet==5.1.0
+ # via tox
click==8.1.3
# via
# pip-compile-multi
# pip-tools
+colorama==0.4.6
+ # via tox
distlib==0.3.6
# via virtualenv
-filelock==3.8.0
+filelock==3.9.0
# via
# tox
# virtualenv
-identify==2.5.6
+identify==2.5.11
# via pre-commit
nodeenv==1.7.0
# via pre-commit
pep517==0.13.0
# via build
-pip-compile-multi==2.4.6
+pip-compile-multi==2.6.1
# via -r requirements/dev.in
-pip-tools==6.9.0
+pip-tools==6.12.1
# via pip-compile-multi
-platformdirs==2.5.2
- # via virtualenv
-pre-commit==2.20.0
+platformdirs==2.6.2
+ # via
+ # tox
+ # virtualenv
+pre-commit==2.21.0
# via -r requirements/dev.in
-pyyaml==6.0
- # via pre-commit
-six==1.16.0
+pyproject-api==1.2.1
# via tox
-toml==0.10.2
+pyyaml==6.0
# via pre-commit
toposort==1.7
# via pip-compile-multi
-tox==3.26.0
+tox==4.1.0
# via -r requirements/dev.in
-virtualenv==20.16.5
+virtualenv==20.17.1
# via
# pre-commit
# tox
-wheel==0.37.1
+wheel==0.38.4
# via pip-tools
# The following packages are considered to be unsafe in a requirements file:
diff --git a/requirements/docs.txt b/requirements/docs.txt
index fba4c8c..6183010 100644
--- a/requirements/docs.txt
+++ b/requirements/docs.txt
@@ -7,9 +7,9 @@
#
alabaster==0.7.12
# via sphinx
-babel==2.10.3
+babel==2.11.0
# via sphinx
-certifi==2022.9.24
+certifi==2022.12.7
# via requests
charset-normalizer==2.1.1
# via requests
@@ -23,23 +23,21 @@ jinja2==3.1.2
# via sphinx
markupsafe==2.1.1
# via jinja2
-packaging==21.3
+packaging==22.0
# via
# pallets-sphinx-themes
# sphinx
-pallets-sphinx-themes==2.0.2
+pallets-sphinx-themes==2.0.3
# via -r requirements/docs.in
pygments==2.13.0
# via sphinx
-pyparsing==3.0.9
- # via packaging
-pytz==2022.4
+pytz==2022.7
# via babel
requests==2.28.1
# via sphinx
snowballstemmer==2.2.0
# via sphinx
-sphinx==5.2.3
+sphinx==6.0.0
# via
# -r requirements/docs.in
# pallets-sphinx-themes
@@ -61,5 +59,5 @@ sphinxcontrib-qthelp==1.0.3
# via sphinx
sphinxcontrib-serializinghtml==1.1.5
# via sphinx
-urllib3==1.26.12
+urllib3==1.26.13
# via requests
diff --git a/requirements/tests.txt b/requirements/tests.txt
index 1b1aba3..fa8c24a 100644
--- a/requirements/tests.txt
+++ b/requirements/tests.txt
@@ -5,19 +5,17 @@
#
# pip-compile-multi
#
-attrs==22.1.0
+attrs==22.2.0
+ # via pytest
+exceptiongroup==1.1.0
# via pytest
iniconfig==1.1.1
# via pytest
-packaging==21.3
+packaging==22.0
# via pytest
pluggy==1.0.0
# via pytest
-py==1.11.0
- # via pytest
-pyparsing==3.0.9
- # via packaging
-pytest==7.1.3
+pytest==7.2.0
# via -r requirements/tests.in
tomli==2.0.1
# via pytest
diff --git a/requirements/typing.txt b/requirements/typing.txt
index ee7e376..a70f3f5 100644
--- a/requirements/typing.txt
+++ b/requirements/typing.txt
@@ -5,7 +5,7 @@
#
# pip-compile-multi
#
-mypy==0.982
+mypy==0.991
# via -r requirements/typing.in
mypy-extensions==0.4.3
# via mypy
diff --git a/setup.cfg b/setup.cfg
index fcc2b4b..edfa309 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -78,6 +78,8 @@ ignore =
E722
# bin op line break, invalid
W503
+ # zip with strict=, requires python >= 3.10
+ B905
# up to 88 allowed by bugbear B950
max-line-length = 80
per-file-ignores =
diff --git a/src/jinja2/async_utils.py b/src/jinja2/async_utils.py
index 1a4f389..715d701 100644
--- a/src/jinja2/async_utils.py
+++ b/src/jinja2/async_utils.py
@@ -74,7 +74,7 @@ async def auto_aiter(
async for item in t.cast("t.AsyncIterable[V]", iterable):
yield item
else:
- for item in t.cast("t.Iterable[V]", iterable):
+ for item in iterable:
yield item
diff --git a/src/jinja2/ext.py b/src/jinja2/ext.py
index d555054..354b406 100644
--- a/src/jinja2/ext.py
+++ b/src/jinja2/ext.py
@@ -291,14 +291,14 @@ class InternationalizationExtension(Extension):
if hasattr(translations, "pgettext"):
# Python < 3.8
- pgettext = translations.pgettext # type: ignore
+ pgettext = translations.pgettext
else:
def pgettext(c: str, s: str) -> str:
return s
if hasattr(translations, "npgettext"):
- npgettext = translations.npgettext # type: ignore
+ npgettext = translations.npgettext
else:
def npgettext(c: str, s: str, p: str, n: int) -> str:
diff --git a/src/jinja2/loaders.py b/src/jinja2/loaders.py
index 5927320..57b5582 100644
--- a/src/jinja2/loaders.py
+++ b/src/jinja2/loaders.py
@@ -389,7 +389,7 @@ class PackageLoader(BaseLoader):
prefix = self._template_root[len(self._archive) :].lstrip(os.sep) + os.sep
offset = len(prefix)
- for name in self._loader._files.keys(): # type: ignore
+ for name in self._loader._files.keys():
# Find names under the templates directory that aren't directories.
if name.startswith(prefix) and name[-1] != os.sep:
results.append(name[offset:].replace(os.sep, "/"))
diff --git a/src/jinja2/runtime.py b/src/jinja2/runtime.py
index 985842b..93e21b4 100644
--- a/src/jinja2/runtime.py
+++ b/src/jinja2/runtime.py
@@ -272,9 +272,9 @@ class Context:
# Allow callable classes to take a context
if (
hasattr(__obj, "__call__") # noqa: B004
- and _PassArg.from_obj(__obj.__call__) is not None # type: ignore
+ and _PassArg.from_obj(__obj.__call__) is not None
):
- __obj = __obj.__call__ # type: ignore
+ __obj = __obj.__call__
pass_arg = _PassArg.from_obj(__obj)
diff --git a/tests/test_loader.py b/tests/test_loader.py
index 04c921d..77d686e 100644
--- a/tests/test_loader.py
+++ b/tests/test_loader.py
@@ -183,6 +183,7 @@ class TestFileSystemLoader:
class TestModuleLoader:
archive = None
+ mod_env = None
def compile_down(self, prefix_loader, zip="deflated"):
log = []
@@ -196,13 +197,14 @@ class TestModuleLoader:
self.mod_env = Environment(loader=loaders.ModuleLoader(self.archive))
return "".join(log)
- def teardown(self):
- if hasattr(self, "mod_env"):
+ def teardown_method(self):
+ if self.archive is not None:
if os.path.isfile(self.archive):
os.remove(self.archive)
else:
shutil.rmtree(self.archive)
self.archive = None
+ self.mod_env = None
def test_log(self, prefix_loader):
log = self.compile_down(prefix_loader)