summaryrefslogtreecommitdiff
path: root/CHANGES.txt
diff options
context:
space:
mode:
authorChris McDonough <chrism@plope.com>2012-02-22 19:28:58 -0500
committerChris McDonough <chrism@plope.com>2012-02-22 19:28:58 -0500
commit6d0bce1dabce486cd6a6bc1fa7668ca863c0656a (patch)
tree18f0c2d4c7cee39e8938d6c77b4e0792761382bd /CHANGES.txt
parentbb40d09a0241b9e19cdc86186a7abd30d4d491d3 (diff)
parente9b51b719db22e3e41e3b22c584f40b20971aa98 (diff)
downloadpyramid-6d0bce1dabce486cd6a6bc1fa7668ca863c0656a.tar.gz
pyramid-6d0bce1dabce486cd6a6bc1fa7668ca863c0656a.tar.bz2
pyramid-6d0bce1dabce486cd6a6bc1fa7668ca863c0656a.zip
Merge branch '1.3-branch'
Diffstat (limited to 'CHANGES.txt')
-rw-r--r--CHANGES.txt111
1 files changed, 111 insertions, 0 deletions
diff --git a/CHANGES.txt b/CHANGES.txt
index 1df924b4c..39bf59210 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,3 +1,114 @@
+Next release
+============
+
+Features
+--------
+
+- Add an ``introspection`` boolean to the Configurator constructor. If this
+ is ``True``, actions registered using the Configurator will be registered
+ with the introspector. If it is ``False``, they won't. The default is
+ ``True``. Setting it to ``False`` during action processing will prevent
+ introspection for any following registration statements, and setting it to
+ ``True`` will start them up again. This addition is to service a
+ requirement that the debug toolbar's own views and methods not show up in
+ the introspector.
+
+- New API: ``pyramid.config.Configurator.add_notfound_view``. This is a
+ wrapper for ``pyramid.Config.configurator.add_view`` which provides easy
+ append_slash support and does the right thing about permissions. It should
+ be preferred over calling ``add_view`` directly with
+ ``context=HTTPNotFound`` as was previously recommended.
+
+- New API: ``pyramid.view.notfound_view_config``. This is a decorator
+ constructor like ``pyramid.view.view_config`` that calls
+ ``pyramid.config.Configurator.add_notfound_view`` when scanned. It should
+ be preferred over using ``pyramid.view.view_config`` with
+ ``context=HTTPNotFound`` as was previously recommended.
+
+- New API: ``pyramid.config.Configurator.add_forbidden_view``. This is a
+ wrapper for ``pyramid.Config.configurator.add_view`` which does the right
+ thing about permissions. It should be preferred over calling ``add_view``
+ directly with ``context=HTTPForbidden`` as was previously recommended.
+
+- New API: ``pyramid.view.forbidden_view_config``. This is a decorator
+ constructor like ``pyramid.view.view_config`` that calls
+ ``pyramid.config.Configurator.add_forbidden_view`` when scanned. It should
+ be preferred over using ``pyramid.view.view_config`` with
+ ``context=HTTPForbidden`` as was previously recommended.
+
+Backwards Incompatibilities
+---------------------------
+
+- Remove ``pyramid.config.Configurator.with_context`` class method. It was
+ never an API, it is only used by ``pyramid_zcml`` and its functionality has
+ been moved to that package's latest release. This means that you'll need
+ to use the 0.9.2 or later release of ``pyramid_zcml`` with this release of
+ Pyramid.
+
+- The ``introspector`` argument to the ``pyramid.config.Configurator``
+ constructor API has been removed. It has been replaced by the boolean
+ ``introspection`` flag.
+
+- The ``pyramid.registry.noop_introspector`` API object has been removed.
+
+- The older deprecated ``set_notfound_view`` Configurator method is now an
+ alias for the new ``add_notfound_view`` Configurator method. Likewise, the
+ older deprecated ``set_forbidden_view`` is now an alias for the new
+ ``add_forbidden_view``. This has the following impact: the ``context`` sent
+ to views with a ``(context, request)`` call signature registered via the
+ ``set_notfound_view`` or ``set_forbidden_view`` will now be an exception
+ object instead of the actual resource context found. Use
+ ``request.context`` to get the actual resource context. It's also
+ recommended to disuse ``set_notfound_view`` in favor of
+ ``add_notfound_view``, and disuse ``set_forbidden_view`` in favor of
+ ``add_forbidden_view`` despite the aliasing.
+
+Deprecations
+------------
+
+- The API documentation for ``pyramid.view.append_slash_notfound_view`` and
+ ``pyramid.view.AppendSlashNotFoundViewFactory`` was removed. These names
+ still exist and are still importable, but they are no longer APIs. Use
+ ``pyramid.config.Configurator.add_notfound_view(append_slash=True)`` or
+ ``pyramid.view.notfound_view_config(append_slash=True)`` to get the same
+ behavior.
+
+- The ``set_forbidden_view`` and ``set_notfound_view`` methods of the
+ Configurator were removed from the documentation. They have been
+ deprecated since Pyramid 1.1.
+
+Bug Fixes
+---------
+
+- The static file response object used by ``config.add_static_view`` opened
+ the static file twice, when it only needed to open it once.
+
+- The AppendSlashNotFoundViewFactory used request.path to match routes. This
+ was wrong because request.path contains the script name, and this would
+ cause it to fail in circumstances where the script name was not empty. It
+ should have used request.path_info, and now does.
+
+Documentation
+-------------
+
+- Updated the "Creating a Not Found View" section of the "Hooks" chapter,
+ replacing explanations of registering a view using ``add_view`` or
+ ``view_config`` with ones using ``add_notfound_view`` or
+ ``notfound_view_config``.
+
+- Updated the "Creating a Not Forbidden View" section of the "Hooks" chapter,
+ replacing explanations of registering a view using ``add_view`` or
+ ``view_config`` with ones using ``add_forbidden_view`` or
+ ``forbidden_view_config``.
+
+- Updated the "Redirecting to Slash-Appended Routes" section of the "URL
+ Dispatch" chapter, replacing explanations of registering a view using
+ ``add_view`` or ``view_config`` with ones using ``add_notfound_view`` or
+ ``notfound_view_config``
+
+- Updated all tutorials to use ``pyramid.view.forbidden_view_config`` rather
+ than ``pyramid.view.view_config`` with an HTTPForbidden context.
+
1.3a8 (2012-02-19)
==================