From 4c39718d8b5461f73b8520789a652874333f7c69 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Tue, 28 Feb 2017 20:40:11 -0600 Subject: add changelog for #2964 --- CHANGES.txt | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 59a733bcd..0ae44e620 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -4,6 +4,12 @@ unreleased Features -------- +- Added an execution policy hook to the request pipeline. An execution + policy has the ability to control creation and execution of the request + objects before they enter rest of the pipeline. This means for a given + request that the policy may create more than one request for retry + purposes. See https://github.com/Pylons/pyramid/pull/2964 + Bug Fixes --------- -- cgit v1.2.3 From 1691556eaa4ea90150ac8639ef26707a27216b32 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Fri, 3 Mar 2017 19:36:41 -0600 Subject: changelog for #2967 --- CHANGES.txt | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 0ae44e620..9c9acf3d0 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -15,7 +15,13 @@ Bug Fixes - HTTPException's accepts a detail kwarg that may be used to pass additional details to the exception. You may now pass objects so long as they have a - valid __str__ method. See https://github.com/Pylons/pyramid/pull/2951 + valid __str__ method. See https://github.com/Pylons/pyramid/pull/2951 + +- Fix a reference cycle causing memory leaks in which the registry + would keep a ``Configurator`` instance alive even after the configurator + was discarded. Another fix was also added for the ``global_registries`` + object in which the registry was stored in a closure preventing it from + being deallocated. See https://github.com/Pylons/pyramid/pull/2967 Deprecations ------------ -- cgit v1.2.3 From 38294e6dcabab1df45655949d4075c23b706bc2b Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Sun, 5 Mar 2017 20:59:51 -0600 Subject: add changelog for #2962 --- CHANGES.txt | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 9c9acf3d0..9056320c5 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -23,6 +23,11 @@ Bug Fixes object in which the registry was stored in a closure preventing it from being deallocated. See https://github.com/Pylons/pyramid/pull/2967 +- Fix a bug directly invoking ``pyramid.scripts.pserve.main`` with the + ``--reload`` option in which ``sys.argv`` is always used in the subprocess + instead of the supplied ``argv``. + See https://github.com/Pylons/pyramid/pull/2962 + Deprecations ------------ -- cgit v1.2.3 From 839dbff79f43a8f76d2be9edd95f78308a316deb Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Tue, 28 Mar 2017 20:57:04 -0500 Subject: changelog for #2984 --- CHANGES.txt | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 9056320c5..7676a69f9 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -10,6 +10,14 @@ Features request that the policy may create more than one request for retry purposes. See https://github.com/Pylons/pyramid/pull/2964 +- Support an ``open_url`` config setting in the ``pserve`` section of the + config file. This url is used to open a web browser when ``pserve --browser`` + is invoked. When this setting is unavailable the ``pserve`` script will + attempt to guess the port the server is using from the + ``server:`` section of the config file but there is no + requirement that the server is being run in this format so it may fail. + See https://github.com/Pylons/pyramid/pull/2984 + Bug Fixes --------- -- cgit v1.2.3 From fa8a9dcb11a7e2ec81fa041fd0292d7ce8e2138a Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Fri, 31 Mar 2017 00:09:51 -0500 Subject: add changelog for #2985 --- CHANGES.txt | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 7676a69f9..c617adf95 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,14 +1,32 @@ unreleased ========== -Features --------- +Major Features +-------------- + +- The file format used by all ``p*`` command line scripts such as ``pserve`` + and ``pshell``, as well as the ``pyramid.paster.bootstrap`` function + is now replaceable thanks to a new dependency on + `plaster `. + + For now, Pyramid is still shipping with integrated support for the + PasteDeploy INI format by depending on the ``plaster_pastedeploy`` binding. + + See https://github.com/Pylons/pyramid/pull/2985 - Added an execution policy hook to the request pipeline. An execution policy has the ability to control creation and execution of the request - objects before they enter rest of the pipeline. This means for a given - request that the policy may create more than one request for retry - purposes. See https://github.com/Pylons/pyramid/pull/2964 + objects before they enter rest of the pipeline. This means for a single + request environ the policy may create more than one request object. + + The first library to use this feature is + `pyramid_retry + `. + + See https://github.com/Pylons/pyramid/pull/2964 + +Features +-------- - Support an ``open_url`` config setting in the ``pserve`` section of the config file. This url is used to open a web browser when ``pserve --browser`` -- cgit v1.2.3 From f454b80b0f6e6442fa27e48b7e1e38c5a7cbef03 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Fri, 31 Mar 2017 01:49:42 -0500 Subject: add some simple notes about plaster in the narrative docs --- CHANGES.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index c617adf95..59196626d 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -7,7 +7,7 @@ Major Features - The file format used by all ``p*`` command line scripts such as ``pserve`` and ``pshell``, as well as the ``pyramid.paster.bootstrap`` function is now replaceable thanks to a new dependency on - `plaster `. + `plaster `_. For now, Pyramid is still shipping with integrated support for the PasteDeploy INI format by depending on the ``plaster_pastedeploy`` binding. @@ -16,12 +16,12 @@ Major Features - Added an execution policy hook to the request pipeline. An execution policy has the ability to control creation and execution of the request - objects before they enter rest of the pipeline. This means for a single + objects before they enter the rest of the pipeline. This means for a single request environ the policy may create more than one request object. The first library to use this feature is `pyramid_retry - `. + `_. See https://github.com/Pylons/pyramid/pull/2964 -- cgit v1.2.3 From bd1cce29c9d5e618c4682e7c5a37ea574aee9817 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Sun, 2 Apr 2017 12:58:58 -0500 Subject: add changelog for #2989 --- CHANGES.txt | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 7676a69f9..c8a87f625 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -18,6 +18,12 @@ Features requirement that the server is being run in this format so it may fail. See https://github.com/Pylons/pyramid/pull/2984 +- The threadlocals are now available inside any function invoked via + ``config.include``. This means the only config-time code that cannot rely + on threadlocals is code executed from non-actions inside the main. This + can be alleviated by invoking ``config.begin()`` and ``config.end()`` + appropriately. See https://github.com/Pylons/pyramid/pull/2989 + Bug Fixes --------- -- cgit v1.2.3 From a2c7c7a49bceeaaab2853e7e73c3671979d4c9ed Mon Sep 17 00:00:00 2001 From: Matthew Wilkes Date: Mon, 5 Dec 2016 12:16:26 +0100 Subject: Create a new ICSRF implementation for getting CSRF tokens, split out from the session machinery. Adds configuration of this to the csrf_options configurator commands. Make the default implementation a fallback to the old one. Documentation patches for new best practices given updates CSRF implementation. --- CHANGES.txt | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index c8a87f625..9d6264688 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -24,6 +24,14 @@ Features can be alleviated by invoking ``config.begin()`` and ``config.end()`` appropriately. See https://github.com/Pylons/pyramid/pull/2989 +- A new CSRF implementation, :class:`pyramid.csrf.SessionCSRF` has been added, + which deleagates all CSRF generation to the current session, following the + old API for this. A ``get_csrf_token()`` method is now available in template + global scope, to make it easy for template developers to get the current CSRF + token without adding it to Python code. + See https://github.com/Pylons/pyramid/pull/2854 + + Bug Fixes --------- @@ -50,3 +58,7 @@ Backward Incompatibilities Documentation Changes --------------------- + +- Retrieving CSRF token from the session has been deprecated, in favor of + equivalent methods in :mod:`pyramid.csrf`. + See https://github.com/Pylons/pyramid/pull/2854 -- cgit v1.2.3 From 2ded2fc216b4caaf0d97813413943e0838b6eaaa Mon Sep 17 00:00:00 2001 From: Matthew Wilkes Date: Wed, 26 Apr 2017 15:41:47 +0100 Subject: Apply drafting changes to documentation. --- CHANGES.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 9d6264688..762550053 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -25,7 +25,7 @@ Features appropriately. See https://github.com/Pylons/pyramid/pull/2989 - A new CSRF implementation, :class:`pyramid.csrf.SessionCSRF` has been added, - which deleagates all CSRF generation to the current session, following the + which delegates all CSRF generation to the current session, following the old API for this. A ``get_csrf_token()`` method is now available in template global scope, to make it easy for template developers to get the current CSRF token without adding it to Python code. -- cgit v1.2.3 From 682a9b9df6f42f8261daa077f04b47b65bf00c34 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Sat, 29 Apr 2017 01:43:38 -0500 Subject: final cleanup of csrf decoupling in #2854 - Renamed `SessionCSRFStoragePolicy` to `LegacySessionCSRFStoragePolicy` for the version that uses the legacy `ISession.get_csrf_token` and `ISession.new_csrf_token` apis and set that as the default. - Added new `SessionCSRFStoragePolicy` that stores data in the session similar to how the `SessionAuthenticationPolicy` works. - `CookieCSRFStoragePolicy` did not properly return the newly generated token from `get_csrf_token` after calling `new_csrf_token`. It needed to cache the new value since the response callback does not affect the current request. - `CookieCSRFStoragePolicy` was not forwarding the `domain` value to the `CookieProfile` causing that setting to be ignored. - Removed `check_csrf_token` from the `ICSRFStoragePolicy` interface to simplify implementations of storage policies. - Added an introspectable item for the configured storage policy so that it appears on the debugtoolbar. - Added a change note on `ISession` that it no longer required the csrf methods. - Leave deprecated shims in ``pyramid.session`` for ``check_csrf_origin`` and ``check_csrf_token``. --- CHANGES.txt | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 762550053..7d70abbb8 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -24,12 +24,13 @@ Features can be alleviated by invoking ``config.begin()`` and ``config.end()`` appropriately. See https://github.com/Pylons/pyramid/pull/2989 -- A new CSRF implementation, :class:`pyramid.csrf.SessionCSRF` has been added, - which delegates all CSRF generation to the current session, following the - old API for this. A ``get_csrf_token()`` method is now available in template - global scope, to make it easy for template developers to get the current CSRF - token without adding it to Python code. - See https://github.com/Pylons/pyramid/pull/2854 +- A new CSRF implementation, ``pyramid.csrf.SessionCSRFStoragePolicy``, + has been added which delegates all CSRF generation to the current session, + following the old API for this. A ``pyramid.csrf.get_csrf_token()`` api is now + available in template global scope, to make it easy for template developers + to get the current CSRF token without adding it to Python code. + See https://github.com/Pylons/pyramid/pull/2854 and + https://github.com/Pylons/pyramid/pull/3019 Bug Fixes -- cgit v1.2.3 From 87af11c5e33b8c03d57a8b571f0b152efe866af1 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Sat, 29 Apr 2017 21:48:49 -0500 Subject: add changelog for #2874 --- CHANGES.txt | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index c8a87f625..8868e6ff7 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -24,6 +24,12 @@ Features can be alleviated by invoking ``config.begin()`` and ``config.end()`` appropriately. See https://github.com/Pylons/pyramid/pull/2989 +- The ``pyramid.config.Configurator`` can now be used as a context manager + which will automatically push/pop threadlocals (similar to + ``config.begin()`` and ``config.end()``). It will also automatically perform + a ``config.commit()`` and thus it is only recommended to be used at the + top-level of your app. See https://github.com/Pylons/pyramid/pull/2874 + Bug Fixes --------- -- cgit v1.2.3 From 6419a30f2322157a1faf3fce5bec5122a2ca69fa Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Sun, 30 Apr 2017 19:08:50 -0500 Subject: improve csrf changelog docs --- CHANGES.txt | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 075d3ffd9..719fbd495 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -11,6 +11,7 @@ Major Features For now, Pyramid is still shipping with integrated support for the PasteDeploy INI format by depending on the ``plaster_pastedeploy`` binding. + This may change in the future. See https://github.com/Pylons/pyramid/pull/2985 @@ -42,11 +43,26 @@ Features can be alleviated by invoking ``config.begin()`` and ``config.end()`` appropriately. See https://github.com/Pylons/pyramid/pull/2989 -- A new CSRF implementation, ``pyramid.csrf.SessionCSRFStoragePolicy``, - has been added which delegates all CSRF generation to the current session, - following the old API for this. A ``pyramid.csrf.get_csrf_token()`` api is now - available in template global scope, to make it easy for template developers - to get the current CSRF token without adding it to Python code. +- CSRF support has been refactored out of sessions and into its own + independent API in the ``pyramid.csrf`` module. It supports a pluggable + ``pyramid.interfaces.ICSRFStoragePolicy`` which can be used to define your + own mechanism for generating and validating CSRF tokens. By default, + Pyramid continues to use the ``pyramid.csrf.LegacySessionCSRFStoragePolicy`` + that uses the ``request.session.get_csrf_token`` and + ``request.session.new_csrf_token`` APIs under the hood to preserve + compatibility. Two new policies are shipped as well, + ``pyramid.csrf.SessionCSRFStoragePolicy`` and + ``pyramid.csrf.CookieCSRFStoragePolicy`` which will store the CSRF tokens + in the session and in a standalone cookie, respectively. The storage policy + can be changed by using the new + ``pyramid.config.Configurator.set_csrf_storage_policy`` config directive. + + CSRF tokens should be used via the new ``pyramid.csrf.get_csrf_token``, + ``pyramid.csrf.new_csrf_token`` and ``pyramid.csrf.check_csrf_token`` APIs + in order to continue working if the storage policy is changed. Also, the + ``pyramid.csrf.get_csrf_token`` function is injected into templates to be + used conveniently in UI code. + See https://github.com/Pylons/pyramid/pull/2854 and https://github.com/Pylons/pyramid/pull/3019 -- cgit v1.2.3 From 9028c99445d4c0a7ac24aaa84a6db499397e691a Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Sun, 30 Apr 2017 19:09:17 -0500 Subject: move csrf changes to the "major features" section --- CHANGES.txt | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 719fbd495..bcfcc3107 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -26,23 +26,6 @@ Major Features See https://github.com/Pylons/pyramid/pull/2964 -Features --------- - -- Support an ``open_url`` config setting in the ``pserve`` section of the - config file. This url is used to open a web browser when ``pserve --browser`` - is invoked. When this setting is unavailable the ``pserve`` script will - attempt to guess the port the server is using from the - ``server:`` section of the config file but there is no - requirement that the server is being run in this format so it may fail. - See https://github.com/Pylons/pyramid/pull/2984 - -- The threadlocals are now available inside any function invoked via - ``config.include``. This means the only config-time code that cannot rely - on threadlocals is code executed from non-actions inside the main. This - can be alleviated by invoking ``config.begin()`` and ``config.end()`` - appropriately. See https://github.com/Pylons/pyramid/pull/2989 - - CSRF support has been refactored out of sessions and into its own independent API in the ``pyramid.csrf`` module. It supports a pluggable ``pyramid.interfaces.ICSRFStoragePolicy`` which can be used to define your @@ -66,6 +49,23 @@ Features See https://github.com/Pylons/pyramid/pull/2854 and https://github.com/Pylons/pyramid/pull/3019 +Features +-------- + +- Support an ``open_url`` config setting in the ``pserve`` section of the + config file. This url is used to open a web browser when ``pserve --browser`` + is invoked. When this setting is unavailable the ``pserve`` script will + attempt to guess the port the server is using from the + ``server:`` section of the config file but there is no + requirement that the server is being run in this format so it may fail. + See https://github.com/Pylons/pyramid/pull/2984 + +- The threadlocals are now available inside any function invoked via + ``config.include``. This means the only config-time code that cannot rely + on threadlocals is code executed from non-actions inside the main. This + can be alleviated by invoking ``config.begin()`` and ``config.end()`` + appropriately. See https://github.com/Pylons/pyramid/pull/2989 + - The ``pyramid.config.Configurator`` can now be used as a context manager which will automatically push/pop threadlocals (similar to ``config.begin()`` and ``config.end()``). It will also automatically perform -- cgit v1.2.3 From 847fb70980aca38b0dc415e2b433618d7e42ac8d Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Sun, 30 Apr 2017 19:10:12 -0500 Subject: improve flow of changes for configurator threadlocals --- CHANGES.txt | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index bcfcc3107..e30f185f0 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -60,18 +60,19 @@ Features requirement that the server is being run in this format so it may fail. See https://github.com/Pylons/pyramid/pull/2984 -- The threadlocals are now available inside any function invoked via - ``config.include``. This means the only config-time code that cannot rely - on threadlocals is code executed from non-actions inside the main. This - can be alleviated by invoking ``config.begin()`` and ``config.end()`` - appropriately. See https://github.com/Pylons/pyramid/pull/2989 - - The ``pyramid.config.Configurator`` can now be used as a context manager which will automatically push/pop threadlocals (similar to ``config.begin()`` and ``config.end()``). It will also automatically perform a ``config.commit()`` and thus it is only recommended to be used at the top-level of your app. See https://github.com/Pylons/pyramid/pull/2874 +- The threadlocals are now available inside any function invoked via + ``config.include``. This means the only config-time code that cannot rely + on threadlocals is code executed from non-actions inside the main. This + can be alleviated by invoking ``config.begin()`` and ``config.end()`` + appropriately or using the new context manager feature of the configurator. + See https://github.com/Pylons/pyramid/pull/2989 + Bug Fixes --------- -- cgit v1.2.3 From 2b9b6cab969eab9b1976a1a9a29ed2e44e92ca6d Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Mon, 1 May 2017 21:10:30 -0500 Subject: update changelog and add whatsnew-1.9 --- CHANGES.txt | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index e30f185f0..861dfa684 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -49,8 +49,8 @@ Major Features See https://github.com/Pylons/pyramid/pull/2854 and https://github.com/Pylons/pyramid/pull/3019 -Features --------- +Minor Features +-------------- - Support an ``open_url`` config setting in the ``pserve`` section of the config file. This url is used to open a web browser when ``pserve --browser`` @@ -94,12 +94,21 @@ Bug Fixes Deprecations ------------ -Backward Incompatibilities --------------------------- +- Pyramid currently depends on ``plaster_pastedeploy`` to simplify the + transition to ``plaster`` by maintaining integrated support for INI files. + This dependency on ``plaster_pastedeploy`` should be considered subject to + Pyramid's deprecation policy and is subject to removal in the future. + Applications should depend on the appropriate plaster binding to satisfy + their needs. + +- Retrieving CSRF token from the session has been deprecated in favor of + equivalent methods in the ``pyramid.csrf`` module. The CSRF methods + (``ISession.get_csrf_token`` and ``ISession.new_csrf_token``) are no longer + required on the ``ISession`` interface except when using the default + ``pyramid.csrf.LegacySessionCSRFStoragePolicy``. -Documentation Changes ---------------------- + Also, ``pyramid.session.check_csrf_token`` is now located at + ``pyramid.csrf.check_csrf_token``. -- Retrieving CSRF token from the session has been deprecated, in favor of - equivalent methods in :mod:`pyramid.csrf`. - See https://github.com/Pylons/pyramid/pull/2854 + See https://github.com/Pylons/pyramid/pull/2854 and + https://github.com/Pylons/pyramid/pull/3019 -- cgit v1.2.3 From fdd77da6231fa9286c3f6fa494ae0731570e0134 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Mon, 1 May 2017 21:42:54 -0500 Subject: link to plaster_pastedeploy --- CHANGES.txt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 861dfa684..a6cac805f 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -10,8 +10,9 @@ Major Features `plaster `_. For now, Pyramid is still shipping with integrated support for the - PasteDeploy INI format by depending on the ``plaster_pastedeploy`` binding. - This may change in the future. + PasteDeploy INI format by depending on the + `plaster_pastedeploy Date: Mon, 1 May 2017 21:54:55 -0500 Subject: add changelog for #2993 --- CHANGES.txt | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index a6cac805f..70a2ff922 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -113,3 +113,9 @@ Deprecations See https://github.com/Pylons/pyramid/pull/2854 and https://github.com/Pylons/pyramid/pull/3019 + +Documentation Changes +--------------------- + +- Added the execution policy to the routing diagram in the Request Processing + chatper. See https://github.com/Pylons/pyramid/pull/2993 -- cgit v1.2.3 From 2aebc688c6a81b1baef01791e1cf3c9907c7c3ee Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Mon, 1 May 2017 22:07:55 -0500 Subject: line length fixes in whatsnew-1.9 --- CHANGES.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 70a2ff922..85931d7f1 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -98,7 +98,7 @@ Deprecations - Pyramid currently depends on ``plaster_pastedeploy`` to simplify the transition to ``plaster`` by maintaining integrated support for INI files. This dependency on ``plaster_pastedeploy`` should be considered subject to - Pyramid's deprecation policy and is subject to removal in the future. + Pyramid's deprecation policy and may be removed in the future. Applications should depend on the appropriate plaster binding to satisfy their needs. -- cgit v1.2.3 From 840508d2a104d1e729bbb1e91f50947da6988133 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Mon, 1 May 2017 22:51:18 -0500 Subject: typo --- CHANGES.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 85931d7f1..d77a5e49b 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -118,4 +118,4 @@ Documentation Changes --------------------- - Added the execution policy to the routing diagram in the Request Processing - chatper. See https://github.com/Pylons/pyramid/pull/2993 + chapter. See https://github.com/Pylons/pyramid/pull/2993 -- cgit v1.2.3 From c84904381f664511060b39d0937fbe76efa22f25 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Mon, 1 May 2017 22:51:58 -0500 Subject: prep 1.9a1 --- CHANGES.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index d77a5e49b..0513fd3c9 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,5 +1,5 @@ -unreleased -========== +1.9a1 (2017-05-01) +================== Major Features -------------- -- cgit v1.2.3 From fbfd8191cee8536078cc01cd2256378ba0711f22 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Mon, 1 May 2017 23:05:53 -0500 Subject: fix url syntax yet again --- CHANGES.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 0513fd3c9..2378ec883 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -11,7 +11,7 @@ Major Features For now, Pyramid is still shipping with integrated support for the PasteDeploy INI format by depending on the - `plaster_pastedeploy `_ binding library. This may change in the future. See https://github.com/Pylons/pyramid/pull/2985 -- cgit v1.2.3 From 3213e20f58d1a0b339e9d5bf9378ec54593624c7 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Wed, 3 May 2017 14:05:19 -0500 Subject: add changelog for #3029 --- CHANGES.txt | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 2378ec883..b299ed6e9 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -114,6 +114,23 @@ Deprecations See https://github.com/Pylons/pyramid/pull/2854 and https://github.com/Pylons/pyramid/pull/3019 +Backward Incompatibilities +-------------------------- + +- ``request.exception`` and ``request.exc_info`` will only be set if the + response was generated by the EXCVIEW tween. This is to avoid any confusion + where a response was generated elsewhere in the pipeline and not in + direct relation to the original exception. If anyone upstream wants to + catch and render responses for exceptions they should set + ``request.exception`` and ``request.exc_info`` themselves to indicate + the exception that was squashed when generating the response. + + This is a very minor incompatibility. Most tweens right now would give + priority to the raised exception and ignore ``request.exception``. This + change just improves and clarifies that bookkeeping by trying to be + more clear about the relationship between the response and its squashed + exception. See https://github.com/Pylons/pyramid/pull/3029 + Documentation Changes --------------------- -- cgit v1.2.3 From e2e51b35303e69b5028a84026837095b1bfe6f79 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Thu, 4 May 2017 00:23:18 -0500 Subject: add changelog for #3031 --- CHANGES.txt | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index b299ed6e9..80b5003c1 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -125,11 +125,16 @@ Backward Incompatibilities ``request.exception`` and ``request.exc_info`` themselves to indicate the exception that was squashed when generating the response. + Similar behavior occurs with ``request.invoke_exception_view`` in which + the exception properties are set to reflect the exception if a response + is successfully generated by the method. + This is a very minor incompatibility. Most tweens right now would give priority to the raised exception and ignore ``request.exception``. This change just improves and clarifies that bookkeeping by trying to be more clear about the relationship between the response and its squashed - exception. See https://github.com/Pylons/pyramid/pull/3029 + exception. See https://github.com/Pylons/pyramid/pull/3029 and + https://github.com/Pylons/pyramid/pull/3031 Documentation Changes --------------------- -- cgit v1.2.3 From 1fc7eefc4ac9f5ea3d22d7a108cd3da1e73cbcfa Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Tue, 9 May 2017 01:41:12 -0500 Subject: fix changelog, added #3031 and #3029 to the wrong release version --- CHANGES.txt | 47 +++++++++++++++++++++++++---------------------- 1 file changed, 25 insertions(+), 22 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 80b5003c1..51a1e457d 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,3 +1,28 @@ +1.9a2 (2017-05-09) +================== + +Backward Incompatibilities +-------------------------- + +- ``request.exception`` and ``request.exc_info`` will only be set if the + response was generated by the EXCVIEW tween. This is to avoid any confusion + where a response was generated elsewhere in the pipeline and not in + direct relation to the original exception. If anyone upstream wants to + catch and render responses for exceptions they should set + ``request.exception`` and ``request.exc_info`` themselves to indicate + the exception that was squashed when generating the response. + + Similar behavior occurs with ``request.invoke_exception_view`` in which + the exception properties are set to reflect the exception if a response + is successfully generated by the method. + + This is a very minor incompatibility. Most tweens right now would give + priority to the raised exception and ignore ``request.exception``. This + change just improves and clarifies that bookkeeping by trying to be + more clear about the relationship between the response and its squashed + exception. See https://github.com/Pylons/pyramid/pull/3029 and + https://github.com/Pylons/pyramid/pull/3031 + 1.9a1 (2017-05-01) ================== @@ -114,28 +139,6 @@ Deprecations See https://github.com/Pylons/pyramid/pull/2854 and https://github.com/Pylons/pyramid/pull/3019 -Backward Incompatibilities --------------------------- - -- ``request.exception`` and ``request.exc_info`` will only be set if the - response was generated by the EXCVIEW tween. This is to avoid any confusion - where a response was generated elsewhere in the pipeline and not in - direct relation to the original exception. If anyone upstream wants to - catch and render responses for exceptions they should set - ``request.exception`` and ``request.exc_info`` themselves to indicate - the exception that was squashed when generating the response. - - Similar behavior occurs with ``request.invoke_exception_view`` in which - the exception properties are set to reflect the exception if a response - is successfully generated by the method. - - This is a very minor incompatibility. Most tweens right now would give - priority to the raised exception and ignore ``request.exception``. This - change just improves and clarifies that bookkeeping by trying to be - more clear about the relationship between the response and its squashed - exception. See https://github.com/Pylons/pyramid/pull/3029 and - https://github.com/Pylons/pyramid/pull/3031 - Documentation Changes --------------------- -- cgit v1.2.3 From 37d887705400e0c7631ec26afb972ebe9bfe35d5 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Mon, 22 May 2017 15:13:18 -0700 Subject: add changelog for #3054 --- CHANGES.txt | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 51a1e457d..1a7cfaf0b 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,3 +1,10 @@ +unreleased +========== + +- Add an informative error message when unknown predicates are supplied. The + new message suggests alternatives based on the list of known predicates. + See https://github.com/Pylons/pyramid/pull/3054 + 1.9a2 (2017-05-09) ================== -- cgit v1.2.3 From 50d216a549bc848f411769690d722d367c91fdb4 Mon Sep 17 00:00:00 2001 From: Steve Piercy Date: Mon, 22 May 2017 17:49:58 -0700 Subject: add change note --- CHANGES.txt | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 1a7cfaf0b..c21508a70 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -5,6 +5,10 @@ unreleased new message suggests alternatives based on the list of known predicates. See https://github.com/Pylons/pyramid/pull/3054 +- Added integrity attributes for JavaScripts in cookiecutters, scaffolds, and + resulting source files in tutorials. + See https://github.com/Pylons/pyramid/issues/2548 + 1.9a2 (2017-05-09) ================== -- cgit v1.2.3 From d179ce929d800fb5a8a43e9fece625cdd2eba25f Mon Sep 17 00:00:00 2001 From: Steve Piercy Date: Thu, 1 Jun 2017 18:10:25 -0700 Subject: use shortcut for github URL; update RELEASING.txt - refs: #3042 --- CHANGES.txt | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index c21508a70..fc1d5ae25 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -9,6 +9,10 @@ unreleased resulting source files in tutorials. See https://github.com/Pylons/pyramid/issues/2548 +- Update RELEASING.txt for updating cookiecutters. Change cookiecutter URLs to + use shortcut. + See: https://github.com/Pylons/pyramid/issues/3042 + 1.9a2 (2017-05-09) ================== -- cgit v1.2.3 From cc8ce57839d26e82466df9f74c79281450bf18a5 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Mon, 5 Jun 2017 11:51:52 -0500 Subject: add changelog for #3060 --- CHANGES.txt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index fc1d5ae25..06bb71c1e 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -11,7 +11,11 @@ unreleased - Update RELEASING.txt for updating cookiecutters. Change cookiecutter URLs to use shortcut. - See: https://github.com/Pylons/pyramid/issues/3042 + See https://github.com/Pylons/pyramid/issues/3042 + +- Ensure the correct threadlocals are pushed during view execution when + invoked from ``request.invoke_exception_view``. + See https://github.com/Pylons/pyramid/pull/3060 1.9a2 (2017-05-09) ================== -- cgit v1.2.3 From 7b3249dff86b4359508897c77dea6aa75421b052 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Fri, 9 Jun 2017 00:04:35 -0500 Subject: add changelog for #3074 --- CHANGES.txt | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 06bb71c1e..1402045d4 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -17,6 +17,10 @@ unreleased invoked from ``request.invoke_exception_view``. See https://github.com/Pylons/pyramid/pull/3060 +- Fix a bug in which ``pyramid.security.ALL_PERMISSIONS`` failed to return + a valid iterator in its ``__iter__`` implementation. + See https://github.com/Pylons/pyramid/pull/3074 + 1.9a2 (2017-05-09) ================== -- cgit v1.2.3 From b54a702599e00827ae0389808d07f941cdfb04c5 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Wed, 14 Jun 2017 23:56:42 -0500 Subject: add changelog for #3084 --- CHANGES.txt | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 1402045d4..547c00bbc 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -21,6 +21,12 @@ unreleased a valid iterator in its ``__iter__`` implementation. See https://github.com/Pylons/pyramid/pull/3074 +- Normalize the permission results to a proper class hierarchy. + ``pyramid.security.ACLAllowed`` is now a subclass of + ``pyramid.security.Allowed`` and ``pyramid.securit.ACLDenied`` is now a + subclass of ``pyramid.security.Denied``. + See https://github.com/Pylons/pyramid/pull/3084 + 1.9a2 (2017-05-09) ================== -- cgit v1.2.3 From 975b025c7952d148392cc17b48388a4ee5dcbd45 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Thu, 15 Jun 2017 00:39:57 -0500 Subject: update whatsnew-1.9 --- CHANGES.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 547c00bbc..fdd9dd884 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -23,7 +23,7 @@ unreleased - Normalize the permission results to a proper class hierarchy. ``pyramid.security.ACLAllowed`` is now a subclass of - ``pyramid.security.Allowed`` and ``pyramid.securit.ACLDenied`` is now a + ``pyramid.security.Allowed`` and ``pyramid.security.ACLDenied`` is now a subclass of ``pyramid.security.Denied``. See https://github.com/Pylons/pyramid/pull/3084 -- cgit v1.2.3 From 5c437abba0926f6093efbd481e49763de2436665 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Sun, 18 Jun 2017 00:18:13 -0500 Subject: add changelog for #3088 --- CHANGES.txt | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index fdd9dd884..939b777ab 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -27,6 +27,10 @@ unreleased subclass of ``pyramid.security.Denied``. See https://github.com/Pylons/pyramid/pull/3084 +- Add a ``quote_via`` argument to ``pyramid.encode.urlencode`` to follow + the stdlib's version and enable custom quoting functions. + See https://github.com/Pylons/pyramid/pull/3088 + 1.9a2 (2017-05-09) ================== -- cgit v1.2.3 From 983216c05a79e6a725d68f94ef3d0ab1d25f97d2 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Mon, 19 Jun 2017 21:35:46 -0500 Subject: add changelog for #3034 --- CHANGES.txt | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 939b777ab..d695599a5 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -31,6 +31,12 @@ unreleased the stdlib's version and enable custom quoting functions. See https://github.com/Pylons/pyramid/pull/3088 +- Support `_query=None` and `_anchor=None` in ``request.route_url`` as well + as ``query=None`` and ``anchor=None`` in ``request.resource_url``. + Previously this would cause an `?` and a `#`, respectively, in the url + with nothing after it. + See https://github.com/Pylons/pyramid/pull/3034 + 1.9a2 (2017-05-09) ================== -- cgit v1.2.3 From 5aa1afbb216a800a420ffa6121a54b4ea194482b Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Mon, 19 Jun 2017 21:39:36 -0500 Subject: add changelog for #3086 --- CHANGES.txt | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index d695599a5..bc911d1e3 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -37,6 +37,12 @@ unreleased with nothing after it. See https://github.com/Pylons/pyramid/pull/3034 +- Revamp the ``IRouter`` API used by ``IExecutionPolicy`` to force + pushing/popping the request threadlocals. The + ``IRouter.make_request(environ)`` API has been replaced by + ``IRouter.request_context(environ)`` which should be used as a context + manager. See https://github.com/Pylons/pyramid/pull/3086 + 1.9a2 (2017-05-09) ================== -- cgit v1.2.3 From 53cfb8383593288f5114c1a31a6253987e9233bd Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Mon, 19 Jun 2017 21:43:03 -0500 Subject: update the whatsnew-1.9 with changes from #3034 --- CHANGES.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index bc911d1e3..dfa9844f9 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -34,8 +34,8 @@ unreleased - Support `_query=None` and `_anchor=None` in ``request.route_url`` as well as ``query=None`` and ``anchor=None`` in ``request.resource_url``. Previously this would cause an `?` and a `#`, respectively, in the url - with nothing after it. - See https://github.com/Pylons/pyramid/pull/3034 + with nothing after it. Now the unnecessary parts are dropped from the + generated URL. See https://github.com/Pylons/pyramid/pull/3034 - Revamp the ``IRouter`` API used by ``IExecutionPolicy`` to force pushing/popping the request threadlocals. The -- cgit v1.2.3 From bd124a79c3c1517290b9d074f88875f05a2b619e Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Mon, 19 Jun 2017 22:16:26 -0500 Subject: prep 1.9b1 --- CHANGES.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index dfa9844f9..fc601c5ca 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,5 +1,5 @@ -unreleased -========== +1.9b1 (2017-06-19) +================== - Add an informative error message when unknown predicates are supplied. The new message suggests alternatives based on the list of known predicates. -- cgit v1.2.3 From 19d341b5be789e97000d3dcbd33de75d8b061829 Mon Sep 17 00:00:00 2001 From: Steve Piercy Date: Mon, 26 Jun 2017 03:48:21 -0700 Subject: change http://docs.pylonsproject.org to https - use correct URL for code style - use correct Pyramid version for zodb wiki src file template --- CHANGES.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index fc601c5ca..2f24262c2 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -77,7 +77,7 @@ Major Features - The file format used by all ``p*`` command line scripts such as ``pserve`` and ``pshell``, as well as the ``pyramid.paster.bootstrap`` function is now replaceable thanks to a new dependency on - `plaster `_. + `plaster `_. For now, Pyramid is still shipping with integrated support for the PasteDeploy INI format by depending on the @@ -93,7 +93,7 @@ Major Features The first library to use this feature is `pyramid_retry - `_. + `_. See https://github.com/Pylons/pyramid/pull/2964 -- cgit v1.2.3 From d826df0b03011f46ee4d92b446e6ff19db9831b4 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Mon, 26 Jun 2017 23:44:23 -0500 Subject: prep 1.9 --- CHANGES.txt | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 2f24262c2..08214e5ec 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,3 +1,10 @@ +1.9 (2017-06-26) +================ + +- No major changes from 1.9b1. + +- Updated documentation links for ``docs.pylonsproject.org`` to use HTTPS. + 1.9b1 (2017-06-19) ================== -- cgit v1.2.3 From 884eb55bbaef486deadb629d87abc0bf46a11719 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Tue, 27 Jun 2017 00:10:12 -0500 Subject: prep 1.10.dev0 --- CHANGES.txt | 192 ++---------------------------------------------------------- 1 file changed, 6 insertions(+), 186 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 08214e5ec..dd1f3ea52 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,198 +1,18 @@ -1.9 (2017-06-26) -================ +unreleased +========== -- No major changes from 1.9b1. - -- Updated documentation links for ``docs.pylonsproject.org`` to use HTTPS. - -1.9b1 (2017-06-19) -================== - -- Add an informative error message when unknown predicates are supplied. The - new message suggests alternatives based on the list of known predicates. - See https://github.com/Pylons/pyramid/pull/3054 - -- Added integrity attributes for JavaScripts in cookiecutters, scaffolds, and - resulting source files in tutorials. - See https://github.com/Pylons/pyramid/issues/2548 - -- Update RELEASING.txt for updating cookiecutters. Change cookiecutter URLs to - use shortcut. - See https://github.com/Pylons/pyramid/issues/3042 - -- Ensure the correct threadlocals are pushed during view execution when - invoked from ``request.invoke_exception_view``. - See https://github.com/Pylons/pyramid/pull/3060 - -- Fix a bug in which ``pyramid.security.ALL_PERMISSIONS`` failed to return - a valid iterator in its ``__iter__`` implementation. - See https://github.com/Pylons/pyramid/pull/3074 - -- Normalize the permission results to a proper class hierarchy. - ``pyramid.security.ACLAllowed`` is now a subclass of - ``pyramid.security.Allowed`` and ``pyramid.security.ACLDenied`` is now a - subclass of ``pyramid.security.Denied``. - See https://github.com/Pylons/pyramid/pull/3084 - -- Add a ``quote_via`` argument to ``pyramid.encode.urlencode`` to follow - the stdlib's version and enable custom quoting functions. - See https://github.com/Pylons/pyramid/pull/3088 - -- Support `_query=None` and `_anchor=None` in ``request.route_url`` as well - as ``query=None`` and ``anchor=None`` in ``request.resource_url``. - Previously this would cause an `?` and a `#`, respectively, in the url - with nothing after it. Now the unnecessary parts are dropped from the - generated URL. See https://github.com/Pylons/pyramid/pull/3034 - -- Revamp the ``IRouter`` API used by ``IExecutionPolicy`` to force - pushing/popping the request threadlocals. The - ``IRouter.make_request(environ)`` API has been replaced by - ``IRouter.request_context(environ)`` which should be used as a context - manager. See https://github.com/Pylons/pyramid/pull/3086 - -1.9a2 (2017-05-09) -================== - -Backward Incompatibilities --------------------------- - -- ``request.exception`` and ``request.exc_info`` will only be set if the - response was generated by the EXCVIEW tween. This is to avoid any confusion - where a response was generated elsewhere in the pipeline and not in - direct relation to the original exception. If anyone upstream wants to - catch and render responses for exceptions they should set - ``request.exception`` and ``request.exc_info`` themselves to indicate - the exception that was squashed when generating the response. - - Similar behavior occurs with ``request.invoke_exception_view`` in which - the exception properties are set to reflect the exception if a response - is successfully generated by the method. - - This is a very minor incompatibility. Most tweens right now would give - priority to the raised exception and ignore ``request.exception``. This - change just improves and clarifies that bookkeeping by trying to be - more clear about the relationship between the response and its squashed - exception. See https://github.com/Pylons/pyramid/pull/3029 and - https://github.com/Pylons/pyramid/pull/3031 - -1.9a1 (2017-05-01) -================== - -Major Features --------------- - -- The file format used by all ``p*`` command line scripts such as ``pserve`` - and ``pshell``, as well as the ``pyramid.paster.bootstrap`` function - is now replaceable thanks to a new dependency on - `plaster `_. - - For now, Pyramid is still shipping with integrated support for the - PasteDeploy INI format by depending on the - `plaster_pastedeploy `_ - binding library. This may change in the future. - - See https://github.com/Pylons/pyramid/pull/2985 - -- Added an execution policy hook to the request pipeline. An execution - policy has the ability to control creation and execution of the request - objects before they enter the rest of the pipeline. This means for a single - request environ the policy may create more than one request object. - - The first library to use this feature is - `pyramid_retry - `_. - - See https://github.com/Pylons/pyramid/pull/2964 - -- CSRF support has been refactored out of sessions and into its own - independent API in the ``pyramid.csrf`` module. It supports a pluggable - ``pyramid.interfaces.ICSRFStoragePolicy`` which can be used to define your - own mechanism for generating and validating CSRF tokens. By default, - Pyramid continues to use the ``pyramid.csrf.LegacySessionCSRFStoragePolicy`` - that uses the ``request.session.get_csrf_token`` and - ``request.session.new_csrf_token`` APIs under the hood to preserve - compatibility. Two new policies are shipped as well, - ``pyramid.csrf.SessionCSRFStoragePolicy`` and - ``pyramid.csrf.CookieCSRFStoragePolicy`` which will store the CSRF tokens - in the session and in a standalone cookie, respectively. The storage policy - can be changed by using the new - ``pyramid.config.Configurator.set_csrf_storage_policy`` config directive. - - CSRF tokens should be used via the new ``pyramid.csrf.get_csrf_token``, - ``pyramid.csrf.new_csrf_token`` and ``pyramid.csrf.check_csrf_token`` APIs - in order to continue working if the storage policy is changed. Also, the - ``pyramid.csrf.get_csrf_token`` function is injected into templates to be - used conveniently in UI code. - - See https://github.com/Pylons/pyramid/pull/2854 and - https://github.com/Pylons/pyramid/pull/3019 - -Minor Features --------------- - -- Support an ``open_url`` config setting in the ``pserve`` section of the - config file. This url is used to open a web browser when ``pserve --browser`` - is invoked. When this setting is unavailable the ``pserve`` script will - attempt to guess the port the server is using from the - ``server:`` section of the config file but there is no - requirement that the server is being run in this format so it may fail. - See https://github.com/Pylons/pyramid/pull/2984 - -- The ``pyramid.config.Configurator`` can now be used as a context manager - which will automatically push/pop threadlocals (similar to - ``config.begin()`` and ``config.end()``). It will also automatically perform - a ``config.commit()`` and thus it is only recommended to be used at the - top-level of your app. See https://github.com/Pylons/pyramid/pull/2874 - -- The threadlocals are now available inside any function invoked via - ``config.include``. This means the only config-time code that cannot rely - on threadlocals is code executed from non-actions inside the main. This - can be alleviated by invoking ``config.begin()`` and ``config.end()`` - appropriately or using the new context manager feature of the configurator. - See https://github.com/Pylons/pyramid/pull/2989 +Features +-------- Bug Fixes --------- -- HTTPException's accepts a detail kwarg that may be used to pass additional - details to the exception. You may now pass objects so long as they have a - valid __str__ method. See https://github.com/Pylons/pyramid/pull/2951 - -- Fix a reference cycle causing memory leaks in which the registry - would keep a ``Configurator`` instance alive even after the configurator - was discarded. Another fix was also added for the ``global_registries`` - object in which the registry was stored in a closure preventing it from - being deallocated. See https://github.com/Pylons/pyramid/pull/2967 - -- Fix a bug directly invoking ``pyramid.scripts.pserve.main`` with the - ``--reload`` option in which ``sys.argv`` is always used in the subprocess - instead of the supplied ``argv``. - See https://github.com/Pylons/pyramid/pull/2962 - Deprecations ------------ -- Pyramid currently depends on ``plaster_pastedeploy`` to simplify the - transition to ``plaster`` by maintaining integrated support for INI files. - This dependency on ``plaster_pastedeploy`` should be considered subject to - Pyramid's deprecation policy and may be removed in the future. - Applications should depend on the appropriate plaster binding to satisfy - their needs. - -- Retrieving CSRF token from the session has been deprecated in favor of - equivalent methods in the ``pyramid.csrf`` module. The CSRF methods - (``ISession.get_csrf_token`` and ``ISession.new_csrf_token``) are no longer - required on the ``ISession`` interface except when using the default - ``pyramid.csrf.LegacySessionCSRFStoragePolicy``. - - Also, ``pyramid.session.check_csrf_token`` is now located at - ``pyramid.csrf.check_csrf_token``. - - See https://github.com/Pylons/pyramid/pull/2854 and - https://github.com/Pylons/pyramid/pull/3019 +Backward Incompatibilities +-------------------------- Documentation Changes --------------------- -- Added the execution policy to the routing diagram in the Request Processing - chapter. See https://github.com/Pylons/pyramid/pull/2993 -- cgit v1.2.3 From a0aaf09c7e7792cd8103fbe9843650203c1d73b5 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Sat, 8 Jul 2017 11:06:11 -0500 Subject: add changelog for #3105 --- CHANGES.txt | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index dd1f3ea52..9c13d303f 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -4,6 +4,11 @@ unreleased Features -------- +- Add a ``_category`` argument to the ``pyramid.view.view_config`` decorator + that can be used to affect which actions are registered when performing + a ``config.scan(..., category=...)`` with a specific category. + See https://github.com/Pylons/pyramid/pull/3105 + Bug Fixes --------- -- cgit v1.2.3 From 77e2f18b333382d8881944f97956ac437dafccab Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Sat, 8 Jul 2017 12:07:41 -0500 Subject: add changelog for #3122 --- CHANGES.txt | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 9c13d303f..986274d86 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -4,10 +4,16 @@ unreleased Features -------- -- Add a ``_category`` argument to the ``pyramid.view.view_config`` decorator - that can be used to affect which actions are registered when performing - a ``config.scan(..., category=...)`` with a specific category. - See https://github.com/Pylons/pyramid/pull/3105 +- Add a ``_depth`` and ``_category`` arguments to all of the venusian + decorators. The ``_category`` argument can be used to affect which actions + are registered when performing a ``config.scan(..., category=...)`` with a + specific category. The ``_depth`` argument should be used when wrapping + the decorator in your own. This change affects ``pyramid.view.view_config``, + ``pyramid.view.exception_view_config``, + ``pyramid.view.forbidden_view_config``, ``pyramid.view.notfound_view_config``, + ``pyramid.events.subscriber`` and ``pyramid.response.response_adapter`` + decorators. See https://github.com/Pylons/pyramid/pull/3105 and + https://github.com/Pylons/pyramid/pull/3122 Bug Fixes --------- -- cgit v1.2.3 From 9c725a6ce6ee320c0fe394d92437ce2f5af6ca79 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Wed, 19 Jul 2017 00:20:46 -0500 Subject: add changelog for #3129 --- CHANGES.txt | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 986274d86..01e4b2f1c 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -15,6 +15,12 @@ Features decorators. See https://github.com/Pylons/pyramid/pull/3105 and https://github.com/Pylons/pyramid/pull/3122 +- Fix the ``pyramid.request.Request`` class name after using + ``set_property`` or ``config.add_request_method`` such that the + ``str(request.__class__)`` would appear as ``pyramid.request.Request`` + instead of ``pyramid.util.Request``. + See https://github.com/Pylons/pyramid/pull/3129 + Bug Fixes --------- -- cgit v1.2.3 From d5a66295d8044cd7d60c684a5c1732771822d149 Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Sun, 22 Oct 2017 13:51:20 -0500 Subject: changelog for #3140 --- CHANGES.txt | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 01e4b2f1c..482610319 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -30,6 +30,11 @@ Deprecations Backward Incompatibilities -------------------------- +- On Python 3.4+ the ``repoze.lru`` dependency is dropped. If you were using + this package directly in your apps you should make sure that you are + depending on it directly within your project. + See https://github.com/Pylons/pyramid/pull/3140 + Documentation Changes --------------------- -- cgit v1.2.3 From 6141a7339840701fcff98a4e36152d998b59ea84 Mon Sep 17 00:00:00 2001 From: Tres Seaver Date: Thu, 8 Mar 2018 12:29:42 -0500 Subject: Mark changelogs as ReST, for better Github rendering. --- CHANGES.txt | 40 ---------------------------------------- 1 file changed, 40 deletions(-) delete mode 100644 CHANGES.txt (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt deleted file mode 100644 index 482610319..000000000 --- a/CHANGES.txt +++ /dev/null @@ -1,40 +0,0 @@ -unreleased -========== - -Features --------- - -- Add a ``_depth`` and ``_category`` arguments to all of the venusian - decorators. The ``_category`` argument can be used to affect which actions - are registered when performing a ``config.scan(..., category=...)`` with a - specific category. The ``_depth`` argument should be used when wrapping - the decorator in your own. This change affects ``pyramid.view.view_config``, - ``pyramid.view.exception_view_config``, - ``pyramid.view.forbidden_view_config``, ``pyramid.view.notfound_view_config``, - ``pyramid.events.subscriber`` and ``pyramid.response.response_adapter`` - decorators. See https://github.com/Pylons/pyramid/pull/3105 and - https://github.com/Pylons/pyramid/pull/3122 - -- Fix the ``pyramid.request.Request`` class name after using - ``set_property`` or ``config.add_request_method`` such that the - ``str(request.__class__)`` would appear as ``pyramid.request.Request`` - instead of ``pyramid.util.Request``. - See https://github.com/Pylons/pyramid/pull/3129 - -Bug Fixes ---------- - -Deprecations ------------- - -Backward Incompatibilities --------------------------- - -- On Python 3.4+ the ``repoze.lru`` dependency is dropped. If you were using - this package directly in your apps you should make sure that you are - depending on it directly within your project. - See https://github.com/Pylons/pyramid/pull/3140 - -Documentation Changes ---------------------- - -- cgit v1.2.3