Chris McDonough
2011-12-21 d394da5175fece8388f2fc0dfd906942faa6f2ed
commit | author | age
d394da 1 1.3a3 (2011-12-21)
CM 2 ==================
c8061e 3
CM 4 Features
5 --------
6
7 - Added a ``prequest`` script (along the lines of ``paster request``).  It is
8   documented in the "Command-Line Pyramid" chapter in the section entitled
9   "Invoking a Request".
10
ba2a3f 11 - Add undocumented ``__discriminator__`` API to derived view callables.
CM 12   e.g. ``adapters.lookup(...).__discriminator__(context, request)``.  It will
13   be used by superdynamic systems that require the discriminator to be used
14   for introspection after manual view lookup.
15
d58614 16 Bug Fixes
CM 17 ---------
18
19 - Normalized exit values and ``-h`` output for all ``p*`` scripts
20   (``pviews``, ``proutes``, etc).
21
61838b 22 Documentation
CM 23 -------------
24
25 - Added a section named "Making Your Script into a Console Script" in the
26   "Command-Line Pyramid" chapter.
27
9003a8 28 - Removed the "Running Pyramid on Google App Engine" tutorial from the main
CM 29   docs.  It survives on in the Cookbook
30   (http://docs.pylonsproject.org/projects/pyramid_cookbook/en/latest/gae.html).
31   Rationale: it provides the correct info for the Python 2.5 version of GAE
32   only, and this version of Pyramid does not support Python 2.5.
33
9dce50 34 1.3a2 (2011-12-14)
CM 35 ==================
4375cf 36
CM 37 Features
38 --------
39
40 - New API: ``pyramid.view.view_defaults``. If you use a class as a view, you
41   can use the new ``view_defaults`` class decorator on the class to provide
42   defaults to the view configuration information used by every
43   ``@view_config`` decorator that decorates a method of that class.  It also
44   works against view configurations involving a class made imperatively.
45
78d1e4 46 - Added a backwards compatibility knob to ``pcreate`` to emulate ``paster
CM 47   create`` handling for the ``--list-templates`` option.
48
bfd4b3 49 - Changed scaffolding machinery around a bit to make it easier for people who
CM 50   want to have extension scaffolds that can work across Pyramid 1.0.X, 1.1.X,
51   1.2.X and 1.3.X.  See the new "Creating Pyramid Scaffolds" chapter in the
52   narrative documentation for more info.
53
4375cf 54 Documentation
CM 55 -------------
56
57 - Added documentation to "View Configuration" narrative documentation chapter
58   about ``view_defaults`` class decorator.
59
60 - Added API docs for ``view_defaults`` class decorator.
61
bfd4b3 62 - Added an API docs chapter for ``pyramid.scaffolds``.
CM 63
64 - Added a narrative docs chapter named "Creating Pyramid Scaffolds".
65
66 Backwards Incompatibilities
67 ---------------------------
68
69 - The ``template_renderer`` method of ``pyramid.scaffolds.PyramidScaffold``
70   was renamed to ``render_template``.  If you were overriding it, you're a
71   bad person, because it wasn't an API before now.  But we're nice so we're
72   letting you know.
73
5f1cf3 74 1.3a1 (2011-12-09)
CM 75 ==================
0dde01 76
9b9004 77 Features
CM 78 --------
79
a1bf6a 80 - Python 3.2 compatibility.
e04cbb 81
5cf9fc 82 - New ``pyramid.compat`` module and API documentation which provides Python
CM 83   2/3 straddling support for Pyramid add-ons and development environments.
84
63fced 85 - A ``mako.directories`` setting is no longer required to use Mako templates
CM 86   Rationale: Mako template renderers can be specified using an absolute asset
87   spec.  An entire application can be written with such asset specs,
88   requiring no ordered lookup path.
89
8a5db4 90 - ``bpython`` interpreter compatibility in ``pshell``.  See the "Command-Line
CM 91   Pyramid" narrative docs chapter for more information.
92
596495 93 - Added ``get_appsettings`` API function to the ``pyramid.paster`` module.
CM 94   This function returns the settings defined within an ``[app:...]`` section
95   in a PasteDeploy ini file.
96
97 - Added ``setup_logging`` API function to the ``pyramid.paster`` module.
98   This function sets up Python logging according to the logging configuration
99   in a PasteDeploy ini file.
38e4c7 100
35ad08 101 - Configuration conflict reporting is reported in a more understandable way
CM 102   ("Line 11 in file..." vs. a repr of a tuple of similar info).
103
d83b39 104 - A configuration introspection system was added; see the narrative
9d97b6 105   documentation chapter entitled "Pyramid Configuration Introspection" for
7d109d 106   more information.  New APIs: ``pyramid.registry.Introspectable``,
57a0d7 107   ``pyramid.config.Configurator.introspector``,
CM 108   ``pyramid.config.Configurator.introspectable``,
7d109d 109   ``pyramid.registry.Registry.introspector``.
CM 110
111 - Allow extra keyword arguments to be passed to the
112   ``pyramid.config.Configurator.action`` method.
57a0d7 113
56df90 114 - New APIs: ``pyramid.path.AssetResolver`` and
CM 115   ``pyramid.path.DottedNameResolver``.  The former can be used to resolve
116   asset specifications, the latter can be used to resolve dotted names to
117   modules or packages.
118
b54b2c 119 Bug Fixes
CM 120 ---------
121
a4b82c 122 - Make test suite pass on 32-bit systems; closes #286.  closes #306.
b54b2c 123   See also https://github.com/Pylons/pyramid/issues/286
CM 124
206a7f 125 - The ``pryamid.view.view_config`` decorator did not accept a ``match_params``
CM 126   predicate argument.  See https://github.com/Pylons/pyramid/pull/308
127
876fb6 128 - The AuthTktCookieHelper could potentially generate Unicode headers
CM 129   inappropriately when the ``tokens`` argument to remember was used.  See 
130   https://github.com/Pylons/pyramid/pull/314.
131
6e4c2d 132 - The AuthTktAuthenticationPolicy did not use a timing-attack-aware string
CM 133   comparator.  See https://github.com/Pylons/pyramid/pull/320 for more info.
134
9e7c11 135 - The DummySession in ``pyramid.testing`` now generates a new CSRF token if
CM 136   one doesn't yet exist.
137
1c39ae 138 - ``request.static_url`` now generates URL-quoted URLs when fed a ``path``
a5512e 139   argument which contains characters that are unsuitable for URLs.  See
CM 140   https://github.com/Pylons/pyramid/issues/349 for more info.
1c39ae 141
ea814b 142 - Prevent a scaffold rendering from being named ``site`` (conflicts with
CM 143   Python internal site.py).
144
c753fc 145 - Support for using instances as targets of the ``pyramid.wsgi.wsgiapp`` and
CM 146   ``pryramid.wsgi.wsgiapp2`` functions.
147   See https://github.com/Pylons/pyramid/pull/370 for more info.
148
e04cbb 149 Backwards Incompatibilities
CM 150 ---------------------------
151
152 - Pyramid no longer runs on Python 2.5 (which includes the most recent
9ffa36 153   release of Jython and the Python 2.5 version of GAE as of this writing).
9b9004 154
75f05a 155 - The ``paster`` command is no longer the documented way to create projects,
CM 156   start the server, or run debugging commands.  To create projects from
157   scaffolds, ``paster create`` is replaced by the ``pcreate`` console script.
158   To serve up a project, ``paster serve`` is replaced by the ``pserve``
159   console script.  New console scripts named ``pshell``, ``pviews``,
160   ``proutes``, and ``ptweens`` do what their ``paster <commandname>``
161   equivalents used to do.  Rationale: the Paste and PasteScript packages do
162   not run under Python 3.
163
164 - The default WSGI server run as the result of ``pserve`` from newly rendered
165   scaffolding is now the ``wsgiref`` WSGI server instead of the
166   ``paste.httpserver`` server.  Rationale: Rationale: the Paste and
167   PasteScript packages do not run under Python 3.
168
4c6fa2 169 - The ``pshell`` command (see "paster pshell") no longer accepts a
8a5db4 170   ``--disable-ipython`` command-line argument.  Instead, it accepts a ``-p``
CM 171   or ``--python-shell`` argument, which can be any of the values ``python``,
172   ``ipython`` or ``bpython``.
173
e307fc 174 - Removed the ``pyramid.renderers.renderer_from_name`` function.  It has been
CM 175   deprecated since Pyramid 1.0, and was never an API.
176
b74abe 177 - To use ZCML with versions of Pyramid >= 1.3, you will need ``pyramid_zcml``
CM 178   version >= 0.8 and ``zope.configuration`` version >= 3.8.0.  The
179   ``pyramid_zcml`` package version 0.8 is backwards compatible all the way to
180   Pyramid 1.0, so you won't be warned if you have older versions installed
181   and upgrade Pyramid "in-place"; it may simply break instead.
182
0dde01 183 Dependencies
CM 184 ------------
185
8fe021 186 - Pyramid no longer depends on the ``zope.component`` package, except as a
0dde01 187   testing dependency.
CM 188
e04cbb 189 - Pyramid now depends on a zope.interface>=3.8.0, WebOb>=1.2dev,
CM 190   repoze.lru>=0.4, zope.deprecation>=3.5.0, translationstring>=0.4 (for
191   Python 3 compatibility purposes).  It also, as a testing dependency,
192   depends on WebTest>=1.3.1 for the same reason.
1939d0 193
75f05a 194 - Pyramid no longer depends on the Paste or PasteScript packages.
CM 195
5edd54 196 Documentation
CM 197 -------------
198
199 - The SQLAlchemy Wiki tutorial has been updated.  It now uses
200   ``@view_config`` decorators and an explicit database population script.
75f05a 201
14e5fa 202 - Minor updates to the ZODB Wiki tutorial.
CM 203
9d97b6 204 - A narrative documentation chapter named "Extending Pyramid Configuration"
CM 205   was added; it describes how to add a new directive, and how use the
206   ``pyramid.config.Configurator.action`` method within custom directives.  It
207   also describes how to add introspectable objects.
208
8fe021 209 - A narrative documentation chapter named "Pyramid Configuration
CM 210   Introspection" was added.  It describes how to query the introspection
211   system.
212
818f8c 213 Scaffolds
CM 214 ---------
215
216 - Rendered scaffolds have now been changed to be more relocatable (fewer
217   mentions of the package name within files in the package).
218
8a5db4 219 - The ``routesalchemy`` scaffold has been renamed ``alchemy``, replacing the
CM 220   older (traversal-based) ``alchemy`` scaffold (which has been retired).
818f8c 221
8fe021 222 - The ``starter`` scaffold now uses URL dispatch by default.
CM 223