commit | author | age
|
a5175c
|
1 |
1.2.2 (2011-11-20) |
CM |
2 |
================== |
31938b
|
3 |
|
d28528
|
4 |
Features |
CM |
5 |
-------- |
|
6 |
|
|
7 |
- Backport from master: a ``mako.directories`` setting is no longer required |
|
8 |
to use Mako templates. Rationale: Mako template renderers can be specified |
|
9 |
using an absolute asset spec. An entire application can be written with |
|
10 |
such asset specs, requiring no ordered lookup path. |
|
11 |
|
31938b
|
12 |
Bug Fixes |
CM |
13 |
--------- |
|
14 |
|
e61ab8
|
15 |
- Backport from master: The ``pryamid.view.view_config`` decorator did not |
CM |
16 |
accept a ``match_params`` predicate argument. See |
|
17 |
https://github.com/Pylons/pyramid/pull/308 |
31938b
|
18 |
|
7fe36a
|
19 |
- Backport fixes from master regarding URL decoding. URL segments are |
CM |
20 |
no-longer "double-decoded" during traversal and when encountered in a route |
|
21 |
subpath (or other star-arg pattern). As a result, a new API named |
|
22 |
``pyramid.traversal.traversal_path_info`` was added to the system. This |
|
23 |
function accepts an already-URL-decoded string and returns a tuple of |
|
24 |
Unicode objects. This API is used internally by Pyramid in all places that |
|
25 |
``pyramid.traversal.traversal_path`` used to be used. The |
|
26 |
``traversal_path`` function remains for backwards compatibility, however, |
|
27 |
and can still be used when a path is encoded. See |
|
28 |
https://github.com/Pylons/pyramid/issues/349 for more information. |
|
29 |
|
28f21c
|
30 |
- Backport fix from master: ``request.static_url`` now generates URL-quoted |
CM |
31 |
URLs when fed a ``path`` argument which contains characters that are |
|
32 |
unsuitable for URLs. See https://github.com/Pylons/pyramid/issues/349 for |
|
33 |
more information. |
|
34 |
|
|
35 |
- Backport from master: fix ``request.json_body`` to deal with alternate |
|
36 |
request charsets. |
|
37 |
|
e61ab8
|
38 |
- Backport from master: the AuthTktCookieHelper could potentially generate |
4791d7
|
39 |
Unicode headers inappropriately when the ``tokens`` argument to remember |
CM |
40 |
was used. See https://github.com/Pylons/pyramid/pull/314. |
|
41 |
|
e61ab8
|
42 |
- Backport from master: the AuthTktAuthenticationPolicy did not use a |
CM |
43 |
timing-attack-aware string comparator. See |
|
44 |
https://github.com/Pylons/pyramid/pull/320 for more info. |
|
45 |
|
34859d
|
46 |
- Backport from master: the DummySession in ``pyramid.testing`` now generates |
CM |
47 |
a new CSRF token if one doesn't yet exist. |
|
48 |
|
28f21c
|
49 |
Testing |
CM |
50 |
------- |
|
51 |
|
|
52 |
- Make tox use WebOb 1.1 for Python 2.5-based systems (WebOb 1.2 is 2.6+). |
|
53 |
|
1e2d59
|
54 |
1.2.1 (2011-09-28) |
CM |
55 |
================== |
0dde01
|
56 |
|
9b9004
|
57 |
Features |
CM |
58 |
-------- |
|
59 |
|
|
60 |
- Lone instance methods can now be treated as view callables (see |
|
61 |
https://github.com/Pylons/pyramid/pull/283). |
0dde01
|
62 |
|
64b121
|
63 |
Bug Fixes |
WA |
64 |
--------- |
|
65 |
|
|
66 |
- Update auth_tkt authentication policy to accept unicode tokens as long as |
|
67 |
they only contain ASCII content. See |
|
68 |
https://github.com/Pylons/pyramid/issues/293. |
|
69 |
|
36119a
|
70 |
Documentation |
CM |
71 |
------------- |
|
72 |
|
|
73 |
- Fix ``..note`` and ``..warning`` directives to run properly under newer |
|
74 |
Sphinx. |
|
75 |
|
63f65d
|
76 |
1.2 (2011-09-12) |
CM |
77 |
================ |
dceff5
|
78 |
|
CM |
79 |
Features |
|
80 |
-------- |
|
81 |
|
|
82 |
- Route pattern replacement marker names can now begin with an underscore. |
|
83 |
See https://github.com/Pylons/pyramid/issues/276. |
|
84 |
|
2cf1d0
|
85 |
1.2b3 (2011-09-11) |
CM |
86 |
================== |
cda7f6
|
87 |
|
CM |
88 |
Bug Fixes |
|
89 |
--------- |
|
90 |
|
|
91 |
- The route prefix was not taken into account when a static view was added in |
|
92 |
an "include". See https://github.com/Pylons/pyramid/issues/266 . |
|
93 |
|
a66ae9
|
94 |
1.2b2 (2011-09-08) |
CM |
95 |
================== |
|
96 |
|
|
97 |
Bug Fixes |
|
98 |
--------- |
|
99 |
|
|
100 |
- The 1.2b1 tarball was a brownbag (particularly for Windows users) because |
|
101 |
it contained filenames with stray quotation marks in inappropriate places. |
|
102 |
We depend on ``setuptools-git`` to produce release tarballs, and when it |
|
103 |
was run to produce the 1.2b1 tarball, it didn't yet cope well with files |
|
104 |
present in git repositories with high-order characters in their filenames. |
|
105 |
|
|
106 |
Documentation |
|
107 |
------------- |
|
108 |
|
|
109 |
- Minor tweaks to the "Introduction" narrative chapter example app and |
|
110 |
wording. |
|
111 |
|
9de21f
|
112 |
1.2b1 (2011-09-08) |
CM |
113 |
================== |
d8fc16
|
114 |
|
58ca44
|
115 |
Bug Fixes |
CM |
116 |
--------- |
|
117 |
|
|
118 |
- Sometimes falling back from territory translations (``de_DE``) to language |
|
119 |
translations (``de``) would not work properly when using a localizer. See |
|
120 |
https://github.com/Pylons/pyramid/issues/263 |
|
121 |
|
d5dc5d
|
122 |
- The static file serving machinery could not serve files that started with a |
b44777
|
123 |
``.`` (dot) character. |
d5dc5d
|
124 |
|
b01e97
|
125 |
- Static files with high-order (super-ASCII) characters in their names could |
b44777
|
126 |
not be served by a static view. The static file serving machinery |
CM |
127 |
inappropriately URL-quoted path segments in filenames when asking for files |
|
128 |
from the filesystem. |
d5dc5d
|
129 |
|
83faa0
|
130 |
- Within ``pyramid.traversal.traversal_path`` , canonicalize URL segments |
CM |
131 |
from UTF-8 to Unicode before checking whether a segment matches literally |
|
132 |
one of ``.``, the empty string, or ``..`` in case there's some sneaky way |
|
133 |
someone might tunnel those strings via UTF-8 that don't match the literals |
|
134 |
before decoded. |
|
135 |
|
d8fc16
|
136 |
Documentation |
CM |
137 |
------------- |
|
138 |
|
|
139 |
- Added a "What Makes Pyramid Unique" section to the Introduction narrative |
|
140 |
chapter. |
|
141 |
|
d00fa0
|
142 |
1.2a6 (2011-09-06) |
CM |
143 |
================== |
bd0c7a
|
144 |
|
f46d55
|
145 |
Bug Fixes |
CM |
146 |
--------- |
|
147 |
|
|
148 |
- AuthTktAuthenticationPolicy with a ``reissue_time`` interfered with logout. |
|
149 |
See https://github.com/Pylons/pyramid/issues/262. |
|
150 |
|
bd0c7a
|
151 |
Internal |
CM |
152 |
-------- |
|
153 |
|
|
154 |
- Internalize code previously depended upon as imports from the |
|
155 |
``paste.auth`` module (futureproof). |
|
156 |
|
d00fa0
|
157 |
- Replaced use of ``paste.urlparser.StaticURLParser`` with a derivative of |
CM |
158 |
Chris Rossi's "happy" static file serving code (futureproof). |
|
159 |
|
20646a
|
160 |
- Fixed test suite; on some systems tests would fail due to indeterminate |
CM |
161 |
test run ordering and a double-push-single-pop of a shared test variable. |
315f75
|
162 |
|
CM |
163 |
Behavior Differences |
|
164 |
-------------------- |
|
165 |
|
|
166 |
- An ETag header is no longer set when serving a static file. A |
|
167 |
Last-Modified header is set instead. |
|
168 |
|
|
169 |
- Static file serving no longer supports the ``wsgi.file_wrapper`` extension. |
|
170 |
|
|
171 |
- Instead of returning a ``403 Forbidden`` error when a static file is served |
|
172 |
that cannot be accessed by the Pyramid process' user due to file |
|
173 |
permissions, an IOError (or similar) will be raised. |
|
174 |
|
d00fa0
|
175 |
Scaffolds |
CM |
176 |
--------- |
|
177 |
|
|
178 |
- All scaffolds now send the ``cache_max_age`` parameter to the |
|
179 |
``add_static_view`` method. |
|
180 |
|
7961af
|
181 |
1.2a5 (2011-09-04) |
CM |
182 |
================== |
7a7c8c
|
183 |
|
CM |
184 |
Bug Fixes |
|
185 |
--------- |
|
186 |
|
|
187 |
- The ``route_prefix`` of a configurator was not properly taken into account |
|
188 |
when registering routes in certain circumstances. See |
|
189 |
https://github.com/Pylons/pyramid/issues/260 |
|
190 |
|
061154
|
191 |
Dependencies |
CM |
192 |
------------ |
|
193 |
|
|
194 |
- The ``zope.configuration`` package is no longer a dependency. |
|
195 |
|
f1c6e0
|
196 |
1.2a4 (2011-09-02) |
CM |
197 |
================== |
1aeae3
|
198 |
|
CM |
199 |
Features |
|
200 |
-------- |
|
201 |
|
|
202 |
- Support an ``onerror`` keyword argument to |
|
203 |
``pyramid.config.Configurator.scan()``. This onerror keyword argument is |
|
204 |
passed to ``venusian.Scanner.scan()`` to influence error behavior when |
|
205 |
an exception is raised during scanning. |
|
206 |
|
49f082
|
207 |
- The ``request_method`` predicate argument to |
CM |
208 |
``pyramid.config.Configurator.add_view`` and |
|
209 |
``pyramid.config.Configurator.add_route`` is now permitted to be a tuple of |
|
210 |
HTTP method names. Previously it was restricted to being a string |
|
211 |
representing a single HTTP method name. |
|
212 |
|
33516a
|
213 |
- Undeprecated ``pyramid.traversal.find_model``, |
CM |
214 |
``pyramid.traversal.model_path``, ``pyramid.traversal.model_path_tuple``, |
|
215 |
and ``pyramid.url.model_url``, which were all deprecated in Pyramid 1.0. |
|
216 |
There's just not much cost to keeping them around forever as aliases to |
|
217 |
their renamed ``resource_*`` prefixed functions. |
|
218 |
|
|
219 |
- Undeprecated ``pyramid.view.bfg_view``, which was deprecated in Pyramid |
|
220 |
1.0. This is a low-cost alias to ``pyramid.view.view_config`` which we'll |
|
221 |
just keep around forever. |
|
222 |
|
1aeae3
|
223 |
Dependencies |
CM |
224 |
------------ |
|
225 |
|
|
226 |
- Pyramid now requires Venusian 1.0a1 or better to support the ``onerror`` |
|
227 |
keyword argument to ``pyramid.config.Configurator.scan``. |
|
228 |
|
21a4c9
|
229 |
1.2a3 (2011-08-29) |
CM |
230 |
================== |
b2c4e0
|
231 |
|
b5c0cb
|
232 |
Bug Fixes |
CM |
233 |
--------- |
|
234 |
|
|
235 |
- Pyramid did not properly generate static URLs using |
|
236 |
``pyramid.url.static_url`` when passed a caller-package relative path due |
0ff9d4
|
237 |
to a refactoring done in 1.2a1. |
CM |
238 |
|
|
239 |
- The ``settings`` object emitted a deprecation warning any time |
|
240 |
``__getattr__`` was called upon it. However, there are legitimate |
|
241 |
situations in which ``__getattr__`` is called on arbitrary objects |
|
242 |
(e.g. ``hasattr``). Now, the ``settings`` object only emits the warning |
|
243 |
upon successful lookup. |
b5c0cb
|
244 |
|
b2c4e0
|
245 |
Internal |
CM |
246 |
-------- |
|
247 |
|
|
248 |
- Use ``config.with_package`` in view_config decorator rather than |
|
249 |
manufacturing a new renderer helper (cleanup). |
|
250 |
|
5bee60
|
251 |
1.2a2 (2011-08-27) |
CM |
252 |
================== |
|
253 |
|
|
254 |
Bug Fixes |
|
255 |
--------- |
b93af9
|
256 |
|
CM |
257 |
- When a ``renderers=`` argument is not specified to the Configurator |
|
258 |
constructor, eagerly register and commit the default renderer set. This |
|
259 |
permits the overriding of the default renderers, which was broken in 1.2a1 |
|
260 |
without a commit directly after Configurator construction. |
|
261 |
|
8b62d7
|
262 |
- Mako rendering exceptions had the wrong value for an error message. |
CM |
263 |
|
2a818a
|
264 |
- An include could not set a root factory successfully because the |
CM |
265 |
Configurator constructor unconditionally registered one that would be |
|
266 |
treated as if it were "the word of the user". |
|
267 |
|
5bee60
|
268 |
Features |
CM |
269 |
-------- |
|
270 |
|
637bda
|
271 |
- A session factory can now be passed in using the dotted name syntax. |
CM |
272 |
|
c1a179
|
273 |
1.2a1 (2011-08-24) |
CM |
274 |
================== |
9a66aa
|
275 |
|
CM |
276 |
Features |
|
277 |
-------- |
|
278 |
|
5ec330
|
279 |
- The ``[pshell]`` section in an ini configuration file now treats a |
CM |
280 |
``setup`` key as a dotted name that points to a callable that is passed the |
|
281 |
bootstrap environment. It can mutate the environment as necessary for |
|
282 |
great justice. |
|
283 |
|
473697
|
284 |
- A new configuration setting named ``pyramid.includes`` is now available. |
CM |
285 |
It is described in the "Environment Variables and ``.ini`` Files Settings" |
|
286 |
narrative documentation chapter. |
|
287 |
|
83bf91
|
288 |
- Added a ``route_prefix`` argument to the |
CM |
289 |
``pyramid.config.Configurator.include`` method. This argument allows you |
|
290 |
to compose URL dispatch applications together. See the section entitled |
|
291 |
"Using a Route Prefix to Compose Applications" in the "URL Dispatch" |
|
292 |
narrative documentation chapter. |
|
293 |
|
1e88db
|
294 |
- Added a ``pyramid.security.NO_PERMISSION_REQUIRED`` constant for use in |
CM |
295 |
``permission=`` statements to view configuration. This constant has a |
|
296 |
value of the string ``__no_permission_required__``. This string value was |
|
297 |
previously referred to in documentation; now the documentation uses the |
|
298 |
constant. |
|
299 |
|
1f901a
|
300 |
- Added a decorator-based way to configure a response adapter: |
CM |
301 |
``pyramid.response.response_adapter``. This decorator has the same use as |
|
302 |
``pyramid.config.Configurator.add_response_adapter`` but it's declarative. |
|
303 |
|
9a66aa
|
304 |
- The ``pyramid.events.BeforeRender`` event now has an attribute named |
CM |
305 |
``rendering_val``. This can be used to introspect the value returned by a |
|
306 |
view in a BeforeRender subscriber. |
|
307 |
|
6b2a62
|
308 |
- New configurator directive: ``pyramid.config.Configurator.add_tween``. |
CM |
309 |
This directive adds a "tween". A "tween" is used to wrap the Pyramid |
|
310 |
router's primary request handling function. This is a feature may be used |
|
311 |
by Pyramid framework extensions, to provide, for example, view timing |
|
312 |
support and as a convenient place to hang bookkeeping code. |
af2323
|
313 |
|
6b2a62
|
314 |
Tweens are further described in the narrative docs section in the Hooks |
CM |
315 |
chapter, named "Registering Tweens". |
af2323
|
316 |
|
6b2a62
|
317 |
- New paster command ``paster ptweens``, which prints the current "tween" |
CM |
318 |
configuration for an application. See the section entitled "Displaying |
|
319 |
Tweens" in the Command-Line Pyramid chapter of the narrative documentation |
|
320 |
for more info. |
b72379
|
321 |
|
3a8054
|
322 |
- The Pyramid debug logger now uses the standard logging configuration |
CM |
323 |
(usually set up by Paste as part of startup). This means that output from |
|
324 |
e.g. ``debug_notfound``, ``debug_authorization``, etc. will go to the |
|
325 |
normal logging channels. The logger name of the debug logger will be the |
|
326 |
package name of the *caller* of the Configurator's constructor. |
|
327 |
|
95a379
|
328 |
- A new attribute is available on request objects: ``exc_info``. Its value |
CM |
329 |
will be ``None`` until an exception is caught by the Pyramid router, after |
|
330 |
which it will be the result of ``sys.exc_info()``. |
6b2a62
|
331 |
|
274435
|
332 |
- ``pyramid.testing.DummyRequest`` now implements the |
CM |
333 |
``add_finished_callback`` and ``add_response_callback`` methods. |
|
334 |
|
1a42bd
|
335 |
- New methods of the ``pyramid.config.Configurator`` class: |
CM |
336 |
``set_authentication_policy`` and ``set_authorization_policy``. These are |
|
337 |
meant to be consumed mostly by add-on authors. |
|
338 |
|
ea824f
|
339 |
- New Configurator method: ``set_root_factory``. |
CM |
340 |
|
|
341 |
- Pyramid no longer eagerly commits some default configuration statements at |
|
342 |
Configurator construction time, which permits values passed in as |
|
343 |
constructor arguments (e.g. ``authentication_policy`` and |
|
344 |
``authorization_policy``) to override the same settings obtained via an |
|
345 |
"include". |
|
346 |
|
9f7f4f
|
347 |
- Better Mako rendering exceptions via |
CM |
348 |
``pyramid.mako_templating.MakoRenderingException`` |
|
349 |
|
5c6963
|
350 |
- New request methods: ``current_route_url``, ``current_route_path``, and |
CM |
351 |
``static_path``. |
12cef0
|
352 |
|
5c6963
|
353 |
- New functions in ``pyramid.url``: ``current_route_path`` and |
CM |
354 |
``static_path``. |
12cef0
|
355 |
|
b8c797
|
356 |
- The ``pyramid.request.Request.static_url`` API (and its brethren |
CM |
357 |
``pyramid.request.Request.static_path``, ``pyramid.url.static_url``, and |
|
358 |
``pyramid.url.static_path``) now accept an asbolute filename as a "path" |
|
359 |
argument. This will generate a URL to an asset as long as the filename is |
|
360 |
in a directory which was previously registered as a static view. |
|
361 |
Previously, trying to generate a URL to an asset using an absolute file |
|
362 |
path would raise a ValueError. |
|
363 |
|
449287
|
364 |
- The ``RemoteUserAuthenticationPolicy ``, ``AuthTktAuthenticationPolicy``, |
CM |
365 |
and ``SessionAuthenticationPolicy`` constructors now accept an additional |
|
366 |
keyword argument named ``debug``. By default, this keyword argument is |
|
367 |
``False``. When it is ``True``, debug information will be sent to the |
|
368 |
Pyramid debug logger (usually on stderr) when the ``authenticated_userid`` |
|
369 |
or ``effective_principals`` method is called on any of these policies. The |
|
370 |
output produced can be useful when trying to diagnose |
|
371 |
authentication-related problems. |
|
372 |
|
141f90
|
373 |
- New view predicate: ``match_param``. Example: a view added via |
CM |
374 |
``config.add_view(aview, match_param='action=edit')`` will be called only |
|
375 |
when the ``request.matchdict`` has a value inside it named ``action`` with |
|
376 |
a value of ``edit``. |
|
377 |
|
6b2a62
|
378 |
Internal |
CM |
379 |
-------- |
|
380 |
|
|
381 |
- The Pyramid "exception view" machinery is now implemented as a "tween" |
|
382 |
(``pyramid.tweens.excview_tween_factory``). |
95a379
|
383 |
|
85093d
|
384 |
- WSGIHTTPException (HTTPFound, HTTPNotFound, etc) now has a new API named |
CM |
385 |
"prepare" which renders the body and content type when it is provided with |
|
386 |
a WSGI environ. Required for debug toolbar. |
|
387 |
|
|
388 |
- Once ``__call__`` or ``prepare`` is called on a WSGIHTTPException, the body |
|
389 |
will be set, and subsequent calls to ``__call__`` will always return the |
|
390 |
same body. Delete the body attribute to rerender the exception body. |
|
391 |
|
5c52da
|
392 |
- Previously the ``pyramid.events.BeforeRender`` event *wrapped* a dictionary |
CM |
393 |
(it addressed it as its ``_system`` attribute). Now it *is* a dictionary |
|
394 |
(it inherits from ``dict``), and it's the value that is passed to templates |
|
395 |
as a top-level dictionary. |
|
396 |
|
fb90f0
|
397 |
- The ``route_url``, ``route_path``, ``resource_url``, ``static_url``, and |
CM |
398 |
``current_route_url`` functions in the ``pyramid.url`` package now delegate |
|
399 |
to a method on the request they've been passed, instead of the other way |
|
400 |
around. The pyramid.request.Request object now inherits from a mixin named |
|
401 |
pyramid.url.URLMethodsMixin to make this possible, and all url/path |
|
402 |
generation logic is embedded in this mixin. |
|
403 |
|
5bf23f
|
404 |
- Refactor ``pyramid.config`` into a package. |
CM |
405 |
|
66da9b
|
406 |
- Removed the ``_set_security_policies`` method of the Configurator. |
CM |
407 |
|
53d9d4
|
408 |
- Moved the ``StaticURLInfo`` class from ``pyramid.static`` to |
CM |
409 |
``pyramid.config.views``. |
|
410 |
|
5f5a7e
|
411 |
- Move the ``Settings`` class from ``pyramid.settings`` to |
CM |
412 |
``pyramid.config.settings``. |
|
413 |
|
6da017
|
414 |
- Move the ``OverrideProvider``, ``PackageOverrides``, ``DirectoryOverride``, |
CM |
415 |
and ``FileOverride`` classes from ``pyramid.asset`` to |
|
416 |
``pyramid.config.assets``. |
|
417 |
|
ef6f6b
|
418 |
Deprecations |
CM |
419 |
------------ |
|
420 |
|
|
421 |
- All Pyramid-related deployment settings (e.g. ``debug_all``, |
|
422 |
``debug_notfound``) are now meant to be prefixed with the prefix |
|
423 |
``pyramid.``. For example: ``debug_all`` -> ``pyramid.debug_all``. The |
|
424 |
old non-prefixed settings will continue to work indefinitely but supplying |
53d9d4
|
425 |
them may eventually print a deprecation warning. All scaffolds and |
CM |
426 |
tutorials have been changed to use prefixed settings. |
ef6f6b
|
427 |
|
b5ffe3
|
428 |
- The ``settings`` dictionary now raises a deprecation warning when you |
CM |
429 |
attempt to access its values via ``__getattr__`` instead of |
|
430 |
via ``__getitem__``. |
|
431 |
|
3a8054
|
432 |
Backwards Incompatibilities |
CM |
433 |
--------------------------- |
|
434 |
|
|
435 |
- If a string is passed as the ``debug_logger`` parameter to a Configurator, |
|
436 |
that string is considered to be the name of a global Python logger rather |
|
437 |
than a dotted name to an instance of a logger. |
|
438 |
|
83bf91
|
439 |
- The ``pyramid.config.Configurator.include`` method now accepts only a |
CM |
440 |
single ``callable`` argument (a sequence of callables used to be |
|
441 |
permitted). If you are passing more than one ``callable`` to |
|
442 |
``pyramid.config.Configurator.include``, it will break. You now must now |
53d9d4
|
443 |
instead make a separate call to the method for each callable. This change |
CM |
444 |
was introduced to support the ``route_prefix`` feature of include. |
83bf91
|
445 |
|
04b7ea
|
446 |
- It may be necessary to more strictly order configuration route and view |
CM |
447 |
statements when using an "autocommitting" Configurator. In the past, it |
|
448 |
was possible to add a view which named a route name before adding a route |
|
449 |
with that name when you used an autocommitting configurator. For example:: |
|
450 |
|
|
451 |
config = Configurator(autocommit=True) |
|
452 |
config.add_view('my.pkg.someview', route_name='foo') |
|
453 |
config.add_route('foo', '/foo') |
|
454 |
|
|
455 |
The above will raise an exception when the view attempts to add itself. |
|
456 |
Now you must add the route before adding the view:: |
|
457 |
|
|
458 |
config = Configurator(autocommit=True) |
|
459 |
config.add_route('foo', '/foo') |
|
460 |
config.add_view('my.pkg.someview', route_name='foo') |
|
461 |
|
|
462 |
This won't effect "normal" users, only people who have legacy BFG codebases |
|
463 |
that used an autommitting configurator and possibly tests that use the |
|
464 |
configurator API (the configurator returned by ``pyramid.testing.setUp`` is |
|
465 |
an autocommitting configurator). The right way to get around this is to |
|
466 |
use a non-autocommitting configurator (the default), which does not have |
|
467 |
these directive ordering requirements. |
|
468 |
|
|
469 |
- The ``pyramid.config.Configurator.add_route`` directive no longer returns a |
|
470 |
route object. This change was required to make route vs. view |
|
471 |
configuration processing work properly. |
|
472 |
|
6b2a62
|
473 |
Documentation |
CM |
474 |
------------- |
|
475 |
|
fb90f0
|
476 |
- Narrative and API documentation which used the ``route_url``, |
CM |
477 |
``route_path``, ``resource_url``, ``static_url``, and ``current_route_url`` |
|
478 |
functions in the ``pyramid.url`` package have now been changed to use |
|
479 |
eponymous methods of the request instead. |
|
480 |
|
83bf91
|
481 |
- Added a section entitled "Using a Route Prefix to Compose Applications" to |
CM |
482 |
the "URL Dispatch" narrative documentation chapter. |
|
483 |
|
6b2a62
|
484 |
- Added a new module to the API docs: ``pyramid.tweens``. |
CM |
485 |
|
|
486 |
- Added a "Registering Tweens" section to the "Hooks" narrative chapter. |
|
487 |
|
|
488 |
- Added a "Displaying Tweens" section to the "Command-Line Pyramid" narrative |
|
489 |
chapter. |
|
490 |
|
473697
|
491 |
- Added documentation for the ``pyramid.tweens`` and ``pyramid.includes`` |
CM |
492 |
configuration settings to the "Environment Variables and ``.ini`` Files |
|
493 |
Settings" chapter. |
|
494 |
|
1ae7af
|
495 |
- Added a Logging chapter to the narrative docs (based on the Pylons logging |
CM |
496 |
docs, thanks Phil). |
|
497 |
|
53d9d4
|
498 |
- Added a Paste chapter to the narrative docs (moved content from the Project |
CM |
499 |
chapter). |
|
500 |
|
5c52da
|
501 |
- Added the ``pyramid.interfaces.IDict`` interface representing the methods |
CM |
502 |
of a dictionary, for documentation purposes only (IMultiDict and |
|
503 |
IBeforeRender inherit from it). |
|
504 |
|
42d31c
|
505 |
- All tutorials now use - The ``route_url``, ``route_path``, |
CM |
506 |
``resource_url``, ``static_url``, and ``current_route_url`` methods of the |
|
507 |
request rather than the function variants imported from ``pyramid.url``. |
|
508 |
|
b25335
|
509 |
- The ZODB wiki tutorial now uses the ``pyramid_zodbconn`` package rather |
CM |
510 |
than the ``repoze.zodbconn`` package to provide ZODB integration. |
|
511 |
|
eef972
|
512 |
Dependency Changes |
CM |
513 |
------------------ |
|
514 |
|
|
515 |
- Pyramid now relies on PasteScript >= 1.7.4. This version contains a |
|
516 |
feature important for allowing flexible logging configuration. |
|
517 |
|
391402
|
518 |
Scaffolds |
CM |
519 |
---------- |
|
520 |
|
|
521 |
- All scaffolds now use the ``pyramid_tm`` package rather than the |
|
522 |
``repoze.tm2`` middleware to manage transaction management. |
|
523 |
|
b25335
|
524 |
- The ZODB scaffold now uses the ``pyramid_zodbconn`` package rather than the |
CM |
525 |
``repoze.zodbconn`` package to provide ZODB integration. |
|
526 |
|
391402
|
527 |
- All scaffolds now use the ``pyramid_debugtoolbar`` package rather than the |
CM |
528 |
``WebError`` package to provide interactive debugging features. |
|
529 |
|
|
530 |
- Projects created via a scaffold no longer depend on the ``WebError`` |
|
531 |
package at all; configuration in the ``production.ini`` file which used to |
|
532 |
require its ``error_catcher`` middleware has been removed. Configuring |
|
533 |
error catching / email sending is now the domain of the ``pyramid_exclog`` |
|
534 |
package (see https://docs.pylonsproject.org/projects/pyramid_exclog/dev/). |
|
535 |
|
1939d0
|
536 |
Bug Fixes |
CM |
537 |
--------- |
|
538 |
|
|
539 |
- Fixed an issue with the default renderer not working at certain times. See |
|
540 |
https://github.com/Pylons/pyramid/issues/249 |
|
541 |
|