summaryrefslogtreecommitdiff
path: root/CHANGES.txt
AgeCommit message (Collapse)Author
2009-06-30Back to dev.Chris McDonough
2009-06-30Prep for 1.0a7.Chris McDonough
2009-06-30- Add a ``reload_resources`` configuration file setting (aka theChris McDonough
``BFG_RELOAD_RESOURCES`` environment variable). When this is set to true, the server never needs to be restarted when moving files between directory resource overrides (esp. for templates currently). - Add a ``reload_all`` configuration file setting (aka the ``BFG_RELOAD_ALL`` environment variable) that implies both ``reload_resources`` and ``reload_templates``. - The ``static`` helper view class now uses a ``PackageURLParser`` in order to allow for the overriding of static resources (CSS / logo files, etc) using the ``resource`` ZCML directive. The ``PackageURLParser`` class was added to a (new) ``static`` module in BFG; it is a subclass of the ``StaticURLParser`` class in ``paste.urlparser``. - The ``repoze.bfg.templating.renderer_from_cache`` function now checks for the ``reload_resources`` setting; if it's true, it does not register a template renderer (it won't use the registry as a template renderer cache). - Add ``pkg_resources`` to the glossary. - Update the "Environment" docs to note the existence of ``reload_resources`` and ``reload_all``. - Use a colon instead of a tab as the separator between package name and relpath to form the "spec" when register a ITemplateRenderer.
2009-06-30Updated the ``bfg_alchemy`` paster template to include two views:Tres Seaver
- The view on the root shows a list of links to records. - The view on a record shows the details for that object.
2009-06-30- Register a ``repoze.bfg.resource.OverrideProvider`` as aChris McDonough
pkg_resources provider only for modules which are known to have overrides, instead of globally, when a <resource> directive is used (performance).
2009-06-29Back to dev.Chris McDonough
2009-06-29Prep for 1.0a6.Chris McDonough
2009-06-29- Use ``caller_package`` function instead of ``caller_module``Chris McDonough
function within ``templating`` to avoid needing to name the caller module in resource overrides (actually match docs). - Make it possible to override templates stored directly in a module with templates in a subdirectory of the same module, stored directly within another module, or stored in a subdirectory of another module (actually match docs).
2009-06-29Prep for 1.0a5 release.Chris McDonough
2009-06-29Add changelog entry for resource directive.Chris McDonough
Rejigger error detection ordering.
2009-06-27Typo.Chris McDonough
2009-06-27- The ``repoze.bfg.templating`` module now uses ``pkg_resources`` toChris McDonough
locate and register template files instead of using an absolute path name.
2009-06-27- Use the ``pkg_resources`` API to locate template filenames insteadChris McDonough
of dead-reckoning using the ``os.path`` module.
2009-06-26Prep for 1.0a4 release.Chris McDonough
2009-06-26- Cause ``:segment`` matches in route paths to put a Unicode-decodedChris McDonough
and URL-dequoted value in the matchdict for the value matched. Previously a non-decoded non-URL-dequoted string was placed in the matchdict as the value. - Cause ``*remainder`` matches in route paths to put a *tuple* in the matchdict dictionary in order to be able to present Unicode-decoded and URL-dequoted values for the traversal path. Previously a non-decoded non-URL-dequoted string was placed in the matchdict as the value.
2009-06-25- Add optional ``max_age`` keyword value to the ``remember`` method ofChris McDonough
``repoze.bfg.authentication.AuthTktAuthenticationPolicy``; if this value is passed to ``remember``, the generated cookie will have a corresponding Max-Age value.
2009-06-25- Make ``route_url`` URL-quote segment replacements during generation.Chris McDonough
Remainder segments are not quoted.
2009-06-24- Add information to the URL Dispatch narrative documentation aboutChris McDonough
path pattern matching syntax.
2009-06-24Back to dev.Chris McDonough
2009-06-24Wrong.Chris McDonough
2009-06-24Prep for 1.0a3.Chris McDonough
2009-06-24Note bw compat.Chris McDonough
2009-06-24- ``repoze.bfg`` no longer relies on the Routes package to interpretChris McDonough
URL paths.
2009-06-24Note BFG on GAE bugfix.Chris McDonough
2009-06-24- Use ``repoze.bfg.url.route_url`` API in tutorials rather than RoutesChris McDonough
``url_for`` API.
2009-06-24- Added the ``repoze.bfg.url.route_url`` API. This is meant toChris McDonough
"front" for the Routes ``url_for`` API. See the URL Dispatch narrative chapter and the "repoze.bfg.url" module API documentation for more information.
2009-06-24(no commit message)Chris McDonough
2009-06-24- ``model_url`` when passed a request that was generated as a resultChris McDonough
of a route match would fail in a call to ``route.generate``.
2009-06-23Back to dev.Chris McDonough
2009-06-23Prep for 1.0a2.Chris McDonough
2009-06-23- The ``callback`` argument of the ``repoze.bfg.authentication``Chris McDonough
authentication policies named ``RepozeWho1AuthenticationPolicy``, ``RemoteUserAuthenticationPolicy``, and ``AuthTktAuthenticationPolicy`` now must accept two positional arguments: the orginal argument accepted by each (userid or identity) plus a second argument, which will be the current request. Apologies, this is required to service finding groups when there is no "global" database connection.
2009-06-22- The ``bfg_routesalchemy`` paster template app tests failed due to aChris McDonough
mismatch between test and view signatures.
2009-06-22- Conditional documentation in installation section ("how to install aChris McDonough
Python interpreter").
2009-06-22- Add a ``view_for`` attribute to the ``route`` ZCML directive. ThisChris McDonough
attribute should refer to an interface or a class (ala the ``for`` attribute of the ``view`` ZCML directive).
2009-06-22Back to dev.Chris McDonough
2009-06-22Prep for 1.0a1.Chris McDonough
2009-06-22- The values of ``subpath``, ``traversed``, and ``virtual_root_path``Chris McDonough
attached to the request object are always now tuples instead of lists (performance).
2009-06-22Add documentation for *subpath.Chris McDonough
Switch back to using a route with a subpath in the bfgalchemy paster template.
2009-06-22- Adding ``*path_info`` to a route no longer changes the PATH_INFO forChris McDonough
a request that matches using URL dispatch. This feature was only there to service the ``repoze.bfg.wsgi.wsgiapp2`` decorator and it did it wrong; use ``*subpath`` instead now. - The interface generation performed for named request factories had the wrong base classes.
2009-06-21- Make Routes mapper responsible for doing magic to fix up PATH_INFOChris McDonough
and SCRIPT_NAME when a ``path_info`` key exists in the matchdict. This used to be done in the traverser, which made no sense.
2009-06-19Move pushpage support out into separate distribution.Tres Seaver
2009-06-19- Add interface docs related to how to create authentication policiesChris McDonough
and authorization policies to the "Security" narrative chapter.
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- 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.