From 075affec23084f68a2a5817521d3cecdb25cd152 Mon Sep 17 00:00:00 2001 From: Stephen Sadowski Date: Fri, 27 Dec 2019 07:10:46 -0600 Subject: [PATCH 1/2] Release v19.12.0 (#1740) * Bumping up version from 19.9.0 to 19.12.0 * Pipfile crud removed --- CHANGELOG.rst | 35 +++++++++++++++++++++++++++++++++++ changelogs/1691.doc.rst | 4 ---- changelogs/1704.doc.rst | 3 --- changelogs/1707.bugfix.rst | 4 ---- changelogs/37.bugfix.rst | 11 ----------- sanic/__version__.py | 2 +- scripts/pyproject.toml | 2 +- setup.cfg | 2 +- 8 files changed, 38 insertions(+), 25 deletions(-) delete mode 100644 changelogs/1691.doc.rst delete mode 100644 changelogs/1704.doc.rst delete mode 100644 changelogs/1707.bugfix.rst delete mode 100644 changelogs/37.bugfix.rst diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 0c9153b1..be827e00 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,3 +1,38 @@ +Version 19.12.0 +=============== + +Bugfixes +******** + +- Fix blueprint middleware application + + Currently, any blueprint middleware registered, irrespective of which blueprint was used to do so, was + being applied to all of the routes created by the :code:`@app` and :code:`@blueprint` alike. + + As part of this change, the blueprint based middleware application is enforced based on where they are + registered. + + - If you register a middleware via :code:`@blueprint.middleware` then it will apply only to the routes defined by the blueprint. + - If you register a middleware via :code:`@blueprint_group.middleware` then it will apply to all blueprint based routes that are part of the group. + - If you define a middleware via :code:`@app.middleware` then it will be applied on all available routes (`#37 `__) +- Fix `url_for` behavior with missing SERVER_NAME + + If the `SERVER_NAME` was missing in the `app.config` entity, the `url_for` on the `request` and `app` were failing + due to an `AttributeError`. This fix makes the availability of `SERVER_NAME` on our `app.config` an optional behavior. (`#1707 `__) + + +Improved Documentation +********************** + +- Move docs from RST to MD + + Moved all docs from markdown to restructured text like the rest of the docs to unify the scheme and make it easier in + the future to update documentation. (`#1691 `__) +- Fix documentation for `get` and `getlist` of the `request.args` + + Add additional example for showing the usage of `getlist` and fix the documentation string for `request.args` behavior (`#1704 `__) + + Version 19.6.3 ============== diff --git a/changelogs/1691.doc.rst b/changelogs/1691.doc.rst deleted file mode 100644 index e4a9e3de..00000000 --- a/changelogs/1691.doc.rst +++ /dev/null @@ -1,4 +0,0 @@ -Move docs from RST to MD - -Moved all docs from markdown to restructured text like the rest of the docs to unify the scheme and make it easier in -the future to update documentation. diff --git a/changelogs/1704.doc.rst b/changelogs/1704.doc.rst deleted file mode 100644 index 873ce539..00000000 --- a/changelogs/1704.doc.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix documentation for `get` and `getlist` of the `request.args` - -Add additional example for showing the usage of `getlist` and fix the documentation string for `request.args` behavior diff --git a/changelogs/1707.bugfix.rst b/changelogs/1707.bugfix.rst deleted file mode 100644 index a98cd6b4..00000000 --- a/changelogs/1707.bugfix.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix `url_for` behavior with missing SERVER_NAME - -If the `SERVER_NAME` was missing in the `app.config` entity, the `url_for` on the `request` and `app` were failing -due to an `AttributeError`. This fix makes the availability of `SERVER_NAME` on our `app.config` an optional behavior. diff --git a/changelogs/37.bugfix.rst b/changelogs/37.bugfix.rst deleted file mode 100644 index 80c00a3f..00000000 --- a/changelogs/37.bugfix.rst +++ /dev/null @@ -1,11 +0,0 @@ -Fix blueprint middleware application - -Currently, any blueprint middleware registered, irrespective of which blueprint was used to do so, was -being applied to all of the routes created by the :code:`@app` and :code:`@blueprint` alike. - -As part of this change, the blueprint based middleware application is enforced based on where they are -registered. - -- If you register a middleware via :code:`@blueprint.middleware` then it will apply only to the routes defined by the blueprint. -- If you register a middleware via :code:`@blueprint_group.middleware` then it will apply to all blueprint based routes that are part of the group. -- If you define a middleware via :code:`@app.middleware` then it will be applied on all available routes diff --git a/sanic/__version__.py b/sanic/__version__.py index 08f1a61d..3124890b 100644 --- a/sanic/__version__.py +++ b/sanic/__version__.py @@ -1 +1 @@ -__version__ = "19.9.0" +__version__ = "19.12.0" diff --git a/scripts/pyproject.toml b/scripts/pyproject.toml index 34acf03f..0b2a417d 100644 --- a/scripts/pyproject.toml +++ b/scripts/pyproject.toml @@ -1,6 +1,6 @@ [tool.towncrier] package = "sanic" -package_dir = "." +package_dir = ".." filename = "../CHANGELOG.rst" directory = "./changelogs" underlines = ["=", "*", "~"] diff --git a/setup.cfg b/setup.cfg index d0efa01a..ac75014e 100644 --- a/setup.cfg +++ b/setup.cfg @@ -14,7 +14,7 @@ multi_line_output = 3 not_skip = __init__.py [version] -current_version = 19.9.0 +current_version = 19.12.0 files = sanic/__version__.py current_version_pattern = __version__ = "{current_version}" new_version_pattern = __version__ = "{new_version}" From a9c669f17b24a812b7bbad4a148df9ccc758c05f Mon Sep 17 00:00:00 2001 From: Eric Nieuwland Date: Sat, 28 Dec 2019 15:21:27 +0100 Subject: [PATCH 2/2] Forgotten slot Crashes the server at __init__() time --- sanic/server.py | 1 + 1 file changed, 1 insertion(+) diff --git a/sanic/server.py b/sanic/server.py index bde6def7..2e6be4a5 100644 --- a/sanic/server.py +++ b/sanic/server.py @@ -87,6 +87,7 @@ class HttpProtocol(asyncio.Protocol): "_header_fragment", "state", "_debug", + "_body_chunks", ) def __init__(