Publication and traversal components.
- Drop Python 3.4 support and added 3.7.
- Updated expected doc output to match latest library versions.
- Removed all deprecation warnings.
- Include MANIFEST.in since it is needed for pip install.
- Update the code to be compatible with transaction >= 2.0.
- Update tests to be compatible with ZODB >= 5.1, thus requiring at least this version for the tests.
- Drop Python 3.3 support.
- Test against released final versions, thus requiring zope.app.http >= 4.0 (test dependency).
- Claim compatibility to Python 3.4 and 3.5 and drop support for Python 2.6.
- Improve the publication factory lookup by falling back to a more generic registration if the specific factory chooses not to handle the request after all.
- Relax ZODB dependency to allow 3.10dev builds from SVN.
- Introduce ZopePublication.callErrorView as a possible hook point.
- Replace ZODB.POSException.ConflictError with transaction.interfaces.TransientError. The latter should be a more generic signal to retry a transaction/request. This requires ZODB3 >= 3.10.0 and transaction >= 1.1.0.
- Get rid of ZODB dependency.
- Add missing test dependency on zope.testing.
- Remove test dependency on zope.app.exception.
- Test fix: HTTP request should not have leading whitespace.
- Reenabled a test which makes sure 405 MethodNotAllowed is returned when PUT is not supported. This requires at least version 3.10 of zope.app.http.
- Use the standard libraries doctest module.
- Include the notfound.txt test again but reduce its scope to functionality relevant to this distribution.
- Notify with IStartRequestEvent at the start of the request publication cycle.
- Fix up tests to work with newer zope.app.wsgi release (3.9.0).
- Don’t depend on zope.app.testing and zope.app.zcmlfiles anymore in the tests.
- Lift the test dependency on zope.app.zptpage.
- make zope.testing an optional (test) dependency
- Fix tests using a newer zope.publisher that requires zope.login.
- Moved EndRequestEvent and IEndRequestEvent to zope.publisher.
- Moved BeforeTraverseEvent and IBeforeTraverseEvent to zope.traversing.
- Removed dependency on zope.i18n.
- Import hooks functionality from zope.component after it was moved there from zope.site.
- Import ISite from zope.component after it was moved there from zope.location.
- An abort within handleExceptions could have failed without logging what caused the error. It now logs the original problem.
- Moved registration of and tests for two publication-specific event handlers here from zope.site in order to invert the package dependency.
- Declared the missing dependency on zope.location.
- Bug fix: The publication traverseName method used ProxyFactory rather than the publication proxy method.
- Added a proxy method that can be overridden in subclasses to control how/if security proxies are created.
- Replaced zope.deprecation dependency with backward-compatible imports
- Moved the publicationtraverse module to zope.traversing, removing the zope.app.publisher -> zope.app.publication dependency (which was a cycle).
- Moved IHTTPException to zope.publisher, removing the dependency on zope.app.http.
- Moved the DefaultViewName API from zope.app.publisher.browser to zope.publisher.defaultview, making it accessible to other packages that need it.
- Look up the application controller through a utility registration rather than a direct reference.
- Use zope:adapter ZCML directive instead of zope:view. This avoid dependency on zope.app.component.
- Update imports from zope.app.security to zope.authentication and zope.principalregistry.
- Use zope.browser.interfaces.ISystemError to avoid dependency on zope.app.exception.
- Refactored tests so they can run successfully with ZODB 3.8 and 3.9.
- Adapt to the removal of IXMLPresentation from zope.app.publisher which was removed to adapt to removal of deprecated interfaces from zope.component.
- Use ISkinnable.providedBy(request) instead of IBrowserRequest as condition for calling setDefaultSkin. This at the same time removes dependency to the browser part of zope.publisher.
- Remove deprecated code.
- Use built-in set class instead of the deprecated sets.Set and thus don’t cause deprecation warning in Python 2.6.
- Import ISite from zope.location.interfaces instead of deprecated place in zope.app.component.interfaces.
- Now zope.app.publication.zopepublication.ZopePublication annotates the request with the connection to the main ZODB when getApplication is called.
- Removed support for non-existent Zope versions.
- Removed unused imports.
- Resolve ZopeSecurityPolicy deprecation warning.
- Added missing files to egg distribution.
- Added missing files to egg distribution.
- Initial documented release.
- Reflect changes form zope.app.error refactoring.