summaryrefslogtreecommitdiff
path: root/CHANGES.txt
AgeCommit message (Collapse)Author
2009-06-19- Added a (fairly sad) "Combining Traversal and URL Dispatch" chapterChris McDonough
to the narrative documentation.
2009-06-19- A new ZCML directive was added named ``notfound``. This ZCMLChris McDonough
directive can be used to name a view that should be invoked when the request can't otherwise be resolved to a view callable. For example:: <notfound view="helloworld.views.notfound_view"/> - A new ZCML directive was added named ``forbidden``. This ZCML directive can be used to name a view that should be invoked when a view callable for a request is found, but cannot be invoked due to an authorization failure. For example:: <forbidden view="helloworld.views.forbidden_view"/>
2009-06-18- Allow views to be *optionally* defined as callables that accept onlyChris McDonough
a request object, instead of both a context and a request (which still works, and always will). The following types work as views in this style: - functions that accept a single argument ``request``, e.g.:: def aview(request): pass - new and old-style classes that have an ``__init__`` method that accepts ``self, request``, e.g.:: def View(object): __init__(self, request): pass - Arbitrary callables that have a ``__call__`` method that accepts ``self, request``, e.g.:: def AView(object): def __call__(self, request): pass view = AView() This likely should have been the calling convention all along, as the request has ``context`` as an attribute already, and with views called as a result of URL dispatch, having the context in the arguments is not very useful. C'est la vie.
2009-06-18- Cache the absolute path in the caller's package globals withinChris McDonough
``repoze.bfg.path`` to get rid of repeated (expensive) calls to os.path.abspath.
2009-06-18- Add ``reissue_time`` and ``timeout`` parameters toChris McDonough
``repoze.bfg.authentication.AuthTktAuthenticationPolicy`` constructor. If these are passed, cookies will be reset every so often (cadged from the same change to repoze.who lately).
2009-06-18- The matchdict related to the matching of a Routes route is availableChris McDonough
on the request as the ``matchdict`` attribute: ``request.matchdict``. If no route matched, this attribute will be None.
2009-06-15- Make 404 responses slightly cheaper by showingChris McDonough
``environ["PATH_INFO"]`` on the notfound result page rather than the fullly computed URL.
2009-06-15- Move LRU cache implementation into a separate packageChris McDonough
(``repoze.lru``).
2009-06-11Make bw compat.Chris McDonough
2009-06-11Merge unifyroutesandtraversal branch into trunkChris McDonough
2009-06-08- The ``bfg_alchemy`` Paster template named "repoze.tm" in itsChris McDonough
pipeline rather than "repoze.tm2", causing the startup to fail.
2009-06-03Revert urldispatch-context-as-dict-subclass committed in r5175. Let's not ↵Chris McDonough
make that promise yet.
2009-06-03- The default routes contextChris McDonough
(``repoze.bfg.urldispatch.DefaultRoutesContext``) object now subclasses from ``dict``. This means you can use the mapping protocol in views against it.
2009-06-02Prep for 0.9.1.Chris McDonough
2009-06-02- Add API named ``repoze.bfg.settings.get_settings`` which retrieves aChris McDonough
derivation of values passed as the ``options`` value of ``repoze.bfg.router.make_app``. This API should be preferred instead of using getUtility(ISettings). I added a new ``repoze.bfg.settings`` API document as well.
2009-06-02- The ``repoze.bfg.location.locate`` API was removed: it didn't doChris McDonough
enough to be very helpful and had a misleading name.
2009-06-02This is no longer an API.Chris McDonough
2009-06-02- Add ``repoze.bfg.request.current_request`` function. This functionChris McDonough
should be used (**very sparingly**) to retrieve the "current" request. See the ``repoze.bfg.request`` API documentation for more information.
2009-06-01recorded bug fixCarlos de la Guardia
2009-06-01- Fix a reference to ``wsgiapp`` in the ``wsgiapp2`` API documentationChris McDonough
within the ``repoze.bfg.wsgi`` module.
2009-06-01(no commit message)Chris McDonough
2009-06-01- It was not possible to register a custom ``IRoutesContextFactory``Chris McDonough
for use as a default context factory as documented in the "Hooks" chapter.
2009-06-01(no commit message)Chris McDonough
2009-06-01(no commit message)Chris McDonough
2009-05-31- The ``route`` ZCML directive now accepts ``request_type`` as anChris McDonough
alias for its ``condition_method`` argument for symmetry with the ``view`` directive.
2009-05-31(no commit message)Chris McDonough
2009-05-31- The ``request_type`` argument of ZCML ``view`` declarations andChris McDonough
``bfg_view`` decorators can now be one of the strings ``GET``, ``POST``, ``PUT``, ``DELETE``, or ``HEAD`` instead of a reference to the respective interface type imported from ``repoze.bfg.interfaces``.
2009-05-31- Remove ``repoze.bfg.wsgi.HTTPException``,Chris McDonough
``repoze.bfg.wsgi.NotFound``, and ``repoze.bfg.wsgi.Unauthorized``. These classes were disused with the introduction of the ``IUnauthorizedView`` and ``INotFoundView`` machinery.
2009-05-31- Remove ``repoze.bfg.threadlocal.setManager``. It was only used inChris McDonough
unit tests.
2009-05-31- Add description to narrative templating chapter about how to useChris McDonough
Chameleon text templates.
2009-05-31Prep for 0.9a8.Chris McDonough
2009-05-31- The error presented when a view invoked by the router returns aChris McDonough
non-response object now includes the view's name for troubleshooting purposes. - A "new response" event is emitted for forbiden and notfound views.
2009-05-31(no commit message)Chris McDonough
2009-05-31(no commit message)Chris McDonough
2009-05-31FeaturesChris McDonough
-------- - It is now possible to register a custom ``repoze.bfg.interfaces.INotFoundView`` for a given application. This feature replaces the ``repoze.bfg.interfaces.INotFoundAppFactory`` feature previously described in the Hooks chapter. The INotFoundView will be called when the framework detects that a view lookup done as a result of a reqest fails; it should accept a context object and a request object; it should return an IResponse object (a webob response, basically). See the Hooks narrative chapter of the BFG docs for more info. Deprecations ------------ - The ``repoze.bfg.interfaces.IUnauthorizedAppFactory`` interface has been deprecated in favor of using the new ``repoze.bfg.interfaces.IForbiddenResponseFactory`` mechanism.
2009-05-31- Renamed ``repoze.bfg.interfaces.IForbiddenResponseFactory`` toChris McDonough
``repoze.bfg.interfaces.IForbiddenView``.
2009-05-30Prep for 0.9a7.Chris McDonough
2009-05-30- Remove "context" argument from ``effective_principals`` andChris McDonough
``authenticated_userid`` function APIs in ``repoze.bfg.security``, effectively a doing reversion to 0.8 and before behavior. Both functions now again accept only the ``request`` parameter.
2009-05-30Docs renderings. Prep for 0.9a6.Chris McDonough
2009-05-30Docs renderings.Chris McDonough
2009-05-30- Add an AuthTktAuthenticationPolicy. This policy retrievesChris McDonough
credentials from an auth_tkt cookie managed by the application itself (instead of relying on an upstream data source for authentication data). See the Security API chapter of the documentation for more info. - Allow RemoteUserAuthenticationPolicy and RepozeWho1AuthenticationPolicy to accept various constructor arguments. See the Security API chapter of the documentation for more info.
2009-05-28Prep for a5.Chris McDonough
2009-05-28- Add a ``get_app`` API functions to the ``paster`` module. ThisChris McDonough
obtains a WSGI application from a config file given a config file name and a section name. See the ``repoze.bfg.paster`` API docs for more information. - Add a new module named ``scripting``. It contains a ``get_root`` API function, which, provided a Router instance, returns a traversal root object and a "closer". See the ``repoze.bfg.scripting`` API docs for more info.
2009-05-28- Try checking for an "old style" security policy *after* we parseChris McDonough
ZCML (thinko).
2009-05-28Prep for a3.Chris McDonough
2009-05-27(no commit message)Chris McDonough
2009-05-27- Removed backwards compatibility alias forChris McDonough
``repoze.bfg.interfaces.IRootPolicy`` (deprecated since 0.6.2). It must be imported as ``repoze.bfg.interfaces.IRootFactory`` now. - Removed backwards compatibility alias for ``repoze.bfg.interfaces.ITemplate`` (deprecated since 0.4.4). It must be imported as ``repoze.bfg.interfaces.ITemplateRenderer`` now. - Removed backwards compatibility alias for ``repoze.bfg.interfaces.ITemplateFactory`` (deprecated since 0.4.4). It must be imported as ``repoze.bfg.interfaces.ITemplateRendererFactory`` now. - Removed backwards compatibility alias for ``repoze.bfg.chameleon_zpt.ZPTTemplateFactory`` (deprecated since 0.4.4). This must be imported as ``repoze.bfg.ZPTTemplateRenderer`` now.
2009-05-27- Allow IAuthenticationPolicy and IAuthorizationPolicy to beChris McDonough
overridden via ZCML registrations (do ZCML parsing after registering these in router.py).
2009-05-27- Added deprecations for imports of ``ACLSecurityPolicy``,Chris McDonough
``InheritingACLSecurityPolicy``, ``RemoteUserACLSecurityPolicy``, ``RemoteUserInheritingACLSecurityPolicy``, ``WhoACLSecurityPolicy``, and ``WhoInheritingACLSecurityPolicy`` from the ``repoze.bfg.security`` module; for the meantime (for backwards compatibility purposes) these live in the ``repoze.bfg.secpols`` module. Note however, that the entire concept of a "security policy" is deprecated in BFG in favor of separate authentication and authorization policies, so any use of a security policy will generate additional deprecation warnings even if you do start using ``repoze.bfg.secpols``. ``repoze.bfg.secpols`` will disappear in a future release of ``repoze.bfg``.
2009-05-27- Remove ``repoze.bfg.template`` module. All imports from thisChris McDonough
package have been deprecated since version 0.3.8. Instead, import ``get_template``, ``render_template``, and ``render_template_to_response`` from the ``repoze.bfg.chameleon_zpt``module.