summaryrefslogtreecommitdiff
path: root/docs/api
AgeCommit message (Collapse)Author
2012-02-24docs-deprecate tmpl_contextChris McDonough
2012-02-24More trivial typosPaul Winkler
2012-02-22- New APIs: ``pyramid.response.FileResponse`` andChris McDonough
``pyramid.response.FileIter``, for usage in views that must serve files "manually".
2012-02-22- New API: ``pyramid.config.Configurator.add_forbidden_view``. This is aChris McDonough
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. - 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 all tutorials to use ``pyramid.view.forbidden_view_config`` rather than ``pyramid.view.view_config`` with an HTTPForbidden context.
2012-02-22- New API: ``pyramid.config.Configurator.add_notfound_view``. This is aChris McDonough
wrapper for ``pyramid.Config.configurator.add_view`` which provides easy append_slash support. 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. - The older deprecated ``set_notfound_view`` Configurator method is now an alias for the new ``add_notfound_view`` Configurator method. This has the following impact: the ``context`` sent to views with a ``(context, request)`` call signature registered via the deprecated ``add_notfound_view``/``set_notfound_view`` will now be the HTTPNotFound 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``, despite the aliasing. - 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`` method of the Configurator was removed from the documentation. It has been deprecated since Pyramid 1.1. - 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. - Updated the "Registering 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 "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``
2012-02-20recategorize a couple of methodsChris McDonough
2012-02-20remove untruthChris McDonough
2012-02-20FeaturesChris McDonough
-------- - 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. 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 latest 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.
2012-02-18categorized configurator methodsChris McDonough
2012-02-17docs rearranging / fixingChris McDonough
2012-02-17FeaturesChris McDonough
-------- - Add ``pyramid.config.Configurator.add_resource_url_adapter`` API method. See the Hooks narrative documentation section entitled "Changing How pyramid.request.Request.resource_url Generates a URL" for more information. This is not a new feature, it just provides an API for adding a resource url adapter without needing to use the ZCA API. - A new interface was added: ``pyramid.interfaces.IResourceURL``. An adapter implementing its interface can be used to override resource URL generation when ``request.resource_url`` is called. This interface replaces the now-deprecated ``pyramid.interfaces.IContextURL`` interface. - The dictionary passed to a resource's ``__resource_url__`` method (see "Overriding Resource URL Generation" in the "Resources" chapter) now contains an ``app_url`` key, representing the application URL generated during ``request.resource_url``. It represents a potentially customized URL prefix, containing potentially custom scheme, host and port information passed by the user to ``request.resource_url``. It should be used instead of ``request.application_url`` where necessary. - The ``request.resource_url`` API now accepts these arguments: ``app_url``, ``scheme``, ``host``, and ``port``. The app_url argument can be used to replace the URL prefix wholesale during url generation. The ``scheme``, ``host``, and ``port`` arguments can be used to replace the respective default values of ``request.application_url`` partially. - A new API named ``request.resource_path`` now exists. It works like ``request.resource_url`` but produces a relative URL rather than an absolute one. - The ``request.route_url`` API now accepts these arguments: ``_app_url``, ``_scheme``, ``_host``, and ``_port``. The ``_app_url`` argument can be used to replace the URL prefix wholesale during url generation. The ``_scheme``, ``_host``, and ``_port`` arguments can be used to replace the respective default values of ``request.application_url`` partially. Backwards Incompatibilities --------------------------- - The ``pyramid.interfaces.IContextURL`` interface has been deprecated. People have been instructed to use this to register a resource url adapter in the "Hooks" chapter to use to influence ``request.resource_url`` URL generation for resources found via custom traversers since Pyramid 1.0. The interface still exists and registering such an adapter still works, but this interface will be removed from the software after a few major Pyramid releases. You should replace it with an equivalent ``pyramid.interfaces.IResourceURL`` adapter, registered using the new ``pyramid.config.Configurator.add_resource_url_adapter`` API. A deprecation warning is now emitted when a ``pyramid.interfaces.IContextURL`` adapter is found when ``request.resource_url`` is called. Misc ---- - Change ``set_traverser`` API name to ``add_traverser``. Ref #438.
2012-02-15- Add ``pyramid.config.Configurator.set_traverser`` API method. See theChris McDonough
Hooks narrative documentation section entitled "Changing the Traverser" for more information. This is not a new feature, it just provides an API for adding a traverser without needing to use the ZCA API.
2012-02-07add asset descriptor interfaceChris McDonough
2012-01-21Added set_request_property to the docs.Michael Merickel
2012-01-11Renamed the func to callable in the docs.Michael Merickel
2012-01-08gardenMichael Merickel
2011-12-30Documented Request.set_property.Michael Merickel
2011-12-14- Changed scaffolding machinery around a bit to make it easier for people whoChris McDonough
want to have extension scaffolds that can work across Pyramid 1.0.X, 1.1.X, 1.2.X and 1.3.X. See the new "Creating Pyramid Scaffolds" chapter in the narrative documentation for more info. - Added an API docs chapter for ``pyramid.scaffolds``. - Added a narrative docs chapter named "Creating Pyramid Scaffolds". - The ``template_renderer`` method of ``pyramid.scaffolds.PyramidScaffold`` was renamed to ``render_template``. If you were overriding it, you're a bad person, because it wasn't an API before now. But we're nice so we're letting you know.
2011-12-14Flesh out new view_defaults feature and add docs, change notes, and add to ↵Chris McDonough
whatsnew.
2011-12-08provide caller_path support for both asset resolver and dotted name ↵Chris McDonough
resolver, make it the default
2011-12-08- New APIs: ``pyramid.path.AssetResolver`` andChris McDonough
``pyramid.path.DottedNameResolver``. The former can be used to resolve asset specifications, the latter can be used to resolve dotted names to modules or packages.
2011-12-05add whatsnew-1.3; gardenChris McDonough
2011-12-03add a noop introspector (allow introspection to be turned off)Chris McDonough
2011-11-30add tests for introspectable; add more interface docs and expose actioninfoChris McDonough
2011-11-30docs; todo; coverage for IntrospectorChris McDonough
2011-11-28docsChris McDonough
2011-11-27- Added ``setup_logging`` API function to the ``pyramid.paster`` module.Chris McDonough
This function sets up Python logging according to the logging configuration in a PasteDeploy ini file.
2011-11-27add get_appsettings API to pasterChris McDonough
2011-11-17Made pyramid.settings.aslist public.Michael Merickel
2011-11-11alphabetizeChris McDonough
2011-11-11- New ``pyramid.compat`` module and API documentation which provides PythonChris McDonough
2/3 straddling support for Pyramid add-ons and development environments.
2011-09-12explain NO_PERMISSION_REQUIRED constant in API docsDaniel Haaker
2011-08-25Added docs for some missing HTTP status' supported in httpexceptions.Michael Merickel
2011-08-20add static_path function to url and static_path method to requestChris McDonough
2011-08-20- New request methods: ``current_route_url``, ``current_route_path``.Chris McDonough
- New function in ``pyramid.url``: ``current_route_path``.
2011-08-19review and fix configurator docs in random placesChris McDonough
2011-08-18- Pyramid no longer eagerly commits some default configuration statements atChris McDonough
Configurator construction time, which permits values passed in as constructor arguments (e.g. ``authentication_policy`` and ``authorization_policy``) to override the same settings obtained via an "include".
2011-08-15- New methods of the ``pyramid.config.Configurator`` class:Chris McDonough
``set_authentication_policy`` and ``set_authorization_policy``. These are meant to be consumed mostly by add-on authors.
2011-08-14- Added the ``pyramid.interfaces.IDict`` interface representing the methodsChris McDonough
of a dictionary, for documentation purposes only (IMultiDict and IBeforeRender inherit from it). - Previously the ``pyramid.events.BeforeRender`` event *wrapped* a dictionary (it addressed it as its ``_system`` attribute). Now it *is* a dictionary (it inherits from ``dict``), and it's the value that is passed to templates as a top-level dictionary.
2011-08-09Added the `pyramid.security.NO_PERMISSION_REQUIRED` constant.Michael Merickel
Removed the undocumented version from pyramid.interfaces.
2011-08-10show members for event interfacesChris McDonough
2011-08-08document under and over paramsChris McDonough
2011-08-06add tweens module, add docs for ptweens and tweens to hooksChris McDonough
2011-07-31- A new attribute is available on request objects: ``exc_info``. Its valueChris McDonough
will be ``None`` until an exception is caught by the Pyramid router, after which it will be the result of ``sys.exc_info()``.
2011-07-28mergeChris McDonough
2011-07-24fix merge conflictsChris McDonough
2011-07-24back this feature out; we'll try a different approachChris McDonough
2011-07-24first cutChris McDonough
2011-07-23- New method: ``pyramid.request.Request.add_view_mapper``. A view wrapper isChris McDonough
used to wrap the found view callable before it is called by Pyramid's router. This is a feature usually only used by framework extensions, to provide, for example, view timing support. A view wrapper factory must be a callable which accepts three arguments: ``view_callable``, ``request``, and ``exc``. It must return a view callable. The view callable returned by the factory must implement the ``context, request`` view callable calling convention. For example:: import time def wrapper_factory(view_callable, request, exc): def wrapper(context, request): start = time.time() result = view_callable(context, request) end = time.time() request.view_timing = end - start return result return wrapper The ``view_callable`` argument to the factory will be the view callable found by Pyramid via view lookup. The ``request`` argument to the factory will be the current request. The ``exc`` argument to the factory will be an Exception object if the found view is an exception view; it will be ``None`` otherwise. View wrappers only last for the duration of a single request. You can add such a factory for every request by using the ``pyramid.events.NewRequest`` subscriber:: from pyramid.events import subscriber, NewRequest @subscriber(NewRequest) def newrequest(event): event.request.add_view_wrapper(wrapper_factory) If more than one view wrapper is registered during a single request, a 'later' view wrapper factory will be called with the result of its directly former view wrapper factory as its ``view_callable`` argument; this chain will be returned to Pyramid as a single view callable.
2011-07-21- Added the ``pyramid.renderers.null_renderer`` object as an API. The nullChris McDonough
renderer is an object that can be used in advanced integration cases as input to the view configuration ``renderer=`` argument. When the null renderer is used as a view renderer argument, Pyramid avoids converting the view callable result into a Response object. This is useful if you want to reuse the view configuration and lookup machinery outside the context of its use by the Pyramid router. This feature was added for consumption by the ``pyramid_rpc`` package, which uses view configuration and lookup outside the context of a router in exactly this way. ``pyramid_rpc`` has been broken under 1.1 since 1.1b1; adding it allows us to make it work again.