summaryrefslogtreecommitdiff
path: root/CHANGES.txt
AgeCommit message (Collapse)Author
2011-08-15- Refactor ``pyramid.config`` into a package.Chris McDonough
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- The ZODB wiki tutorial now uses the ``pyramid_zodbconn`` package ratherChris McDonough
than the ``repoze.zodbconn`` package to provide ZODB integration. - The ZODB scaffold now uses the ``pyramid_zodbconn`` package rather than the ``repoze.zodbconn`` package to provide ZODB integration.
2011-08-14- ``pyramid.testing.DummyRequest`` now implements theChris McDonough
``add_finished_callback`` and ``add_response_callback`` methods.
2011-08-14- All tutorials now use - The ``route_url``, ``route_path``,Chris McDonough
``resource_url``, ``static_url``, and ``current_route_url`` methods of the request rather than the function variants imported from ``pyramid.url``.
2011-08-14- The ``route_url``, ``route_path``, ``resource_url``, ``static_url``, andChris McDonough
``current_route_url`` functions in the ``pyramid.url`` package now delegate to a method on the request they've been passed, instead of the other way around. The pyramid.request.Request object now inherits from a mixin named pyramid.url.URLMethodsMixin to make this possible, and all url/path generation logic is embedded in this mixin. - Narrative and API documentation which used the ``route_url``, ``route_path``, ``resource_url``, ``static_url``, and ``current_route_url`` functions in the ``pyramid.url`` package have now been changed to use eponymous methods of the request instead.
2011-08-14- The ``settings`` dictionary now raises a deprecation warning when youChris McDonough
attempt to access its values via ``__getattr__`` instead of via ``__getitem__``.
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-13- WSGIHTTPException (HTTPFound, HTTPNotFound, etc) now has a new API namedChris McDonough
"prepare" which renders the body and content type when it is provided with a WSGI environ. Required for debug toolbar. - Once ``__call__`` or ``prepare`` is called on a WSGIHTTPException, the body will be set, and subsequent calls to ``__call__`` will always return the same body. Delete the body attribute to rerender the exception body.
2011-08-13- Added a Logging chapter to the narrative docs (based on the Pylons loggingChris McDonough
docs, thanks Phil).
2011-08-13- Projects created via a scaffold no longer depend on the ``WebError``Chris McDonough
package at all; configuration in the ``production.ini`` file which used to require its ``error_catcher`` middleware has been removed. Configuring error catching / email sending is now the domain of the ``pyramid_exclog`` package (see https://docs.pylonsproject.org/projects/pyramid_exclog/dev/).
2011-08-12- Pyramid now relies on PasteScript >= 1.7.4. This version contains aChris McDonough
feature important for allowing flexible logging configuration.
2011-08-12garden changes; fix docs renderingChris McDonough
2011-08-10- Added a ``route_prefix`` argument to theChris McDonough
``pyramid.config.Configurator.include`` method. This argument allows you to compose URL dispatch applications together. See the section entitled "Using a Route Prefix to Compose Applications" in the "URL Dispatch" narrative documentation chapter. - Added a section entitled "Using a Route Prefix to Compose Applications" to the "URL Dispatch" narrative documentation chapter.
2011-08-10- Fixed an issue with the default renderer not working at certain times. SeeChris McDonough
https://github.com/Pylons/pyramid/issues/249 Closes #249.
2011-08-10add note about NO_PERMISSION_REQUIREDChris McDonough
2011-08-06improve changes docsChris 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-30note prefixesChris McDonough
2011-07-28add some edits to the docs for response_adapter decorator; fix renderingsChris McDonough
2011-07-24stray hatChris McDonough
2011-07-24- The Pyramid debug logger now uses the standard logging configurationChris McDonough
(usually set up by Paste as part of startup). This means that output from e.g. ``debug_notfound``, ``debug_authorization``, etc. will go to the normal logging channels. The logger name of the debug logger will be the package name of the *caller* of the Configurator's constructor. - If a string is passed as the ``debug_logger`` parameter to a Configurator, that string is considered to be the name of a global Python logger rather than a dotted name to an instance of a logger.
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-23typoChris 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-23- The ``pyramid.events.BeforeRender`` event now has an attribute namedChris McDonough
``rendering_val``. This can be used to introspect the value returned by a view in a BeforeRender subscriber.
2011-07-21prep for 1.1; gather contributorsChris McDonough
2011-07-21- Change all scaffolding templates that point to docs.pylonsproject.org toChris McDonough
use ``/projects/pyramid/current`` rather than ``/projects/pyramid/dev``.
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.
2011-07-21- Add a deprecation warning for non-API functionChris McDonough
``pyramid.renderers.renderer_from_name`` which has seen use in the wild. - Add a ``clone`` method to ``pyramid.renderers.RendererHelper`` for use by the ``pyramid.view.view_config`` decorator.
2011-07-21- Remove ``compat`` code that served only the purpose of providing backwardsChris McDonough
compatibility with Python 2.4.
2011-07-20- Reordered chapters in narrative section for better new user friendliness.Chris McDonough
- Added more indexing markers to sections in documentation.
2011-07-19- Fixed two typos in wiki2 (SQLA + URL Dispatch) tutorial.Chris McDonough
2011-07-18prep for 1.1b4Chris McDonough
2011-07-16- Change paster pviews and paster proutes to use bootstrap.Chris McDonough
2011-07-16mention paster pshell using bootstrapChris McDonough
2011-07-16mention paster pshell using prepareChris McDonough
2011-07-16add note about removing make_requestChris McDonough
2011-07-16- Omit custom environ variables when rendering a custom exception template inChris McDonough
``pyramid.httpexceptions.WSGIHTTPException._set_default_attrs``; stringifying thse may trigger code that should not be executed; see https://github.com/Pylons/pyramid/issues/239 Closes #239
2011-07-16- Added a section entitled "Writing a Script" to the "Command-Line Pyramid"Chris McDonough
chapter.
2011-07-15prep for 1.1b3Chris McDonough
2011-07-15- get_root2 -> prepareChris McDonough
- change prepare return value to a dict, and return the registry, request, etc - various docs and changelog entries.
2011-07-14typoChris McDonough
2011-07-14- Without a mo-file loaded for the combination of domain/locale,Chris McDonough
``pyramid.i18n.Localizer.pluralize`` run using that domain/locale combination raised an inscrutable "translations object has no attr 'plural' error. Now, instead it "works" (it uses a germanic pluralization by default). This is not the "right" thing really (it's nonsensical to try to pluralize something without translations for that locale/domain available), but it matches the behavior of ``pyramid.i18n.Localizer.translate`` so it's at least consistent; see https://github.com/Pylons/pyramid/issues/235. Closes #235.
2011-07-14typoChris McDonough
2011-07-14forgot to change whatsnewChris McDonough
2011-07-14- New API class: ``pyramid.static.static_view``. This supersedes theChris McDonough
deprecated ``pyramid.view.static`` class. ``pyramid.satic.static_view`` by default serves up documents as the result of the request's ``path_info``, attribute rather than it's ``subpath`` attribute (the inverse was true of ``pyramid.view.static``, and still is). ``pyramid.static.static_view`` exposes a ``use_subpath`` flag for use when you don't want the static view to behave like the older deprecated version. - The ``pyramid.view.static`` class has been deprecated in favor of the newer ``pyramid.static.static_view`` class. A deprecation warning is raised when it is used. You should replace it with a reference to ``pyramid.static.static_view`` with the ``use_subpath=True`` argument.
2011-07-13- Fix corner case to ease semifunctional testing of views: create a newChris McDonough
rendererinfo to clear out old registry on a rescan. See https://github.com/Pylons/pyramid/pull/234. Closes #234.