This is just a note to folks who might be interested in the progress
we're making with Pyramid (http://docs.pylonshq.com).  We're trying hard
to get to a place where we're able to make a beta release.

Pyramid has had two alpha releases (1.0a2 and 1.0a3) since the first
1.0a1 release.  I'll put the change logs for those releases at the end
of this message.  There are also a bunch of changes that have been made
to the git repository (as-yet-unreleased), see the section entitled
"Next release" at
https://github.com/Pylons/pyramid/blob/master/CHANGES.txt .

To get to a 1.0 beta release, in my estimation, we still need to address
the following:

- All open issues in the issue tracker at
  https://github.com/Pylons/pyramid/issues

- the items listed under "Must-Have (before 1.0)" in the TODO.txt at
  https://github.com/Pylons/pyramid/blob/master/TODO.txt

Note that "getting to beta" means "getting to a place where we intend to
make no API changes before releasing a final".

If there's anything I missed, please let us know.

The changelogs for 1.0a2 and 1.0a3 are below:

1.0a3 (2010-11-16)
==================

Features
--------

- Added Mako TemplateLookup settings for ``mako.error_handler``,
  ``mako.default_filters``, and ``mako.imports``.

- Normalized all paster templates: each now uses the name ``main`` to
  represent the function that returns a WSGI application, each now uses
  WebError, each now has roughly the same shape of development.ini
  style.

- Added class vars ``matchdict`` and ``matched_route`` to
  ``pyramid.request.Request``.  Each is set to ``None``.

- New API method: ``pyramid.settings.asbool``.

- New API methods for ``pyramid.request.Request``: ``model_url``,
  ``route_url``, and ``static_url``.  These are simple passthroughs for
  their respective functions in ``pyramid.url``.

- The ``settings`` object which used to be available only when
  ``request.settings.get_settings`` was called is now available as
  ``registry.settings`` (e.g. ``request.registry.settings`` in view
  code).

Bug Fixes
---------

- The pylons_* paster templates erroneously used the ``{squiggly}``
  routing syntax as the pattern supplied to ``add_route``.  This style
  of routing is not supported.  They were replaced with ``:colon`` style
  route patterns.

- The pylons_* paster template used the same string
  (``your_app_secret_string``) for the ``session.secret`` setting in the
  generated ``development.ini``.  This was a security risk if left
  unchanged in a project that used one of the templates to produce
  production applications.  It now uses a randomly generated string.

Documentation
-------------

- ZODB+traversal wiki (``wiki``) tutorial updated due to changes to
  ``pyramid_zodb`` paster template.

- SQLAlchemy+urldispach wiki (``wiki2``) tutorial updated due to changes
  to ``pyramid_routesalchemy`` paster template.

- Documented the ``matchdict`` and ``matched_route`` attributes of the
  request object in the Request API documentation.

Deprecations
------------

- Obtaining the ``settings`` object via
  ``registry.{get|query}Utility(ISettings)`` is now deprecated. 
  Instead, obtain the ``settings`` object via the ``registry.settings``
  attribute.  A backwards compatibility shim was added to the registry
  object to register the settings object as an ISettings utility when
  ``setattr(registry, 'settings', foo)`` is called, but it will be
  removed in a later release.

- Obtaining the ``settings`` object via
``pyramid.settings.get_settings`` is
  now deprecated.  Obtain it as the ``settings`` attribute of the
  registry now (obtain the registry via
  ``pyramid.threadlocal.get_registry`` or as
  ``request.registry``).

Behavior Differences
--------------------

- Internal: ZCML directives no longer call get_current_registry() if
  there's a ``registry`` attribute on the ZCML context (kill off use of
  threadlocals).

- Internal: Chameleon template renderers now accept two arguments:
  ``path`` and ``lookup``.  ``Lookup`` will be an instance of a lookup
  class which supplies (late-bound) arguments for debug, reload, and
  translate.  Any third-party renderers which use (the non-API) function
  ``pyramid.renderers.template_renderer_factory`` will need to adjust
  their implementations to obey the new callback argument list.  This
  change was to kill off inappropriate use of threadlocals.

1.0a2 (2010-11-09)
==================

Documentation
-------------

- All references to events by interface
  (e.g. ``pyramid.interfaces.INewRequest``) have been changed to
  reference their concrete classes (e.g. ``pyramid.events.NewRequest``)
  in documentation about making subscriptions.

- All references to Pyramid-the-application were changed from
  mod-`pyramid`
  to app-`Pyramid`.  A custom role setting was added to ``docs/conf.py``
  to allow for this.  (internal)



-- 
You received this message because you are subscribed to the Google Groups 
"pylons-devel" group.
To post to this group, send email to pylons-de...@googlegroups.com.
To unsubscribe from this group, send email to 
pylons-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/pylons-devel?hl=en.

Reply via email to