The zope.traversing package provides adapteres for resolving
object paths by traversing an object hierarchy. This also includes
support for traversal namespaces (e.g. ++view++, ++skin++,
etc.) as well as computing URLs via the @@absolute_url view.
Changes
3.13.2 (unreleased)
3.13.1 (2010-12-14)
- Fixed ZCML-related dependencies.
3.13 (2010-07-09)
When a __parent__ attribute is available on an object, it is
always used for absolute URL construction, and no ILocation adapter
lookup is performed for it. This was the previous behavior but was
broken (around 3.5?) due to dependency refactoring.
If the object provides no __parent__ then an ILocation adapter
lookup will be performed. This will always succeed as zope.location
provides a default LocationProxy for everything, but more specific
ILocation adapters can also be provided.
3.12.1 (2010-04-30)
- Removed use of 'zope.testing.doctestunit' in favor of stdlib's doctest.
3.12.0 (2009-12-29)
- Avoid testing dependencies on zope.securitypolicies and
zope.principalregistry.
3.11.0 (2009-12-27)
- Removed testing dependency on zope.app.publication.
3.10.0 (2009-12-16)
- Removed stray test claiming a no longer existing dependency on
zope.app.applicationcontrol.
- Refactored functional tests to loose dependency on both zope.app.appsetup
and zope.app.testing.
- Simplified tests for the browser sub-package by using PlacelessSetup from
zope.component.testing instead of zope.app.testing.
- Simplified test_dependencies module by using zope.configuration instead of
zope.app.testing.functional.
- Removed testing dependency on zope.app.publisher.
- Replaced testing dependency on zope.app.security with zope.securitypolicy.
- Removed testing dependency on zope.app.zcmlfiles in favor of more explicit
dependencies.
- Removed testing dependency on zope.app.component.
- Replaced a test dependency on zope.app.zptpage with a dependency on
zope.pagetemplate.
3.9.0 (2009-12-15)
- Moved IBeforeTraverseEvent from zope.app.publication into this package,
as we already deal with publication traversal.
3.8.0 (2009-09-29)
- In zope.traversing.api.getParent(), try to delegate to
zope.location.interfaces.ILocationInfo.getParent(), analogous to
getParents(). Keep returning the traversal parent as a fallback.
- Brought ITraverser back from zope.location where it had been moved to invert
the package interdependency, but is no longer used now.
3.7.2 (2009-08-29)
- Made virtual hosting tests compatible with zope.publisher 3.9. Redirecting
to a different host requires an explicit trusted redirect now.
3.7.1 (2009-06-16)
- AbsoluteURL now implements the fact that __call__ returns the same as __str__
in a manner that it applies for subclasses, too, so they only have to override
__str__ and not both.
3.7.0 (2009-05-23)
- Moved the publicationtraverse module to zope.traversing, removing the
zope.app.publisher -> zope.app.publication dependency (which was a
cycle).
- Look up the application controller through a utility registration
rather than a direct reference.
3.6.0 (2009-04-06)
- Change configure.zcml to not depend on zope.app.component.
- This release includes the BBB-incompatible zope.publisher.skinnable
change from 3.5.3.
3.5.4 (2009-04-06)
- Revert BBB-incompatible use of zope.publisher.skinnable: that
change belongs in a 3.6.0 release, because it requires a BBB-incompatible
version of zope.publisher.
3.5.3 (2009-03-10)
- Use applySkin from new location. zope.publisher.skinnable instead of
zope.publisher.browser.
- Use IAbsoluteURL lookup instead of the "absolute_url" view in the
recursive AbsoluteURL adapters (LP: #338101).
3.5.2 (2009-02-04)
- The RootPhysicallyLocatable is not the same as LocationPhysicallyLocatable
now in zope.location. Fix the import and testing setups.
3.5.1 (2009-02-02)
The RootPhysicallyLocatable adapter has been superseded by the
refactored zope.location.traversing.LocationPhysicallyLocatable
that we depend on since 3.5.0a4.
Remove the adapter and its registration, and making its import place
pointing to zope.location.traversing.LocationPhysicallyLocatable
to maintain backward-compatibility.
This also fixes a bug introduced in version 3.5.0a4 when trying to
call getParents function for the root object.
Use direct imports instead of compatibility ones for things that were
moved to zope.location.
Remove the zope.traversing.interfaces.INamespaceHandler interface,
as it seems not to be used for years.
Change package's mailing list address to zope-dev at zope.org instead
of retired zope3-dev at zope.org
3.5.0 (2009-01-31)
- Use zope.container instead of zope.app.container.
- Use zope.site instead of zope.app.folder in the unit tests.
- Reduced, but did not eliminate, test dependencies on zope.app.component.
3.5.0a4 (2008-08-01)
- Reverse dependencies between zope.location and zope.traversing.
- Updated (test) dependencies and tests to expect and work with a spec
compliant TAL interpreter as available in zope.tal >= 3.5.0.
- Fixed deprecation warning caused by using an old module name for
ZopeSecurityPolicy in ftesting.zcml
- Made sure traversing doesn't raise an TypeError but a TraversalError when the
traversal step before yielded a string.
3.5.0a3 (2007-12-28)
- backed out the controversial ++skin++ traverser for XML-RPC.
3.5.0a2 (2007-11-28)
- ported 3.4.1a1 to trunk
- Do not use unicode strings to set the application server in the virtual
host namespace. This caused absolute_url to create unicode URL's.
- Added a traverer for ++skin++ for XMLRPC skins (IXMLRPCSkinType). This also
means that the normal ++skin++ namespace handler is only bound to
IBrowserRequest.
- Resolved the dependency on zope.app.applicationcontrol by importing the
application controller only if the package is available.
3.4.1 (2008-07-30)
- Fixed deprecation warning caused by using an old module name for
ZopeSecurityPolicy in ftesting.zcml
3.4.1a1 (2007-11-13)
Do not use unicode strings to set the application server in the virtual host
namespace. This caused absolute_url to create unicode URL's.
3.4.0 (2007-09-29)
No further changes since 3.4.0a1.
3.4.0a1 (2007-04-22)
Initial release as a separate project, corresponds to zope.traversing
from Zope 3.4.0a1