Hi folks,

Version 1.0a5 of the Pyramid web framework has been released.

You can install it via:

  easy_install pyramid

Or, if you already have an older version installed:

  easy_install -U pyramid

The documentation at http://docs.pylonshq.com/pyramid/dev/index.html has
been updated accordingly.

This is an alpha release with a mix of features and bug fixes.  The
change log follows.

1.0a5 (2010-12-14)
==================

Features
--------

- Add a ``handler`` ZCML directive.  This directive does the same thing
  as ``pyramid.configuration.add_handler``.

- A new module named ``pyramid.config`` was added.  It subsumes the
  duties of the older ``pyramid.configuration`` module.

- The new ``pyramid.config.Configurator` class has API methods that the
  older
  ``pyramid.configuration.Configurator`` class did not: ``with_context``
  (a classmethod), ``include``, ``action``, and ``commit``.  These
  methods exist for imperative application extensibility purposes.

- The ``pyramid.testing.setUp`` function now accepts an ``autocommit``
  keyword argument, which defaults to ``True``.  If it is passed
  ``False``, the Config object returned by ``setUp`` will be a
  non-autocommiting Config object.

- Add logging configuration to all paster templates.

- ``pyramid_alchemy``, ``pyramid_routesalchemy``, and ``pylons_sqla``
  paster templates now use idiomatic SQLAlchemy configuration in their
  respective ``.ini`` files and Python code.

- ``pyramid.testing.DummyRequest`` now has a class variable,
  ``query_string``, which defaults to the empty string.

- Add support for json on GAE by catching NotImplementedError and
  importing simplejson from django.utils.

- The Mako renderer now accepts a resource specification for
  ``mako.module_directory``.

- New boolean Mako settings variable ``mako.strict_undefined``.  See 
  `Mako Context Variables
  <http://www.makotemplates.org/docs/runtime.html#context-variables>`_
  for its meaning.

Dependencies
------------

- Depend on Mako 0.3.6+ (we now require the ``strict_undefined``
  feature).

Bug Fixes
---------

- When creating a Configurator from within a ``paster pshell`` session,
  you were required to pass a ``package`` argument although ``package``
  is not actually required.  If you didn't pass ``package``, you would
  receive an error something like ``KeyError: '__name__'`` emanating
  from the ``pyramid.path.caller_module`` function.  This has now been
  fixed.

- The ``pyramid_routesalchemy`` paster template's unit tests failed
  (``AssertionError: 'SomeProject' != 'someproject'``).  This is fixed.

- Make default renderer work (renderer factory registered with no name,
  which is active for every view unless the view names a specific
  renderer).

- The Mako renderer did not properly turn the ``mako.imports``,
  ``mako.default_filters``, and ``mako.imports`` settings into lists.

- The Mako renderer did not properly convert the ``mako.error_handler``
  setting from a dotted name to a callable.

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

- Merged many wording, readability, and correctness changes to narrative
  documentation chapters from https://github.com/caseman/pyramid (up to
  and including "Models" narrative chapter).

- "Sample Applications" section of docs changed to note existence of
  Cluegun, Shootout and Virginia sample applications, ported from their
  repoze.bfg origin packages.

- SQLAlchemy+URLDispatch tutorial updated to integrate changes to
  ``pyramid_routesalchemy`` template.

- Add ``pyramid.interfaces.ITemplateRenderer`` interface to Interfaces
  API chapter (has ``implementation()`` method, required to be used when
  getting at Chameleon macros).

- Add a "Modifying Package Structure" section to the project narrative
  documentation chapter (explain turning a module into a package).

- Documentation was added for the new ``handler`` ZCML directive in the
  ZCML section.

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

- ``pyramid.configuration.Configurator`` is now deprecated.  Use
  ``pyramid.config.Configurator``, passing its constructor
  ``autocommit=True`` instead.  The
  ``pyramid.configuration.Configurator``
  alias will live for a long time, as every application uses it, but its
  import now issues a deprecation warning.  The
  ``pyramid.config.Configurator`` class has the same API as
  ``pyramid.configuration.Configurator`` class, which it means to
  replace, except by default it is a *non-autocommitting* configurator.
  The now-deprecated ``pyramid.configuration.Configurator`` will
  autocommit every time a configuration method is called.

  The ``pyramid.configuration`` module remains, but it is deprecated. 
  Use ``pyramid.config`` instead.



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