You are not logged in Log in Join
You are here: Home » Download Zope Products » Zope 3 » 3.2.0final » Zope 3.2.0 released! » View NewsItem

Log in
Name

Password

 

Zope 3.2.0 released!

The Zope 3 development team is proud to announce Zope 3.2.0. Zope 3 is the next major Zope release and has been written from scratch based on the latest software design patterns and the experiences of Zope 2.

It is our opinion that Zope 3 is more than ready for production use, which is why we decided to drop the X for experimental from the name. We will also continue to work on making the transition between Zope 2 and Zope 3 as smooth as possible. As a first step, Zope 2.8 includes Zope 3 features in the form of Five. This is a long term effort. We're not there yet. You can't run Zope 2 applications in Zope 3.

Downloads

http://zope.org/Products/Zope3

Installation instructions for both Windows and Un*x/Linux are now available in the top level README.txt file of the distribution. The binary installer is recommended for Windows.

Zope 3.2 requires Python 2.4.2 to run. You must also have zlib installed on your system.

Most Important Changes Since 3.1

  • The ZServer has been replaced with the Twisted server. The Twisted server supports all that the ZServer supporting has well has HTTP over SSL natively and SFTP (disabled for now because of error handling problems). Also in the future it brings a better chance of other non-HTTP related protocols from being implemented for Zope3, like SMTP-in and IMAP.

    ZServer is still supported and will be used if you use the --zserver when you run mkzopeinstance.

  • Added a test browser. The test browser simulates a real Web browser as much as possible as a Python object. This allows us to write functional tests the same way the site would be experienced by the user. This greatly simplifies functional tests, makes documentation better and even helps analyzing usability. And of course, it can be used in functional doctests.
  • Changed the way returning large results is handled. The response.write method is no longer supported. Applications can now simply return files to the publisher.
  • Implemented the password managers proposal. Main idea beside the proposal is a standard way to implement password encoders/checkers, see zope.app.authentication.interfaces.IPasswordManager for details.

    + Added basic password managers: Plain Text, MD5, SHA1.

    + Support for password managers added for ZCML principals and principals saved in local PrincipalFolers.

    + Added bin/zpasswd command line script which helps to create ZCML principals.

    + Password managers support integrated into bin/mkzopeinstance.

    + New database generation created for convert local principals to new format.

  • Implemented the language namespace proposal. Now you can override the browser preferred language through the URL, like this:

    http://site.org/++lang++ru/path

    Note: If you want to use a custom IUserPreferredLanguages adapter and the ++lang++ feature together you should use zope.app.publisher.browser.CacheableBrowserLanguages adapter as a base class or at least as example.

  • Implemented a new object introspector. Instead of just providing information of the object's class, the new introspector focuses on providing information that is specific to the instance, such as directly provided interfaces and data, for example attribute values and annotation values.
  • Implemented the `devmode` switch for `zope.conf`. When turned on a ZCML feature called `devmode` is provided. Packages can then register functionality based on this feature. In Zope 3 itself, the devmode is used to only load the API doc is devmode; turning off the devmode thus closes a potential security hole and increases the start time by more than a second.
  • addMenuItem directive supports a `layer` attribute.
  • Added a re-implementation of i18n message IDs (now simply called ``Message``) that is immutable and thus can be treated like unicode strings with respect to security proxying. This implementation will replace the old one in upcoming versions.
  • Added "test" message catalog for testing i18n. If you specify ++lang++test in a URL, then all translated strings will be translated to [[domain][message_id], as in "[[zope][Preview]]". Text without the domain marker isn't translated.

For a complete list of changes see the CHANGES.txt file.

Resources

Acknowledgments

Thanks goes to everyone that contributed.

Enjoy!

The Zope 3 Development Team