[Checkins] SVN: zope.session/trunk/ Drop dependency on zope.annotation.
Dan Korostelev
nadako at gmail.com
Sun Mar 15 07:39:12 EDT 2009
Log message for revision 98119:
Drop dependency on zope.annotation.
Changed:
U zope.session/trunk/CHANGES.txt
U zope.session/trunk/setup.py
U zope.session/trunk/src/zope/session/classes.zcml
U zope.session/trunk/src/zope/session/http.py
U zope.session/trunk/src/zope/session/session.py
-=-
Modified: zope.session/trunk/CHANGES.txt
===================================================================
--- zope.session/trunk/CHANGES.txt 2009-03-15 07:35:53 UTC (rev 98118)
+++ zope.session/trunk/CHANGES.txt 2009-03-15 11:39:12 UTC (rev 98119)
@@ -6,6 +6,14 @@
- Don't raise deprecation warnings on Python 2.6.
+- Drop dependency on ``zope.annotation``. Instead, we make classes implement
+ `IAttributeAnnotatable` in ZCML configuration, only if ``zope.annotation``
+ is available. If your code relies on annotatable `CookieClientIdManager`
+ and `PersistentSessionDataContainer` and you don't include the zcml classes
+ configuration of this package, you'll need to use `classImplements` function
+ from ``zope.interface`` to make those classes implement `IAttributeAnnotatable`
+ again.
+
- Drop dependency on zope.app.http, use http-date building function
from zope.datetime instead.
Modified: zope.session/trunk/setup.py
===================================================================
--- zope.session/trunk/setup.py 2009-03-15 07:35:53 UTC (rev 98118)
+++ zope.session/trunk/setup.py 2009-03-15 11:39:12 UTC (rev 98119)
@@ -63,7 +63,6 @@
install_requires=[
'setuptools',
'ZODB3',
- 'zope.annotation',
'zope.app.appsetup',
'zope.datetime',
'zope.component',
Modified: zope.session/trunk/src/zope/session/classes.zcml
===================================================================
--- zope.session/trunk/src/zope/session/classes.zcml 2009-03-15 07:35:53 UTC (rev 98118)
+++ zope.session/trunk/src/zope/session/classes.zcml 2009-03-15 11:39:12 UTC (rev 98119)
@@ -6,6 +6,10 @@
</class>
<class class=".http.CookieClientIdManager">
+ <implements
+ zcml:condition="installed zope.annotation"
+ interface="zope.annotation.interfaces.IAttributeAnnotatable"
+ />
<require
interface=".http.ICookieClientIdManager"
permission="zope.Public"
@@ -25,6 +29,10 @@
</class>
<class class=".session.PersistentSessionDataContainer">
+ <implements
+ zcml:condition="installed zope.annotation"
+ interface="zope.annotation.interfaces.IAttributeAnnotatable"
+ />
<require
interface=".interfaces.ISessionDataContainer"
permission="zope.Public"
Modified: zope.session/trunk/src/zope/session/http.py
===================================================================
--- zope.session/trunk/src/zope/session/http.py 2009-03-15 07:35:53 UTC (rev 98118)
+++ zope.session/trunk/src/zope/session/http.py 2009-03-15 11:39:12 UTC (rev 98119)
@@ -35,7 +35,6 @@
from zope.interface import implements
from zope.publisher.interfaces.http import IHTTPRequest
from zope.publisher.interfaces.http import IHTTPApplicationRequest
-from zope.annotation.interfaces import IAttributeAnnotatable
from zope.i18nmessageid import ZopeMessageFactory as _
from zope.session.interfaces import IClientIdManager
from zope.schema.fieldproperty import FieldProperty
@@ -127,7 +126,7 @@
class CookieClientIdManager(zope.location.Location, Persistent):
"""Session utility implemented using cookies."""
- implements(IClientIdManager, ICookieClientIdManager, IAttributeAnnotatable)
+ implements(IClientIdManager, ICookieClientIdManager)
thirdparty = FieldProperty(ICookieClientIdManager['thirdparty'])
cookieLifetime = FieldProperty(ICookieClientIdManager['cookieLifetime'])
Modified: zope.session/trunk/src/zope/session/session.py
===================================================================
--- zope.session/trunk/src/zope/session/session.py 2009-03-15 07:35:53 UTC (rev 98118)
+++ zope.session/trunk/src/zope/session/session.py 2009-03-15 11:39:12 UTC (rev 98119)
@@ -31,7 +31,6 @@
import zope.interface
from zope.component.interfaces import ComponentLookupError
from zope.publisher.interfaces import IRequest
-from zope.annotation.interfaces import IAttributeAnnotatable
from zope.session.interfaces import \
IClientIdManager, IClientId, ISession, ISessionDataContainer, \
@@ -74,7 +73,7 @@
IterableUserDict):
"""A SessionDataContainer that stores data in the ZODB"""
- zope.interface.implements(ISessionDataContainer, IAttributeAnnotatable)
+ zope.interface.implements(ISessionDataContainer)
_v_last_sweep = 0 # Epoch time sweep last run
More information about the Checkins
mailing list