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.4 beta 1 - Zope 2.2.4 includes all of the 2.2.3 changes plus a fix for a bug introduced while fixing another bug that caused acquisition of permissions to fail (whew!). - Fixed a bug in computation of object roles (from permissions) that could cause roles to come from non-containment context. - ImageFile objects (e.g. icons in the mgmt interface) did not set or recognize HTTP caching headers, which caused some browsers to never cache them. - The function rfc1123_date was mis-formatting http dates. - The registerHelp() method of ProductContext objects would blow up if a product did not have a help directory. Zope 2.2.3 Bugs fixed - Resolved known condition in the Catalog where objects are not guaranteed to be unindexed before indexing happens again. Now objects are guaranteed to be unindexed correctly first. This should resolve all outstanding KeyErrors with Catalog, although currently broken Catalogs will require a reindex to resolve them. - Fixed a race condition and a possible memory leak in mounted databases. - Added the DTML Reference to the online help system. - Applied Toby Dickenson's patch that fixes aq_inContextOf. Now it is more thorough in discerning whether an object is in the context of another object. - Fixed keyword args for aq_acquire. - Plugged a memory leak that occurred when objects wrapped through acquisition but which do not have a "__call__" method are invoked. The arguments passed to the call would be leaked. - DateTime did not recognize timezone strings like '+0200'. - Security for Images and Files could not be changed due to an old name left in the permissions structure (__call__). - Removed some ancient references to Principia from the ZGadflyDA user interface. - Fixed bug in Client.py which opened filesystem file without using read-binary mode, which caused file corruption when uploading binary files using ZPublisher.Client from Windows NT. - The '_getOb' method of ObjectManagers did not correctly restrict access to private attributes (beginning with an '_'). - The XML import/export machinery was fixed to properly deal with 'long' datatypes. - Uploading new contents for a File or Image object without a content-type header caused the old (possibly now incorrect) content_type attribute to be retained. - There was an extra slash in the rewrite rule for using PCGI in single-threaded mode in WEBSERVERS.txt - The PARENTS list passed to the validate method of User Folders did not include the published object, which could lead to incorrect security handling in certain cases (this was the 2000-10-02 Hotfix). - (Collector #1687) Products which register base classes for ZClasses typically defer creating them until product registration; the derived ZClass needs them to be available immediately after import. Deprecated 'ProductContext.registerZClass' and 'ProductContext.registerBaseClass' in favor of a new function, 'ZClasses.createZClassForBase' (because none of the machinery needed a ProductContext instance anyway). Update OFSP and ZCatalog products to use this machinery, instead of 'registerBaseClass'. - The manage_edit of the Connection base class used by database connection tried to coerce the connection string to an actual string. This was problematic because some DAs (Sybase apparently) store the connection string as an HTTPRequest.record object. - BASE tags generated by Zope were not XHTML compliant. - Part of the PropertyManager interface incorrectly assumed a wrapped object. - HTTP date headers were generated by strftime in medusa; this meant that using a different locale caused medusa to generate invalide Date headers re: the RFC. The date header generation has been changed to use english even if a different locale is in effect. - Dates generated by WebDAV code also used strftime and were therefore made invalid when a non-english locale was in use. - Headings generated in HTML by StructuredText did not generate a closing paragraph tag. - StructuredText did not recognize URLs with ampersands in them. - A bit of the SecurityManagement code expected threads to be available, which broke the "single-threaded-mode" that some folks use with pcgi. - DateTime arithmetic was broken if you tried to subtract a DateTime from another DateTime where one of them was on daylight savings time and the other was not. - The infamous "__call__" bug that could surface in situations where documents called other documents has been stamped out. And there was much rejoicing. - The redirect target after adding a ZSQLMethod had too many path elements in it.