Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 181 lines (123 sloc) 5.972 kb
0511437 @mcdonc not BFG no mo
mcdonc authored
1 Pyramid TODOs
2 =============
69364d6 @tseaver Tidying
tseaver authored
3
8ac9e61 @mcdonc garden
mcdonc authored
4 Nice-to-Have
5 ------------
8b6f09d @mcdonc add rudimentary object description code
mcdonc authored
6
bc52725 @mcdonc garden
mcdonc authored
7 - config.set_registry_attr with conflict detection... make sure the attr is
8 added before a commit, but register an action so a conflict can be detected.
9
2861f1d @mcdonc garden
mcdonc authored
10 - Provide the presumed renderer name to the called view as an attribute of
11 the request.
12
d806f9b @mcdonc note
mcdonc authored
13 - Have action methods return their discriminators.
14
4786cae @mcdonc - The system value ``r`` is now supplied to renderers as an alias for
mcdonc authored
15 - Fix renderers chapter to better document system values passed to template
16 renderers.
17
37f3baa @mcdonc garden
mcdonc authored
18 - Modify view mapper narrative docs to not use pyramid_handlers.
19
cd422c1 @mcdonc garden
mcdonc authored
20 - Modify the urldispatch chapter examples to assume a scan rather than
21 ``add_view``.
22
8ac9e61 @mcdonc garden
mcdonc authored
23 - Introspection:
57a0d77 @mcdonc docs; todo; coverage for Introspector
mcdonc authored
24
63c969d @mcdonc garden
mcdonc authored
25 * ``default root factory`` category (prevent folks from needing to searh
26 "root factories" category)?
58c01ff @mcdonc flesh out categories more
mcdonc authored
27
63c969d @mcdonc garden
mcdonc authored
28 * ``default view mapper`` category (prevent folks from needing to search
29 "view mappers" category)?
58c01ff @mcdonc flesh out categories more
mcdonc authored
30
4a4ef4f @mcdonc simplify actioninfo interface; fix actioninfos passed as tuple via _info
mcdonc authored
31 * get rid of "tweens" category (can't sort properly?)
32
bfc01f5 @mcdonc garden
mcdonc authored
33 - Fix deployment recipes in cookbook (discourage proxying without changing
34 server).
35
773024b @mcdonc garden
mcdonc authored
36 - Try "with transaction.manager" in an exception view with SQLA (preempt
37 homina homina response about how to write "to the database" from within in
63c969d @mcdonc garden
mcdonc authored
38 an exception view). Note: tried this and couldn't formulate the right
39 situation where the database could not be written to within an exception
40 view (but didn't try exhaustively).
773024b @mcdonc garden
mcdonc authored
41
95eab98 @mcdonc organize better
mcdonc authored
42 - Add narrative docs for wsgiapp and wsgiapp2.
3d338ea @mcdonc - Use [app:main] instead of a pipeline in all scaffolds and tutorials
mcdonc authored
43
95eab98 @mcdonc organize better
mcdonc authored
44 - Flesh out "Paste" narrative docs chapter.
51add88 @mcdonc garden
mcdonc authored
45
95eab98 @mcdonc organize better
mcdonc authored
46 - Basic WSGI documentation (pipeline / app / server).
51add88 @mcdonc garden
mcdonc authored
47
63c969d @mcdonc garden
mcdonc authored
48 - Change docs about creating a venusian decorator to not use ZCA (use
49 configurator methods instead).
d8d14a4 @mcdonc garden
mcdonc authored
50
95eab98 @mcdonc organize better
mcdonc authored
51 - Try to better explain the relationship between a renderer and a template in
52 the templates chapter and elsewhere. Scan the documentation for reference
53 to a renderer as *only* view configuration (it's a larger concept now).
b5ffe38 @mcdonc - The ``settings`` dictionary now raises a deprecation warning when you
mcdonc authored
54
a7d50d8 @mcdonc garden
mcdonc authored
55 - Add better docs about what-to-do-when-behind-a-proxy: paste.urlmap ("/foo =
56 app1" and "domain app1.localhost = app1"), ProxyPreserveHost and the nginx
57 equivalent, preserving HTTPS URLs.
58
95eab98 @mcdonc organize better
mcdonc authored
59 - Make "localizer" a property of request (instead of requiring
60 "get_localizer(request)"?
6aafc53 @mcdonc garden
mcdonc authored
61
95eab98 @mcdonc organize better
mcdonc authored
62 - Alias the stupid long default session factory name.
d1432f4 @mcdonc - Reconcile "extending an existing application" chapter with existence o...
mcdonc authored
63
95eab98 @mcdonc organize better
mcdonc authored
64 - Debug option to print view matching decision (e.g. debug_viewlookup or so).
94a5271 @mcdonc gardening, add twophase todo
mcdonc authored
65
f765a6d @mcdonc reprioritize
mcdonc authored
66 - Non-bwcompat use of threadlocals that need to be documented or ameliorated:
67
68 security.principals_allowed_by_permission
69
70 resource.OverrideProvider._get_overrides: can't credibly be removed,
71 because it stores an overrideprovider as a module-scope global.
72
73 traversal.traverse: this API is a stepchild, and needs to be changed.
74
75 Configurator.add_translation_dirs: not passed any context but a message,
76 can't credibly be removed.
77
95eab98 @mcdonc organize better
mcdonc authored
78 - Deprecate pyramid.security.view_execution_permitted (it only works for
79 traversal).
f077653 - A ``repoze.bfg.events.subscriber`` decorator was added. This
Chris McDonough authored
80
7c15496 @mcdonc remove; too complex to document here
mcdonc authored
81 - Provide a ``has_view`` function.
82
485ef69 @mcdonc gardening
mcdonc authored
83 - Update App engine chapter with less creaky directions.
5efc45b @mcdonc add notes about shedding threadlocals
mcdonc authored
84
9ff3b26 @mcdonc record idea from Zart about a pyramid app factory entry point for 100% d...
mcdonc authored
85 - Idea from Zart:
86
87 diff --git a/pyramid/paster.py b/pyramid/paster.py
88 index b0e4d79..b3bd82a 100644
89 --- a/pyramid/paster.py
90 +++ b/pyramid/paster.py
91 @@ -8,6 +8,7 @@ from paste.deploy import (
92 from pyramid.compat import configparser
93 from logging.config import fileConfig
94 from pyramid.scripting import prepare
95 +from pyramid.config import Configurator
96
97 def get_app(config_uri, name=None, loadapp=loadapp):
98 """ Return the WSGI application named ``name`` in the PasteDeploy
99 @@ -111,3 +112,10 @@ def bootstrap(config_uri, request=None):
100 env['app'] = app
101 return env
102
103 +def make_pyramid_app(global_conf, app=None, **settings):
104 + """Return pyramid application configured with provided settings"""
105 + config = Configurator(package='pyramid', settings=settings)
106 + if app:
107 + config.include(app)
108 + app = config.make_wsgi_app()
109 + return app
110 diff --git a/setup.py b/setup.py
111 index 03ebb42..91e0e21 100644
112 --- a/setup.py
113 +++ b/setup.py
114 @@ -118,6 +118,8 @@ setup(name='pyramid',
115 [paste.server_runner]
116 wsgiref = pyramid.scripts.pserve:wsgiref_server_runner
117 cherrypy = pyramid.scripts.pserve:cherrypy_server_runner
118 + [paster.app_factory]
119 + main = pyramid.paster:make_pyramid_app
120 """
121 )
122
123
cccc918 @mcdonc garden
mcdonc authored
124 Future
125 ------
126
b6a102e @mcdonc garden
mcdonc authored
127 - 1.5: remove ``pyramid.view.static`` and ``pyramid.view.is_response``.
6413015 @mcdonc garden
mcdonc authored
128
2a96825 @mcdonc garden
mcdonc authored
129 - 1.5: turn ``pyramid.settings.Settings`` into a function that returns the
130 original dict (after ``__getattr__`` deprecation period, it was deprecated
131 in 1.2).
132
07cb8f0 @mcdonc add pyramid.decorator.reify as an API. Closes #682
mcdonc authored
133 - 1.5: Remove ``pyramid.requests.DeprecatedRequestMethodsMixin`` and code in
134 renderers module that looks for _response_content_type, et. al.
2a96825 @mcdonc garden
mcdonc authored
135
023c88b @mcdonc rename set_request_method to add_request_method. closes #683
mcdonc authored
136 - 1.5: Maybe? deprecate set_request_property in favor of pointing people at
137 add_request_method, schedule removal for 1.8?
0048824 @mcdonc garden
mcdonc authored
138
f272f27 @mcdonc note potential 1.5 removals and remove dead code
mcdonc authored
139 - 1.5: Remove pyramid.config.rendering set_renderer_globals_factory maybe.
140
141 - 1.5: remove pyramid.config.route _add_view_from_route function.
142
63c969d @mcdonc garden
mcdonc authored
143 - 1.6: Remove IContextURL and TraversalContextURL.
144
ca3df80 @mmerickel emit a warning if a user is using the default hashalg to AuthTkt
mmerickel authored
145 - 1.7: Change ``pyramid.authentication.AuthTktAuthenticationPolicy`` default
146 ``hashalg`` to ``sha512``.
147
d8d14a4 @mcdonc garden
mcdonc authored
148 Probably Bad Ideas
149 ------------------
150
485ef69 @mcdonc gardening
mcdonc authored
151 - Add functionality that mocks the behavior of ``repoze.browserid``.
76d7eb6 @mcdonc - Internal: ZCML directives no longer call get_current_registry() if the...
mcdonc authored
152
5f3fc07 @mcdonc garden
mcdonc authored
153 - Consider implementing the API outlined in
154 http://plope.com/pyramid_auth_design_api_postmortem, phasing out the
155 current auth-n-auth abstractions in a backwards compatible way.
156
d8d14a4 @mcdonc garden
mcdonc authored
157 - Maybe add ``add_renderer_globals`` method to Configurator.
158
95eab98 @mcdonc organize better
mcdonc authored
159 - Supply ``X-Vhm-Host`` support (probably better to do what paste#prefix
160 middleware does).
161
c5724cb @mcdonc garden
mcdonc authored
162 - Have ``remember`` and ``forget`` actually set headers on the response using
163 a response callback (and return the empty list)?
f8636ce @mcdonc bad idea
mcdonc authored
164
165 - http://pythonguy.wordpress.com/2011/06/22/dynamic-variables-revisited/
166 instead of thread locals
a0547ef @mcdonc garden
mcdonc authored
167
168 - Context manager for creating a new configurator (replacing
169 ``with_package``). E.g.::
170
171 with config.partial(package='bar') as c:
172 c.add_view(...)
173
174 or::
175
176 with config.partial(introspection=False) as c:
177 c.add_view(..)
178
44d73a4 @mcdonc garden
mcdonc authored
179 - _fix_registry should dictify the registry being fixed.
180
Something went wrong with that request. Please try again.