[Checkins] SVN: z3c.authenticator/trunk/ Use ``zope.container`` instead of ``zope.app.container``.
Dan Korostelev
nadako at gmail.com
Sat Mar 14 15:20:39 EDT 2009
Log message for revision 98110:
Use ``zope.container`` instead of ``zope.app.container``.
Use ``zope.site`` instead of ``zope.app.component``.
Use ``zope.authentication`` and ``zope.principalregistry`` instead of ``zope.app.security``.
Use ``zope.password`` instead of maintaining a copy of password managers.
Changed:
U z3c.authenticator/trunk/CHANGES.txt
U z3c.authenticator/trunk/setup.py
U z3c.authenticator/trunk/src/z3c/authenticator/README.txt
U z3c.authenticator/trunk/src/z3c/authenticator/authentication.py
U z3c.authenticator/trunk/src/z3c/authenticator/browser/login.py
U z3c.authenticator/trunk/src/z3c/authenticator/configure.zcml
U z3c.authenticator/trunk/src/z3c/authenticator/credential.py
U z3c.authenticator/trunk/src/z3c/authenticator/group.py
U z3c.authenticator/trunk/src/z3c/authenticator/group.txt
U z3c.authenticator/trunk/src/z3c/authenticator/interfaces.py
D z3c.authenticator/trunk/src/z3c/authenticator/password.py
D z3c.authenticator/trunk/src/z3c/authenticator/password.zcml
U z3c.authenticator/trunk/src/z3c/authenticator/principal.py
U z3c.authenticator/trunk/src/z3c/authenticator/principalregistry.py
U z3c.authenticator/trunk/src/z3c/authenticator/testing.py
U z3c.authenticator/trunk/src/z3c/authenticator/tests.py
U z3c.authenticator/trunk/src/z3c/authenticator/user.py
U z3c.authenticator/trunk/src/z3c/authenticator/widget.py
U z3c.authenticator/trunk/src/z3c/authenticator/widget.zcml
-=-
Modified: z3c.authenticator/trunk/CHANGES.txt
===================================================================
--- z3c.authenticator/trunk/CHANGES.txt 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/CHANGES.txt 2009-03-14 19:20:39 UTC (rev 98110)
@@ -5,9 +5,16 @@
Version 0.6.1 (unreleased)
--------------------------
--
+- Update dependencies:
+ * Use ``zope.container`` instead of ``zope.app.container``.
+ * Use ``zope.site`` instead of ``zope.app.component``.
+ * Use ``zope.authentication`` and ``zope.principalregistry`` instead
+ of ``zope.app.security``.
+ * Use ``zope.password`` instead of maintaining a copy of password
+ managers.
+
Version 0.6.0 (2009-01-04)
--------------------------
Modified: z3c.authenticator/trunk/setup.py
===================================================================
--- z3c.authenticator/trunk/setup.py 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/setup.py 2009-03-14 19:20:39 UTC (rev 98110)
@@ -59,8 +59,6 @@
test = [
'z3c.testing',
'zope.app.testing',
- 'zope.publisher',
- 'zope.session',
'zope.testing',
],
),
@@ -72,11 +70,10 @@
'z3c.formui',
'z3c.i18n',
'z3c.template',
- 'zope.app.component',
- 'zope.app.container',
'zope.app.generations',
- 'zope.app.security',
+ 'zope.authentication',
'zope.component',
+ 'zope.container',
'zope.deprecation',
'zope.dublincore',
'zope.event',
@@ -84,10 +81,13 @@
'zope.interface',
'zope.lifecycleevent',
'zope.location',
+ 'zope.password',
+ 'zope.principalregistry',
'zope.publisher',
'zope.schema',
'zope.security',
'zope.session',
+ 'zope.site',
'zope.traversing',
],
zip_safe = False,
Modified: z3c.authenticator/trunk/src/z3c/authenticator/README.txt
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/README.txt 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/README.txt 2009-03-14 19:20:39 UTC (rev 98110)
@@ -7,7 +7,7 @@
its work done.
For a simple authentication utility to be used, it should be registered as a
-utility providing the `zope.app.security.interfaces.IAuthentication` interface.
+utility providing the `zope.authentication.interfaces.IAuthentication` interface.
Our target is to support a handy IAuthentication utility which offers a simple
API for custom IUser implementations and does not depend on the default
Modified: z3c.authenticator/trunk/src/z3c/authenticator/authentication.py
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/authentication.py 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/authentication.py 2009-03-14 19:20:39 UTC (rev 98110)
@@ -23,11 +23,11 @@
from zope.schema.interfaces import ISourceQueriables
from zope.location.interfaces import ILocation
-from zope.app.component import queryNextUtility
-from zope.app.container import btree
-from zope.app.security.interfaces import IAuthentication
-from zope.app.security.interfaces import PrincipalLookupError
-from zope.app.security.interfaces import IUnauthenticatedPrincipal
+from zope.component import queryNextUtility
+from zope.container import btree
+from zope.authentication.interfaces import IAuthentication
+from zope.authentication.interfaces import PrincipalLookupError
+from zope.authentication.interfaces import IUnauthenticatedPrincipal
from z3c.authenticator import interfaces
from z3c.authenticator import event
@@ -129,7 +129,7 @@
we have in IPrincipalCreated which whould allow to apply groups. And
there is no way to apply local groups to global unauthenticated
principals it they get returned by the global IAuthentication or the
- fallback implementation. See zope.app.security.principalregistry
+ fallback implementation. See zope.principalregistry
Usage:
Modified: z3c.authenticator/trunk/src/z3c/authenticator/browser/login.py
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/browser/login.py 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/browser/login.py 2009-03-14 19:20:39 UTC (rev 98110)
@@ -12,10 +12,10 @@
import zope.component
from zope.publisher.browser import BrowserPage
from zope.traversing.browser import absoluteURL
-from zope.app.component import hooks
-from zope.app.security.interfaces import IUnauthenticatedPrincipal
-from zope.app.security.interfaces import IAuthentication
-from zope.app.security.interfaces import ILogout
+from zope.site import hooks
+from zope.authentication.interfaces import IUnauthenticatedPrincipal
+from zope.authentication.interfaces import IAuthentication
+from zope.authentication.interfaces import ILogout
from z3c.form.interfaces import HIDDEN_MODE
from z3c.form.interfaces import IWidgets
Modified: z3c.authenticator/trunk/src/z3c/authenticator/configure.zcml
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/configure.zcml 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/configure.zcml 2009-03-14 19:20:39 UTC (rev 98110)
@@ -39,7 +39,6 @@
<include file="credential.zcml" />
<include file="principalregistry.zcml" />
<include file="group.zcml" />
- <include file="password.zcml" />
<include file="principal.zcml" />
<include file="user.zcml" />
<include file="widget.zcml" />
Modified: z3c.authenticator/trunk/src/z3c/authenticator/credential.py
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/credential.py 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/credential.py 2009-03-14 19:20:39 UTC (rev 98110)
@@ -26,8 +26,8 @@
from zope.session.interfaces import ISession
from zope.traversing.browser.absoluteurl import absoluteURL
-from zope.app.component import hooks
-from zope.app.container import contained
+from zope.site import hooks
+from zope.container import contained
from z3c.authenticator import interfaces
Modified: z3c.authenticator/trunk/src/z3c/authenticator/group.py
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/group.py 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/group.py 2009-03-14 19:20:39 UTC (rev 98110)
@@ -29,13 +29,13 @@
from zope.security.interfaces import IGroup
from zope.security.interfaces import IGroupAwarePrincipal
-from zope.app.container import btree
-from zope.app.container import contained
-from zope.app.security.interfaces import IAuthentication
-from zope.app.security.interfaces import IAuthenticatedGroup
-from zope.app.security.interfaces import IEveryoneGroup
-from zope.app.security.interfaces import IUnauthenticatedGroup
-from zope.app.security.interfaces import IUnauthenticatedPrincipal
+from zope.container import btree
+from zope.container import contained
+from zope.authentication.interfaces import IAuthentication
+from zope.authentication.interfaces import IAuthenticatedGroup
+from zope.authentication.interfaces import IEveryoneGroup
+from zope.authentication.interfaces import IUnauthenticatedGroup
+from zope.authentication.interfaces import IUnauthenticatedPrincipal
from z3c.authenticator import interfaces
from z3c.authenticator import event
Modified: z3c.authenticator/trunk/src/z3c/authenticator/group.txt
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/group.txt 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/group.txt 2009-03-14 19:20:39 UTC (rev 98110)
@@ -73,7 +73,7 @@
Give them a location and register them as a IAuthentication utility :
>>> import zope.component
- >>> from zope.app.security.interfaces import IAuthentication
+ >>> from zope.authentication.interfaces import IAuthentication
>>> rootFolder['authenticator'] = authenticator
>>> zope.component.provideUtility(authenticator, IAuthentication)
@@ -442,15 +442,15 @@
Now, if we define the Everybody group:
- >>> import zope.app.security.interfaces
+ >>> import zope.authentication.interfaces
>>> class EverybodyGroup(Group):
... zope.interface.implements(
- ... zope.app.security.interfaces.IEveryoneGroup)
+ ... zope.authentication.interfaces.IEveryoneGroup)
>>> all = EverybodyGroup('groups.all')
>>> groups['groups.all'] = all
>>> zope.component.provideUtility(all,
- ... zope.app.security.interfaces.IEveryoneGroup)
+ ... zope.authentication.interfaces.IEveryoneGroup)
Then the group will be added to the principal:
@@ -462,12 +462,12 @@
>>> class AuthenticatedGroup(Group):
... zope.interface.implements(
- ... zope.app.security.interfaces.IAuthenticatedGroup)
+ ... zope.authentication.interfaces.IAuthenticatedGroup)
>>> authenticated = AuthenticatedGroup('groups.authenticated')
>>> groups['groups.authenticated'] = authenticated
>>> zope.component.provideUtility(authenticated,
- ... zope.app.security.interfaces.IAuthenticatedGroup)
+ ... zope.authentication.interfaces.IAuthenticatedGroup)
Then the group will be added to the principal:
Modified: z3c.authenticator/trunk/src/z3c/authenticator/interfaces.py
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/interfaces.py 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/interfaces.py 2009-03-14 19:20:39 UTC (rev 98110)
@@ -23,27 +23,15 @@
from zope.security.interfaces import IGroupClosureAwarePrincipal
from zope.security.interfaces import IMemberAwareGroup
-from zope.app.container.interfaces import IContainer
-from zope.app.container.constraints import contains
-from zope.app.container.constraints import containers
-from zope.app.security.interfaces import ILogout
-from zope.app.security.vocabulary import PrincipalSource
+from zope.container.interfaces import IContainer
+from zope.container.constraints import contains
+from zope.container.constraints import containers
+from zope.authentication.interfaces import ILogout
+from zope.authentication.principal import PrincipalSource
from z3c.i18n import MessageFactory as _
-# TODO: this should really, really go to another place then
-# zope.app.authentication
-class IPasswordManager(zope.interface.Interface):
- """Password manager."""
-
- def encodePassword(password):
- """Return encoded data for the password."""
-
- def checkPassword(storedPassword, password):
- """Return whether the password coincide with the storedPassword."""
-
-
class IPlugin(zope.interface.Interface):
"""A plugin for IAuthenticator component."""
Deleted: z3c.authenticator/trunk/src/z3c/authenticator/password.py
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/password.py 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/password.py 2009-03-14 19:20:39 UTC (rev 98110)
@@ -1,159 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2004 Zope Corporation and Contributors.
-# All Rights Reserved.
-#
-# This software is subject to the provisions of the Zope Public License,
-# Version 2.0 (ZPL). A copy of the ZPL should accompany this distribution.
-# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
-# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
-# FOR A PARTICULAR PURPOSE.
-#
-##############################################################################
-"""Password managers
-
-$Id: password.py 74706 2007-04-24 16:15:34Z hdima $
-"""
-__docformat__ = 'restructuredtext'
-
-import md5
-import sha
-from random import randint
-from codecs import getencoder
-
-from zope.interface import implements, classProvides
-from zope.schema.interfaces import IVocabularyFactory
-from zope.app.component.vocabulary import UtilityVocabulary
-
-from z3c.authenticator.interfaces import IPasswordManager
-
-_encoder = getencoder("utf-8")
-
-
-class PlainTextPasswordManager(object):
- """Plain text password manager.
-
- >>> from zope.interface.verify import verifyObject
-
- >>> manager = PlainTextPasswordManager()
- >>> verifyObject(IPasswordManager, manager)
- True
-
- >>> password = u"right \N{CYRILLIC CAPITAL LETTER A}"
- >>> encoded = manager.encodePassword(password)
- >>> encoded
- u'right \u0410'
- >>> manager.checkPassword(encoded, password)
- True
- >>> manager.checkPassword(encoded, password + u"wrong")
- False
- """
-
- implements(IPasswordManager)
-
- def encodePassword(self, password):
- return password
-
- def checkPassword(self, storedPassword, password):
- return storedPassword == self.encodePassword(password)
-
-
-class MD5PasswordManager(PlainTextPasswordManager):
- """MD5 password manager.
-
- >>> from zope.interface.verify import verifyObject
-
- >>> manager = MD5PasswordManager()
- >>> verifyObject(IPasswordManager, manager)
- True
-
- >>> password = u"right \N{CYRILLIC CAPITAL LETTER A}"
- >>> encoded = manager.encodePassword(password, salt="")
- >>> encoded
- '86dddccec45db4599f1ac00018e54139'
- >>> manager.checkPassword(encoded, password)
- True
- >>> manager.checkPassword(encoded, password + u"wrong")
- False
-
- >>> encoded = manager.encodePassword(password)
- >>> encoded[-32:]
- '86dddccec45db4599f1ac00018e54139'
- >>> manager.checkPassword(encoded, password)
- True
- >>> manager.checkPassword(encoded, password + u"wrong")
- False
-
- >>> manager.encodePassword(password) != manager.encodePassword(password)
- True
- """
-
- implements(IPasswordManager)
-
- def encodePassword(self, password, salt=None):
- if salt is None:
- salt = "%08x" % randint(0, 0xffffffff)
- return salt + md5.new(_encoder(password)[0]).hexdigest()
-
- def checkPassword(self, storedPassword, password):
- salt = storedPassword[:-32]
- return storedPassword == self.encodePassword(password, salt)
-
-
-class SHA1PasswordManager(PlainTextPasswordManager):
- """SHA1 password manager.
-
- >>> from zope.interface.verify import verifyObject
-
- >>> manager = SHA1PasswordManager()
- >>> verifyObject(IPasswordManager, manager)
- True
-
- >>> password = u"right \N{CYRILLIC CAPITAL LETTER A}"
- >>> encoded = manager.encodePassword(password, salt="")
- >>> encoded
- '04b4eec7154c5f3a2ec6d2956fb80b80dc737402'
- >>> manager.checkPassword(encoded, password)
- True
- >>> manager.checkPassword(encoded, password + u"wrong")
- False
-
- >>> encoded = manager.encodePassword(password)
- >>> encoded[-40:]
- '04b4eec7154c5f3a2ec6d2956fb80b80dc737402'
- >>> manager.checkPassword(encoded, password)
- True
- >>> manager.checkPassword(encoded, password + u"wrong")
- False
-
- >>> manager.encodePassword(password) != manager.encodePassword(password)
- True
- """
-
- implements(IPasswordManager)
-
- def encodePassword(self, password, salt=None):
- if salt is None:
- salt = "%08x" % randint(0, 0xffffffff)
- return salt + sha.new(_encoder(password)[0]).hexdigest()
-
- def checkPassword(self, storedPassword, password):
- salt = storedPassword[:-40]
- return storedPassword == self.encodePassword(password, salt)
-
-
-# Simple registry used by mkzopeinstance script
-managers = [
- ("Plain Text", PlainTextPasswordManager()), # default
- ("MD5", MD5PasswordManager()),
- ("SHA1", SHA1PasswordManager()),
-]
-
-
-class PasswordManagerNamesVocabulary(UtilityVocabulary):
- """Vocabulary of password managers."""
-
- classProvides(IVocabularyFactory)
- interface = IPasswordManager
- nameOnly = True
Deleted: z3c.authenticator/trunk/src/z3c/authenticator/password.zcml
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/password.zcml 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/password.zcml 2009-03-14 19:20:39 UTC (rev 98110)
@@ -1,41 +0,0 @@
-<configure
- xmlns="http://namespaces.zope.org/zope"
- i18n_domain="z3c">
-
- <utility
- component=".password.PasswordManagerNamesVocabulary"
- name="Password Manager Names"
- provides=".interfaces.IPasswordManager"
- />
-
- <class class=".password.PlainTextPasswordManager">
- <allow interface=".interfaces.IPasswordManager" />
- </class>
-
- <utility
- name="Plain Text"
- provides=".interfaces.IPasswordManager"
- factory=".password.PlainTextPasswordManager"
- />
-
- <class class=".password.MD5PasswordManager">
- <allow interface=".interfaces.IPasswordManager" />
- </class>
-
- <utility
- name="MD5"
- provides=".interfaces.IPasswordManager"
- factory=".password.MD5PasswordManager"
- />
-
- <class class=".password.SHA1PasswordManager">
- <allow interface=".interfaces.IPasswordManager" />
- </class>
-
- <utility
- name="SHA1"
- provides=".interfaces.IPasswordManager"
- factory=".password.SHA1PasswordManager"
- />
-
-</configure>
Modified: z3c.authenticator/trunk/src/z3c/authenticator/principal.py
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/principal.py 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/principal.py 2009-03-14 19:20:39 UTC (rev 98110)
@@ -19,7 +19,7 @@
import zope.interface
import zope.component
from zope.security.interfaces import IPrincipal
-from zope.app.security.interfaces import IAuthentication
+from zope.authentication.interfaces import IAuthentication
from z3c.authenticator import interfaces
Modified: z3c.authenticator/trunk/src/z3c/authenticator/principalregistry.py
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/principalregistry.py 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/principalregistry.py 2009-03-14 19:20:39 UTC (rev 98110)
@@ -20,10 +20,10 @@
import zope.interface
import zope.security.management
import zope.security.interfaces
+from zope.authentication.interfaces import PrincipalLookupError
+from zope.container import contained
+from zope.principalregistry.principalregistry import principalRegistry
from zope.schema.fieldproperty import FieldProperty
-from zope.app.container import contained
-from zope.app.security.interfaces import PrincipalLookupError
-from zope.app.security.principalregistry import principalRegistry
from z3c.authenticator import interfaces
Modified: z3c.authenticator/trunk/src/z3c/authenticator/testing.py
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/testing.py 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/testing.py 2009-03-14 19:20:39 UTC (rev 98110)
@@ -29,8 +29,8 @@
from zope.session.session import RAMSessionDataContainer
from zope.session.http import CookieClientIdManager
-from z3c.authenticator.interfaces import IPasswordManager
-from z3c.authenticator.password import PlainTextPasswordManager
+from zope.password.interfaces import IPasswordManager
+from zope.password.password import PlainTextPasswordManager
###############################################################################
#
Modified: z3c.authenticator/trunk/src/z3c/authenticator/tests.py
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/tests.py 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/tests.py 2009-03-14 19:20:39 UTC (rev 98110)
@@ -158,7 +158,6 @@
setUp=placelesssetup.setUp, tearDown=placelesssetup.tearDown),
doctest.DocFileSuite('vocabulary.txt',
setUp=placelesssetup.setUp, tearDown=placelesssetup.tearDown),
- doctest.DocTestSuite('z3c.authenticator.password'),
unittest.makeSuite(AuthenticatorTest),
unittest.makeSuite(UserContainerTest),
unittest.makeSuite(UserTest),
Modified: z3c.authenticator/trunk/src/z3c/authenticator/user.py
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/user.py 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/user.py 2009-03-14 19:20:39 UTC (rev 98110)
@@ -23,9 +23,10 @@
import persistent
import zope.interface
import zope.component
-from zope.app.container import contained
-from zope.app.container import btree
-from zope.app.container.interfaces import DuplicateIDError
+from zope.container import contained
+from zope.container import btree
+from zope.container.interfaces import DuplicateIDError
+from zope.password.interfaces import IPasswordManager
from z3c.authenticator import interfaces
@@ -62,7 +63,7 @@
passwordManagerName = property(getPasswordManagerName)
def _getPasswordManager(self):
- return zope.component.getUtility(interfaces.IPasswordManager,
+ return zope.component.getUtility(IPasswordManager,
self.passwordManagerName)
def getPassword(self):
Modified: z3c.authenticator/trunk/src/z3c/authenticator/widget.py
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/widget.py 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/widget.py 2009-03-14 19:20:39 UTC (rev 98110)
@@ -22,10 +22,9 @@
import zope.i18n
import zope.schema
import zope.schema.interfaces
-import zope.app.security.interfaces
from zope.traversing import api
-from zope.app.security.interfaces import IAuthentication
-from zope.app.security.interfaces import IPrincipalSource
+from zope.authentication.interfaces import IAuthentication
+from zope.authentication.interfaces import IPrincipalSource
from z3c.formui import form
from z3c.form import field
@@ -361,7 +360,7 @@
"""Select widget implementation."""
zope.interface.implementsOnly(IPrincipalSourceWidget)
zope.component.adapts(zope.interface.Interface,
- zope.app.security.interfaces.IPrincipalSource, zope.interface.Interface)
+ IPrincipalSource, zope.interface.Interface)
klass = u'principal-source-widget checkbox-widget'
value = []
Modified: z3c.authenticator/trunk/src/z3c/authenticator/widget.zcml
===================================================================
--- z3c.authenticator/trunk/src/z3c/authenticator/widget.zcml 2009-03-14 18:27:10 UTC (rev 98109)
+++ z3c.authenticator/trunk/src/z3c/authenticator/widget.zcml 2009-03-14 19:20:39 UTC (rev 98110)
@@ -43,7 +43,7 @@
/>
<adapter
- for="zope.app.security.interfaces.IAuthentication
+ for="zope.authentication.interfaces.IAuthentication
zope.publisher.interfaces.browser.IBrowserRequest"
provides=".widget.ISourceSearchForm"
factory=".widget.PrincipalRegistrySearchForm"
More information about the Checkins
mailing list