From d951a763fb90ff3edb5aede5198198ee5d30d44e Mon Sep 17 00:00:00 2001 From: Abdur-Rahmaan Janhangeer Date: Sun, 27 Nov 2022 13:51:09 +0400 Subject: [PATCH 01/11] Fix backstick not rendering. --- docs/config.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/config.rst b/docs/config.rst index bdcbdcd4..aa966e5c 100644 --- a/docs/config.rst +++ b/docs/config.rst @@ -47,7 +47,7 @@ Debug Mode The :data:`DEBUG` config value is special because it may behave inconsistently if changed after the app has begun setting up. In order to set debug mode reliably, use the -``--debug`` option on the ``flask`` command.``flask run`` will use the interactive +``--debug`` option on the ``flask`` command. ``flask run`` will use the interactive debugger and reloader by default in debug mode. .. code-block:: text From 9a294a640141ea8ab108e5c0964d75d91a636c0a Mon Sep 17 00:00:00 2001 From: Dosenpfand Date: Sun, 27 Nov 2022 12:53:08 +0100 Subject: [PATCH 02/11] Fix class-based views example --- docs/extensiondev.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/extensiondev.rst b/docs/extensiondev.rst index 7b54917d..4ddb6da0 100644 --- a/docs/extensiondev.rst +++ b/docs/extensiondev.rst @@ -212,7 +212,7 @@ class's :meth:`~views.View.as_view` method. def __init__(self, model): self.model = model - def get(id): + def get(self, id): post = self.model.query.get(id) return jsonify(post.to_json()) From 3e932aa103661e78a0946e15f35b9f4da3908d39 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 6 Dec 2022 00:34:53 +0000 Subject: [PATCH 03/11] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/asottile/pyupgrade: v3.2.2 → v3.3.0](https://github.com/asottile/pyupgrade/compare/v3.2.2...v3.3.0) --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index b4ee36a0..45b3e0f2 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -3,7 +3,7 @@ ci: autoupdate_schedule: monthly repos: - repo: https://github.com/asottile/pyupgrade - rev: v3.2.2 + rev: v3.3.0 hooks: - id: pyupgrade args: ["--py37-plus"] From 95b666871c7a89f2793952ea06d1c45e0ae5a38a Mon Sep 17 00:00:00 2001 From: rayanth Date: Tue, 13 Dec 2022 13:27:38 -0800 Subject: [PATCH 04/11] Update api.rst Corrected typo in "tojson" example, `const names = {{ names|tojson }};` was `const names = {{ names|tosjon }};` --- docs/api.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/api.rst b/docs/api.rst index 2b214582..afbe0b79 100644 --- a/docs/api.rst +++ b/docs/api.rst @@ -248,7 +248,7 @@ HTML `` From 43ef559de3ecb1915aabe8156f357d7ac4cd22b3 Mon Sep 17 00:00:00 2001 From: "Maxim G. Ivanov" Date: Wed, 21 Dec 2022 10:41:11 +0700 Subject: [PATCH 05/11] Fix varname in docs --- docs/views.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/views.rst b/docs/views.rst index 3eebbfaa..8937d7b5 100644 --- a/docs/views.rst +++ b/docs/views.rst @@ -256,7 +256,7 @@ provide get (list) and post (create) methods. return self.model.query.get_or_404(id) def get(self, id): - user = self._get_item(id) + item = self._get_item(id) return jsonify(item.to_json()) def patch(self, id): From 43bc7330cece1dbe75e7d6c326a0dea8d5652699 Mon Sep 17 00:00:00 2001 From: David Lord Date: Thu, 22 Dec 2022 09:23:48 -0800 Subject: [PATCH 06/11] update requirements --- .pre-commit-config.yaml | 4 ++-- requirements/dev.txt | 26 ++++++++++++++++---------- requirements/docs.txt | 10 ++++------ requirements/tests.txt | 8 +++----- requirements/typing.txt | 4 ++-- 5 files changed, 27 insertions(+), 25 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 45b3e0f2..2b1dee57 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -3,7 +3,7 @@ ci: autoupdate_schedule: monthly repos: - repo: https://github.com/asottile/pyupgrade - rev: v3.3.0 + rev: v3.3.1 hooks: - id: pyupgrade args: ["--py37-plus"] @@ -15,7 +15,7 @@ repos: files: "^(?!examples/)" args: ["--application-directories", "src"] - repo: https://github.com/psf/black - rev: 22.10.0 + rev: 22.12.0 hooks: - id: black - repo: https://github.com/PyCQA/flake8 diff --git a/requirements/dev.txt b/requirements/dev.txt index 7597d9c9..41b2619c 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -10,19 +10,25 @@ -r typing.txt 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.8.2 # via # tox # virtualenv -identify==2.5.9 +identify==2.5.11 # via pre-commit nodeenv==1.7.0 # via pre-commit @@ -30,25 +36,25 @@ pep517==0.13.0 # via build pip-compile-multi==2.6.1 # via -r requirements/dev.in -pip-tools==6.10.0 +pip-tools==6.12.1 # via pip-compile-multi -platformdirs==2.5.4 - # via virtualenv +platformdirs==2.6.0 + # via + # tox + # virtualenv pre-commit==2.20.0 # via -r requirements/dev.in -py==1.11.0 +pyproject-api==1.2.1 # via tox pyyaml==6.0 # via pre-commit -six==1.16.0 - # via tox toml==0.10.2 # via pre-commit toposort==1.7 # via pip-compile-multi -tox==3.27.1 +tox==4.0.16 # via -r requirements/dev.in -virtualenv==20.16.7 +virtualenv==20.17.1 # via # pre-commit # tox diff --git a/requirements/docs.txt b/requirements/docs.txt index 7c7e5869..b1e46bde 100644 --- a/requirements/docs.txt +++ b/requirements/docs.txt @@ -9,7 +9,7 @@ alabaster==0.7.12 # via sphinx babel==2.11.0 # via sphinx -certifi==2022.9.24 +certifi==2022.12.7 # via requests charset-normalizer==2.1.1 # via requests @@ -25,19 +25,17 @@ 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 # sphinx-tabs -pyparsing==3.0.9 - # via packaging -pytz==2022.6 +pytz==2022.7 # via babel requests==2.28.1 # via sphinx diff --git a/requirements/tests.txt b/requirements/tests.txt index b6bc00fc..aff42de2 100644 --- a/requirements/tests.txt +++ b/requirements/tests.txt @@ -5,20 +5,18 @@ # # pip-compile-multi # -asgiref==3.5.2 +asgiref==3.6.0 # via -r requirements/tests.in -attrs==22.1.0 +attrs==22.2.0 # via pytest blinker==1.5 # via -r requirements/tests.in iniconfig==1.1.1 # via pytest -packaging==21.3 +packaging==22.0 # via pytest pluggy==1.0.0 # via pytest -pyparsing==3.0.9 - # via packaging pytest==7.2.0 # via -r requirements/tests.in python-dotenv==0.21.0 diff --git a/requirements/typing.txt b/requirements/typing.txt index 491a09fb..ad8dd594 100644 --- a/requirements/typing.txt +++ b/requirements/typing.txt @@ -7,7 +7,7 @@ # cffi==1.15.1 # via cryptography -cryptography==38.0.3 +cryptography==38.0.4 # via -r requirements/typing.in mypy==0.991 # via -r requirements/typing.in @@ -19,7 +19,7 @@ types-contextvars==2.4.7 # via -r requirements/typing.in types-dataclasses==0.6.6 # via -r requirements/typing.in -types-setuptools==65.6.0.1 +types-setuptools==65.6.0.2 # via -r requirements/typing.in typing-extensions==4.4.0 # via mypy From 8e3128b9893ba4ec8d120e1c2f479f61bd10a476 Mon Sep 17 00:00:00 2001 From: David Lord Date: Thu, 22 Dec 2022 09:30:31 -0800 Subject: [PATCH 07/11] ignore flake8 b905 zip(strict=True) until python 3.10 --- setup.cfg | 2 ++ 1 file changed, 2 insertions(+) diff --git a/setup.cfg b/setup.cfg index e858d13a..ea7f66e2 100644 --- a/setup.cfg +++ b/setup.cfg @@ -80,6 +80,8 @@ ignore = E722 # bin op line break, invalid W503 + # requires Python 3.10 + B905 # up to 88 allowed by bugbear B950 max-line-length = 80 per-file-ignores = From 1a68768e6b0aa19bd670ca050ad81adff55ba479 Mon Sep 17 00:00:00 2001 From: Asif Saif Uddin Date: Thu, 1 Dec 2022 18:57:08 +0600 Subject: [PATCH 08/11] python 2 style inheritance clean up from docs --- docs/patterns/appdispatch.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/patterns/appdispatch.rst b/docs/patterns/appdispatch.rst index 0c5e846e..efa470a7 100644 --- a/docs/patterns/appdispatch.rst +++ b/docs/patterns/appdispatch.rst @@ -93,7 +93,7 @@ exist yet, it is dynamically created and remembered:: from threading import Lock - class SubdomainDispatcher(object): + class SubdomainDispatcher: def __init__(self, domain, create_app): self.domain = domain @@ -148,7 +148,7 @@ request path up to the first slash:: from threading import Lock from werkzeug.wsgi import pop_path_info, peek_path_info - class PathDispatcher(object): + class PathDispatcher: def __init__(self, default_app, create_app): self.default_app = default_app From 6fcf6d00bd36f7c3c51115199615dc93c4a3007a Mon Sep 17 00:00:00 2001 From: "Maxim G. Ivanov" Date: Thu, 22 Dec 2022 23:23:23 +0700 Subject: [PATCH 09/11] Fix URL "committing as you go" --- CONTRIBUTING.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst index d5e3a3f7..8d209048 100644 --- a/CONTRIBUTING.rst +++ b/CONTRIBUTING.rst @@ -171,7 +171,7 @@ Start coding $ git push --set-upstream fork your-branch-name -.. _committing as you go: https://dont-be-afraid-to-commit.readthedocs.io/en/latest/git/commandlinegit.html#commit-your-changes +.. _committing as you go: https://afraid-to-commit.readthedocs.io/en/latest/git/commandlinegit.html#commit-your-changes .. _create a pull request: https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request From 677a0468481a0f620bdb217e8f1a24ebe94681e5 Mon Sep 17 00:00:00 2001 From: "Maxim G. Ivanov" Date: Thu, 22 Dec 2022 23:23:23 +0700 Subject: [PATCH 10/11] Fix URL "committing as you go" --- CONTRIBUTING.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst index d5e3a3f7..8d209048 100644 --- a/CONTRIBUTING.rst +++ b/CONTRIBUTING.rst @@ -171,7 +171,7 @@ Start coding $ git push --set-upstream fork your-branch-name -.. _committing as you go: https://dont-be-afraid-to-commit.readthedocs.io/en/latest/git/commandlinegit.html#commit-your-changes +.. _committing as you go: https://afraid-to-commit.readthedocs.io/en/latest/git/commandlinegit.html#commit-your-changes .. _create a pull request: https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request From 09112cfc477a270f4b2990e1daf39db1dbe30e98 Mon Sep 17 00:00:00 2001 From: "Maxim G. Ivanov" Date: Fri, 23 Dec 2022 00:19:18 +0700 Subject: [PATCH 11/11] template_folder type allows pathlib --- CHANGES.rst | 2 ++ src/flask/app.py | 2 +- src/flask/blueprints.py | 2 +- src/flask/scaffold.py | 2 +- 4 files changed, 5 insertions(+), 3 deletions(-) diff --git a/CHANGES.rst b/CHANGES.rst index 94257a8b..fa1a6269 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -3,6 +3,8 @@ Version 2.2.3 Unreleased +- Fix the type of ``template_folder`` to accept ``pathlib.Path``. :issue:`4892` + Version 2.2.2 ------------- diff --git a/src/flask/app.py b/src/flask/app.py index fed76e30..5315b71c 100644 --- a/src/flask/app.py +++ b/src/flask/app.py @@ -558,7 +558,7 @@ class Flask(Scaffold): static_host: t.Optional[str] = None, host_matching: bool = False, subdomain_matching: bool = False, - template_folder: t.Optional[str] = "templates", + template_folder: t.Optional[t.Union[str, os.PathLike]] = "templates", instance_path: t.Optional[str] = None, instance_relative_config: bool = False, root_path: t.Optional[str] = None, diff --git a/src/flask/blueprints.py b/src/flask/blueprints.py index c2595512..f6d62ba8 100644 --- a/src/flask/blueprints.py +++ b/src/flask/blueprints.py @@ -250,7 +250,7 @@ class Blueprint(Scaffold): import_name: str, static_folder: t.Optional[t.Union[str, os.PathLike]] = None, static_url_path: t.Optional[str] = None, - template_folder: t.Optional[str] = None, + template_folder: t.Optional[t.Union[str, os.PathLike]] = None, url_prefix: t.Optional[str] = None, subdomain: t.Optional[str] = None, url_defaults: t.Optional[dict] = None, diff --git a/src/flask/scaffold.py b/src/flask/scaffold.py index 1530a11e..ebfc741f 100644 --- a/src/flask/scaffold.py +++ b/src/flask/scaffold.py @@ -93,7 +93,7 @@ class Scaffold: import_name: str, static_folder: t.Optional[t.Union[str, os.PathLike]] = None, static_url_path: t.Optional[str] = None, - template_folder: t.Optional[str] = None, + template_folder: t.Optional[t.Union[str, os.PathLike]] = None, root_path: t.Optional[str] = None, ): #: The name of the package or module that this object belongs