CHANGES.txt
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.
To-do
- Add cyclic-garbage collection support to C extension classes,
especially to acquisition wrappers.
- B: ExtensionClassType already declares that it supports GC (via the Py_TPFLAGS_HAVE_GC flag), but does not appear to conform to the rules for such a type laid out in the Python docs: http://docs.python.org/api/supporting-cycle-detection.html
Zope 2.9.4 (2006/07/21)
Bugs fixed
- reStructuredText/ZReST: setting raw_enabled to 0 for security reasons
- Collector #2113:
zopectl test
often masked Ctrl-C. - OFS Application: Updated deprecation warnings.
Support for
__ac_permissions__
andmeta_types
will be removed in Zope 2.11,methods
support might remain longer. - Collector #2136: Map ResourceLockedError to the correct response code.
- Collector #2109: XML-RPC did not handle DateTime.DateTime objects.
- Collector #2016: DemoStorage couldn't wrap base storages without
an
_oid
attribute. - Collector #2133: standard_error_messages are out of sync.
- Updated Five to bugfix release 1.3.6.
- Collector #2116: sequence.sort() did not work properly locale related comparison methods
- Collector 2077: fixed problem with ACTUAL_URL and SiteRoot
- Collector #2073: fixed misbehaviour of OFS.Owned.changeOwnership
- Collector #2063: cleaned up some mess in MailHost.sendTemplate()
Other Changes
- Disabled docutils file inclusion completely, rather than trying to jigger it via configuration settings.
- Returned to the "classic"
./configure && make && make install
recipe, dropping the use ofzpkg
for building Zope2 releases. - Updated to ZODB 3.6.2
Zope 2.9.3 (2006/05/13)
Bugs fixed
- Collector #2083:
make clean
leaves turds. - Collector #2082:
make install
broken. - Collector #2081:
make instance
forced inappropriate dir, credentials. - Collector #1447: When editing content on a virtual-hosted zope, AcceleratedHTTPCacheManager now purges the correct URL.
- Collector #2062: Fix manage_historyCopy, which was broken, and write tests for it.
- Collector #2061: Fix problems where windows line endings are passed to restricted code compilers.
- Collector #2072: Applied patch to fix problem with overly restrictive __bobo_traverse__ security and tests.
- Added missing Zope 3 packages: zope.app.intid, zope.app.keyreference, zope.app.session, zope.contentprovider, zope.viewlet
- Updated Five to bugfix release 1.3.5.
- OFS.PropertyManager: Provided missing security declarations.
- Products.SiteErrorLog: SiteErrorLog only copied the unformatted traceback to the event.log, missing out on __traceback_supplement__.
Zope 2.9.2 (2006/03/27)
Bugs fixed
- Collector #2051: Applied patch by Yoshinori Okuji to fix some XML export/import problems, and added tests for that feature.
- Missing import of NotFound in webdav.Resource.
- Collector #2037: fixed broken ACTUAL_URL for
/
- Put the default skin interface on the request once it is created, both in ZPublisher and ZopeTestCase.
- Updated Five to bugfix release 1.3.3. See Products/Five/CHANGES.txt for more info.
Zope 2.9.1 (2006/02/25)
Bugs fixed
- Collector #1819: fixed signature of MountedObject.SimpleTrailblazer._construct()
- Collector #2019: removed validateValue() from cAccessControl (already removed in former Zope versions from the AccessControl Python implementation)
- Collector #1991: ZPublisher did not deal properly with a trailing %20 in the URL
- Collector #1989:
test.py
now copyied to $ZOPE_HOME/bin during installation, which re-enables tests run from the instance home. - zope.app.introspector was not included with the source archive
- Collector #2013: improved XHTML conformance of error messages,
some of which did not close
<p>
tags. - Collector #1999: fixed broken FTP rename functionality (RNFR now returns 350 as status code instead 250)
- officially deprecated the zLOG module (to be removed in Zope 2.11). Use the logging module of Python instead.
- Replaced used of deprecated
OFS.content_types
module with cognates fromzope.app.content_types
. - Collector #2002: fixed broken
ls -R
functionality (didn't recurse properly subclasses of OFS.Folder)
Zope 2.9.0 (2006/01/09)
Bugs fixed
- deprecated OFS.content_types
- Fixed ConflictError when using sessions.
Zope 2.9.0 beta 2 (2005/12/24)
Bugs fixed
- Collector #1939: When running as a service, Zope could
potentially collect too much log output filling the NT Event
Log. When that happened, a
print
during exception handling would cause an IOError in the restart code causing the service not to restart automatically.Problem is that a service/pythonw.exe process always has an invalid sys.stdout. But due to the magic of buffering, small "print" statements would not fail - but once the file actually got written to, the error happened. Never a problem when debugging, as the process has a console, and hence a valid stdout.
- For content-type HTTP headers starting with
text/
orapplication/
thecharset
field is automatically if not specified by the application. Thecharset
is determined by the content-type header specified by the application (if available) or from the zpublisher_default_encoding value as configured in etc/zope.conf - Collector #1976: FTP STOR command would load the file being uploaded in memory. Changed to use a TemporaryFile.
- OFS ObjectManager: Fixed list_imports() to tolerate missing import directories.
- Collector #1965:
get_transaction
missing from builtins without sufficient deprecation notice (ZODB 3.6 properly removed it, but Zope needs to keep it for another release). - Several zope.app packages were forgotten to be included in the
first beta due to the now zpkg-based build and release process.
Features added
- The SiteErrorLog now copies exceptions to the event log by default.
- Added a
conflict-error-log-level
directive to zope.conf, to set the level at which conflict errors (which are normally retried automatically) are logged. The default isinfo
.
Zope 2.9.0 beta 1 (2005/12/06)
Features added
- ObjectManager now has an hasObject method to test presence. This brings it in line with BTreeFolder.
- Using FastCGI is officially deprecated
- Improved logging of ConflictErrors. All conflict errors are logged at INFO, with counts of how many occurred and how many were resolved. Tracebacks for all conflicts are logged a DEBUG level, although these won't help anyone much. If a conflict error is unresolved, it will now bubble up to error_log and standard_error_message.
- Fixed unclear security declarations. Warn when an attempt is made to have a security declaration on a nonexistent method.
- updated to ZPL 2.1
- interfaces: Added
Interfaces
tab to basic core objects. This is a Five feature and only available if the classes are made five:traversable. It allows to inspect interfaces and to assign marker interfaces through the ZMI. - webdav: Added support for the z3 WriteLock interface. It is no longer necessary to have the WriteLockInterface in the __implements__ list of lockable objects. All classes inheriting from LockableItem inherit also the IWriteLock interface. Note that this enables webdav locking for all subclasses by default even if they don't specify the WriteLockInterface explicitly.
- App ProductContext: Made registerClass aware of z3 interfaces. Z2 and z3 interfaces are registered side by side in the same tuple in Products.meta_types. IFAwareObjectManagers like the ZCatalog work now with z3 interfaces as well.
- Zope now sends Zope 3 events when objects are added or removed from standard containers. manage_afterAdd, manage_beforeDelete and manage_afterClone are now deprecated. See lib/python/Products/Five/tests/event.txt for details.
- Zope now utilizes ZODB 3.6. It had previously used ZODB 3.4. As a result, the DBTab package was removed, as ZODB 3.6 has multidatabase support that makes DBTab unnecessary.
- Added a
product-config
section type to zope.conf, allowing arbitrary key-value mappings. Products can look for such confgiurations to set product-specific options. Products mwy also register their own section types, extending thezope.product.base
type. (see the example<product-config>
section in skel/etc/zope.conf.in for sample usage). - Collector #1490: Added a new zope.conf option to control the character set used to encode unicode data that reaches ZPublisher without any specified encoding.
- AccessControl, Acquisition, App, OFS, webdav, PluginIndexes, ZCatalog and ZCTextIndex: Added some Zope 3 style interfaces. This makes the bridged interfaces shipped with Five obsolete.
- ZConfig extension, address now also accepts symbolic port names from etc/services (unix) or etc\services (win32)
- ZPublisher.HTTPRequest.FileUpload now supports full file object interface. This means Iterator support was added. (for line in fileobject: ..., as well as fileobject.next() and fileobject.xreadlines() ) Collector #1837
- Switched the bundled Zope 3 to release 3.2 and upgraded the Five product to version 1.3 (see Products/Five/CHANGES.txt).
- The PageTemplate implementation now uses Zope 3 message catalogs by default for translation. Old-style translation services such as Localizer or PlacelessTranslationService are still supported as fall-backs. See Products/Five/doc/i18n.txt for more information.
- Switched to the new improved test runner from Zope 3. Run test.py with -h to find out more.
- Collector #1904: On Mac OS X avoid a spurious OSError when zopectl exits.