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