Zope 2 2.4.4

Milestone information

Project:
Zope 2
Series:
2.4
Version:
2.4.4
Released:
 
Registrant:
Sidnei da Silva
Release registered:
Active:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata

Activities

Assigned to you:
No blueprints or bugs assigned to you.
Assignees:
No users assigned to blueprints and bugs.
Blueprints:
No blueprints are targeted to this milestone.
Bugs:
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

   ZOPE 2.4 REQUIRES PYTHON 2.1!

   See CHANGES.txt for important notes on Zope 2.4.

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 2.1
    ./start

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

     http://yourhost:8080/manage

  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:

    'http://www.zope.org/'

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

  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

  Notes

    * You should be using Python 2.1 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.
      Warning: Zope will not run with a Python version that uses libpth.
      You *must* use libpthread.

    * 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. See also the pcgi/README file for further
  informations on the installation of PCGI.

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.

Changelog 

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.

        - Collector #343: The ZCatalogs 'Indexes' view showed the
          wrong number of indexed objects for FieldIndexes.

    Zope 2.4.4

      Bugs Fixed

        - Fix for Collector #319: filtered_manage_options didn't
          correctly filter tabs based on permission.

        - Collector #275: ClassSecurityInfo.setPermissionDefault
          broken

        - Collector #236: recursive ownership changes could be
          short-circuited prematurely if a user already owned a
          subobject.

        - Collector #254, make the getOwner call return the owner object
   wrapped in its context

        - Collector #278: DocumentWithImages could not handle URLs with
          underscores

        - Collector #185, 341: PCGIServer and FCGIServer logs corrected
          and now output extended information like HTTPServer does.

    Zope 2.4.4 beta 1

      Bugs Fixed

       - Backported a fix to SetOpTemplate.c in BTree modules where
          Py_None could be returned without being INCREF (Thanks to
          Steve Alexander)

        - Backported an asyncore fix for an issue that could cause
          ZServer to hang on Linux 2.2 systems.

        - Incorrect handling of EINTR in asyncore caused server
          problems, especially for those using database
          connections. The asyncore fixes for Zope 2.5 have been
          backported to resolve this.

        - GlobbingLexicon always used the ZopeSplitter instead of
          a user-selected splitter

        - WebDAV: The long outstanding read-only problem with WinWord
          and .html is finally solved. Zope sends now an additional ETag
          header for DTMLMethods and DTMLDocuments. Many thanks to
          Joachim Schmitz for this hint.

        - PathIndex: complete rewrite of backward indexes, major bugfixes,
          enhanced testsuite

        - DTML-MIME tag: creates now a 'Mime-Version: 1.0' to make
          some fussy email programs happy

        - HTTP Range support: Don't join adjacent ranges; The Acrobat PDF
          viewer makes extesive use of adjacent ranges and fails if the
          resulting response gives only one big range result.

        - Fix HTTP Ranges for Netscape as well; version 4 and before, as well
          as MSIE 3, implement a draft version of the HTTP Ranges spec and
          require a different MIME-type response. This fixes Acrobat PDF
          downloads on these clients.

        - FTP: Downloading files through FTP has been broken since 2.4.0
          because the downloaded file has been stored with a HTTP
          header at the beginning of the file. Fixed!

     Zope 2.4.3

       Bugs Fixed

        - Products.PluginIndexes.common.UnIndex: fixed unintended use
          of range built-in (backport from head).

        - STXNG: fixed syntax error in handling inner links

        - Removed C++ style comments inside Splitter sources that
          broken compilation on AIX systems.

        - <dtml-var "..." fmt="structured-text"> did not work
          properly under some acquisition related reaons.

     Zope 2.4.3 beta 1

       Bugs Fixed

        - WebDAV: Zope escaped nested object properties derived from
          internal dav__* functions in PropertySheets.py although they
          are considered to be safe and do not need any escaping. This
          caused Zope to be completely incomplete with Windows XP. Fixed !

        - WebDAV: '(' and ')' are now allowed in Ids for Zope objects.
          This is needed when one tries to duplicate files using cut&paste
          through Microsoft webfolders.

        - Adding new indexes to the ZCatalog using the ZMI did not
          work properly with disabled Javascript.

        - STXNG: fixed wrong conversion of literals starting and
          ending with underlines. Also added complete reworked
          testsuite

        - Zope installation updated from pre-2.4 installation did
          not show the WebDAV LockManager entry in the Control Panel.

 - Corrected case where the accelerated security in DTMLMethod
   could be removed twice, causing a KeyError (successive removals
   do not complain). Steve Alexander provided a better patch,
   now incorporated.

        - Fixed a BTree storage leak.

    Zope 2.4.2

        - repaired unit tests for documenttemplate, datetime, and
          zcatalog; removed a glitch in one test which was causing
          spurious failures in others. all unit tests pass!

        - Zope Find did not find objects located within ZClass
          objects. Thanks to Anthony Baxter for fixing this.

        - The xml escaping logic for DAV properties failed to escape
          special xml characters in certain cases. The xml generation
          of properties for PROPFIND requests also failed for
          properties of type 'tokens' that contained non-string items.

        - Lock-null resources did not support the PROPFIND DAV command
          per RFC 2518, which caused some clients (Dreamweaver for
          one) to be unable to create new objects via WebDAV. Thanks
          to Terry Kerr for working this out.

        - "Not Found" errors due to missing docstrings on objects made
          it difficult to figure out the true cause of the error. The
          handling of missing docstrings has been changed so that the
          reason for the "Not Found" is clear whether or not the
          server is running in debug mode.

        - DebugLogger, the machinery which writes messages for "detailed"
          (aka "Big M") log files now writes out a "U" message on system
          startup.

        - queries for the PathIndex can now specified as tuple (path,level).
          the level parameter inside a query overrides the optional
          'level' parameter for a complete search request.

        - XXBucket.values() returned the keys instead of the values.

        - Collector #420, 1326, 2509, and maybe others: manage_workspace
          redirected to index_html when no authentication credentials
          were presented by the user. Thanks to < Dominique.Dutoit
          at cec.eu.int > for the correction.

        - Collector #2548: ComputedAttribute extension was not included in
          setup.py.

        - Fixed dtml-in online help documentation to include
          information about sort_exp and reverse_expr attributes.

        - Fixed dtml-sqlvar, dtml-sqltest, and dtml-sqlgroup online
          help documentation to better explain the difference between "nb"
          and "string".

        - Re-applied Medusa patch to allow proxy-like HTTP requests
          (GET http://hostname:port/ HTTP/1.0)

        - Locale support in STXNG has been broken (since 2.4.0).

        - Corrected aq_inContextOf(). The former code returned the
          incorrect result if the context object was the root of the
          hierarchy, a condition which normally does not occur in Zope,
          but can occur in scripts.

        - Fixed bad interaction between ZCatalog and dtml-in (submitted by
          Steve Alexander)

        - Fixed bug in ZODB conflict resolution code where attempts to
          resolve conflicts in ZClasses generated inapprorpriate errors.
          (ChrisM, thanks to Lance Carito for finding).

        - Fixed the ZMI for viewing legacy ZCatalogs that still use SearchIndex
          indexes. (stevea)

        - Cleaned up ZCatalog API to make it more internally consistent, added
          some missing permissions, and left in deprecated methods for
          compatibility with the pre-clean-up API.
          You can now pass a string or a sequence of strings to methods such as
          manage_delColumn and manage_clearIndex. (stevea)

        - Multiple links in a paragraph with mixed link notation
          (quotation+colon+URL or quotation+comma+whitespace+URL) did not
          work properly (thanks to Alastair Burt for reporting and submitting
          the patch).

        - Added updated and enhanced testsuite for STXNG.

        - Fixed typo in medusa/logger.py, where mktime was getting nine
          arguments, where it expected a nine-tuple. Thanks to Terry Kerr
          for the patch. (stevea)

    Zope 2.4.1

      Bugs fixed

       - The ZPL has been updated to version 1.1. The changes are:

         - Appearances of "Digital Creations" changed to "Zope
           Corporation"

         - Open Source(tm) changed to just open source

         - The request for attribution clause has been dropped

         - Version number bumped to 1.1

       - Collector # 2554: Version variables were not html quoted on
         ZMI manage_tabs.

       - Collector #2536. Fixed requestprofiler false output problem
         whereby requestprofiler could mistakenly ignore requests that
         had the same id in long logs. Thanks to Dyon Balding!

       - Collector #2523: Returning a tuple from __bobo_traverse__ was
         broken.

       - Collector #2532: ZCatalog.availableSplitters is now protected
         by security mechanism.

    Zope 2.4.1 beta 1

      Bugs fixed

        - Collector #2412: a read-only FileStorage has not been closed
          properly.

        - Collector #2438: Using a slice operation like [30:] on a
          ZCatalog search result caused a MemoryError because
          the __getslice__ implementation used range() instead
          of xrange().

        - Collector #2423: Searching a FieldIndexes for documents
          with a blank string has been broken.

        - Collector #2347: there was no interface for incrementally
          refreshing a ZCatalog.

        - Collector #2336: Quoting and globbing in non-trivial queries
          were broken. All tests now pass.

        - Collector #2427, 2429: Tests for keys() was missing.
          Incorporated Chris Withers' fix.

        - WebDAV Lockmanager was not working due to a Python 2.1
          incompatibility.

        - Collector #2482: A COPY operation through WebDAV on a locked
          resource left the destination resource in a locked state
          so any WebDAV client was unable to unlock the destination
          object. Locks are now cleared from the destination object.

        - Collector #2481: adjusted punctuation for link generation
          (not working with ! inside quoted text)

        - Error message AttributeError/_v_blocks when a DTMLfile is
          not present or could not be read replaced by a more
          informative message.

        - Simplified the way product refresh happens. Instead of using
          the reload() function, we just remove the appropriate modules
          from sys.modules. This ensures that modules are loaded in the
          correct order.

        - Fixes to Splitter interfaces to work correctly under MacOSX

        - Collector #2497: SERVER_PROTOCOL variable is now compliant
          with the CGI specification and looks like "HTTP/1.1" instead
          of "1.1"

        - Creation of a TextIndex ignored the vocabulary setting.

        - Fixed broken aquisition of vocabularies from a Catalog
          by a TextIndex.

        - Collector #2504: level parameter has not been passed to HTMLClass
          constructor

        - default for 'orphan' attribute of <dtml-in> is now 0 instead 3.

        - Skip attempting to register APIHelp for files beginning with '_'
          (e.g., '__init__.py'). Allows HelpSys to build help from a
          "real" Python package.

        - Fixed conflict resolution problem in BTrees (BTreeTemplace/
          _p_resolveConflict)

        - Add 'WEBDAV_SOURCE_PORT' marker key to REQUEST.env for requests
          passing through a WebDAV source port (eases detection).

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.