repoze.bfg 1.1b2 has been released.  Yes, I know the releases have been coming 
at an unreasonable pace, sorry.

You can install it via:

    easy_install -i http://dist.repoze.org/bfg/1.1/simple repoze.bfg

*or*, now that I've worked out a niggling bug that made installing it from PyPI 
  a bit painful, you can use PyPI rather than the dist.repoze.org index:

    easy_install repoze.bfg

The docs at http://docs.repoze.org/bfg/1.1 have been updated.

This release has the following major features:

- PyPI installation fixed

- A "What's New In BFG 1.1" document:
   http://docs.repoze.org/bfg/1.1/whatsnew-1.1.html

- Depend on repackaged "Chameleon" distribution rather than individual
   chameleon.core and chameleon.zpt packages.

The detailed changelog follows:

1.1b2 (2009-11-02)
==================

Bug Fixes
---------

- Prevent PyPI installation failure due to ``easy_install`` trying way
   too hard to guess the best version of Paste.  When ``easy_install``
   pulls from PyPI it reads links off various pages to determine "more
   up to date" versions. It incorrectly picks up a link for an ancient
   version of a package named "Paste-Deploy-0.1" (note the dash) when
   trying to find the "Paste" distribution and somehow believes it's
   the latest version of "Paste".  It also somehow "helpfully" decides
   to check out a version of this package from SVN.  We pin the Paste
   dependency version to a version greater than 1.7 to work around
   this ``easy_install`` bug.

Documentation
-------------

- Fix "Hybrid" narrative chapter: stop claiming that ``<view>``
   statements that mention a route_name need to come afer (in XML
   order) the ``<route>`` statement which creates the route.  This
   hasn't been true since 1.1a1.

- "What's New in ``repoze.bfg`` 1.1" document added to narrative
   documentation.

Features
--------

- Add a new event type: ``repoze.bfg.events.AfterTraversal``.  Events
   of this type will be sent after traversal is completed, but before
   any view code is invoked.  Like ``repoze.bfg.events.NewRequest``,
   This event will have a single attribute: ``request`` representing
   the current request.  Unlike the request attribute of
   ``repoze.bfg.events.NewRequest`` however, during an AfterTraversal
   event, the request object will possess attributes set by the
   traverser, most notably ``context``, which will be the context used
   when a view is found and invoked.  The interface
   ``repoze.bfg.events.IAfterTraversal`` can be used to subscribe to
   the event.  For example::

     <subscriber for="repoze.bfg.interfaces.IAfterTraversal"
                 handler="my.app.handle_after_traverse"/>

   Like any framework event, a subscriber function should expect one
   parameter: ``event``.

Dependencies
------------

- Rather than depending on ``chameleon.core`` and ``chameleon.zpt``
   distributions individually, depend on Malthe's repackaged
   ``Chameleon`` distribution (which includes both ``chameleon.core``
   and ``chameleon.zpt``).

_______________________________________________
Repoze-dev mailing list
Repoze-dev@lists.repoze.org
http://lists.repoze.org/listinfo/repoze-dev

Reply via email to