From c67bfe551d016b15d0a2df89c985d8030387bf1e Mon Sep 17 00:00:00 2001 From: lettow-humain Date: Fri, 17 Mar 2023 11:58:49 +0100 Subject: [PATCH 1/4] fix parentheses --- docs/deploying/eventlet.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/deploying/eventlet.rst b/docs/deploying/eventlet.rst index 243be5eb..ec3d1e8f 100644 --- a/docs/deploying/eventlet.rst +++ b/docs/deploying/eventlet.rst @@ -54,7 +54,7 @@ its ``wsgi.server``, as well as your app or app factory. from hello import create_app app = create_app() - wsgi.server(eventlet.listen(("127.0.0.1", 8000), app) + wsgi.server(eventlet.listen(("127.0.0.1", 8000)), app) .. code-block:: text From 5bba529dfc9021a3df8fba96658a05f605e20afe Mon Sep 17 00:00:00 2001 From: David Lord Date: Sat, 15 Apr 2023 11:53:06 -0700 Subject: [PATCH 2/4] document passthrough_errors --- docs/debugging.rst | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/docs/debugging.rst b/docs/debugging.rst index 18f42867..f6b56cab 100644 --- a/docs/debugging.rst +++ b/docs/debugging.rst @@ -66,9 +66,9 @@ be used to step through code during a request before an error is raised, or if no error is raised. Some even have a remote mode so you can debug code running on another machine. -When using an external debugger, the app should still be in debug mode, -but it can be useful to disable the built-in debugger and reloader, -which can interfere. +When using an external debugger, the app should still be in debug mode, otherwise Flask +turns unhandled errors into generic 500 error pages. However, the built-in debugger and +reloader should be disabled so they don't interfere with the external debugger. .. code-block:: text @@ -80,8 +80,20 @@ When running from Python: app.run(debug=True, use_debugger=False, use_reloader=False) -Disabling these isn't required, an external debugger will continue to -work with the following caveats. If the built-in debugger is not -disabled, it will catch unhandled exceptions before the external -debugger can. If the reloader is not disabled, it could cause an -unexpected reload if code changes during debugging. +Disabling these isn't required, an external debugger will continue to work with the +following caveats. + +- If the built-in debugger is not disabled, it will catch unhandled exceptions before + the external debugger can. +- If the reloader is not disabled, it could cause an unexpected reload if code changes + during a breakpoint. +- The development server will still catch unhandled exceptions if the built-in + debugger is disabled, otherwise it would crash on any error. If you want that (and + usually you don't) pass ``passthrough_errors=True`` to ``app.run``. + + .. code-block:: python + + app.run( + debug=True, passthrough_errors=True, + use_debugger=False, use_reloader=False + ) From 7e6e68aed91c4c36142f6f1d32c0d74ac75e65be Mon Sep 17 00:00:00 2001 From: David Lord Date: Sat, 15 Apr 2023 12:20:57 -0700 Subject: [PATCH 3/4] enforce minimum versions in env --- requirements/build.txt | 2 -- requirements/tests-pallets-min.in | 4 ++-- requirements/tests-pallets-min.txt | 7 ++++--- requirements/tests.txt | 6 ------ requirements/typing.txt | 2 -- tox.ini | 6 ++++++ 6 files changed, 12 insertions(+), 15 deletions(-) diff --git a/requirements/build.txt b/requirements/build.txt index e9cdf9da..1566dc07 100644 --- a/requirements/build.txt +++ b/requirements/build.txt @@ -11,5 +11,3 @@ packaging==23.0 # via build pyproject-hooks==1.0.0 # via build -tomli==2.0.1 - # via build diff --git a/requirements/tests-pallets-min.in b/requirements/tests-pallets-min.in index 6c8a55d9..fdc4e0cd 100644 --- a/requirements/tests-pallets-min.in +++ b/requirements/tests-pallets-min.in @@ -1,5 +1,5 @@ -Werkzeug==2.0.0 +Werkzeug==2.2.2 Jinja2==3.0.0 -MarkupSafe==2.0.0 +MarkupSafe==2.1.1 itsdangerous==2.0.0 click==8.0.0 diff --git a/requirements/tests-pallets-min.txt b/requirements/tests-pallets-min.txt index 64f0e1ce..e091af77 100644 --- a/requirements/tests-pallets-min.txt +++ b/requirements/tests-pallets-min.txt @@ -1,4 +1,4 @@ -# SHA1:4de7d9e6254a945fd97ec10880dd23b6cd43b70d +# SHA1:f7109e66098c9e4cb68dc5f0d8e14f429ceed12c # # This file is autogenerated by pip-compile-multi # To update, run: @@ -11,9 +11,10 @@ itsdangerous==2.0.0 # via -r requirements/tests-pallets-min.in jinja2==3.0.0 # via -r requirements/tests-pallets-min.in -markupsafe==2.0.0 +markupsafe==2.1.1 # via # -r requirements/tests-pallets-min.in # jinja2 -werkzeug==2.0.0 + # werkzeug +werkzeug==2.2.2 # via -r requirements/tests-pallets-min.in diff --git a/requirements/tests.txt b/requirements/tests.txt index fc9273ca..d0b6a9da 100644 --- a/requirements/tests.txt +++ b/requirements/tests.txt @@ -9,10 +9,6 @@ asgiref==3.6.0 # via -r requirements/tests.in blinker==1.6.1 # via -r requirements/tests.in -exceptiongroup==1.1.1 - # via pytest -greenlet==2.0.2 ; python_version < "3.11" - # via -r requirements/tests.in iniconfig==2.0.0 # via pytest packaging==23.0 @@ -23,7 +19,5 @@ pytest==7.3.0 # via -r requirements/tests.in python-dotenv==1.0.0 ; python_version >= "3.8" # via -r requirements/tests.in -tomli==2.0.1 - # via pytest typing-extensions==4.5.0 # via blinker diff --git a/requirements/typing.txt b/requirements/typing.txt index cec76ee3..b75f5308 100644 --- a/requirements/typing.txt +++ b/requirements/typing.txt @@ -15,8 +15,6 @@ mypy-extensions==1.0.0 # via mypy pycparser==2.21 # via cffi -tomli==2.0.1 - # via mypy types-contextvars==2.4.7.2 # via -r requirements/typing.in types-dataclasses==0.6.6 diff --git a/tox.ini b/tox.ini index 08c6dca2..026fae26 100644 --- a/tox.ini +++ b/tox.ini @@ -13,6 +13,8 @@ skip_missing_interpreters = true package = wheel wheel_build_env = .pkg envtmpdir = {toxworkdir}/tmp/{envname} +constrain_package_deps = true +use_frozen_constraints = true deps = -r requirements/tests.txt min: -r requirements/tests-pallets-min.txt @@ -34,11 +36,15 @@ commands = pre-commit run --all-files [testenv:typing] package = wheel wheel_build_env = .pkg +constrain_package_deps = true +use_frozen_constraints = true deps = -r requirements/typing.txt commands = mypy [testenv:docs] package = wheel wheel_build_env = .pkg +constrain_package_deps = true +use_frozen_constraints = true deps = -r requirements/docs.txt commands = sphinx-build -W -b html -d {envtmpdir}/doctrees docs {envtmpdir}/html From a67195e0598f7fa4481e366527600cf0b46ae78e Mon Sep 17 00:00:00 2001 From: David Lord Date: Sat, 15 Apr 2023 12:25:09 -0700 Subject: [PATCH 4/4] update dependencies --- requirements/build.txt | 2 +- requirements/dev.txt | 2 +- requirements/docs.txt | 2 +- requirements/tests.txt | 8 +++----- requirements/typing.txt | 2 +- 5 files changed, 7 insertions(+), 9 deletions(-) diff --git a/requirements/build.txt b/requirements/build.txt index 1566dc07..196545d0 100644 --- a/requirements/build.txt +++ b/requirements/build.txt @@ -7,7 +7,7 @@ # build==0.10.0 # via -r requirements/build.in -packaging==23.0 +packaging==23.1 # via build pyproject-hooks==1.0.0 # via build diff --git a/requirements/dev.txt b/requirements/dev.txt index 997d2b17..eb33cdc4 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -50,7 +50,7 @@ pyyaml==6.0 # via pre-commit toposort==1.10 # via pip-compile-multi -tox==4.4.11 +tox==4.4.12 # via -r requirements/dev.in virtualenv==20.21.0 # via diff --git a/requirements/docs.txt b/requirements/docs.txt index 930e16fe..df858e9a 100644 --- a/requirements/docs.txt +++ b/requirements/docs.txt @@ -25,7 +25,7 @@ jinja2==3.1.2 # via sphinx markupsafe==2.1.2 # via jinja2 -packaging==23.0 +packaging==23.1 # via # pallets-sphinx-themes # sphinx diff --git a/requirements/tests.txt b/requirements/tests.txt index d0b6a9da..9c2c6fb7 100644 --- a/requirements/tests.txt +++ b/requirements/tests.txt @@ -7,17 +7,15 @@ # asgiref==3.6.0 # via -r requirements/tests.in -blinker==1.6.1 +blinker==1.6.2 # via -r requirements/tests.in iniconfig==2.0.0 # via pytest -packaging==23.0 +packaging==23.1 # via pytest pluggy==1.0.0 # via pytest -pytest==7.3.0 +pytest==7.3.1 # via -r requirements/tests.in python-dotenv==1.0.0 ; python_version >= "3.8" # via -r requirements/tests.in -typing-extensions==4.5.0 - # via blinker diff --git a/requirements/typing.txt b/requirements/typing.txt index b75f5308..17178c2a 100644 --- a/requirements/typing.txt +++ b/requirements/typing.txt @@ -7,7 +7,7 @@ # cffi==1.15.1 # via cryptography -cryptography==40.0.1 +cryptography==40.0.2 # via -r requirements/typing.in mypy==1.2.0 # via -r requirements/typing.in