summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/api/authentication.rst6
-rw-r--r--docs/conf.py2
-rw-r--r--docs/glossary.rst22
-rw-r--r--docs/narr/viewconfig.rst25
-rwxr-xr-xdocs/remake2
-rw-r--r--docs/whatsnew-1.4.rst41
6 files changed, 80 insertions, 18 deletions
diff --git a/docs/api/authentication.rst b/docs/api/authentication.rst
index 5d4dbd9e3..587026a3b 100644
--- a/docs/api/authentication.rst
+++ b/docs/api/authentication.rst
@@ -10,12 +10,14 @@ Authentication Policies
.. autoclass:: AuthTktAuthenticationPolicy
- .. autoclass:: RepozeWho1AuthenticationPolicy
-
.. autoclass:: RemoteUserAuthenticationPolicy
.. autoclass:: SessionAuthenticationPolicy
+ .. autoclass:: BasicAuthAuthenticationPolicy
+
+ .. autoclass:: RepozeWho1AuthenticationPolicy
+
Helper Classes
~~~~~~~~~~~~~~
diff --git a/docs/conf.py b/docs/conf.py
index 337b1d8bf..9bda4c798 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -81,7 +81,7 @@ copyright = '%s, Agendaless Consulting' % datetime.datetime.now().year
# other places throughout the built documents.
#
# The short X.Y version.
-version = '1.4a2'
+version = '1.4a3'
# The full version, including alpha/beta/rc tags.
release = version
diff --git a/docs/glossary.rst b/docs/glossary.rst
index 96dd826d1..adcf36f7c 100644
--- a/docs/glossary.rst
+++ b/docs/glossary.rst
@@ -481,10 +481,24 @@ Glossary
:app:`Pyramid` to form a workflow system.
virtual root
- A resource object representing the "virtual" root of a request; this
- is typically the physical root object (the object returned by the
- application root factory) unless :ref:`vhosting_chapter` is in
- use.
+ A resource object representing the "virtual" root of a request; this is
+ typically the :term:`physical root` object unless :ref:`vhosting_chapter`
+ is in use.
+
+ physical root
+ The object returned by the application :term:`root factory`. Unlike the
+ the :term:`virtual root` of a request, it is not impacted by
+ :ref:`vhosting_chapter`: it will always be the actual object returned by
+ the root factory, never a subobject.
+
+ physical path
+ The path required by a traversal which resolve a :term:`resource` starting
+ from the :term:`physical root`. For example, the physical path of the
+ ``abc`` subobject of the physical root object is ``/abc``. Physical paths
+ can also be specified as tuples where the first element is the empty
+ string (representing the root), and every other element is a Unicode
+ object, e.g. ``('', 'abc')``. Physical paths are also sometimes called
+ "traversal paths".
lineage
An ordered sequence of objects based on a ":term:`location` -aware"
diff --git a/docs/narr/viewconfig.rst b/docs/narr/viewconfig.rst
index f65435cc6..752e6ad72 100644
--- a/docs/narr/viewconfig.rst
+++ b/docs/narr/viewconfig.rst
@@ -290,12 +290,13 @@ configured view.
of the ``REQUEST_METHOD`` of the :term:`WSGI` environment.
``request_param``
- This value can be any string. A view declaration with this argument
- ensures that the view will only be called when the :term:`request` has a
- key in the ``request.params`` dictionary (an HTTP ``GET`` or ``POST``
- variable) that has a name which matches the supplied value.
+ This value can be any string or a sequence of strings. A view declaration
+ with this argument ensures that the view will only be called when the
+ :term:`request` has a key in the ``request.params`` dictionary (an HTTP
+ ``GET`` or ``POST`` variable) that has a name which matches the a
+ supplied value.
- If the value supplied has a ``=`` sign in it,
+ If any value supplied has a ``=`` sign in it,
e.g. ``request_param="foo=123"``, then the key (``foo``) must both exist
in the ``request.params`` dictionary, *and* the value must match the right
hand side of the expression (``123``) for the view to "match" the current
@@ -416,6 +417,20 @@ configured view.
.. versionadded:: 1.4a2
+``physical_path``
+ If specified, this value should be a string or a tuple representing the
+ :term:`physical path` of the context found via traversal for this predicate
+ to match as true. For example: ``physical_path='/'`` or
+ ``physical_path='/a/b/c'`` or ``physical_path=('', 'a', 'b', 'c')``. This is
+ not a path prefix match or a regex, it's a whole-path match. It's useful
+ when you want to always potentially show a view when some object is traversed
+ to, but you can't be sure about what kind of object it will be, so you can't
+ use the ``context`` predicate. The individual path elements inbetween slash
+ characters or in tuple elements should be the Unicode representation of the
+ name of the resource and should not be encoded in any way.
+
+ .. versionadded:: 1.4a3
+
``custom_predicates``
If ``custom_predicates`` is specified, it must be a sequence of references
to custom predicate callables. Use custom predicates when no set of
diff --git a/docs/remake b/docs/remake
index b236f2976..eb818289f 100755
--- a/docs/remake
+++ b/docs/remake
@@ -1 +1 @@
-make clean html SPHINXBUILD=../env26/bin/sphinx-build
+make clean html SPHINXBUILD=../env27/bin/sphinx-build
diff --git a/docs/whatsnew-1.4.rst b/docs/whatsnew-1.4.rst
index 4e64d8162..59e1f7a96 100644
--- a/docs/whatsnew-1.4.rst
+++ b/docs/whatsnew-1.4.rst
@@ -63,7 +63,7 @@ Partial Mako and Chameleon Template Renderings
of rendering the entire template. An example asset spec:
``package:path/to/template#macroname.pt``. This will render the macro
defined as ``macroname`` within the ``template.pt`` template instead of the
- entire templae.
+ entire template.
Subrequest Support
~~~~~~~~~~~~~~~~~~
@@ -78,7 +78,7 @@ Minor Feature Additions
-----------------------
- :meth:`pyramid.config.Configurator.add_directive` now accepts arbitrary
- callables like partials or objects implementing ``__call__`` which dont
+ callables like partials or objects implementing ``__call__`` which don't
have ``__name__`` and ``__doc__`` attributes. See
https://github.com/Pylons/pyramid/issues/621 and
https://github.com/Pylons/pyramid/pull/647.
@@ -112,7 +112,7 @@ Minor Feature Additions
- An :meth:`pyramid.config.Configurator.add_permission` directive method was
added to the Configurator. This directive registers a free-standing
permission introspectable into the Pyramid introspection system.
- Frameworks built atop Pyramid can thus use the the ``permissions``
+ Frameworks built atop Pyramid can thus use the ``permissions``
introspectable category data to build a comprehensive list of permissions
supported by a running system. Before this method was added, permissions
were already registered in this introspectable category as a side effect of
@@ -165,6 +165,37 @@ Minor Feature Additions
- Add ``Base.metadata.bind = engine`` to ``alchemy`` scaffold, so that tables
defined imperatively will work.
+- Comments with references to documentation sections placed in scaffold
+ ``.ini`` files.
+
+- Allow multiple values to be specified to the ``request_param`` view/route
+ predicate as a sequence. Previously only a single string value was allowed.
+ See https://github.com/Pylons/pyramid/pull/705
+
+- Added an HTTP Basic authentication policy
+ at :class:`pyramid.authentication.BasicAuthAuthenticationPolicy`.
+
+- The :meth:`pyramid.config.Configurator.testing_securitypolicy` method now
+ returns the policy object it creates.
+
+- The DummySecurityPolicy created by
+ :meth:`pyramid.config.testing_securitypolicy` now sets a ``forgotten`` value
+ on the policy (the value ``True``) when its ``forget`` method is called.
+
+
+- The DummySecurityPolicy created by
+ :meth:`pyramid.config.testing_securitypolicy` now sets a
+ ``remembered`` value on the policy, which is the value of the ``principal``
+ argument it's called with when its ``remember`` method is called.
+
+- New ``physical_path`` view predicate. If specified, this value should be a
+ string or a tuple representing the physical traversal path of the context
+ found via traversal for this predicate to match as true. For example:
+ ``physical_path='/'`` or ``physical_path='/a/b/c'`` or ``physical_path=('',
+ 'a', 'b', 'c')``. It's useful when you want to always potentially show a
+ view when some object is traversed to, but you can't be sure about what kind
+ of object it will be, so you can't use the ``context`` predicate.
+
Backwards Incompatibilities
---------------------------
@@ -172,7 +203,7 @@ Backwards Incompatibilities
``bfg.routes.matchdict`` to the request's WSGI environment dictionary.
These values were docs-deprecated in ``repoze.bfg`` 1.0 (effectively seven
minor releases ago). If your code depended on these values, use
- request.matched_route and request.matchdict instead.
+ ``request.matched_route`` and ``request.matchdict`` instead.
- It is no longer possible to pass an environ dictionary directly to
``pyramid.traversal.ResourceTreeTraverser.__call__`` (aka
@@ -223,7 +254,7 @@ Backwards Incompatibilities
* ``registerEventListener``, use
:meth:`pyramid.config.Configurator.testing_add_subscriber` instead.
- * ``registerTemplateRenderer`` (aka `registerDummyRenderer``), use
+ * ``registerTemplateRenderer`` (aka ``registerDummyRenderer``), use
:meth:`pyramid.config.Configurator.testing_add_template` instead.
* ``registerView``, use :meth:`pyramid.config.Configurator.add_view` instead.