summaryrefslogtreecommitdiff
path: root/docs/glossary.rst
diff options
context:
space:
mode:
authorChristoph Zwerschke <cito@online.de>2016-04-19 20:07:12 +0200
committerChristoph Zwerschke <cito@online.de>2016-04-19 20:07:12 +0200
commit3629c49e46207ff5162a82883c14937e6ef4c186 (patch)
tree1306181202cb8313f16080789f5b9ab1eeb61d53 /docs/glossary.rst
parent804ba0b2f434781e77d2b5191f1cd76a490f6610 (diff)
parent6c16fb020027fac47e4d2e335cd9e264dba8aa3b (diff)
downloadpyramid-3629c49e46207ff5162a82883c14937e6ef4c186.tar.gz
pyramid-3629c49e46207ff5162a82883c14937e6ef4c186.tar.bz2
pyramid-3629c49e46207ff5162a82883c14937e6ef4c186.zip
Merge remote-tracking branch 'refs/remotes/Pylons/master'
Diffstat (limited to 'docs/glossary.rst')
-rw-r--r--docs/glossary.rst602
1 files changed, 421 insertions, 181 deletions
diff --git a/docs/glossary.rst b/docs/glossary.rst
index 579d89afd..1d97bffe8 100644
--- a/docs/glossary.rst
+++ b/docs/glossary.rst
@@ -7,21 +7,32 @@ Glossary
:sorted:
request
- A ``WebOb`` request object. See :ref:`webob_chapter` (narrative)
- and :ref:`request_module` (API documentation) for information
- about request objects.
+ An object that represents an HTTP request, usually an instance of the
+ :class:`pyramid.request.Request` class. See :ref:`webob_chapter`
+ (narrative) and :ref:`request_module` (API documentation) for
+ information about request objects.
request factory
- An object which, provided a WSGI environment as a single
- positional argument, returns a ``WebOb`` compatible request.
+ An object which, provided a :term:`WSGI` environment as a single
+ positional argument, returns a Pyramid-compatible request.
+
+ response factory
+ An object which, provided a :term:`request` as a single positional
+ argument, returns a Pyramid-compatible response. See
+ :class:`pyramid.interfaces.IResponseFactory`.
response
- An object that has three attributes: ``app_iter`` (representing an
- iterable body), ``headerlist`` (representing the http headers sent
- to the user agent), and ``status`` (representing the http status
- string sent to the user agent). This is the interface defined for
- ``WebOb`` response objects. See :ref:`webob_chapter` for
- information about response objects.
+ An object returned by a :term:`view callable` that represents response
+ data returned to the requesting user agent. It must implement the
+ :class:`pyramid.interfaces.IResponse` interface. A response object is
+ typically an instance of the :class:`pyramid.response.Response` class or
+ a subclass such as :class:`pyramid.httpexceptions.HTTPFound`. See
+ :ref:`webob_chapter` for information about response objects.
+
+ response adapter
+ A callable which accepts an arbitrary object and "converts" it to a
+ :class:`pyramid.response.Response` object. See :ref:`using_iresponse`
+ for more information.
Repoze
"Repoze" is essentially a "brand" of software developed by `Agendaless
@@ -35,15 +46,25 @@ Glossary
setuptools
`Setuptools <http://peak.telecommunity.com/DevCenter/setuptools>`_
builds on Python's ``distutils`` to provide easier building,
- distribution, and installation of libraries and applications.
+ distribution, and installation of libraries and applications. As of
+ this writing, setuptools runs under Python 2, but not under Python 3.
+ You can use :term:`distribute` under Python 3 instead.
+
+ distribute
+ `Distribute <http://packages.python.org/distribute/>`_ is a fork of
+ :term:`setuptools` which runs on both Python 2 and Python 3.
pkg_resources
- A module which ships with :term:`setuptools` that provides an API for
- addressing "asset files" within a Python :term:`package`. Asset files
- are static files, template files, etc; basically anything
- non-Python-source that lives in a Python package can be considered a
- asset file. See also `PkgResources
- <http://peak.telecommunity.com/DevCenter/PkgResources>`_
+ A module which ships with :term:`setuptools` and :term:`distribute` that
+ provides an API for addressing "asset files" within a Python
+ :term:`package`. Asset files are static files, template files, etc;
+ basically anything non-Python-source that lives in a Python package can
+ be considered a asset file.
+
+ .. seealso::
+
+ See also `PkgResources
+ <http://peak.telecommunity.com/DevCenter/PkgResources>`_.
asset
Any file contained within a Python :term:`package` which is *not*
@@ -78,7 +99,7 @@ Glossary
(Setuptools/distutils terminology). A file representing an
installable library or application. Distributions are usually
files that have the suffix of ``.egg``, ``.tar.gz``, or ``.zip``.
- Distributions are the target of Setuptools commands such as
+ Distributions are the target of Setuptools-related commands such as
``easy_install``.
entry point
@@ -89,7 +110,7 @@ Glossary
dotted Python name
A reference to a Python object by name using a string, in the form
- ``path.to.modulename:attributename``. Often used in Paste and
+ ``path.to.modulename:attributename``. Often used in Pyramid and
setuptools configurations. A variant is used in dotted names within
configurator method arguments that name objects (such as the "add_view"
method's "view" and "context" attributes): the colon (``:``) is not
@@ -134,16 +155,19 @@ Glossary
request before it returns a :term:`context` resource.
virtualenv
- An isolated Python environment. Allows you to control which
- packages are used on a particular project by cloning your main
- Python. `virtualenv <http://pypi.python.org/pypi/virtualenv>`_
- was created by Ian Bicking.
+ The `virtualenv tool <https://virtualenv.pypa.io/en/latest/>`_ that allows
+ one to create virtual environments. In Python 3.3 and greater,
+ :term:`venv` is the preferred tool.
+
+ Note: whenever you encounter commands prefixed with ``$VENV`` (Unix)
+ or ``%VENV`` (Windows), know that that is the environment variable whose
+ value is the root of the virtual environment in question.
resource
An object representing a node in the :term:`resource tree` of an
- application. If :mod:`traversal` is used, a resource is an element in
+ application. If :term:`traversal` is used, a resource is an element in
the resource tree traversed by the system. When traversal is used, a
- resource becomes the :term:`context` of a :term:`view`. If :mod:`url
+ resource becomes the :term:`context` of a :term:`view`. If :term:`url
dispatch` is used, a single resource is generated for each request and
is used as the context resource of a view.
@@ -210,7 +234,7 @@ Glossary
object *location-aware*.
permission
- A string or unicode object that represents an action being taken against
+ A string or Unicode object that represents an action being taken against
a :term:`context` resource. A permission is associated with a view name
and a resource type by the developer. Resources are decorated with
security declarations (e.g. an :term:`ACL`), which reference these
@@ -227,7 +251,11 @@ Glossary
be effectively amended with a ``permission`` argument that will
require that the executing user possess the default permission in
order to successfully execute the associated :term:`view
- callable` See also :ref:`setting_a_default_permission`.
+ callable`.
+
+ .. seealso::
+
+ See also :ref:`setting_a_default_permission`.
ACE
An *access control entry*. An access control entry is one element
@@ -245,7 +273,7 @@ Glossary
(Allow, 'bob', 'read'), (Deny, 'fred', 'write')]``. If an ACL is
attached to a resource instance, and that resource is findable via the
context resource, it will be consulted any active security policy to
- determine wither a particular request can be fulfilled given the
+ determine whether a particular request can be fulfilled given the
:term:`authentication` information in the request.
authentication
@@ -263,13 +291,22 @@ Glossary
:term:`authorization policy`.
principal
- A *principal* is a string or unicode object representing a userid
- or a group id. It is provided by an :term:`authentication
- policy`. For example, if a user had the user id "bob", and Bob
- was part of two groups named "group foo" and "group bar", the
- request might have information attached to it that would
- indicate that Bob was represented by three principals: "bob",
- "group foo" and "group bar".
+ A *principal* is a string or Unicode object representing an entity,
+ typically a user or group. Principals are provided by an
+ :term:`authentication policy`. For example, if a user has the
+ :term:`userid` `bob`, and is a member of two groups named `group foo` and
+ `group bar`, then the request might have information attached to it
+ indicating that Bob was represented by three principals: `bob`, `group
+ foo` and `group bar`.
+
+ userid
+ A *userid* is a string or Unicode object used to identify and authenticate
+ a real-world user or client. A userid is supplied to an
+ :term:`authentication policy` in order to discover the user's
+ :term:`principals <principal>`. In the authentication policies which
+ :app:`Pyramid` provides, the default behavior returns the user's userid as
+ a principal, but this is not strictly necessary in custom policies that
+ define their principals differently.
authorization policy
An authorization policy in :app:`Pyramid` terms is a bit of
@@ -284,7 +321,7 @@ Glossary
:term:`principal` (or principals) associated with a request.
WSGI
- `Web Server Gateway Interface <http://wsgi.org/>`_. This is a
+ `Web Server Gateway Interface <http://www.wsgi.org/>`_. This is a
Python standard for connecting web applications to web servers,
similar to the concept of Java Servlets. :app:`Pyramid` requires
that your application be served as a WSGI application.
@@ -293,13 +330,13 @@ Glossary
*Middleware* is a :term:`WSGI` concept. It is a WSGI component
that acts both as a server and an application. Interesting uses
for middleware exist, such as caching, content-transport
- encoding, and other functions. See `WSGI.org <http://wsgi.org>`_
+ encoding, and other functions. See `WSGI.org <http://www.wsgi.org>`_
or `PyPI <http://python.org/pypi>`_ to find middleware for your
application.
pipeline
- The :term:`Paste` term for a single configuration of a WSGI
- server, a WSGI application, with a set of middleware in-between.
+ The :term:`PasteDeploy` term for a single configuration of a WSGI
+ server, a WSGI application, with a set of :term:`middleware` in-between.
Zope
`The Z Object Publishing Framework <http://zope.org>`_, a
@@ -312,42 +349,31 @@ Glossary
`A full-featured Python web framework <http://djangoproject.com>`_.
Pylons
- `A lightweight Python web framework <http://pylonshq.com>`_ and a
- predecessor of Pyramid.
+ `A lightweight Python web framework <http://docs.pylonsproject.org/projects/pylons-webframework/en/latest/>`_
+ and a predecessor of Pyramid.
ZODB
`Zope Object Database <http://zodb.org>`_, a
persistent Python object store.
- ZEO
- `Zope Enterprise Objects
- <http://www.zope.org/Documentation/Books/ZopeBook/2_6Edition/ZEO.stx>`_
- allows multiple simultaneous processes to access a single
- :term:`ZODB` database.
-
WebOb
- `WebOb <http://pythonpaste.org/webob/>`_ is a WSGI request/response
+ `WebOb <http://webob.org>`_ is a WSGI request/response
library created by Ian Bicking.
- Paste
- `Paste <http://pythonpaste.org>`_ is a WSGI development and
- deployment system developed by Ian Bicking.
-
PasteDeploy
- `PasteDeploy <http://pythonpaste.org>`_ is a library used by
+ `PasteDeploy <http://pythonpaste.org/deploy/>`_ is a library used by
:app:`Pyramid` which makes it possible to configure
:term:`WSGI` components together declaratively within an ``.ini``
- file. It was developed by Ian Bicking as part of :term:`Paste`.
+ file. It was developed by Ian Bicking.
Chameleon
- `chameleon <http://chameleon.repoze.org>`_ is an attribute
- language template compiler which supports both the :term:`ZPT` and
- :term:`Genshi` templating specifications. It is written and
- maintained by Malthe Borch. It has several extensions, such as
- the ability to use bracketed (Genshi-style) ``${name}`` syntax,
- even within ZPT. It is also much faster than the reference
- implementations of both ZPT and Genshi. :app:`Pyramid` offers
- Chameleon templating out of the box in ZPT and text flavors.
+ `chameleon <https://chameleon.readthedocs.org/en/latest/>`_ is an
+ attribute language template compiler which supports the :term:`ZPT`
+ templating specification. It is written and maintained by Malthe Borch. It
+ has several extensions, such as the ability to use bracketed (Mako-style)
+ ``${name}`` syntax. It is also much faster than the reference
+ implementation of ZPT. :app:`Pyramid` offers Chameleon templating out of
+ the box in ZPT and text flavors.
ZPT
The `Zope Page Template <http://wiki.zope.org/ZPT/FrontPage>`_
@@ -376,7 +402,11 @@ Glossary
route
A single pattern matched by the :term:`url dispatch` subsystem,
which generally resolves to a :term:`root factory` (and then
- ultimately a :term:`view`). See also :term:`url dispatch`.
+ ultimately a :term:`view`).
+
+ .. seealso::
+
+ See also :term:`url dispatch`.
route configuration
Route configuration is the act of associating request parameters with a
@@ -393,10 +423,9 @@ Glossary
dispatching and other application configuration tasks.
reStructuredText
- A `plain text format <http://docutils.sourceforge.net/rst.html>`_
- that is the defacto standard for descriptive text shipped in
- :term:`distribution` files, and Python docstrings. This
- documentation is authored in ReStructuredText format.
+ A `plain text markup format <http://docutils.sourceforge.net/rst.html>`_
+ that is the defacto standard for documenting Python projects.
+ The Pyramid documentation is written in reStructuredText.
root
The object at which :term:`traversal` begins when :app:`Pyramid`
@@ -450,7 +479,7 @@ Glossary
:term:`request` object that :app:`Pyramid` generates and
manipulates has one or more :term:`interface` objects attached to
it. The default interface attached to a request object is
- ``pyramid.interfaces.IRequest``.
+ :class:`pyramid.interfaces.IRequest`.
repoze.lemonade
Zope2 CMF-like `data structures and helper facilities
@@ -474,10 +503,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 :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"
@@ -488,15 +531,20 @@ Glossary
available as its ``__parent__`` attribute.
root factory
- The "root factory" of a :app:`Pyramid` application is called
- on every request sent to the application. The root factory
- returns the traversal root of an application. It is
- conventionally named ``get_root``. An application may supply a
- root factory to :app:`Pyramid` during the construction of a
- :term:`Configurator`. If a root factory is not supplied, the
- application uses a default root object. Use of the default root
- object is useful in application which use :term:`URL dispatch` for
- all URL-to-view code mappings.
+ The "root factory" of a :app:`Pyramid` application is called on every
+ request sent to the application. The root factory returns the traversal
+ root of an application. It is conventionally named ``get_root``. An
+ application may supply a root factory to :app:`Pyramid` during the
+ construction of a :term:`Configurator`. If a root factory is not
+ supplied, the application creates a default root object using the
+ :term:`default root factory`.
+
+ default root factory
+ If an application does not register a :term:`root factory` at Pyramid
+ configuration time, a *default* root factory is used to created the
+ default root object. Use of the default root object is useful in
+ application which use :term:`URL dispatch` for all URL-to-view code
+ mappings, and does not (knowingly) use traversal otherwise.
SQLAlchemy
`SQLAlchemy <http://www.sqlalchemy.org/>`_ is an object
@@ -506,13 +554,15 @@ Glossary
`JavaScript Object Notation <http://www.json.org/>`_ is a data
serialization format.
+ jQuery
+ A popular `Javascript library <http://jquery.org>`_.
+
renderer
- A serializer that can be referred to via :term:`view
- configuration` which converts a non-:term:`Response` return
- values from a :term:`view` into a string (and ultimately a
- response). Using a renderer can make writing views that require
- templating or other serialization less tedious. See
- :ref:`views_which_use_a_renderer` for more information.
+ A serializer which converts non-:term:`Response` return values from a
+ :term:`view` into a string, and ultimately into a response, usually
+ through :term:`view configuration`. Using a renderer can make writing
+ views that require templating or other serialization, like JSON, less
+ tedious. See :ref:`views_which_use_a_renderer` for more information.
renderer factory
A factory which creates a :term:`renderer`. See
@@ -555,17 +605,21 @@ Glossary
A wrapper around a Python function or class which accepts the
function or class as its first argument and which returns an
arbitrary object. :app:`Pyramid` provides several decorators,
- used for configuration and return value modification purposes. See
- also `PEP 318 <http://www.python.org/dev/peps/pep-0318/>`_.
+ used for configuration and return value modification purposes.
+
+ .. seealso::
+
+ See also `PEP 318 <http://www.python.org/dev/peps/pep-0318/>`_.
configuration declaration
- An individual method call made to an instance of a :app:`Pyramid`
- :term:`Configurator` object which performs an arbitrary action, such as
- registering a :term:`view configuration` (via the ``add_view`` method of
- the configurator) or :term:`route configuration` (via the ``add_route``
- method of the configurator). A set of configuration declarations is
- also implied by the :term:`configuration decoration` detected by a
- :term:`scan` of code in a package.
+ An individual method call made to a :term:`configuration directive`,
+ such as registering a :term:`view configuration` (via the
+ :meth:`~pyramid.config.Configurator.add_view` method of the
+ configurator) or :term:`route configuration` (via the
+ :meth:`~pyramid.config.Configurator.add_route` method of the
+ configurator). A set of configuration declarations is also implied by
+ the :term:`configuration decoration` detected by a :term:`scan` of code
+ in a package.
configuration decoration
Metadata implying one or more :term:`configuration declaration`
@@ -581,7 +635,7 @@ Glossary
configurator
An object used to do :term:`configuration declaration` within an
application. The most common configurator is an instance of the
- ``pyramid.config.Configurator`` class.
+ :class:`pyramid.config.Configurator` class.
imperative configuration
The configuration mode in which you use Python to call methods on
@@ -589,28 +643,27 @@ Glossary
declaration` required by your application.
declarative configuration
- The configuration mode in which you use :term:`ZCML` to make a set of
- :term:`configuration declaration` statements. See :term:`pyramid_zcml`.
-
- Not Found view
- An :term:`exception view` invoked by :app:`Pyramid` when the
- developer explicitly raises a ``pyramid.exceptions.NotFound``
- exception from within :term:`view` code or :term:`root factory`
- code, or when the current request doesn't match any :term:`view
- configuration`. :app:`Pyramid` provides a default
- implementation of a not found view; it can be overridden. See
+ The configuration mode in which you use the combination of
+ :term:`configuration decoration` and a :term:`scan` to configure your
+ Pyramid application.
+
+ Not Found View
+ An :term:`exception view` invoked by :app:`Pyramid` when the developer
+ explicitly raises a :class:`pyramid.httpexceptions.HTTPNotFound`
+ exception from within :term:`view` code or :term:`root factory` code,
+ or when the current request doesn't match any :term:`view
+ configuration`. :app:`Pyramid` provides a default implementation of a
+ Not Found View; it can be overridden. See
:ref:`changing_the_notfound_view`.
Forbidden view
- An :term:`exception view` invoked by :app:`Pyramid` when the
- developer explicitly raises a
- ``pyramid.exceptions.Forbidden`` exception from within
- :term:`view` code or :term:`root factory` code, or when the
- :term:`view configuration` and :term:`authorization policy`
+ An :term:`exception view` invoked by :app:`Pyramid` when the developer
+ explicitly raises a :class:`pyramid.httpexceptions.HTTPForbidden`
+ exception from within :term:`view` code or :term:`root factory` code,
+ or when the :term:`view configuration` and :term:`authorization policy`
found for a request disallows a particular view invocation.
- :app:`Pyramid` provides a default implementation of a
- forbidden view; it can be overridden. See
- :ref:`changing_the_forbidden_view`.
+ :app:`Pyramid` provides a default implementation of a forbidden view;
+ it can be overridden. See :ref:`changing_the_forbidden_view`.
Exception view
An exception view is a :term:`view callable` which may be
@@ -618,16 +671,27 @@ Glossary
request processing. See :ref:`exception_views` for more
information.
+ HTTP Exception
+ The set of exception classes defined in :mod:`pyramid.httpexceptions`.
+ These can be used to generate responses with various status codes when
+ raised or returned from a :term:`view callable`.
+
+ .. seealso::
+
+ See also :ref:`http_exceptions`.
+
thread local
A thread-local variable is one which is essentially a global variable
in terms of how it is accessed and treated, however, each `thread
<http://en.wikipedia.org/wiki/Thread_(computer_science)>`_ used by the
application may have a different value for this same "global" variable.
:app:`Pyramid` uses a small number of thread local variables, as
- described in :ref:`threadlocals_chapter`. See also the `threading.local
- documentation
- <http://docs.python.org/library/threading.html#threading.local>`_ for
- more information.
+ described in :ref:`threadlocals_chapter`.
+
+ .. seealso::
+
+ See also the :class:`stdlib documentation <threading.local>`
+ for more information.
multidict
An ordered dictionary that can have multiple values for each key. Adds
@@ -641,7 +705,11 @@ Glossary
Agendaless Consulting
A consulting organization formed by Paul Everitt, Tres Seaver,
- and Chris McDonough. See also http://agendaless.com .
+ and Chris McDonough.
+
+ .. seealso::
+
+ See also `Agendaless Consulting <http://agendaless.com>`_.
Jython
A `Python implementation <http://www.jython.org/>`_ written for
@@ -655,11 +723,11 @@ Glossary
The C implementation of the Python language. This is the
reference implementation that most people refer to as simply
"Python"; :term:`Jython`, Google's App Engine, and `PyPy
- <http://codespeak.net/pypy/dist/pypy/doc/>`_ are examples of
+ <http://doc.pypy.org/en/latest/>`_ are examples of
non-C based Python implementations.
View Lookup
- The act of finding and invoking the "best" :term:`view callable`
+ The act of finding and invoking the "best" :term:`view callable`,
given a :term:`request` and a :term:`context` resource.
Resource Location
@@ -673,7 +741,7 @@ Glossary
:app:`Pyramid` runs on GAE.
Venusian
- `Venusian <http://docs.repoze.org/venusian>`_ is a library which
+ :ref:`Venusian` is a library which
allows framework authors to defer decorator actions. Instead of
taking actions when a function (or class) decorator is executed
at import time, the action usually taken by the decorator is
@@ -694,15 +762,21 @@ Glossary
made. For example the word "java" might be translated
differently if the translation domain is "programming-languages"
than would be if the translation domain was "coffee". A
- translation domain is represnted by a collection of ``.mo`` files
+ translation domain is represented by a collection of ``.mo`` files
within one or more :term:`translation directory` directories.
+ Translation Context
+ A string representing the "context" in which a translation was
+ made within a given :term:`translation domain`. See the gettext
+ documentation, `11.2.5 Using contexts for solving ambiguities
+ <https://www.gnu.org/software/gettext/manual/gettext.html#Contexts>`_
+ for more information.
+
Translator
- A callable which receives a :term:`translation string` and
- returns a translated Unicode object for the purposes of
- internationalization. A :term:`localizer` supplies a
- translator to a :app:`Pyramid` application accessible via its
- ``translate`` method.
+ A callable which receives a :term:`translation string` and returns a
+ translated Unicode object for the purposes of internationalization. A
+ :term:`localizer` supplies a translator to a :app:`Pyramid` application
+ accessible via its :class:`~pyramid.i18n.Localizer.translate` method.
Translation Directory
A translation directory is a :term:`gettext` translation
@@ -740,15 +814,15 @@ Glossary
library, used by the :app:`Pyramid` translation machinery.
Babel
- A `collection of tools <http://babel.edgewall.org/>`_ for
- internationalizing Python applications. :app:`Pyramid` does
- not depend on Babel to operate, but if Babel is installed,
- additional locale functionality becomes available to your
- application.
+ A `collection of tools <http://babel.pocoo.org/en/latest/>`_ for
+ internationalizing Python applications. :app:`Pyramid` does not depend on
+ Babel to operate, but if Babel is installed, additional locale
+ functionality becomes available to your application.
Lingua
- A package by Wichert Akkerman which provides :term:`Babel` message
- extractors for Python source files and Chameleon ZPT template files.
+ A package by Wichert Akkerman which provides the ``pot-create``
+ command to extract translateable messages from Python sources
+ and Chameleon ZPT template files.
Message Identifier
A string used as a translation lookup key during localization.
@@ -763,25 +837,33 @@ Glossary
The act of creating software with a user interface that can
potentially be displayed in more than one language or cultural
context. Often shortened to "i18n" (because the word
- "internationalization" is I, 18 letters, then N). See also:
- :term:`Localization`.
+ "internationalization" is I, 18 letters, then N).
+
+ .. seealso::
+
+ See also :term:`Localization`.
Localization
The process of displaying the user interface of an
internationalized application in a particular language or
cultural context. Often shortened to "l10" (because the word
- "localization" is L, 10 letters, then N). See also:
- :term:`Internationalization`.
+ "localization" is L, 10 letters, then N).
+
+ .. seealso::
+
+ See also :term:`Internationalization`.
renderer globals
- Values injected as names into a renderer based on application
- policy. See :ref:`adding_renderer_globals` for more
- information.
+ Values injected as names into a renderer by a
+ :class:`pyramid.event.BeforeRender` event.
response callback
A user-defined callback executed by the :term:`router` at a
point after a :term:`response` object is successfully created.
- See :ref:`using_response_callbacks`.
+
+ .. seealso::
+
+ See also :ref:`using_response_callbacks`.
finished callback
A user-defined callback executed by the :term:`router`
@@ -790,12 +872,12 @@ Glossary
pregenerator
A pregenerator is a function associated by a developer with a
- :term:`route`. It is called by :func:`pyramid.url.route_url`
- in order to adjust the set of arguments passed to it by the user
- for special purposes. It will influence the URL returned by
- ``route_url``. See
- :class:`pyramid.interfaces.IRoutePregenerator` for more
- information.
+ :term:`route`. It is called by
+ :meth:`~pyramid.request.Request.route_url` in order to adjust the set
+ of arguments passed to it by the user for special purposes. It will
+ influence the URL returned by
+ :meth:`~pyramid.request.Request.route_url`. See
+ :class:`pyramid.interfaces.IRoutePregenerator` for more information.
session
A namespace that is valid for some period of continual activity
@@ -803,12 +885,15 @@ Glossary
application.
session factory
- A callable, which, when called with a single argument named
- ``request`` (a :term:`request` object), returns a
- :term:`session` object.
+ A callable, which, when called with a single argument named ``request``
+ (a :term:`request` object), returns a :term:`session` object. See
+ :ref:`using_the_default_session_factory`,
+ :ref:`using_alternate_session_factories` and
+ :meth:`pyramid.config.Configurator.set_session_factory` for more
+ information.
Mako
- `Mako <http://www.makotemplates.org/>`_ is a template language language
+ `Mako <http://www.makotemplates.org/>`_ is a template language
which refines the familiar ideas of componentized layout and inheritance
using Python with Python scoping and calling semantics.
@@ -823,18 +908,14 @@ Glossary
Deployment settings
Deployment settings are settings passed to the :term:`Configurator` as a
``settings`` argument. These are later accessible via a
- ``request.registry.settings`` dictionary. Deployment settings can be
- used as global application values.
+ ``request.registry.settings`` dictionary in views or as
+ ``config.registry.settings`` in configuration code. Deployment settings
+ can be used as global application values.
WebTest
`WebTest <http://pythonpaste.org/webtest/>`_ is a package which can help
you write functional tests for your WSGI application.
- WebError
- WSGI middleware which can display debuggable traceback information in
- the browser when an exception is raised by a Pyramid application. See
- http://pypi.python.org/pypi/WebError .
-
view mapper
A view mapper is a class which implements the
:class:`pyramid.interfaces.IViewMapperFactory` interface, which performs
@@ -849,21 +930,15 @@ Glossary
pyramid_zcml
An add-on package to :app:`Pyramid` which allows applications to be
- configured via ZCML. It is available on :term:`PyPI`. If you use
- ``pyramid_zcml``, you can use ZCML as an alternative to
- :term:`imperative configuration`.
+ configured via :term:`ZCML`. It is available on :term:`PyPI`. If you
+ use :mod:`pyramid_zcml`, you can use ZCML as an alternative to
+ :term:`imperative configuration` or :term:`configuration decoration`.
ZCML
`Zope Configuration Markup Language
<http://www.muthukadan.net/docs/zca.html#zcml>`_, an XML dialect
used by Zope and :term:`pyramid_zcml` for configuration tasks.
- ZCML directive
- A ZCML "tag" such as ``<view>`` or ``<route>``.
-
- ZCML declaration
- The concrete use of a :term:`ZCML directive` within a ZCML file.
-
pyramid_handlers
An add-on package which allows :app:`Pyramid` users to create classes
that are analogues of Pylons 1 "controllers". See
@@ -877,22 +952,187 @@ Glossary
on the Jinja2 templating system.
Akhet
- Akhet is a Pyramid-based development environment which provides a
- Pylons-esque scaffold which sports support for :term:`view handler`
- application development, :term:`SQLAlchemy` support, :term:`Mako`
- templating by default, and other Pylons-like features. See
- http://docs.pylonsproject.org/projects/akhet/dev/index.html for more
- information.
+ `Akhet <http://docs.pylonsproject.org/projects/akhet/en/latest/>`_ is a
+ Pyramid library and demo application with a Pylons-like feel.
+ It's most known for its former application scaffold, which helped
+ users transition from Pylons and those preferring a more Pylons-like API.
+ The scaffold has been retired but the demo plays a similar role.
- Pyramid Cookbook
- An additional documentation resource for Pyramid which presents topical,
- practical usages of Pyramid available via
- http://docs.pylonsproject.org/ .
+ Pyramid Community Cookbook
+ Additional, community-based documentation for Pyramid which presents
+ topical, practical uses of Pyramid:
+ :ref:`Pyramid Community Cookbook <cookbook:pyramid-cookbook>`
distutils
The standard system for packaging and distributing Python packages. See
http://docs.python.org/distutils/index.html for more information.
:term:`setuptools` is actually an *extension* of the Distutils.
+ exception response
+ A :term:`response` that is generated as the result of a raised exception
+ being caught by an :term:`exception view`.
+
+ PyPy
+ PyPy is an "alternative implementation of the Python
+ language": http://pypy.org/
+
+ tween
+ A bit of code that sits between the Pyramid router's main request
+ handling function and the upstream WSGI component that uses
+ :app:`Pyramid` as its 'app'. The word "tween" is a contraction of
+ "between". A tween may be used by Pyramid framework extensions, to
+ provide, for example, Pyramid-specific view timing support, bookkeeping
+ code that examines exceptions before they are returned to the upstream
+ WSGI application, or a variety of other features. Tweens behave a bit
+ like :term:`WSGI` :term:`middleware` but they have the benefit of running in a
+ context in which they have access to the Pyramid :term:`application
+ registry` as well as the Pyramid rendering machinery. See
+ :ref:`registering_tweens`.
+
+ pyramid_debugtoolbar
+ A Pyramid add-on which displays a helpful debug toolbar "on top of" HTML
+ pages rendered by your application, displaying request, routing, and
+ database information. :mod:`pyramid_debugtoolbar` is configured into
+ the ``development.ini`` of all applications which use a Pyramid
+ :term:`scaffold`. For more information, see
+ http://docs.pylonsproject.org/projects/pyramid_debugtoolbar/en/latest/.
+
+ scaffold
+ A project template that generates some of the major parts of a Pyramid
+ application and helps users to quickly get started writing larger
+ applications. Scaffolds are usually used via the ``pcreate`` command.
+
+ pyramid_exclog
+ A package which logs Pyramid application exception (error) information
+ to a standard Python logger. This add-on is most useful when
+ used in production applications, because the logger can be configured to
+ log to a file, to UNIX syslog, to the Windows Event Log, or even to
+ email. See its `documentation
+ <http://docs.pylonsproject.org/projects/pyramid_exclog/dev/>`_.
+
+ console script
+ A script written to the ``bin`` (on UNIX, or ``Scripts`` on Windows)
+ directory of a Python installation or :term:`virtual environment` as the
+ result of running ``pip install`` or ``pip install -e .``.
+
+ introspector
+ An object with the methods described by
+ :class:`pyramid.interfaces.IIntrospector` that is available in both
+ configuration code (for registration) and at runtime (for querying) that
+ allows a developer to introspect configuration statements and
+ relationships between those statements.
+
+ conflict resolution
+ Pyramid attempts to resolve ambiguous configuration statements made by
+ application developers via automatic conflict resolution. Automatic
+ conflict resolution is described in
+ :ref:`automatic_conflict_resolution`. If Pyramid cannot resolve
+ ambiguous configuration statements, it is possible to manually resolve
+ them as described in :ref:`manually_resolving_conflicts`.
+
+ configuration directive
+ A method of the :term:`Configurator` which causes a configuration action
+ to occur. The method :meth:`pyramid.config.Configurator.add_view` is a
+ configuration directive, and application developers can add their own
+ directives as necessary (see :ref:`add_directive`).
+
+ action
+ Represents a pending configuration statement generated by a call to a
+ :term:`configuration directive`. The set of pending configuration
+ actions are processed when :meth:`pyramid.config.Configurator.commit` is
+ called.
+
+ discriminator
+ The unique identifier of an :term:`action`.
+
+ introspectable
+ An object which implements the attributes and methods described in
+ :class:`pyramid.interfaces.IIntrospectable`. Introspectables are used
+ by the :term:`introspector` to display configuration information about
+ a running Pyramid application. An introspectable is associated with a
+ :term:`action` by virtue of the
+ :meth:`pyramid.config.Configurator.action` method.
+
+ asset descriptor
+ An instance representing an :term:`asset specification` provided by the
+ :meth:`pyramid.path.AssetResolver.resolve` method. It supports the
+ methods and attributes documented in
+ :class:`pyramid.interfaces.IAssetDescriptor`.
+
+ Waitress
+ A :term:`WSGI` server that runs on UNIX and Windows under Python 2.6+
+ and Python 3.2+. Projects generated via Pyramid scaffolding use
+ Waitress as a WGSI server. See
+ http://docs.pylonsproject.org/projects/waitress/en/latest/ for detailed
+ information.
+
+ Green Unicorn
+ Aka ``gunicorn``, a fast :term:`WSGI` server that runs on UNIX under
+ Python 2.6+ or Python 3.1+. See http://gunicorn.org/ for detailed
+ information.
+ predicate factory
+ A callable which is used by a third party during the registration of a
+ route, view, or subscriber predicates to extend the configuration
+ system. See :ref:`registering_thirdparty_predicates` for more
+ information.
+ add-on
+ A Python :term:`distribution` that uses Pyramid's extensibility
+ to plug into a Pyramid application and provide extra,
+ configurable services.
+
+ pyramid_redis_sessions
+ A package by Eric Rasmussen which allows you to store Pyramid session
+ data in a Redis database. See
+ https://pypi.python.org/pypi/pyramid_redis_sessions for more information.
+
+ cache busting
+ A technique used when serving a cacheable static asset in order to force
+ a client to query the new version of the asset. See :ref:`cache_busting`
+ for more information.
+
+ view deriver
+ A view deriver is a composable component of the view pipeline which is
+ used to create a :term:`view callable`. A view deriver is a callable
+ implementing the :class:`pyramid.interfaces.IViewDeriver` interface.
+ Examples of built-in derivers including view mapper, the permission
+ checker, and applying a renderer to a dictionary returned from the view.
+
+ truthy string
+ A string represeting a value of ``True``. Acceptable values are
+ ``t``, ``true``, ``y``, ``yes``, ``on`` and ``1``.
+
+ falsey string
+ A string represeting a value of ``False``. Acceptable values are
+ ``f``, ``false``, ``n``, ``no``, ``off`` and ``0``.
+
+ pip
+ The :term:`Python Packaging Authority`'s recommended tool for installing
+ Python packages.
+
+ pyvenv
+ The :term:`Python Packaging Authority` formerly recommended using the
+ ``pyvenv`` command for `creating virtual environments on Python 3.4 and
+ 3.5
+ <https://packaging.python.org/en/latest/installing/#creating-virtual-environments>`_,
+ but it was deprecated in 3.6 in favor of ``python3 -m venv`` on UNIX or
+ ``python -m venv`` on Windows, which is backward compatible on Python
+ 3.3 and greater.
+
+ virtual environment
+ An isolated Python environment that allows packages to be installed for
+ use by a particular application, rather than being installed system wide.
+
+ venv
+ The :term:`Python Packaging Authority`'s recommended tool for creating
+ virtual environments on Python 3.3 and greater.
+
+ Note: whenever you encounter commands prefixed with ``$VENV`` (Unix)
+ or ``%VENV`` (Windows), know that that is the environment variable whose
+ value is the root of the virtual environment in question.
+
+ Python Packaging Authority
+ The `Python Packaging Authority (PyPA) <https://www.pypa.io/en/latest/>`_
+ is a working group that maintains many of the relevant projects in Python
+ packaging. \ No newline at end of file