1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
|
:mod:`repoze.bfg` TODOs
=======================
- Supply ``X-Vhm-Host`` support.
- Basic WSGI documentation (pipeline / app / server).
- Fix message catalog extraction / compilation documentation.
- Change docs about creating a venusian decorator to not use ZCA.
- ``decorator=`` parameter to bfg_view.
- 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 route matching decision.
- 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
- Ability to use configurator as a context manager.
- Provide a response_cookies attribute on the request for rendered
responses that can be used as input to response.set_cookie.
- Raise an exception when a value in response_headerlist is not a
string or decide to encode.
- Change "Cleaning up After a Request" in the urldispatch chapter to
use ``request.add_response_callback``.
- Update App engine chapter.
- Browser id?
- .flash API on session.
- CRSF token machinery
- ``add_handler`` documentation.
- ``handler`` ZCML directive.
- ``docs`` directory for each paster template.
- "BFG" in environ variables.
- Test on GAE, Jython, PyPy, IronPython.
- Add docs for httpexceptions.
- RendererHelper -> RendererInfo?
- Do something about ZODB session chapter: either remove or create a
pyramid_zodbsessions package.
- translationdir ZCML directive use of ``path_spec`` should maybe die.
- Option for route_url to omit the host and port (perhaps a different
function named ``route_path``).
- SQLAlchemy idiomatics:
<RaFromBRC> mcdonc: those paster templates all look pretty good... the
only thing i'd consider is adjusting your config variable names to match
exactly what sqlalchemy uses as parameter names, see here:
http://www.sqlalchemy.org/docs/core/engines.html
<RaFromBRC> mcdonc: especially in the pylons_sqla ini file, where the db
initialization is mixed in w/ the app config...
<RaFromBRC> ... i'd use "sqlalchemy.PARAMETER" for all of the sqla
settings, so it could easily be handed to engine_from_config w/o any need
to parse by hand
<RaFromBRC> mcdonc: in the other ini files, where sqlalchemy is given its
own part, the "sqlalchemy." prefix probably isn't necessary, but matching
the parameter names (e.g. 'url' instead of 'db_string') is still probably
a good idea
- Default renderer.
- Non-bwcompat use of threadlocals:
security.principals_allowed_by_permission
chameleon_text.TextTemplateRenderer.template (also uses get_settings)
chameleon_zpt.ZPTTemplateRenderer.template (also uses get_settings)
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.
- Add deprecation warnings for:
- Use of chameleon_zpt and chameleon_text templating functions (use
renderer API instead).
- settings.get_settings
- zcml.zcml_configure
- zcml.file_configure
- Add static_url as method of request.
|