Skip to main content

Zope application server / web framework

Project description

https://github.com/zopefoundation/Zope/actions/workflows/tests.yml/badge.svg https://coveralls.io/repos/github/zopefoundation/Zope/badge.svg?branch=master Documentation Status Current version on PyPI Supported Python versions Requirements Status

 

Zope logo

Zope is an open-source web application server.

This document provides some general information about Zope and provides links to other documents. The full documentation can be found at https://zope.readthedocs.io.

Installation

Please visit the installation documentation at https://zope.readthedocs.io/en/latest/INSTALL.html for detailed installation guidance.

License

Zope is licensed under the OSI-approved Zope Public License (ZPL), version 2.1. The full license text is included in LICENSE.txt.

Bug tracker

Bugs reports should be made through the Zope bugtracker at https://github.com/zopefoundation/Zope/issues. A bug report should contain detailed information about how to reproduce the bug.

Change log

These are all the changes for Zope 5, starting with the alpha releases, since the branch point at Zope 4.1.2.

The change log for the previous version, Zope 4, is at https://github.com/zopefoundation/Zope/blob/4.x/CHANGES.rst

5.2.1 (2021-06-08)

  • Prevent unauthorized traversal through authorized Python modules in TAL expressions

  • Facelift the Zope logo. (#973)

  • Update to newest compatible versions of dependencies.

5.2 (2021-05-21)

  • Prevent traversal to names starting with _ in TAL expressions and fix path expressions for the chameleon.tales expression engine.

  • Provide friendlier ZMI error message for the Transaction Undo form (#964)

  • Updated/fixed the poll application tutorial in the Zope Developers Guide (#958)

  • Update to newest versions of dependencies.

  • Depend on zope.datetime for the functions iso8601_date, rfc850_date, and rfc1123_date which used to be in App.Common keeping backwards-compatibility imports in place.

Backwards incompatible changes

  • With the exception of field2bytes, field converters do no longer try to read file like objects (#558)

5.1.2 (2021-03-02)

  • Enforce Zope permissions during recursive XML-RPC data dumps (#954)

  • The compute_size method properly returns None if the content does not have a get_size method but the parent has. (#948)

  • Fix control panel tab links on all control panel pages

  • Update to newest versions of dependencies.

5.1.1 (2021-02-10)

  • Replace (in OFS) the deprecated direct id access by getId calls. (#903)

  • Update ZMI dependencies for Font Awesome, jQuery and bootstrap.

  • Revise debug info GUI (#937)

  • Convert bytes HTTPResponse header value to str via ISO-8859-1 (the default encoding of HTTP/1.1).

  • Fix rendering of not found resources. (#933)

  • Update to newest versions of dependencies.

5.1 (2020-11-12)

Backwards incompatible changes

  • Exclude characters special for chameleon’s interpolation syntax (i.e. ${}) from use in TALES path expressions to reduce the failure risk for the chameleon interpolation heuristics (#925)

Features

  • Restore the ZMI Debug Information control panel page (#898)

Fixes

  • Fix ZMI visibility of pre elements in error log (Products.SiteErrorLog#26)

  • Fix length for page template repeat variables (#913)

  • Update isort to version 5. (#892)

  • Update to newest versions of dependencies.

5.0 (2020-10-08)

Backwards incompatible changes

  • Drop support for Python 3.5 as it will run out of support soon. (#841)

Features

  • HTTP header encoding support (#905)

  • Add support for Python 3.9.

  • New interface Products.PageTemplates.interfaces.IZopeAwareEngine. It can be used as the “provides” of an adapter registration to adapt a non Zope tales engine to an engine to be used by Zope page templates (#864). Currently, the adaptation is used only when the template is rendered with chameleon; with zope.pagetemplate, the engine is used as is - this may change in the future.

  • Allow (some) builtins as first element of a (TALES) path expression: in an untrusted context, the builtins from AccessControl.safe_builtins are allowed; in a trusted context, all Python builtins are allowed in addition (and take precedence) (zope.tales#23).

  • Support the attrs predefined template variable again (as far as chameleon allows it) (#860).

  • Use Chameleon (>= 3.7.2) configuration to get better information for errors detected during template execution (#837).

Fixes

  • Provide a more senseful OFS.SimpleItem.Item_w__name__.id to avoid bugs by use of deprecated direct id access (as e.g. (#903).

  • Update to zope.interface > 5.1.0 to fix a memory leak.

  • Fix export of files with non-latin-1 compatible names (#890)

  • Avoid unsolicited translations (#876)

  • Make “chameleon-zope context wrapping” more faithful. (#873)

  • Let “unicode conflict resolution” work for all templates (not just ZopePageTemplate). (#872)

  • Make “Unicode Conflict Resolution” available for templates rendered with chameleon (Products.CMFPlone#3145).

  • Improve documentation of CONTEXTS in the “Zope Book”.

  • Decrease cookie size for copy/paste clipboard cookie (#854)

  • Fix default keyword handling in page templates (#846)

  • Fix parsing of package version and show correct major version in the ZMI

  • Improve solidity of the debugError method. (#829)

  • Fix that ZTUtils.LazyFilter could not be imported inside a restricted Python script. (#901)

Other changes

  • Add pyupgrade via pre-commit (#859)

  • Add tal:switch test

5.0a2 (2020-04-24)

Bug fixes

  • Pin AccessControl 4.2 for the Manage WebDAV Locks permission

  • Fix HEAD requests on registered views (#816)

  • Improve chameleon –> zope.tales context wrapper (support for template variable injection) (#812).

  • Require zope.tales>=5.0.2

  • Fix issue 717 by fully honoring the engine returned by PageTemplate.pt_getEngine (#717). The engine also decides about the use of zope.tales (engine is an instance of zope.pagetemplate.engine.ZopeBaseEngine) or chameleon.tales (otherwise) TALES expressions.

  • Fixed encoding issue of displayname WebDAV property (#797)

  • Fixed fallback implementation of manage_DAVget (#799)

Other changes

  • Update to newest versions of dependencies.

5.0a1 (2020-02-28)

Backwards incompatible changes

  • Drop support for Python 2.7 aka Zope 5 cannot be run on Python 2 any more. If you are still running on Python 2.7 upgrade to the latest Zope 4 version first, migrate to Python 3 and than switch to Zope 5. (#692)

  • Remove all backwards-compatibility code marked to go away in Zope 5 (#478)

  • Drop support for running Zope with ZServer as it is Python 2 only. (#592)

  • Remove deprecated postProcessInputs request method. (#782)

  • Remove deprecated module ZPublisher.maybe_lock. (#758)

  • Remove Help System methods from the product context. (#756)

  • Remove more deprecated code. (#757)

  • Updated Zope documentation sources for Zope 5. (#659)

New features

Bug fixes

  • Only use wsgi.file_wrapper for response bodies with a read method. (#763)

  • Improve detection of HTTPS requests. (#680)

  • Fix several ZMI links so they respect virtual hosting. (#788)

  • Fix sort link URLs on manage_main (#748)

  • More tests to make sure all __str__ implementations return native strings. (#692)

  • Fix longstanding test bug by forcing the page template engine. Many tests in Products.PageTemplates used the old Zope page template engine because the correct one was not registered during setup.

  • Close opened db during shutdown (as ZServer is already doing). (#740)

  • The method unrestrictedTraverse raises an error when the argument path is not something it can work with. (#674)

  • Improve ZMI Security Tab usability for high numbers of roles. (#730)

  • Some small ZMI rendering fixes. (#729)

  • Fix error when using database minimize in the ZMI. (#726)

  • Fix __getattr__ signature in UnauthorizedBinding. (#703)

  • Fix VirtualHostMonster not being able to set mappings under Python 3. (#708)

  • Reduce the danger of acquiring built-in names on the ZMI Find tab. (#712)

  • Restore the mistakenly removed Properties ZMI tab on Image objects (#706)

  • Fix OFS.Image.File.__str__ for Pdata contents (#711)

  • Set REMOTE_USER in wsgi environ using Zope user authentication (#713)

  • Add Paste as extras_require dependency to pull in Paste when installing with pip and constraints.txt to prevent startup errors. This requires adding the [wsgi] extra in the egg specification. (#734)

Other changes

  • Move retried request delay handling out of supports_retry (#474)

  • Improve documentation for Zope’s error logging services.

Release history Release notifications | RSS feed

This version

5.2.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Zope-5.2.1.tar.gz (12.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

Zope-5.2.1-py3-none-any.whl (3.0 MB view details)

Uploaded Python 3

File details

Details for the file Zope-5.2.1.tar.gz.

File metadata

  • Download URL: Zope-5.2.1.tar.gz
  • Upload date:
  • Size: 12.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.5

File hashes

Hashes for Zope-5.2.1.tar.gz
Algorithm Hash digest
SHA256 bc98de53446413e7a0f35afdbdd608da1aecd67b0b84d55060e4887188a03be8
MD5 d80b869dd62f6154979099da426f5800
BLAKE2b-256 a5707845da056f54f1dbcf46a5eeb225ff70a8fde992b2d07bb87f61b41d4034

See more details on using hashes here.

File details

Details for the file Zope-5.2.1-py3-none-any.whl.

File metadata

  • Download URL: Zope-5.2.1-py3-none-any.whl
  • Upload date:
  • Size: 3.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.5

File hashes

Hashes for Zope-5.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 341fdafb8ab7c1412e3f333ce60206708485216bb3e9291edfd2dca96c6f491f
MD5 5c0dd3d0b2b5450142aa9793b0e19eba
BLAKE2b-256 ccbaa754a5f8f3566ab1bc9557548fc35cf7340092db41e2e8f3aa7e09951486

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page