[Checkins] SVN: zope.security/trunk/ Drop support for Python 2.4 and 2.5.

Tres Seaver cvs-admin at zope.org
Thu May 17 21:22:23 UTC 2012


Log message for revision 125980:
  Drop support for Python 2.4 and 2.5.
  
  Replace deprecated 'zope.component.adapts' usage with equivalent
  'zope.component.adapter' decorator.
  
  Replace deprecated 'zope.interface.classProvides' usage with equivalent
  'zope.interface.provider' decorator.
  
  Replace deprecated 'zope.interface.implements' usage with equivalent
  'zope.interface.implementer' decorator.
  
  

Changed:
  U   zope.security/trunk/CHANGES.txt
  U   zope.security/trunk/setup.py
  U   zope.security/trunk/src/zope/security/README.txt
  U   zope.security/trunk/src/zope/security/_definitions.py
  U   zope.security/trunk/src/zope/security/checker.py
  U   zope.security/trunk/src/zope/security/examples/sandbox.py
  U   zope.security/trunk/src/zope/security/examples/sandbox_security.py
  U   zope.security/trunk/src/zope/security/interfaces.py
  U   zope.security/trunk/src/zope/security/permission.py
  U   zope.security/trunk/src/zope/security/simplepolicies.py
  U   zope.security/trunk/src/zope/security/testing.py
  U   zope.security/trunk/src/zope/security/tests/adapter.py
  U   zope.security/trunk/src/zope/security/tests/components.py
  U   zope.security/trunk/src/zope/security/tests/test_checker.py
  U   zope.security/trunk/src/zope/security/tests/test_directives.py
  U   zope.security/trunk/src/zope/security/tests/test_protectclass.py
  U   zope.security/trunk/src/zope/security/tests/test_standard_checkers.py
  U   zope.security/trunk/src/zope/security/zcml.py

-=-
Modified: zope.security/trunk/CHANGES.txt
===================================================================
--- zope.security/trunk/CHANGES.txt	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/CHANGES.txt	2012-05-17 21:22:20 UTC (rev 125980)
@@ -2,12 +2,21 @@
 CHANGES
 =======
 
-3.8.4 (unreleased)
+4.0.0 (unreleased)
 ------------------
 
-- Nothing changed yet.
+- Replaced deprecated ``zope.component.adapts`` usage with equivalent
+  ``zope.component.adapter`` decorator.
 
+- Replaced deprecated ``zope.interface.classProvides`` usage with equivalent
+  ``zope.interface.provider`` decorator.
 
+- Replaced deprecated ``zope.interface.implements`` usage with equivalent
+  ``zope.interface.implementer`` decorator.
+
+- Dropped support for Python 2.4 and 2.5.
+
+
 3.8.3 (2011-09-24)
 ------------------
 

Modified: zope.security/trunk/setup.py
===================================================================
--- zope.security/trunk/setup.py	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/setup.py	2012-05-17 21:22:20 UTC (rev 125980)
@@ -25,7 +25,7 @@
     return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
 
 setup(name='zope.security',
-      version='3.8.4dev',
+      version='4.0.0dev',
       author='Zope Foundation and Contributors',
       author_email='zope-dev at zope.org',
       description='Zope Security Framework',

Modified: zope.security/trunk/src/zope/security/README.txt
===================================================================
--- zope.security/trunk/src/zope/security/README.txt	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/src/zope/security/README.txt	2012-05-17 21:22:20 UTC (rev 125980)
@@ -225,10 +225,9 @@
 authentication token against the given permission in the home of the object
 being accessed::
 
+  @implementer(ISecurityPolicy)
   class SimulationSecurityPolicy:
 
-      implements(ISecurityPolicy)
-
       createInteraction = staticmethod(simpleinteraction.createInteraction)
 
       def checkPermission(self, permission, object, interaction):

Modified: zope.security/trunk/src/zope/security/_definitions.py
===================================================================
--- zope.security/trunk/src/zope/security/_definitions.py	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/src/zope/security/_definitions.py	2012-05-17 21:22:20 UTC (rev 125980)
@@ -19,8 +19,8 @@
 
 thread_local = threading.local()
 
+ at zope.interface.provider(interfaces.IPrincipal)
 class system_user(object):
-    zope.interface.classProvides(interfaces.IPrincipal)
     id = u'zope.security.management.system_user'
     title = u'System'
     description = u''

Modified: zope.security/trunk/src/zope/security/checker.py
===================================================================
--- zope.security/trunk/src/zope/security/checker.py	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/src/zope/security/checker.py	2012-05-17 21:22:20 UTC (rev 125980)
@@ -34,7 +34,7 @@
 import zope.interface.interfaces
 import zope.interface.declarations
 from zope.i18nmessageid import Message
-from zope.interface import directlyProvides, Interface, implements
+from zope.interface import directlyProvides, Interface, implementer
 from zope.interface.interfaces import IInterface, IDeclaration
 
 from zope.security.interfaces import IChecker, INameBasedChecker
@@ -140,8 +140,8 @@
     # indicates a programming or configuration error
     return True
 
+ at implementer(INameBasedChecker)
 class Checker(object):
-    implements(INameBasedChecker)
 
     def __init__(self, get_permissions, set_permissions=None):
         """Create a checker
@@ -432,6 +432,7 @@
 
 _getChecker = _checkers.get
 
+ at implementer(IChecker)
 class CombinedChecker(Checker):
     """A checker that combines two other checkers in a logical-or fashion.
 
@@ -448,7 +449,6 @@
     ForbiddenAttribute ForbiddenAttribute ForbiddenAttribute
     ------------------ ------------------ -----------------------------------
     """
-    implements(IChecker)
 
     def __init__(self, checker1, checker2):
         """Create a combined checker."""

Modified: zope.security/trunk/src/zope/security/examples/sandbox.py
===================================================================
--- zope.security/trunk/src/zope/security/examples/sandbox.py	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/src/zope/security/examples/sandbox.py	2012-05-17 21:22:20 UTC (rev 125980)
@@ -15,7 +15,7 @@
 """
 import time, random
 
-from zope.interface import Interface, implements
+from zope.interface import Interface, implementer
 
 class IAgent(Interface):
     """A player/agent in the world.
@@ -81,8 +81,8 @@
     __repr__ = __str__
 
 
+ at implementer(IAgent)
 class Agent(Identity):
-    implements(IAgent)
 
     def __init__(self, id, home, auth_token, action):
         """Initialize agent."""
@@ -108,11 +108,11 @@
         return self.auth_token
 
 
+ at implementer(ISandbox)
 class Sandbox(Identity):
     """
     see ISandbox doc
     """
-    implements(ISandbox)
 
     def __init__(self, id, service_factories):
         self.id = id
@@ -162,8 +162,8 @@
                 agent, destination)
                                )
 
+ at implementer(IService)
 class Service(object):
-    implements(IService)
     def getId(self):
         return self.__class__.__name__
     def setHome(self, home):

Modified: zope.security/trunk/src/zope/security/examples/sandbox_security.py
===================================================================
--- zope.security/trunk/src/zope/security/examples/sandbox_security.py	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/src/zope/security/examples/sandbox_security.py	2012-05-17 21:22:20 UTC (rev 125980)
@@ -29,7 +29,7 @@
 import sandbox
 from zope.security.interfaces import IParticipation
 from zope.security import checker, management, simplepolicies
-from zope.interface import implements
+from zope.interface import implementer
 
 
 # Define all permissions that will be available 
@@ -101,13 +101,13 @@
         return True
 
 
+ at implementer(IParticipation)
 class AgentParticipation(object):
     """Agent Participation during the Simulation.
 
     A very simple participation that is specific to the simulations.
     """
 
-    implements(IParticipation)
 
     def __init__(self, agent):
         self.principal = agent

Modified: zope.security/trunk/src/zope/security/interfaces.py
===================================================================
--- zope.security/trunk/src/zope/security/interfaces.py	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/src/zope/security/interfaces.py	2012-05-17 21:22:20 UTC (rev 125980)
@@ -14,7 +14,7 @@
 """Interfaces for security machinery.
 """
 
-from zope.interface import Interface, Attribute, implements
+from zope.interface import Interface, Attribute, implementer
 from zope.interface.common.interfaces import IException, IAttributeError
 from zope.schema import Text, TextLine
 from zope.security.i18n import ZopeMessageFactory as _
@@ -22,27 +22,27 @@
 class IUnauthorized(IException):
     pass
 
+ at implementer(IUnauthorized)
 class Unauthorized(Exception):
     """Some user wasn't allowed to access a resource"""
 
-    implements(IUnauthorized)
 
 
 class IForbidden(IException):
     pass
 
+ at implementer(IForbidden)
 class Forbidden(Exception):
     """A resource cannot be accessed under any circumstances
     """
-    implements(IForbidden)
 
 class IForbiddenAttribute(IForbidden, IAttributeError):
     pass
 
+ at implementer(IForbiddenAttribute)
 class ForbiddenAttribute(Forbidden, AttributeError):
     """An attribute is unavailable because it is forbidden (private)
     """
-    implements(IForbiddenAttribute)
 
 
 class ISecurityManagement(Interface):

Modified: zope.security/trunk/src/zope/security/permission.py
===================================================================
--- zope.security/trunk/src/zope/security/permission.py	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/src/zope/security/permission.py	2012-05-17 21:22:20 UTC (rev 125980)
@@ -15,15 +15,15 @@
 """
 __docformat__ = "reStructuredText"
 
-from zope.interface import implements, directlyProvides
+from zope.interface import implementer, directlyProvides
 from zope.component import queryUtility, getUtilitiesFor
 from zope.schema.interfaces import IVocabularyFactory
 from zope.schema.vocabulary import SimpleVocabulary, SimpleTerm
 from zope.security.checker import CheckerPublic
 from zope.security.interfaces import IPermission
 
+ at implementer(IPermission)
 class Permission(object):
-    implements(IPermission)
 
     def __init__(self, id, title="", description=""):
         self.id = id

Modified: zope.security/trunk/src/zope/security/simplepolicies.py
===================================================================
--- zope.security/trunk/src/zope/security/simplepolicies.py	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/src/zope/security/simplepolicies.py	2012-05-17 21:22:20 UTC (rev 125980)
@@ -18,9 +18,9 @@
 from zope.security.interfaces import IInteraction, ISecurityPolicy
 from zope.security._definitions import system_user
 
+ at zope.interface.implementer(IInteraction)
+ at zope.interface.provider(ISecurityPolicy)
 class ParanoidSecurityPolicy(object):
-    zope.interface.implements(IInteraction)
-    zope.interface.classProvides(ISecurityPolicy)
 
     def __init__(self, *participations):
         self.participations = []
@@ -51,9 +51,9 @@
 
         return not users
 
+ at zope.interface.provider(ISecurityPolicy)
 class PermissiveSecurityPolicy(ParanoidSecurityPolicy):
     """Allow all access."""
-    zope.interface.classProvides(ISecurityPolicy)
 
     def checkPermission(self, permission, object):
         return True

Modified: zope.security/trunk/src/zope/security/testing.py
===================================================================
--- zope.security/trunk/src/zope/security/testing.py	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/src/zope/security/testing.py	2012-05-17 21:22:20 UTC (rev 125980)
@@ -20,10 +20,9 @@
 from zope.security import interfaces
 from zope.security.permission import Permission
 
+ at interface.implementer(interfaces.IPrincipal)
 class Principal:
 
-    interface.implements(interfaces.IPrincipal)
-
     def __init__(self, id, title=None, description='', groups=None):
         self.id = id
         self.title = title or id
@@ -32,10 +31,9 @@
             self.groups = groups
             interface.directlyProvides(self, interfaces.IGroupAwarePrincipal)
 
+ at interface.implementer(interfaces.IParticipation)
 class Participation:
 
-    interface.implements(interfaces.IParticipation)
-
     def __init__(self, principal):
         self.principal = principal
         self.interaction = None

Modified: zope.security/trunk/src/zope/security/tests/adapter.py
===================================================================
--- zope.security/trunk/src/zope/security/tests/adapter.py	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/src/zope/security/tests/adapter.py	2012-05-17 21:22:20 UTC (rev 125980)
@@ -36,23 +36,27 @@
     def __init__(self, *args):
         self.context = args
 
+ at zope.interface.implementer(I1)
 class A1(Adapter):
-    zope.interface.implements(I1)
+    pass
 
+ at zope.interface.implementer(I2)
 class A2(Adapter):
-    zope.interface.implements(I2)
+    pass
 
+ at zope.component.adapter(components.IContent, I1, I2)
+ at zope.interface.implementer(I3)
 class A3(Adapter):
-    zope.component.adapts(components.IContent, I1, I2)
-    zope.interface.implements(I3)
+    pass
 
 class A4:
     pass
 
 a4 = A4()
 
+ at zope.interface.implementer(I1, I2)
 class A5:
-    zope.interface.implements(I1, I2)
+    pass
 
 a5 = A5()
 

Modified: zope.security/trunk/src/zope/security/tests/components.py
===================================================================
--- zope.security/trunk/src/zope/security/tests/components.py	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/src/zope/security/tests/components.py	2012-05-17 21:22:20 UTC (rev 125980)
@@ -13,8 +13,8 @@
 ##############################################################################
 """Components for testing
 """
-from zope.interface import Interface, Attribute, implements
-from zope.component import adapts
+from zope.interface import Interface, Attribute, implementer
+from zope.component import adapter
 
 class IAppb(Interface):
     a = Attribute('test attribute')
@@ -25,12 +25,13 @@
 
 class IContent(Interface): pass
 
+ at implementer(IContent)
 class Content(object):
-    implements(IContent)
+    pass
 
+ at adapter(IContent)
+ at implementer(IApp)
 class Comp(object):
-    adapts(IContent)
-    implements(IApp)
 
     def __init__(self, *args):
         # Ignore arguments passed to constructor

Modified: zope.security/trunk/src/zope/security/tests/test_checker.py
===================================================================
--- zope.security/trunk/src/zope/security/tests/test_checker.py	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/src/zope/security/tests/test_checker.py	2012-05-17 21:22:20 UTC (rev 125980)
@@ -14,7 +14,7 @@
 """Security Checker tests
 """
 from unittest import TestCase, TestSuite, main, makeSuite
-from zope.interface import implements
+from zope.interface import implementer
 from zope.interface.verify import verifyObject
 from zope.testing.cleanup import CleanUp
 from zope.proxy import getProxiedObject
@@ -29,15 +29,15 @@
 from zope.security.checker import BasicTypes, _checkers, NoProxy, _clear
 import types, pickle
 
+ at implementer(ISecurityPolicy)
 class SecurityPolicy(object):
-    implements(ISecurityPolicy)
 
     def checkPermission(self, permission, object):
         'See ISecurityPolicy'
         return permission == 'test_allowed'
 
+ at implementer(ISecurityPolicy)
 class RecordedSecurityPolicy(object):
-    implements(ISecurityPolicy)
 
     def __init__(self):
         self._checked = []

Modified: zope.security/trunk/src/zope/security/tests/test_directives.py
===================================================================
--- zope.security/trunk/src/zope/security/tests/test_directives.py	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/src/zope/security/tests/test_directives.py	2012-05-17 21:22:20 UTC (rev 125980)
@@ -20,7 +20,7 @@
 from doctest import DocTestSuite
 
 import zope.component
-from zope.interface import implements
+from zope.interface import implementer
 from zope.component.interface import queryInterface
 
 try:
@@ -131,8 +131,8 @@
                 return "m1"
             def m2(self):
                 return "m2"
+        @implementer(module.I)
         class C(B):
-            implements(module.I)
             def m3(self):
                 return "m3"
             def m4(self):

Modified: zope.security/trunk/src/zope/security/tests/test_protectclass.py
===================================================================
--- zope.security/trunk/src/zope/security/tests/test_protectclass.py	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/src/zope/security/tests/test_protectclass.py	2012-05-17 21:22:20 UTC (rev 125980)
@@ -14,7 +14,7 @@
 """Test handler for 'protectClass' directive
 """
 import unittest
-from zope.interface import implements
+from zope.interface import implementer
 from zope.security.checker import selectChecker
 from zope.security.permission import Permission
 from zope import component
@@ -44,8 +44,8 @@
             def m2(self):
                 return "m2"
 
+        @implementer(I)
         class C(B):
-            implements(I)
             def m3(self):
                 return "m3"
             def m4(self):

Modified: zope.security/trunk/src/zope/security/tests/test_standard_checkers.py
===================================================================
--- zope.security/trunk/src/zope/security/tests/test_standard_checkers.py	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/src/zope/security/tests/test_standard_checkers.py	2012-05-17 21:22:20 UTC (rev 125980)
@@ -471,9 +471,10 @@
     ...     pass
     >>> class II(zope.interface.Interface):
     ...     pass
-    >>> class N(object):
-    ...     zope.interface.implements(I)
-    ...     zope.interface.classProvides(IN)
+    >>> @zope.interface.implementer(I)
+    ... @zope.interface.provider(IN)
+    ... class N(object):
+    ...     pass
     >>> n = N()
     >>> zope.interface.directlyProvides(n, II)
     >>> from zope.security.checker import ProxyFactory

Modified: zope.security/trunk/src/zope/security/zcml.py
===================================================================
--- zope.security/trunk/src/zope/security/zcml.py	2012-05-17 21:20:27 UTC (rev 125979)
+++ zope.security/trunk/src/zope/security/zcml.py	2012-05-17 21:22:20 UTC (rev 125980)
@@ -16,12 +16,13 @@
 __docformat__ = 'restructuredtext'
 
 import zope.schema
-from zope.interface import Interface, implements
+from zope.interface import Interface, implementer
 from zope.schema.interfaces import IFromUnicode
 from zope.security.permission import checkPermission
 from zope.security.management import setSecurityPolicy
 from zope.configuration.fields import MessageID, GlobalObject
 
+ at implementer(IFromUnicode)
 class Permission(zope.schema.Id):
     r"""This field describes a permission.
 
@@ -55,7 +56,6 @@
     zope.Public is always valid
     >>> field._validate('zope.Public')
     """
-    implements(IFromUnicode)
 
     def fromUnicode(self, u):
         u = super(Permission, self).fromUnicode(u)



More information about the checkins mailing list