File contents
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.1 beta 1
Bugs Fixed
- FileStorage-based databases became corrupted when their
size grew beyond 2GB.
- FileStorage-based databases could be corrupted if
transaction descriptions or transaction extended meta-data
exceeded 64KB in size.
- Some relational database adapters use an older version of
a results class in Shared.DC.ZRDB. The RDB-format based
results class was missing a needed security assertion to
allow access to result data.
- Missing security assertions in the ZDOM module caused
unauthorized errors for things trying to use ZDOM (such
as XMLDocument).
- A bug in the registration of help content caused unnecessary
transactions to be written at startup.
- The machinery for guessing content types ignored default
values passed in explicitly.
- A problem in the Find machinery removed the acquisition
context from subobjects, causing permission checking to
fail.
- There was a hard-coded unix path separator in the logic
for initializing special dtml objects from files.
- The ordering of tabs on some management screens was changed
inadvertantly during the 2.2 development cycle. The ordering
has been tweaked to conform more closely to earlier releases.
- The strftime() method of DateTime objects was changed so that
it formats based on the current timezone representation of a
given DateTime object. This is now also the case when formatting
DateTimes from DTML using the fmt="..." construct (which uses
the strftime method under the hood). Previously, strftime
converted to GMT, which was inconsistent with other formatting
methods and caused problems for people. Those who actually do
want the date to be formatted in GMT can use: myDate.toZone('GMT')
to get a version of the object represented in GMT and then call
the formatting methods on that object.
- Permissions were not properly defined for the new history
vew in DTMLMethods and DTMLDocuments. This caused many
useful features to be available only to managers and others
to be available only to those with undo priveledges. A new
permission, "View History" has been added for viewing
historical changes and you can copy historical versions to
the present if yo can edit DTMLDocuments or DTMLMethods.
- The new traversal method, restrictedTraverse was private,
but should have been public. It also didn't check access to
the root object when an absolute path was used.
- The roles (and only the roles) "Manager" and "Anonymous"
had the "Access contents information" permission on the root
application object regardless of permission settings made
through the management interface.
- A ZCatalog bug which was symptomized by a "KeyError" during a
searchResults query was squished by changing some exception
handling in the cataloging machinery.
- Version's chose their names based on absolute_url, which depends
on access method, rather than physical path.
- A fix for socket.connect() calls in preparation for Python 2.0 was
accidentally applied to a wrong part of Client.py in ZPublisher.
- The "distribution" tab for ZClass-based products has been changed
to allow creation of redistributable products.
- DAV property sheets were not correctly associated with permissions,
which cause Unauthorized errors when iterating over propertysheets
under the new security model.
- Some patches to PCGI added in the 2.2 development cycle to support
things like syslog connectivity were backed out due to problems
on certain platforms. The patches may make it back in the future
after the issues are resolved and broader platform testing can
be done.
- The new security machinery did not allow REQUEST to be accessed
when it was acquired. This didn't prevent access to REQUEST, but
made the access eccessively expensive.
- Fixed the display order of the Zope tutorial topics.
- Fixed the help system menu frame to not use standard html
header and footer.
- Products that have not been updated to define an 'initialize'
method to do product initialization were not filtered correctly
by permission in the filtered object add list.
- Exception logging was added to catalog to catch "shouldnt happen"
sorts of events.
- Text indexes did not recognize boolean connectives (and, not)
if they were mixed-case.
- Fixed Tutorial bug that caused win98 to crash with adding a
tutorial.
- Fixed ZService.py to avoid overwriting existing service start
parameters at install time on win32.
- The deprecated alias getSize() was added back to Image and DTML
objects (existing products still depend on it).
- Cleaned up a DocumentTemplate namespace issue. Fixed QuickStart.
- Removed old validation code in cDocumentTemplate.
- In ZCatalog, it was possible for stemming on single-word search
queries to be handled incorrectly and produce no results.
- A problem in the url traversal machinery caused strange errors
in cases where the root of the site was requested but had no
index_html instead of the expected Not Found error.
- ZCatalog objects did not implement the searchable object
interface correctly.
- XML (database) import sometimes failed, especially with
ZClass instances.
- XML (database) export didn't properly handle strings that contained
the string "\n".
- The <base> tag insertion machinery failed if the request result
had content-type with a charset attribute (thanks to Dieter
Maurer).
- A long-standing bug that caused a "resource not found" error when
trying to instantiate a ZClass inside of another ZClass was
fixed. Hooray for Chris McDonough :^)
- In certain circumstances it was possible for the manage_afterAdd
and other manage_after* methods to get into an infinite loop by
essentially acquiring themselves in cases where subobjects did
not implement those protocols.
- The sqlvar tag produced misleading error messages when an
expression caused an exception during rendering.
- RFC1123 dates were not formatted correctly in the webdav.client
implementation.
- Made the ObjectManager class inherit from Traversable (which
exposes unrestrictedTraverse). ObjectManager-type items which
didn't inherit from SimpleItem.Item had problems with
Management.Tabs producing the right views for manage_options
before this was in there.
- FileStorage-based databases got into an unusable state if
available disk space was exceeded. This problem could
lead to database corruption.