Next release ============ Features (delta from BFG 1.3.X) ------------------------------- - Mako templating renderer supports resource specification format for template lookups and within Mako templates. Absolute filenames must be used in Pyramid to avoid this lookup process. - Add ``pyramid.httpexceptions`` module, which is a facade for the ``webob.exc`` module. - Direct built-in support for the Mako templating language. - A "squiggly" (Pylons-style) route syntax is now supported by ``pyramid.configuration.Configurator.add_route`` (and thus, by the ``route`` ZCML directive too). For example, the following route patterns are equivalent: ``{foo}/{bar}`` and ``:foo/:bar``. This is purely a syntactic affordance to make route patterns more tolerable for people coming from Pylons. - A new configurator method exists: ``add_handler``. This method adds a Pylons-style "view handler" (such a thing used to be called a "controller" in Pylons 1.0). - New argument to configurator: ``session_factory``. - New method on configurator: ``set_session_factory`` - Using ``request.session`` now returns a (dictionary-like) session object if a session factory has been configured. - New module: ``pyramid.personality.pylons``: contains Pylons-specific features. - The request now has a new attribute: ``tmpl_context`` for benefit of Pylons users. - The decorator previously known as ``pyramid.view.bfg_view`` is now known most formally as ``pyramid.view.view_config`` in docs and paster templates. An import of ``pyramid.view.bfg_view``, however, will continue to work "forever". - New API methods in ``pyramid.session``: ``signed_serialize`` and ``signed_deserialize``. Documentation (delta from BFG 1.3) ----------------------------------- - Added a ``pyramid.httpexceptions`` API documentation chapter. - Added a ``pyramid.session`` API documentation chapter. - Added a ``Session Objects`` narrative documentation chapter. - Added an API chapter for the ``pyramid.personality`` module. Backwards Incompatibilities (with BFG 1.3.X) -------------------------------------------- - There is no longer an ``IDebugLogger`` registered as a named utility with the name ``repoze.bfg.debug``. - The logger which used to have the name of ``repoze.bfg.debug`` now has the name ``pyramid.debug``. - The deprecated API ``pyramid.testing.registerViewPermission`` has been removed. - The deprecated API named ``pyramid.testing.registerRoutesMapper`` has been removed. - The deprecated API named ``pyramid.request.get_request`` was removed. - The deprecated API named ``pyramid.security.Unauthorized`` was removed. - The deprecated API named ``pyramid.view.view_execution_permitted`` was removed. - The deprecated API named ``pyramid.view.NotFound`` was removed. - The literal pattern ``{}`` is no longer permitted in route patterns (due to the addition of squiggly route pattern syntax support). - The ``bfgshell`` paster command is now named ``pshell``. - The Venusian "category" for all built-in Venusian decorators (e.g. ``subscriber`` and ``view_config``/``bfg_view``) is now ``pyramid`` instead of ``bfg``. - ``pyramid.renderers.rendered_response`` function removed; use ``render_pyramid.renderers.render_to_response`` instead. - Renderer factories now accept a *dictionary* rather than an absolute resource specification or an absolute path. The dictonary contains the following keys: ``name`` (the ``renderer=`` value), ``package`` (the 'current package' when the renderer configuration statement was found), ``type``: the renderer type, and ``registry``: the current registry. Third-party ``repoze.bfg`` renderer implementations that must be ported to Pyramid will need to account for this. This change was made to support more flexible Mako template rendering.