[Zope3-dev] PEAK 0.5 alpha 2 released

Phillip J. Eby pje@telecommunity.com
Wed, 11 Jun 2003 12:46:40 -0400


The second alpha release of the Python Enterprise Application Kit, version 
0.5, is now available at:

     http://peak.telecommunity.com/dist/

(A special note to users who installed the previous alpha release:
PEAK 0.5a1 required, and included a copy of 'zope.interface', but 0.5a2 
does not include 'zope.interface', as it is no longer required for PEAK to 
operate.  However, if 'zope.interface' is present, PEAK will attempt to use 
it, and the older version installed by 0.5a1 will not work with alpha 
2.  Therefore, if you installed PEAK 0.5a1, you must *remove* the 
previously installed 'zope.interface' package from your Python path, or 
upgrade it to the latest Zope 3 CVS version.  You only need to upgrade if 
you intend to build Zope 3 applications with PEAK.  If you do not, it is 
sufficient to uninstall 'zope.interface'.)

PEAK is dual licensed under the PSF and ZPL licenses; it may be used under 
the same terms as Zope or Python.

Some new features in this release:

* Improved ZConfig support: all PEAK components have a working 
'fromZConfig' constructor that can be used as a ZConfig schema 
"datatype".  'peak.config' now includes ZConfig subclasses that use the 
PEAK naming system to resolve URLs, so you aren't limited to just the 
schemes supported by 'urllib'; any PEAK naming scheme that resolves to 
openable streams can be used to load ZConfig schemas or config 
files.  Last, but not least, there is a "command interpreter" system that 
can be used to make ZConfig configuration files executable on Posix-like 
systems by adding a '#!' line to them.  A sample schema is included.  (Note 
that the schema's top-level datatype must support the ICmdlineAppFactory 
interface.)

* UML 1.4 and XMI 1.1 support have been added to the existing UML 1.3 and 
XMI 1.0 support.

* There is a syntax-driven parsing and formatting (unparsing) framework 
integrated with 'peak.model', so domain-model objects can now have 
arbitrary renderings to and from text.

* The URL support in 'peak.naming' is now based on 'peak.model', so you can 
use the syntax framework to define the syntax of URLs, and URLs are now 
automatically converted to canonical form based on their syntax.

* PEAK now uses the same logging interface as PEP 282, and can log to 
either PEP 282 loggers (if installed), or its own internal ones.  Logging 
namespaces can be defined using configuration system rules, and are 
determined "lazily" upon demand.  (That is, unlike PEP 282, you do not have 
to "force" the system to a known configuration state before beginning to 
log anything.)

* PEAK now uses PyProtocols ( 
http://peak.telecommunity.com/PyProtocols.html ) as its interface 
mechanism, in place of Zope 3 interfaces.  But it remains compatible with 
Zope interfaces, and now is compatible with Twisted interfaces as 
well.  You do not need to install PyProtocols separately, as it is bundled 
in the PEAK installation package.

A complete list of the enhancements, deprecations, and bug fixes for this 
release can be found at:

     http://peak.telecommunity.com/doc/CHANGES.txt.html

Thank you to everyone who gave feedback or reported bugs for the alpha 1 
release.