Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Branch: requestresponse
Fetching contributors…

Cannot retrieve contributors at this time

108 lines (70 sloc) 3.463 kB
Pyramid TODOs
=============
Should-Have
-----------
- MultiDict documentation.
- Speed up startup time (defer _bootstrap and registerCommonDirectives()
until needed by ZCML, as well as unfound speedups).
- Fix misleading conflict error reports for static views ala
http://cluebin.appspot.com/pasted/7242843
- Nicer Mako exceptions in WebError.
- Consider adding a default exception view for HTTPException and attendant
``redirect`` and ``abort`` functions ala Pylons (promised Mike I'd enable
this in 1.1).
- Static (URL-generation only) routes.
- Add narrative docs for wsgiapp and wsgiapp2.
- translationdir ZCML directive use of ``path_spec`` should maybe die.
- Provide a response_set_cookie method on the request for rendered responses
that can be used as input to response.set_cookie? Or maybe accessing
``request.response`` creates a Response, and you do
``request.response.set_cookie(...)``. See also
https://github.com/Pylons/pyramid/issues/175
- Fix message catalog extraction / compilation documentation.
- Review http://alexmarandon.com/articles/zodb_bfg_pyramid_notes .
Nice-to-Have
------------
- Consider per-form_id CSRF instead of per-session global CSRF token.
- Better "Extending" chapter.
- Try to make test suite pass on IronPython.
- Non-bwcompat use of threadlocals that need to be documented or ameliorated:
security.principals_allowed_by_permission
resource.OverrideProvider._get_overrides: can't credibly be removed,
because it stores an overrideprovider as a module-scope global.
traversal.traverse: this API is a stepchild, and needs to be changed.
Configurator.add_translation_dirs: not passed any context but a message,
can't credibly be removed.
- Supply ``X-Vhm-Host`` support.
- Basic WSGI documentation (pipeline / app / server).
- Change docs about creating a venusian decorator to not use ZCA.
- Try to better explain the relationship between a renderer and a
template in the templates chapter and elsewhere. Scan the
documentation for reference to a renderer as *only* view
configuration (it's a larger concept now).
- Create a ``render_view`` that works by using config.derive_view
against an existing view instead of querying the registry.
- Create a function which performs a recursive request.
- Debug option to print view matching decision.
- Script or paster command that prints, for a given URL, the views
that might match. Underneath each potentially matching route, list
the predicates required. Underneath each route+predicate set, print
each view that might match and its predicates. E.g. with the input
URL ``/foo``::
'/foo' (foo_xhr)
xhr = True
(no view predicates)
mypackage.views.MyXHRFooView.__call__
'/{action}' (action_route)
request_method = 'POST'
action = '^foo$'
mypackage.views.MyView.foo_POST
request_method = 'GET'
action = '^foo$'
mypackage.views.MyView.foo_GET
- Raise an exception when a value in response_headerlist is not a
string or decide to encode.
- Update App engine chapter with less creaky directions.
- Add functionality that mocks the behavior of ``repoze.browserid``.
- Consider implementing the API outlined in
http://plope.com/pyramid_auth_design_api_postmortem, phasing out the
current auth-n-auth abstractions in a backwards compatible way.
- Add doc string for BeforeRender event with more details.
Jump to Line
Something went wrong with that request. Please try again.