summaryrefslogtreecommitdiff
path: root/repoze
AgeCommit message (Collapse)Author
2009-06-19- Move BBB logic for registering anChris McDonough
IAuthenticationPolicy/IForbiddenView/INotFoundView based on older concepts from the router module's ``make_app`` function into the ``repoze.bfg.zcml.zcml_configure`` callable, to service compatibility with scripts that use "zope.configuration.xmlconfig" (replace with ``repoze.bfg.zml.zcml_configure`` as necessary to get BBB logic)
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-18Move view derivation code into a function.Chris McDonough
2009-06-18Use request-only view calling convention in routesalchemy template.Chris McDonough
2009-06-18Coverage.Chris McDonough
2009-06-18Add path module tests.Chris McDonough
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-18repoze.bfg.request.get_request -> repoze.bfg.threadlocal.get_current_requestChris McDonough
repoze.bfg.registry.get_registry -> repoze.bfg.threadlocal.get_current_registry Remove getSiteManager from registry module.
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-18General formatting.Chris McDonough
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-15Comment.Chris McDonough
2009-06-11Avoid the use of *subpath.Chris McDonough
2009-06-11# provide backwards compatibility for applications whichChris McDonough
# used routes (at least apps without any custom "context # factory") in BFG 0.9.X and before
2009-06-11Microspeedups.Chris McDonough
2009-06-11We control the horizontal and vertical of request generation now, so there'sChris McDonough
no purpose in trying to account for non-Webob requests.
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-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-02Typo.Chris McDonough
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-02Note non-APIness.Chris McDonough
2009-06-02disambiguate decorator nameReed OBrien
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-01Bugs found by redir.Chris McDonough
2009-06-01- Fix a reference to ``wsgiapp`` in the ``wsgiapp2`` API documentationChris McDonough
within the ``repoze.bfg.wsgi`` module.
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-01Use package name.Chris McDonough
2009-05-31Get rid of factory.Chris McDonough
2009-05-31Add a setup.cfg that includes coverage info.Chris McDonough
2009-05-31- The ``bfg_routesalchemy`` paster template now provides a unit testChris McDonough
and actually uses the database during a view rendering.
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-31Test string request type in bfg_view decorators.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- 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-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-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.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-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-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.