Download project files

How do I verify a download?


3.4.0 release from the 3.4 series released

File Description Downloads
download icon Zope-3.4.0.tgz (md5) - 335
last downloaded 6 weeks ago
Total downloads: 335

3.4.0a1 release from the 3.4 series released

Release information
Release notes:

Zope 3.4 includes ZODB 3.8 with native BLOB support, a new transaction API method "doom()". A new IResult hook was introduced to allow postprocessing of publishing results. Also, all packages are available as eggs now.

There are many more features, restructurings and bug fixes. See the detailed changelog for more information.

Changelog:

    New features

      - zope.viewlet.manager now fires a BeforeUpdateEvent before
        calling update on viewlets. This might be usefull for other
        components like caches to react before a viewlet is updated.

      - Introduced IResult hook for postprocessing of publishing results.
        This replaces a similar private IResult hook from previous releases.
        It is a hook point into which a variety of interesting policies,
        including in-Zope pipelining, can be placed. See
        zope/publisher/httpresults.txt for more details, which itself
        points to the full details for IResult and IHTTPResponse.setResult in
        zope/publisher/interfaces/http.py.

      - Implemented a custom FieldStorage that uses named temporary files to
        allow the Blob integration to use `consumeFile` on uploaded files.

      - added widget for zope.schema.FrozenSet like for zope.schema.Set.

      - icon zcml directive supports now 'width' and 'height'

      - Added a master checkbox to the ZMI and toggles all other checkboxes in
        the folder listing.

      - added additional parameter ``settings_overrides`` to
        zope.app.render to allow overriding of the default settings for
        rendering rest files.

      - Added support for multiple databases in ZODB Control View.

      - zope.app.testing.functional.ZCMLLayer supports in-process tearDown.
        For backwards compatibility, this feature is disabled by default.
        You can enable it by passing ``allow_teardown=True`` to ``ZCMLLayer()``
        or to ``defineLayer()``.

      - zope.app.generations now guarantees the order in which schema managers
        are invoked, allowing frameworks and extensions to have a predictable
        evolution relationship.

      - Removed unused and untested SFTP code from zope.app.twisted along with
        all the SSH keys. Removed all the SSL keys also.

      - Added ``index`` keyword argument to testbrowser's ``getLink()``
        method, so that later links with a match can be accessed
        too. Example: In the ZMI doing ``getLink('Folder')`` will give you the
        "Buddy Folder" link and not the "Folder" link as expected. Use
        ``getLink('Folder', index=1)`` instead.

      - Added breadcrumbs to all types of objects visible through the
        code documentation browser.

      - Added ISkinChangedEvent to applySkin() function. This event is
        triggered whenever the skin of a request is changed.

      - Make the `label` and `hint` properties of the base Widget class
        read/write, and document in the interface that the implementation
        may or may not allow updating these properties.

      - Improved the asynchronous navigation tree of the 'Rotterdam' skin:
        highlight current object, do not display '+' icon if object contains
        no element, remove message "Loading" if unable to retrieve XML tree.

      - Revamped i18n for German for all user-readable strings

      - The getForm() method on testbrowser instances no longer needs
        arguments to disambiguate among forms if there's only one form
        in the input.

      - The security setting values from zope.app.security.settings are now
        exported by zope.app.securitypolicy.interfaces, since they are
        exposed by the APIs defined there, and are not used in the
        zope.app.security package at all. zope.app.securitypolicy.intefaces
        will be the preferred location from which to import these values.

      - Added xmlrpclib.ServerProxy variation in zope.app.testing.xmlrpc
        that allows testing XML-RPC views in functional tests.

      - Added attribute `permission` to the `browser:menuItems`-directive to
        allow setting a default value for all menu items defined in this
        directive.

      - Added a new interface decorator to zope.interface that allows the
        setting tagged values on an interface at definition time (see
        zope.interface.taggedValue).

      - Added new Decimal field type to zope.schema (and DecimalWidget in
        zope.app.form)

      - Added security declarations for decimal.Decimal objects

      - Added new Time field type to zope.schema

      - IHTTPApplicationRequests emit a new event,
        IHTTPVirtualHostChangedEvent, when virtual host parameters are
        altered.

      - New Dublin Core property object that allows scalar treatment for
        sequence types. Made it work with both Tuple and List field type.

      - New logger directive for zope.conf allows for configuring loggers
        for specific subsystems with their own level and handlers.

      - The ISession interface and the according implementation in
        zope.app.session now define a get method. This method can be
        used to check if a specific session key is defined without
        automatically creating it.

      - The "Session Credentials" authentication plugin does not write
        session data for anonymous requests. This reduces zodb
        conflicts for high-traffic sites with many anonymous requests.

      - Change the publication object to abort the current transaction if
        the trasaction was doomed. Related to:
        http://www.zope.org/Collectors/Zope3-dev/655.

      - ZPTPage's content_type is now editable in the ZMI.

    Restructuring

      - Moved IBroken to zope.app.broken.interfaces to avoid cyclic imports.

      - Added test layers for all existing functional tests.

      - Updated the version of Twisted to 2.5

      - Implemented "Loading Configuration from the zope.app Egg" proposal.
        Now zope.app is a namespace package. ZCML files in zope.app package
        is moved to zope.app.zcmlfiles (a new package with only ZCML files).
        Now creating individual eggs of zope.app.* packages is possible.

      - ``ClientForm`` changed from a file based module to a package.

      - Changed internal widget API to allow retrieving the current value
        (from request, default or current field value) in addition to the
        current form representation of the value.

      - Refactored zope.decorator into zope.proxy.decorator and
        zope.security.decorator.

      - Deprecated directive <zope:localUtility>, replaced by <zope:class>.

      - Removed deprecated directive <zope:defaultLayer>.

      - Removed deprecated argument 'outstream' from ``zope.publisher``
        API, and removed other deprecated code.

      - Removed deprecated aliases:

        * ``UniqueIdUtility`` for ``IntIds``

        * ``ReferenceToPersistent`` for ``KeyReferenceToPersistent``

        * ``zope.app.uniqueid`` for ``zope.app.intid``

        * ``HTTP`` for ``WSGI-HTTP``

        * ``PostmortemDebuggingHTTP`` for ``WSGI-PostmortemDebuggingHTTP``

        * ``PublisherHTTPServer`` for ``PMDBHTTPServer``

        * ``IBrowserIdManager`` for ``IClientIdManager``

      - Removed deprecated ``zope.app.file.interfaces.IFileContent``.
        Use ``zope.app.publication.interfaces.IFileContent``.

      - Removed deprecated ``zope.app.form.CustomSequenceWidgetFactory``.
        Use ``zope.app.form.CustomWidgetFactory``.

      - Removed deprecated services:
        ``IErrorReportingService``, ``ILocalErrorReportingService``,
        ``IPrincipalAnnotationService``, ``IAuthenticationService``.
        They are replaced by Utilities.

      - Removed deprecated methods:
        ``zope.copypastemove.ObjectCopier._configureCopy``,
        ``zope.interface.interface.Specification.isImplementedByInstancesOf``,
        ``zope.interface.interface.Specification.isImplementedBy``,

      - Removed deprecated ``zope.app.pluggableauth`` package.
        See ``zope.app.authentication``.

      - Removed deprecated ``zope.app.introspector`` package.
        See ``zope.app.apidoc.codemodule`` for the introspector feature.

      - Implemented the ZCML feature `deprecatedlayers` which is provided by
        default. To turn off and remove the deprecated packages `layers` and
        `skins`, you need to remove file `zope.app.layers-meta.zcml` from the
        directory `/etc/package-includes/` and delete directories
        `zope/app/layers/`and `zope/app/skins/`.

      - Removed internal concept of 'warnings' from TAL interpreter as it
        wasn't used at all and does not belong to any public interface.

      - Removed some cruft from pre-3.0 page templates (The concept of `usage`
        was removed back then already.)

      - Changed default charset of text file (``zope.app.file.file``) to utf-8.

    Bug fixes

      - Implemented pre marshaller for xmlrpxlib.Binary which will make sure
        that the response doesn't containd a proxied binary object.

      - zope.server.http: Connection: keep-alive wasn't sent
        (http://zope.org/Collectors/Zope3-dev/714)

      - zope.pagetemplate.pagetemplatefile introspects the html http-equiv
        header to guess the content encoding. This did not work for XHTML
        content.

      - zope.app.publisher.browser.pagetemplateresource sets the Content-Type
        header like the other page templates do it.

      - Fixed zope.app.cache.ram.RAMCache which ignored the
        cleanupInterval.

      - zope.app.form.browser.textwidgets: The TextAreaWidget was not escaping
        its content when the validation failed. This way <, > and & were put
        out unquoted.

      - zope.app.interface: Fix PersistentInterfaceClass
        (http://www.zope.org/Collectors/Zope3-dev/747)

      - zope.testing: moved import of the pystone module due a import
        conflict with the Zope 2 testrunner
        (http://www.zope.org/Collectors/Zope/2268)

      - Fixed zope.app.catalog.attribute.AttributeIndex. It indexed None if
        the index value is provided by a callable field.

      - Made the SourceDisplayWidget derive from
        zope.app.form.browser.widget.DisplayWidget because it really is a
        browser widget.

      - Fixed bug #721: Handling of empty prefixes in zope.formlib and
        zope.app.form

      - Fixed bug #707: "layer" directive was marked as deprecated in a
        confusing way.

      - Fixed bug #728: Able to change-dir into non-existant directories
        using FTP

      - Fixed widget bug in zope.app.form.browser; _getCurrentValue always
        returns an input value now. This fixes a bug in _getFormValue.

      - Fixed bug #717: formlib raised FormError when schema fields were
        missing from a request although not required.

      - Fixed bug #738: RestrictedPython was unable to parse
        Unicode expressions correctly (as passed in from e.g. ZPTPages).

      - Fixed bug #723: Testbrowser was handling multiple submit buttons with
        the same name incorrectly.

      - Fixed behaviour of PasswordWidget to allow users not changing their
        password when a password already exists.

      - Fileresources now also set the Cache-control headers on 304
        responses. This speeds up page loads a lot on pages with many
        resources.

      - Fixed validate method of schema.Date, now it does not accept
        datetime objects anymore. this is needed because datetime and
        date values are not comparable

      - Fixed zope.annotation.factory to correctly setup containment for
        objects that do not implement IContained.

      - Fixed encoding of newlines, carriage returns, and tabs when
        encoding attributes for widgets so we're consistent under all
        Python 2.4.x versions (including 2.4.4, which failed tests before).

      - Fixed issue 535: make HTTPInputStream work with Python 2.4.4.

      - As part of zope.decorator refactoring, its dependancy were not removed
        from DEPENDENCIES.cfg in zope.location. Also zope.security.decorator
        doctests were not running due to missing boilerplate code.

      - When a credential plugin redirects to the login page, it memorizes
        the requested URL in the 'camefrom' GET parameter.
        The 'camefrom' parameter was not accurate.

      - Fixed a bug in getImageInfo which could cause an
        UnboundLocalError under certain conditions.

      - Deprecated ``zope.app.component.get/queryNextSiteManager``
        function. Fixed ``zope.app.component.get/queryNextUtility`` to work
        correctly with multiple bases.

      - Generate an ObjectCreatedEvent when the root object is created.

      - More or less fixed the static apidoc generator. (fix + workaround).

      - Fixed issue 705, double URL unquoting of GET parameters in
        functional tests.

      - Fixed issue 676, utilities defined in Zope 3.2 weren't
        converted properly.

      - Fixed issue 675, Pluggable Authentication utilities with group
        folders weren't updated correctly to replect the new database
        format.

      - Fixed issue 663, adding basic auth and session-credential
        plugins didn't work.

      - Fixed issue 650, a test failure on Mac OS X that seemed to
        indicate deeper problems in ZEO's thread handling. Refactored
        ZEO so that ZEO clients have their own asyncore loop and don't
        need two separate networking modes.

        As part of this, some bugs in connection management that
        weren't tested in asynchronous mode were fixed.

        Added a heart-beat to try to detect lost server connections in
        situations where such disconnections are not reported by the OS.

      - Fixed issue 664, apidoc didn't properly handle attributes that
        showd up in dir() but that weren't gettable.

      - Fixed issue 604, Mutable schemas were accidentally included in
        the 3.2 release even though they weren't ready and didn't
        work. They are not included in the 3.3 release.

      - Fixed issue 564: binary set operations didn't work on proxied sets.

      - Fixed issue 572: Dict fields with key_type or value_type set
        didn't handle binding correctly.

      - Fixed issue 576: The icon directive title attribute wasn't implemented.

      - TAL interpreter didn't translate i18n Messages when inserted
        as structure;

      - Fixed issue 667: ZPT repeat "oddness"

      - Fixed issue 646: TAL interpreter doesn't translate i18n
        Messages when inserted as attributes;

      - Fixed issue 665: ZCML swallowing KeyboardInterrupt / SystemExit.

      - Fixed issue 525: DateWidget ru-format.
        Added new Date(time)I18nWidget. Note: if you plan to use
        DatetimeI18nWidget with timezone information take a look
        at the note in the DatetimeI18nWidget docstring;

      - Fixed issue 531: Spurious i18n deprecation warnings;

      - Fixed issue 639: Default ITraverser ignores dict methods

      - Fixed issue 636: Default ITraverser can't traverse old style
        classes

      - Fixed issue 638: TALES PathExpr calls result of alternate
        subexpression

      - Fixed issue 635: TALES PathExpr doesn't call old style classes

      - Fixed issue 543: add 'decimal'-package to
        zope/app/security/globalmodules.zcml

      - Fixed issue 679: using the new IHTTPVirtualHostChangedEvent, session's
        cliend id cookies fix up the set cookie path whenever the virtual host
        information changes during a request.

      - Fixed cookie path handling in functional tests.

      - Fixed issue 716, make check no longer throws ValueError "I/O
        operation on closed file" after all tests have run. Port
        of Jim's workaround in 3.3.

      - Fixed zope.app.catalog.attribute.AttributeIndex. It did not
        remove the the previous value/object from the index IF the NEW
        value was None.

      - Fixed zope.index.field.index.FieldIndex. Unindex broke if the value
        somehow dropped out of the forward index.

      - We can have indexes whose values are determined by callable methods.
        Raising an exception in the method should not be silently ignored
        That would cause index corruption -- the index would be out of sync

      - Added ObjectModifiedEvent when a text file object is modified through
        the edit form in the ZMI.

      - Resolved http://www.zope.org/Collectors/Zope3-dev/655 by having
        zope.app.form use the transaction.doom() interface.

      - Fixed classregistry.txt in zope.app.apidoc to write to a temporary
        directory rather than the source tree.

      - Fixed test_directives.py in zope.sendmail to write to a temporary
        directory rather than the source tree.

      - Fixed zope.app.file.browser.file. Last-Modified time was wrong.

      - Fixed issue 758: ObjectCopier doesn't copy local utilities properly.

File Description Downloads
download icon Zope-3.4.0a1.tar.gz (md5) 66
last downloaded 48 weeks ago
Total downloads: 66