summaryrefslogtreecommitdiff
path: root/TODO.txt
blob: c7668e49629e1a6c9b95f298619462c85593ecef (plain)
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
142
:mod:`repoze.bfg` TODOs
=======================

- Supply ``X-Vhm-Host`` support.

- Basic WSGI documentation (pipeline / app / server).

- Provide a webob.Response class facade for forward compat.

- 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.

- Switch tutorials and templates to non-ZCML.

- Adding two static views: /static first and /static2 second doesnt
  work (resources are not found under static2).  The problem appears
  to be in the handling of route matching.

- Race condition when caching templates:
  https://bugs.launchpad.net/karl3/+bug/621364.

- 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.

- These methods of Configurator should allow the arguments it receives
  named below them to be strings:

  __init__

     [ ] package

  setup_registry

     [ ] root_factory
     [.] authentication_policy
     [.] authorization_policy
     [ ] locale_negotiator
     [ ] request_factory
     [ ] renderer_globals_factory

  add_subscriber()

     [ ] subscriber
     [ ] iface

  derive_view()

     [ ] view

  add_view()

     [ ] view
     [ ] for_
     [ ] request_type
     [ ] containment
     [ ] context

  add_route()

     [.] view
     [.] view_for
     [ ] factory
     [.] for_
     [.] view_context

  scan()

     [ ] package

  add_renderer()

     [ ] factory

  set_forbidden_view()

     [ ] view

  set_notfound_view()

     [ ] view

  set_request_factory()

     [ ] factory

  set_renderer_globals_factory()

     [ ] factory

  set_locale_negotiator()

     [ ] negotiator

  testing_add_subscriber

     [ ] event_iface

- Make NewResponse event carry request.

- Change docs so that we dont use INewReponse, but instead just
  NewResponse (likewise for INewRequest, etc).