summaryrefslogtreecommitdiff
path: root/CHANGES.txt
blob: 8dbbbfd669837cfb3dfdcffb8862e10ddb73fda0 (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
Next release
============

Features (delta from BFG 1.3.X)
-------------------------------

- Mako templating renderer supports resource specification format for
  template lookups and within Mako templates. Absolute filenames must
  be used in Pyramid to avoid this lookup process.

- Add ``pyramid.httpexceptions`` module, which is a facade for the
  ``webob.exc`` module.

- Direct built-in support for the Mako templating language.

- A "squiggly" (Pylons-style) route syntax is now supported by
  ``pyramid.configuration.Configurator.add_route`` (and thus, by the
  ``route`` ZCML directive too).  For example, the following route
  patterns are equivalent: ``{foo}/{bar}`` and ``:foo/:bar``.  This is
  purely a syntactic affordance to make route patterns more tolerable
  for people coming from Pylons.

- A new configurator method exists: ``add_handler``.  This method adds
  a Pylons-style "view handler" (such a thing used to be called a
  "controller" in Pylons 1.0).

- New argument to configurator: ``session_factory``.

- New method on configurator: ``set_session_factory``

- Using ``request.session`` now returns a (dictionary-like) session
  object if a session factory has been configured.

- New module: ``pyramid.personality.pylons``: contains Pylons-specific
  features.

- The request now has a new attribute: ``tmpl_context`` for benefit of
  Pylons users.

- The decorator previously known as ``pyramid.view.bfg_view`` is now
  known most formally as ``pyramid.view.view_config`` in docs and
  paster templates.  An import of ``pyramid.view.bfg_view``, however,
  will continue to work "forever".

- New API methods in ``pyramid.session``: ``signed_serialize`` and
  ``signed_deserialize``.

Documentation (delta from BFG 1.3)
-----------------------------------

- Added a ``pyramid.httpexceptions`` API documentation chapter.

- Added a ``pyramid.session`` API documentation chapter.

- Added a ``Session Objects`` narrative documentation chapter.

- Added an API chapter for the ``pyramid.personality`` module.

Backwards Incompatibilities (with BFG 1.3.X)
--------------------------------------------

- There is no longer an ``IDebugLogger`` registered as a named utility
  with the name ``repoze.bfg.debug``.

- The logger which used to have the name of ``repoze.bfg.debug`` now
  has the name ``pyramid.debug``.

- The deprecated API ``pyramid.testing.registerViewPermission``
  has been removed.

- The deprecated API named ``pyramid.testing.registerRoutesMapper`` 
  has been removed.

- The deprecated API named ``pyramid.request.get_request`` was removed.

- The deprecated API named ``pyramid.security.Unauthorized`` was
  removed.

- The deprecated API named ``pyramid.view.view_execution_permitted``
  was removed.

- The deprecated API named ``pyramid.view.NotFound`` was removed.

- The literal pattern ``{<anything>}`` is no longer permitted in route
  patterns (due to the addition of squiggly route pattern syntax
  support).

- The ``bfgshell`` paster command is now named ``pshell``.

- The Venusian "category" for all built-in Venusian decorators
  (e.g. ``subscriber`` and ``view_config``/``bfg_view``) is now
  ``pyramid`` instead of ``bfg``.

- ``pyramid.renderers.rendered_response`` function removed; use
  ``render_pyramid.renderers.render_to_response`` instead.

- Renderer factories now accept a *dictionary* rather than an absolute resource
  specification or an absolute path.  The dictonary contains the following
  keys: ``name`` (the ``renderer=`` value), ``package`` (the 'current package'
  when the renderer configuration statement was found), ``type``: the renderer
  type, and ``registry``: the current registry.

  Third-party ``repoze.bfg`` renderer implementations that must be ported to
  Pyramid will need to account for this.

  This change was made to support more flexible Mako template rendering.