summaryrefslogtreecommitdiff
path: root/CHANGES.txt
AgeCommit message (Collapse)Author
2009-11-23Updates.Chris McDonough
2009-11-23- The ``repoze.bfg.router.make_app`` function is now nominallyChris McDonough
deprecated. Its import and usage does not throw a warning, nor will it probably ever disappear. However, using a ``repoze.bfg.configuration.Configurator`` class is now the preferred way to generate a WSGI application. - The ``run.py`` module in various ``repoze.bfg`` ``paster`` templates now use a ``repoze.bfg.configuration.Configurator`` class instead of the (now-legacy) ``repoze.bfg.router.make_app`` function to produce a WSGI application.
2009-11-23- The internal ILogger utility named ``repoze.bfg.debug`` is now justChris McDonough
an IDebugLogger unnamed utility. A named utility with the old name is registered for b/w compat.
2009-11-23Save a function call.Chris McDonough
Update text files.
2009-11-23- Most uses of the ZCA threadlocal API (the ``getSiteManager``,Chris McDonough
``getUtility``, ``getAdapter``, ``getMultiAdapter`` threadlocal API) have been removed from the core. Instead, when a threadlocal is necessary, the core uses the ``repoze.bfg.threadlocal.get_current_registry`` API to obtain the registry.
2009-11-23- The ``repoze.bfg.scripting.get_root`` API now uses a 'real' WebObChris McDonough
request rather than a FakeRequest when it sets up the request as a threadlocal. - The ``repoze.bfg.traversal.traverse`` API now uses a 'real' WebOb request rather than a FakeRequest when it calls the traverser. - The ``repoze.bfg.request.FakeRequest`` class has been removed. ``repoze.bfg.url.route_url`` ``repoze.bfg.url.model_url`` ``repoze.bfg.url.static_url`` ``repoze.bfg.traversal.virtual_root`` Each of these functions now expects to be called with a request object that has a ``registry`` attribute which represents the current ZCA registry. Get rid of extraneous uses of ZCA threadlocal API.
2009-11-23 ``repoze.bfg.security.has_permission``Chris McDonough
``repoze.bfg.security.authenticated_userid`` ``repoze.bfg.security.effective_principals`` ``repoze.bfg.security.view_execution_permitted`` ``repoze.bfg.security.remember`` ``repoze.bfg.security.forget`` Each of these functions now expects to be called with a request object that has a ``registry`` attribute which represents the current ZCA registry. Previously these functions used the ZCA threadlocal API to get the current registry.
2009-11-21Changelog.Chris McDonough
2009-11-20Passable stab at supporting an imperative mode.Chris McDonough
ZCML directives which accept paths now register absolute paths, while imperative registrations now register resource specifications.
2009-11-19Unused.Chris McDonough
2009-11-19Rendering.Chris McDonough
2009-11-19Formatting and grammar.Chris McDonough
2009-11-19- Each of the ``repoze.bfg.view.render_view``,Chris McDonough
``repoze.bfg.view.render_view_to_iterable``, ``repoze.bfg.view.render_view_to_response``, ``repoze.bfg.view.append_slash_notfound_view``, ``repoze.bfg.view.default_notfound_view``, ``repoze.bfg.view.default_forbidden_view``, and the ``repoze.bfg.configuration.rendered_response`` functions now expects to be called with a request object that has a ``registry`` attribute which represents the current ZCA registry. This should only be a problem when passing a custom request object to code which ends up calling these functions in a unit test. To retrofit tests that end up calling these functions which expect to be able to use a non-registry-aware request object, use the ``repoze.bfg.threadlocal.get_current_request`` API in the test to create the request; this will return a ``repoze.bfg.testing.DummyRequest`` that has the current registry as its ``registry`` attribute. Alternatively, use the ``repoze.bfg.threadlocal.get_current_registry`` API: call this function and add an attribute to your unit test request object named ``registry`` with the result. - The ``repoze.bfg.view.derive_view`` callable has been removed. Use ``repoze.bfg.configuration.Configurator.derive_view`` instead (still not an API, however).
2009-11-19Typo.Chris McDonough
2009-11-19- The ACL authorization policy debugging output whenChris McDonough
``debug_authorization`` consule debugging output was turned on wasn't as clear as it could have been when a view execution was denied due to an authorization failure resulting from the set of principals passed never having matched any ACE in any ACL in the lineage. Now in this case, we report ``<default deny>`` as the ACE value and either the root ACL or ``<No ACL found on any object in model lineage>`` if no ACL was found.
2009-11-19- The ``repoze.bfg.view.rendered_response`` function has been moved toChris McDonough
``repoze.bfg.configuration.rendered_response``. - The ``repoze.bfg.view.decorate_view`` function has been moved to ``repoze.bfg.configuration.decorate_view``. - The ``repoze.bfg.view.MultiView`` class has been moved to ``repoze.bfg.configuration.MultiView``. - Fix argument ordering bug in r.b.configuration.Configurator.resource.
2009-11-19Get rid of get_options.Chris McDonough
Shuffle Configurator around so that not passing a registry makes a default one.
2009-11-19Foo.Chris McDonough
2009-11-19Checkpoint: move most zcml route and view directive tests to test_configuration.Chris McDonough
2009-11-18- The ``repoze.bfg.registry.make_registry`` callable has been removed.Chris McDonough
- The ``repoze.bfg.view.map_view`` callable has been removed. - The ``repoze.bfg.view.owrap_view`` callable has been removed. - The ``repoze.bfg.view.predicate_wrap`` callable has been removed. - The ``repoze.bfg.view.secure_view`` callable has been removed. - The ``repoze.bfg.view.authdebug_view`` callable has been removed. - The ``repoze.bfg.view.renderer_from_name`` callable has been removed. - Coverage.
2009-11-17Move configuration methods into Configurator.Chris McDonough
2009-11-16Prep for 1.1 final release.Chris McDonough
2009-11-15Note.Chris McDonough
2009-11-14- Improve the "Extending an Existing Application" narrative chapter.Chris McDonough
2009-11-12Prep for 1.1b4.Chris McDonough
2009-11-12- Add "Defending BFG Design" chapter.Chris McDonough
2009-11-12- Move 1.0.1 and previous changelog to HISTORY.txt.Chris McDonough
2009-11-12- Use ``alsoProvides`` in the urldispatch module to attach anChris McDonough
interface to the request rather than ``directlyProvides`` to avoid disturbing interfaces set in a NewRequest event handler.
2009-11-11- Add examples to ``repoze.bfg.url.model_url`` docstring.Chris McDonough
2009-11-10TemplatesChris McDonough
--------- - Remove ``ez_setup.py`` and its import from all paster templates, samples, and tutorials for ``distribute`` compatibility. The documentation already explains how to install virtualenv (which will include some ``setuptools`` package), so these files, imports and usages were superfluous. Deprecations ------------ - The ``options`` kw arg to the ``repoze.bfg.router.make_app`` function is deprecated. In its place is the keyword argument ``settings``. The ``options`` keyword continues to work, and a deprecation warning is not emitted when it is detected. However, the paster templates, code samples, and documentation now make reference to ``settings`` rather than ``options``. This change/deprecation was mainly made for purposes of clarity and symmetry with the ``get_settings()`` API and dicussions of "settings" in various places in the docs: we want to use the same name to refer to the same thing everywhere.
2009-11-07Prep for 1.1b3.Chris McDonough
2009-11-06- ``repoze.bfg.testing.registerRoutesMapper`` testing facility added.Chris McDonough
This testing function registers a routes "mapper" object in the registry, for tests which require its presence. This function is documented in the ``repoze.bfg.testing`` API documentation.
2009-11-04Gah.Chris McDonough
2009-11-04- The ``bfgshell`` command did not function properly; it was stillChris McDonough
expecting to be able to call the root factory with a bare ``environ`` rather than a request object. - The ``repoze.bfg.scripting.get_app`` function now expects a ``request`` object as its second argument rather than an ``environ``.
2009-11-02- Compound statements that used an assignment entered into in anChris McDonough
interactive IPython session invoked via ``paster bfgshell`` no longer fail to mutate the shell namespace correctly. For example, this set of statements used to fail:: In [2]: def bar(x): return x ...: In [3]: list(bar(x) for x in 'abc') Out[3]: NameError: 'bar' In this release, the ``bar`` function is found and the correct output is now sent to the console. Thanks to Daniel Holth for the patch.
2009-11-02- Prevent PyPI installation failure due to ``easy_install`` trying wayChris McDonough
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. - Prep for 1.1b2.
2009-11-02- Add a new event type: ``repoze.bfg.events.AfterTraversal``. EventsChris McDonough
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``.
2009-11-02(no commit message)Chris McDonough
2009-11-02- "What's New in ``repoze.bfg`` 1.1" document added to narrativeChris McDonough
documentation. - Minor typo fixes.
2009-11-01Remove incorrect docs from hybrid chapter.Chris McDonough
Organize changelog of 1.1a1 into categories.
2009-11-01Prep for 1.1b1.Chris McDonough
2009-11-01- Fix various tutorials broken by 1.1a9 ``<route>`` directive changes.Chris McDonough
2009-11-01(no commit message)Chris McDonough
2009-11-01(no commit message)Chris McDonough
2009-11-01- Header values returned by the ``authtktauthenticationpolicy``Chris McDonough
``remember`` and ``forget`` methods would be of type ``unicode`` if the ``cookie_name`` attribute was used in the ZCML declaration. This violated the WSGI spec, causing a ``TypeError`` to be raised when these headers were used under ``mod_wsgi``. - If a routes-only BFG app was mounted under a path in modwsgi, ala ``WSGIScriptAlias /myapp /Users/chrism/projects/modwsgi/env/bfg.wsgi``, the home route (a route with the path of ``'/'`` or ``''``) would not match when the path ``/myapp`` was visited (only when the path ``/myapp/`` was visited). This is now fixed: if the urldispatch root factory notes that the PATH_INFO is empty, it converts it to a single slash before trying to do matching.
2009-11-01- Reinstate ``renderer`` alias for ``view_renderer`` in theChris McDonough
``<route>`` ZCML directive (in-the-wild 1.1a bw compat). - ``bfg_routesalchemy`` paster template: change ``<route>`` declarations: rename ``renderer`` attribute to ``view_renderer``. - In ``<route>`` declarations in tutorial ZCML, rename ``renderer`` attribute to ``view_renderer`` (fwd compat).
2009-11-01- The routes root factory called route factories and the default routeChris McDonough
factory with an environ rather than a request. One of the symptoms of this bug: applications generated using the ``bfg_zodb`` paster template in 1.1a9 did not work properly.
2009-11-01- Deal with a potential circref in the traversal module.Chris McDonough
2009-11-01Get the date right.Chris McDonough
2009-11-01Prep for 1.1a9.Chris McDonough