Zope 2 2.2.5

Milestone information

Zope 2
Sidnei da Silva
Release registered:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata


Assigned to you:
No blueprints or bugs assigned to you.
No users assigned to blueprints and bugs.
No blueprints are targeted to this milestone.
No bugs are targeted to this milestone.

Download files for this release

File Description Downloads

Release notes 

Building and installing Zope from source

  This document describes building and installing Zope on Unix.
  We will provide Windows instructions in later releases. We
  will also provide binary releases for some platforms.

Important notes


   See CHANGES.txt for important notes on Zope 2.0.

Quick Start

  If you are impatient, the following commands should get you up and
  running with Zope 2 using ZServer and ZODB 3 on Unix::

    python w_pcgi.py # Note, this must be Python 1.5.2

  The first command builds and adjusts Zope. Take note of the user
  name and password output at the end of this command. You will need
  these to manage Zope.

  If you get errors indicating that addresses are in use, then you
  will have to supply arguments to z2.py to change the ports used for
  HTTP or FTP. The default HTTP and FTP ports used by ZServer are 8080
  and 8021 respectively. (See the help for the z2.py script by running
  z2.py with the -h option for more information on how to specify
  different ports)

  You can then connect to Zope 2 by directing your browser to::


  where yourhost is the name or address of the machine running Zope 2.
  If you changed the HTTP port with the -w option to z2.py, then use
  it rather than 8080.

  You will be prompted for a user name and password. Use the user name
  and password output above.

  Now you're off and running! You should be looking at the Zope management
  screen which is divided into two frames. On the left you can navigate
  between Zope object and on the right you can edit them by selecting
  different management functions with the tabs at the top of the frame.

  If you haven't used Zope before, you should head to the Zope web site
  and read some documentation. The Zope Manager's Guide is a good place
  to start. You can access the Zope site at:


  Have fun!

Building Zope

  There are some python scripts in the top-level directory that should
  help you get started. You must run these scripts from the top-level

  If you want to try out Zope in the simplest fashion using ZServer,
  then run the script wo_pcgi::

    python wo_pcgi.py

  If you want to use PCGI and an existing web server run w_pcgi::

    python w_pcgi.py


    * You should be using Python 1.5.2 to run the build scripts.

    * The python you run Zope with *must* have threads compiled in,
      which is *not* the case for a vanilla build. When you build the
      python you'll use, 'configure --with-threads' does the right thing.

    * To build python extensions you need to have Python configuration
      information available. If your Python comes from an RPM you may need
      the python-devel package installed too. If you built Python from source
      all the configuration information should already be there.

    * If you just want to use Zope components it's not necessary to build Zope
      but it's a good idea since it will compile Python C extensions for you.

    * You can use PCGI and an existing web server if you use ZServer.

Starting Zope with an existing web server

  See the WEBSERVERS.txt file for more information about configuring Zope
  with an existing web server.

Running Zope

  There are two ways to run Zope:

  - You can use ZServer, the integration of Zope and Medusa. You must
    use ZServer if you want to use multiple concurrent threads.
    ZServer is a server application that supports multiple protocols:

      o HTTP -- ZServer is a Web server

      o FTP -- ZServer is a file-transfer protocol server. This
        allows you to use FTP-enabled publishing systems with Zope.

      o PCGI -- PCGI is a lightweight protocol for forwarding
 requests from other web servers, like Apache or Netscape, to
 Zope. This makes it possible to use web server features like
 connection encryption or logging with Zope.

      o monitor -- ZServer has the capability to allow you to access
        the Python interpreter directly over a network channel. If
        you intend to use this, please read the 'DEBUGGING.txt'
        document for more information.

    With ZServer, you must start Zope manually using the z2.py script.
    Typically, the command used to run the z2.py script will be put in
    system startup scripts.

    ZServer is the prefered way to run Zope.

  - If you *only* want to use PCGI and you don't need multi-threaded
    operation, you can have a special program, the pcgi_publisger,
    start Zope for you. See the WEBSERVER.txt file for details on
    using Zope with an existing webserver.

  If you wish to enable Zope logging you must specify options on the
  command line. See LOGGING.txt in the doc directory.


View the full changelog

Zope changes

  This file contains change information for the current Zope release.
  Change information for previous versions of Zope can be found in the
  file HISTORY.txt.

    Zope 2.2.5

      Bugs fixed

        - Corrected a mounted database connection leak. The reference
          to the sub-connection was occasionally being garbage collected,
          meaning the sub-connection never get closed and Zope eventually
          used up all connections from the pool.

    Zope 2.2.5 beta 1

      Bugs fixed

        - Secured the hole that was patched by Hotfix_2000-12-08.

        - A bug in ZServer caused concurrent POST requests to overwrite
          each others incoming data, leading to 'AttributeError: data'

        - The ZSQLMethods code to handle query caching had a bug
          that could cause a KeyError in certain cicumstances.

        - A dumb algorithm in the basic user folder interface caused a
          reverse dns lookup to be done for each user in a user folder
          if domain-based matching was being used. This could cause a
          real lag for sites with large user folders doing domain

        - The "View" management page for Image objects generated an
          incorrect link to the image object (though it often happened
          to work thanks to acquisition).

        - Import only looked for files in INSTANCE_HOME/import. Now,
          if the file is not found there it looks in SOFTWARE_HOME/import.

 - Fixed situation where the Catalog would attempt to loop over
   a bucket as if it were a list, which won't work. This was
   reported by Steve Alexander with a patch (#1586).

        - It was not possible to access the 'manage_access' screen for
          a custom propertysheet on an instance. Thanks to Steve
          Alexander for this one as well.

        - The checkboxes on the "Add ZClass" form were being reset after
          every base class addition.

        - A WebDAV support bug that caused authentication to fail for
          MOVE and COPY (and possibly other) requests was fixed.

        - The WebDAV support was setting an extra HTTP 'Connection'
          header when Zope was running under ZSever, because ZServer
          didn't handle that correctly back when the DAV code was written.

        - Several other DAV-related fixes were made to address bugs
          discovered in the course of using Zope with several DAV
          clients. The DAV support now generates a faux creation
          date property to make Adobe GoLive happy.

        - A bug in state diffing in the Tree tag when a tuple was passed
          in instead of a list was fixed.

        - Corrected local role computation (Hotfix 2000-12-15).

        - Fixed protection of the update_data method of File / Image
          objects (Hotfix 2000-12-18).

        - The content_type argument passed to manage_addImage or
          manage_addFile was ineffective.

        - The Image.tag() and ZopeAttributionButton methods now return an
          image tag that is XHTML compatible; a space and a slash have been

        - Long running processes spawned via os.system() from Zope code
          could hang the request that spawned them due to inheritance of
          open file descriptors. Thanks to Dieter Maurer for a fix for
          ZServer to set the close-on-exec flag on ZServer sockets.

        - Some of ZServer's medusa underpinnings were outputting various
          'WARNING' messages that should have been ignorable and caused
          confusion for new Zope users. The startup messages have been
          fixed to avoid spewing things that scare newbies unnecessarily.

        - SQLAlias objects were leaking when a database column was
          accessed via an aliased name. This was tracked down to a
          subtle bug in ExtensionClass.

        - A packing bug could, on rare occasions, cause corruption of
          transactions committed while the database was being
          packed. This corruption wouldn't show up until the database
          was scanned, either on startup without an index, or on
          subsequent packs. The actual data records were correct in
          most cases, but contained invalid file pointers to their
          transaction or other record data. The problem could be
          corrected using the FileStorage recovery tool, fsrecover.py.

0 blueprints and 0 bugs targeted

There are no feature specifications or bug tasks targeted to this milestone. The project's maintainer, driver, or bug supervisor can target specifications and bug tasks to this milestone to track the things that are expected to be completed for the release.

This milestone contains Public information
Everyone can see this information.