[Checkins] SVN: zope.session/trunk/ Move core component from zope.app.session to zope.session

Roger Ineichen roger at projekt01.ch
Tue Sep 25 16:17:43 EDT 2007


Log message for revision 80044:
  Move core component from zope.app.session to zope.session
  
  Note:
  Some of the next commits will be broken because I have a 
  chicken and egg problem.
  
  The zope.session uses zope.app.authentication in it's test
  setup. This requires to change the zope.app.session, zope.session
  and zope.app.authentication all at once which is not possible.
  Because they depend in it's test setup on each other.
  
  I'll do the next steps in the nice old trunk, it's impossible to 
  do it with the egg development process. So I will add eggs later
  after the trunk works

Changed:
  U   zope.session/trunk/CHANGES.txt
  U   zope.session/trunk/buildout.cfg
  U   zope.session/trunk/setup.py
  _U  zope.session/trunk/src/
  D   zope.session/trunk/src/zope/app/
  A   zope.session/trunk/src/zope/session/
  U   zope.session/trunk/src/zope/session/SETUP.cfg
  U   zope.session/trunk/src/zope/session/api.txt
  U   zope.session/trunk/src/zope/session/bootstrap.py
  D   zope.session/trunk/src/zope/session/browser.zcml
  U   zope.session/trunk/src/zope/session/configure.zcml
  U   zope.session/trunk/src/zope/session/ftesting.zcml
  U   zope.session/trunk/src/zope/session/http.py
  D   zope.session/trunk/src/zope/session/i18n.py
  U   zope.session/trunk/src/zope/session/interfaces.py
  U   zope.session/trunk/src/zope/session/session.py
  U   zope.session/trunk/src/zope/session/tests.py
  D   zope.session/trunk/src/zope/session/zope.app.session-configure.zcml
  A   zope.session/trunk/src/zope/session/zope.session-configure.zcml

-=-
Modified: zope.session/trunk/CHANGES.txt
===================================================================
--- zope.session/trunk/CHANGES.txt	2007-09-25 19:52:16 UTC (rev 80043)
+++ zope.session/trunk/CHANGES.txt	2007-09-25 20:17:42 UTC (rev 80044)
@@ -2,7 +2,9 @@
 CHANGES
 =======
 
-Version 3.5.0 (2007/9/24)
+Version 3.5.0 (2007/9/25)
 -------------------------
 
-- Initial documented release
+- Initial release
+
+- Moved parts from zope.app.session to this packages

Modified: zope.session/trunk/buildout.cfg
===================================================================
--- zope.session/trunk/buildout.cfg	2007-09-25 19:52:16 UTC (rev 80043)
+++ zope.session/trunk/buildout.cfg	2007-09-25 20:17:42 UTC (rev 80044)
@@ -5,5 +5,5 @@
 
 [test]
 recipe = zc.recipe.testrunner
-eggs = zope.app.session [test]
+eggs = zope.session [test]
 

Modified: zope.session/trunk/setup.py
===================================================================
--- zope.session/trunk/setup.py	2007-09-25 19:52:16 UTC (rev 80043)
+++ zope.session/trunk/setup.py	2007-09-25 20:17:42 UTC (rev 80044)
@@ -23,8 +23,8 @@
 def read(*rnames):
     return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
 
-setup(name='zope.app.session',
-    version = '3.4.0',
+setup(name='zope.session',
+    version = '3.5.0',
     author='Zope Corporation and Contributors',
     author_email='zope3-dev at zope.org',
     description='Zope session',
@@ -45,10 +45,10 @@
         'Operating System :: OS Independent',
         'Topic :: Internet :: WWW/HTTP',
         'Framework :: Zope3'],
-    url='http://svn.zope.org/zope.app.session',
+    url='http://cheeseshop.python.org/pypi/zope.session',
     packages=find_packages('src'),
     package_dir = {'': 'src'},
-    namespace_packages=['zope', 'zope.app'],
+    namespace_packages=['zope',],
     extras_require = dict(test=['zope.app.testing',
                                 'zope.app.zptpage',
                                 'zope.app.securitypolicy',


Property changes on: zope.session/trunk/src
___________________________________________________________________
Name: svn:ignore
   - zope.app.session.egg-info

   + zope.app.session.egg-info
zope.session.egg-info


Copied: zope.session/trunk/src/zope/session (from rev 80030, zope.session/trunk/src/zope/app/session)

Modified: zope.session/trunk/src/zope/session/SETUP.cfg
===================================================================
--- zope.session/trunk/src/zope/app/session/SETUP.cfg	2007-09-25 17:09:25 UTC (rev 80030)
+++ zope.session/trunk/src/zope/session/SETUP.cfg	2007-09-25 20:17:42 UTC (rev 80044)
@@ -1,3 +1,3 @@
 <data-files zopeskel/etc/package-includes>
-  *-configure.zcml
+  zope.session-*.zcml
 </data-files>

Modified: zope.session/trunk/src/zope/session/api.txt
===================================================================
--- zope.session/trunk/src/zope/app/session/api.txt	2007-09-25 17:09:25 UTC (rev 80030)
+++ zope.session/trunk/src/zope/session/api.txt	2007-09-25 20:17:42 UTC (rev 80044)
@@ -56,7 +56,8 @@
 stored by adding a registration for desired `ISessionDataContainer`
 with the correct name.
 
-    >>> sdc = zapi.getUtility(ISessionDataContainer, pkg_id)
+    >>> import zope.component
+    >>> sdc = zope.component.getUtility(ISessionDataContainer, pkg_id)
     >>> sdc[client_id][pkg_id] is session
     True
     >>> sdc[client_id][pkg_id]['color']
@@ -68,7 +69,8 @@
 for you, which may replaced with a different implementation if desired.
 
     >>> ISession(request)['unknown'] \
-    ...     is zapi.getUtility(ISessionDataContainer)[client_id]['unknown']
+    ...     is zope.component.getUtility(ISessionDataContainer)[client_id]\
+    ...         ['unknown']
     True
 
 The `ISessionDataContainer` contains `ISessionData` objects, and

Modified: zope.session/trunk/src/zope/session/bootstrap.py
===================================================================
--- zope.session/trunk/src/zope/app/session/bootstrap.py	2007-09-25 17:09:25 UTC (rev 80030)
+++ zope.session/trunk/src/zope/session/bootstrap.py	2007-09-25 20:17:42 UTC (rev 80044)
@@ -24,10 +24,9 @@
 
 from zope.app.appsetup.bootstrap import ensureUtility, getInformationFromEvent
 
-from zope.app.session.interfaces import \
-     IClientIdManager, ISessionDataContainer
-from zope.app.session.http import CookieClientIdManager
-from zope.app.session.session import PersistentSessionDataContainer
+from zope.session.interfaces import IClientIdManager, ISessionDataContainer
+from zope.session.http import CookieClientIdManager
+from zope.session.session import PersistentSessionDataContainer
 
 def bootStrapSubscriber(event):
     """Subscriber to the IDataBaseOpenedEvent

Deleted: zope.session/trunk/src/zope/session/browser.zcml
===================================================================
--- zope.session/trunk/src/zope/app/session/browser.zcml	2007-09-25 17:09:25 UTC (rev 80030)
+++ zope.session/trunk/src/zope/session/browser.zcml	2007-09-25 20:17:42 UTC (rev 80044)
@@ -1,44 +0,0 @@
-<configure 
-  xmlns:zope="http://namespaces.zope.org/zope"
-  xmlns="http://namespaces.zope.org/browser"
-  i18n_domain="zope">
-
-  <!-- Cookie Browser Id Manager -->
-
-  <addMenuItem
-    title="Cookie Client Id Manager"
-    description="Uses a cookie to uniquely identify a client, allowing 
-      state to be maintained between requests"
-    class=".http.CookieClientIdManager"
-    permission="zope.ManageServices" />
-
-  <editform
-    schema=".http.ICookieClientIdManager"
-    label="Cookie Client Id Manager Properties"
-    name="edit.html" menu="zmi_views" title="Edit"
-    permission="zope.ManageServices" />
-
-  <!-- PersistentSessionDataContainer -->
-
-  <addMenuItem
-    title="Persistent Session Data Container"
-    description="Stores session data persistently in the ZODB"
-    class=".session.PersistentSessionDataContainer"
-    permission="zope.ManageServices" />
-
-  <!-- RAMSessionDataContainer -->
-
-  <addMenuItem
-    title="RAM Session Data Container"
-    description="Stores session data in RAM"
-    class=".session.RAMSessionDataContainer"
-    permission="zope.ManageServices" />
-
-  <!-- ISessionDataContainer -->
-  <editform
-    schema=".interfaces.ISessionDataContainer"
-    label="Session Data Container Properties"
-    name="edit.html" menu="zmi_views" title="Edit"
-    permission="zope.ManageServices" />
-
-</configure>

Modified: zope.session/trunk/src/zope/session/configure.zcml
===================================================================
--- zope.session/trunk/src/zope/app/session/configure.zcml	2007-09-25 17:09:25 UTC (rev 80030)
+++ zope.session/trunk/src/zope/session/configure.zcml	2007-09-25 20:17:42 UTC (rev 80044)
@@ -1,8 +1,7 @@
 <configure 
     xmlns="http://namespaces.zope.org/zope"
     xmlns:browser="http://namespaces.zope.org/browser"
-    i18n_domain="zope"
-    >
+    i18n_domain="zope">
     
   <adapter
       factory=".session.ClientId"
@@ -11,7 +10,7 @@
 
   <adapter
       factory=".session.Session"
-      provides="zope.app.session.interfaces.ISession"
+      provides=".interfaces.ISession"
       permission="zope.Public"
       />
 
@@ -89,8 +88,6 @@
       handler=".http.notifyVirtualHostChanged"
       />
 
-  <include file="browser.zcml" />
-
   <!-- Registering documentation with API doc -->
   <configure
       xmlns:apidoc="http://namespaces.zope.org/apidoc"

Modified: zope.session/trunk/src/zope/session/ftesting.zcml
===================================================================
--- zope.session/trunk/src/zope/app/session/ftesting.zcml	2007-09-25 17:09:25 UTC (rev 80030)
+++ zope.session/trunk/src/zope/session/ftesting.zcml	2007-09-25 20:17:42 UTC (rev 80044)
@@ -2,7 +2,7 @@
    xmlns="http://namespaces.zope.org/zope"
    xmlns:meta="http://namespaces.zope.org/meta"
    i18n_domain="zope"
-   package="zope.app.session"
+   package="zope.session"
    >
 
   <!-- This file is the equivalent of site.zcml and it is -->
@@ -11,11 +11,13 @@
   <include package="zope.app.securitypolicy" file="meta.zcml" />
 
   <include package="zope.app.zcmlfiles" />
+  
   <include package="zope.app.authentication" />
   <include package="zope.app.zptpage"/>
   <include package="zope.app.securitypolicy" />
-  <include package="zope.app.session" />
 
+  <include package="zope.session" />
+
   <securityPolicy
     component="zope.app.securitypolicy.zopepolicy.ZopeSecurityPolicy" />
 

Modified: zope.session/trunk/src/zope/session/http.py
===================================================================
--- zope.session/trunk/src/zope/app/session/http.py	2007-09-25 17:09:25 UTC (rev 80030)
+++ zope.session/trunk/src/zope/session/http.py	2007-09-25 20:17:42 UTC (rev 80044)
@@ -31,10 +31,10 @@
 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
 
-from zope.app.session.i18n import ZopeMessageFactory as _
-from zope.app.session.interfaces import IClientIdManager
-from zope.schema.fieldproperty import FieldProperty
 from zope.app.http.httpdate import build_http_date
 
 __docformat__ = 'restructuredtext'

Deleted: zope.session/trunk/src/zope/session/i18n.py
===================================================================
--- zope.session/trunk/src/zope/app/session/i18n.py	2007-09-25 17:09:25 UTC (rev 80030)
+++ zope.session/trunk/src/zope/session/i18n.py	2007-09-25 20:17:42 UTC (rev 80044)
@@ -1,22 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2003 Zope Corporation and Contributors.
-# All Rights Reserved.
-#
-# This software is subject to the provisions of the Zope Public License,
-# Version 2.1 (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.
-#
-##############################################################################
-"""Customization of zope.i18n for the Zope application server
-
-$Id$
-"""
-__docformat__ = 'restructuredtext'
-
-# import this as _ to create i18n messages in the zope domain
-from zope.i18nmessageid import MessageFactory
-ZopeMessageFactory = MessageFactory('zope')

Modified: zope.session/trunk/src/zope/session/interfaces.py
===================================================================
--- zope.session/trunk/src/zope/app/session/interfaces.py	2007-09-25 17:09:25 UTC (rev 80030)
+++ zope.session/trunk/src/zope/session/interfaces.py	2007-09-25 20:17:42 UTC (rev 80044)
@@ -18,7 +18,7 @@
 from zope.interface import Interface
 from zope.interface.common.mapping import IMapping, IReadMapping, IWriteMapping
 from zope import schema
-from zope.app.session.i18n import ZopeMessageFactory as _
+from zope.i18nmessageid import ZopeMessageFactory as _
 
 __docformat__ = 'restructuredtext'
 

Modified: zope.session/trunk/src/zope/session/session.py
===================================================================
--- zope.session/trunk/src/zope/app/session/session.py	2007-09-25 17:09:25 UTC (rev 80030)
+++ zope.session/trunk/src/zope/session/session.py	2007-09-25 20:17:42 UTC (rev 80044)
@@ -24,16 +24,16 @@
 import ZODB.MappingStorage
 import zope.location
 import zope.minmax
-from persistent import Persistent
+import persistent
 from BTrees.OOBTree import OOBTree
 
-from zope.interface import implements
-from zope.component import getUtility, adapts
+import zope.component
+import zope.interface
 from zope.component.interfaces import ComponentLookupError
 from zope.publisher.interfaces import IRequest
 from zope.annotation.interfaces import IAttributeAnnotatable
 
-from interfaces import \
+from zope.session.interfaces import \
         IClientIdManager, IClientId, ISession, ISessionDataContainer, \
         ISessionPkgData, ISessionData
 
@@ -47,7 +47,7 @@
 
 
 class ClientId(str):
-    """See zope.app.interfaces.utilities.session.IClientId
+    """See zope.session.interfaces.IClientId
 
         >>> import tests
         >>> request = tests.setUp()
@@ -60,20 +60,21 @@
         >>> tests.tearDown()
 
     """
-    implements(IClientId)
-    adapts(IRequest)
+    zope.interface.implements(IClientId)
+    zope.component.adapts(IRequest)
 
     def __new__(cls, request):
-        return str.__new__(
-                cls, getUtility(IClientIdManager).getClientId(request)
-                )
+        return str.__new__(cls,
+            zope.component.getUtility(IClientIdManager).getClientId(request)
+            )
 
 
-class PersistentSessionDataContainer(zope.location.Location, Persistent, 
+class PersistentSessionDataContainer(zope.location.Location,
+    persistent.Persistent, 
     IterableUserDict):
     """A SessionDataContainer that stores data in the ZODB"""
 
-    implements(ISessionDataContainer, IAttributeAnnotatable)
+    zope.interface.implements(ISessionDataContainer, IAttributeAnnotatable)
 
     _v_last_sweep = 0 # Epoch time sweep last run
 
@@ -319,9 +320,9 @@
 
 
 class Session(object):
-    """See zope.app.session.interfaces.ISession"""
-    implements(ISession)
-    adapts(IRequest)
+    """See zope.session.interfaces.ISession"""
+    zope.interface.implements(ISession)
+    zope.component.adapts(IRequest)
 
     def __init__(self, request):
         self.client_id = str(IClientId(request))
@@ -330,13 +331,13 @@
         # Locate the ISessionDataContainer by looking up the named
         # Utility, and falling back to the unnamed one.
         try:
-            return getUtility(ISessionDataContainer, pkg_id)
+            return zope.component.getUtility(ISessionDataContainer, pkg_id)
         except ComponentLookupError:
-            return getUtility(ISessionDataContainer)
+            return zope.component.getUtility(ISessionDataContainer)
 
     def get(self, pkg_id, default=None):
 
-        """See zope.app.session.interfaces.ISession
+        """See zope.session.interfaces.ISession
 
             >>> import tests
             >>> request = tests.setUp(PersistentSessionDataContainer)
@@ -380,7 +381,7 @@
         
 
     def __getitem__(self, pkg_id):
-        """See zope.app.session.interfaces.ISession
+        """See zope.session.interfaces.ISession
 
             >>> import tests
             >>> request = tests.setUp(PersistentSessionDataContainer)
@@ -438,8 +439,8 @@
             return spd
 
 
-class SessionData(Persistent, IterableUserDict):
-    """See zope.app.session.interfaces.ISessionData
+class SessionData(persistent.Persistent, IterableUserDict):
+    """See zope.session.interfaces.ISessionData
 
         >>> session = SessionData()
         >>> ISessionData.providedBy(session)
@@ -484,7 +485,7 @@
         13
 
     """
-    implements(ISessionData)
+    zope.interface.implements(ISessionData)
 
     # this is for support of legacy sessions; this comment and
     # the next line will be removed in a later release
@@ -513,14 +514,14 @@
                               doc='integer value of the last access time')
 
 
-class SessionPkgData(Persistent, IterableUserDict):
-    """See zope.app.session.interfaces.ISessionData
+class SessionPkgData(persistent.Persistent, IterableUserDict):
+    """See zope.session.interfaces.ISessionData
 
         >>> session = SessionPkgData()
         >>> ISessionPkgData.providedBy(session)
         True
     """
-    implements(ISessionPkgData)
+    zope.interface.implements(ISessionPkgData)
     def __init__(self):
         self.data = OOBTree()
 

Modified: zope.session/trunk/src/zope/session/tests.py
===================================================================
--- zope.session/trunk/src/zope/app/session/tests.py	2007-09-25 17:09:25 UTC (rev 80030)
+++ zope.session/trunk/src/zope/session/tests.py	2007-09-25 20:17:42 UTC (rev 80044)
@@ -17,28 +17,28 @@
 """
 from cStringIO import StringIO
 import unittest, os, os.path
+
+import zope.component
 from zope.testing import doctest
-from zope.app import zapi
-from zope.app.testing import ztapi, placelesssetup
+from zope.app.testing import placelesssetup
 import transaction
 
-from zope.app.session.interfaces import IClientId, IClientIdManager, ISession
-from zope.app.session.interfaces import ISessionDataContainer
-from zope.app.session.interfaces import ISessionPkgData, ISessionData
+from zope.session.interfaces import IClientId, IClientIdManager, ISession
+from zope.session.interfaces import ISessionDataContainer
+from zope.session.interfaces import ISessionPkgData, ISessionData
+from zope.session.session import ClientId, Session
+from zope.session.session import PersistentSessionDataContainer
+from zope.session.session import RAMSessionDataContainer
+from zope.session.http import CookieClientIdManager
+from zope.session.bootstrap import bootStrapSubscriber as \
+     sessionBootstrapSubscriber
+from zope.session.testing import SessionLayer
 
-from zope.app.session.session import ClientId, Session
-from zope.app.session.session import PersistentSessionDataContainer
-from zope.app.session.session import RAMSessionDataContainer
-
-from zope.app.session.http import CookieClientIdManager
-
 from zope.publisher.interfaces import IRequest
 from zope.publisher.http import HTTPRequest
 
 from zope.app.appsetup.tests import TestBootstrapSubscriber, EventStub
 from zope.app.appsetup.bootstrap import bootStrapSubscriber
-from zope.app.session.bootstrap import bootStrapSubscriber as \
-     sessionBootstrapSubscriber
 
 from zope.component import provideHandler, getGlobalSiteManager
 from zope.app.folder import Folder
@@ -46,17 +46,16 @@
 from zope.app.publication.interfaces import IBeforeTraverseEvent
 from zope.app.testing.functional import BrowserTestCase
 from zope.app.zptpage.zptpage import ZPTPage
-from zope.app.session.testing import SessionLayer
 
 
 def setUp(session_data_container_class=PersistentSessionDataContainer):
     placelesssetup.setUp()
-    ztapi.provideAdapter(IRequest, IClientId, ClientId)
-    ztapi.provideAdapter(IRequest, ISession, Session)
-    ztapi.provideUtility(IClientIdManager, CookieClientIdManager())
+    zope.component.provideAdapter(ClientId, (IRequest,), IClientId)
+    zope.component.provideAdapter(Session, (IRequest,), ISession)
+    zope.component.provideUtility(CookieClientIdManager(), IClientIdManager)
     sdc = session_data_container_class()
     for product_id in ('', 'products.foo', 'products.bar', 'products.baz'):
-        ztapi.provideUtility(ISessionDataContainer, sdc, product_id)
+        zope.component.provideUtility(sdc, ISessionDataContainer, product_id)
     request = HTTPRequest(StringIO(), {}, None)
     return request
 
@@ -70,19 +69,18 @@
 
         sessionBootstrapSubscriber(EventStub(self.db))
 
+        import zope.component
         from zope.app.publication.zopepublication import ZopePublication
         from zope.app.component.hooks import setSite
-        from zope.app import zapi
 
         cx = self.db.open()
         root = cx.root()
         root_folder = root[ZopePublication.root_name]
         setSite(root_folder)
 
-        zapi.getUtility(IClientIdManager)
-        zapi.getUtility(ISessionDataContainer)
+        zope.component.getUtility(IClientIdManager)
+        zope.component.getUtility(ISessionDataContainer)
 
-
         cx.close()
 
 # Test the code in our API documentation is correct
@@ -193,9 +191,9 @@
     suite = unittest.TestSuite()
     suite.addTest(unittest.makeSuite(TestBootstrap))
     suite.addTest(doctest.DocTestSuite())
-    suite.addTest(doctest.DocTestSuite('zope.app.session.session',
+    suite.addTest(doctest.DocTestSuite('zope.session.session',
         tearDown=tearDownTransaction))
-    suite.addTest(doctest.DocTestSuite('zope.app.session.http',
+    suite.addTest(doctest.DocTestSuite('zope.session.http',
         optionflags=doctest.NORMALIZE_WHITESPACE|doctest.ELLIPSIS,)
         )
     suite.addTest(unittest.makeSuite(ZPTSessionTest))

Deleted: zope.session/trunk/src/zope/session/zope.app.session-configure.zcml
===================================================================
--- zope.session/trunk/src/zope/app/session/zope.app.session-configure.zcml	2007-09-25 17:09:25 UTC (rev 80030)
+++ zope.session/trunk/src/zope/session/zope.app.session-configure.zcml	2007-09-25 20:17:42 UTC (rev 80044)
@@ -1 +0,0 @@
-<include package="zope.app.session" />

Added: zope.session/trunk/src/zope/session/zope.session-configure.zcml
===================================================================
--- zope.session/trunk/src/zope/session/zope.session-configure.zcml	                        (rev 0)
+++ zope.session/trunk/src/zope/session/zope.session-configure.zcml	2007-09-25 20:17:42 UTC (rev 80044)
@@ -0,0 +1 @@
+<include package="zope.session" />


Property changes on: zope.session/trunk/src/zope/session/zope.session-configure.zcml
___________________________________________________________________
Name: svn:eol-style
   + native



More information about the Checkins mailing list