[Checkins] SVN: z3ext.controlpanel/tags/1.2.6/ tag for release

Nikolay Kim fafhrd at datacom.kz
Thu Aug 28 11:11:37 EDT 2008


Log message for revision 90552:
  tag for release

Changed:
  A   z3ext.controlpanel/tags/1.2.6/
  D   z3ext.controlpanel/tags/1.2.6/CHANGES.txt
  A   z3ext.controlpanel/tags/1.2.6/CHANGES.txt
  U   z3ext.controlpanel/tags/1.2.6/setup.py
  D   z3ext.controlpanel/tags/1.2.6/src/z3ext/controlpanel/configure.zcml
  A   z3ext.controlpanel/tags/1.2.6/src/z3ext/controlpanel/configure.zcml
  D   z3ext.controlpanel/tags/1.2.6/src/z3ext/controlpanel/storage.py
  A   z3ext.controlpanel/tags/1.2.6/src/z3ext/controlpanel/storage.py

-=-
Copied: z3ext.controlpanel/tags/1.2.6 (from rev 90549, z3ext.controlpanel/trunk)

Deleted: z3ext.controlpanel/tags/1.2.6/CHANGES.txt
===================================================================
--- z3ext.controlpanel/trunk/CHANGES.txt	2008-08-28 14:17:52 UTC (rev 90549)
+++ z3ext.controlpanel/tags/1.2.6/CHANGES.txt	2008-08-28 15:11:36 UTC (rev 90552)
@@ -1,100 +0,0 @@
-=======
-CHANGES
-=======
-
-1.2.5 (2008-08-28)
-------------------
-
-- Remove wrong html tag for category view
-
-- Fix configlet storage name
-
-- Added copier for data storage
-
-
-1.2.4 (2008-05-26)
-------------------
-
-- Fixed configlet subcategory + z3c.baseregistry bug
-
-
-1.2.3 (2008-05-14)
-------------------
-
-- Replace 'autoinclude' with 'includeDependendcies'
-
-- Tests updated
-
-
-1.2.2 (2008-04-08)
-------------------
-
-- Fix UI navigation
-
-
-1.2.1 (2008-03-28)
-------------------
-
-- Removed 'principals' configlet category
-
-
-1.2.0 (2008-03-21)
-------------------
-
-- Use z3ext.pagelet directive for browser views
-
-- Added i18n
-
-- Moved to svn.zope.org
-
-
-1.1.7 (2008-03-18)
-------------------
-
-- Added functional tests
-
-
-1.1.6 (2008-02-28)
-------------------
-
-- Use z3c.autoinclude
-
-
-1.1.5 (2008-02-22)
-------------------
-
-- Added buildout.cfg for testing
-
-- Added viewlet manager for configlet navigation
-
-
-1.1.4 (2008-02-20)
-------------------
-
-- Use z3ext.layoutform
-
-
-1.1.3 (2008-02-0?)
-------------------
-
-- Added 'UI' configuration category
-
-
-1.1.2 (2008-02-04)
-------------------
-
-- Fixed problem with generated class and persistence
-
-- Remove all <grant/> directives
-
-
-1.1.0 (2008-01-31)
-------------------
-
-- Use z3ext.layout for rendering
-
-
-1.0.0 (2007-26-07)
-------------------
-
-- Initial release

Copied: z3ext.controlpanel/tags/1.2.6/CHANGES.txt (from rev 90551, z3ext.controlpanel/trunk/CHANGES.txt)
===================================================================
--- z3ext.controlpanel/tags/1.2.6/CHANGES.txt	                        (rev 0)
+++ z3ext.controlpanel/tags/1.2.6/CHANGES.txt	2008-08-28 15:11:36 UTC (rev 90552)
@@ -0,0 +1,106 @@
+=======
+CHANGES
+=======
+
+1.2.6 (2008-08-28)
+------------------
+
+- Fixed data storage copy
+
+
+1.2.5 (2008-08-28)
+------------------
+
+- Remove wrong html tag for category view
+
+- Fix configlet storage name
+
+- Added copier for data storage
+
+
+1.2.4 (2008-05-26)
+------------------
+
+- Fixed configlet subcategory + z3c.baseregistry bug
+
+
+1.2.3 (2008-05-14)
+------------------
+
+- Replace 'autoinclude' with 'includeDependendcies'
+
+- Tests updated
+
+
+1.2.2 (2008-04-08)
+------------------
+
+- Fix UI navigation
+
+
+1.2.1 (2008-03-28)
+------------------
+
+- Removed 'principals' configlet category
+
+
+1.2.0 (2008-03-21)
+------------------
+
+- Use z3ext.pagelet directive for browser views
+
+- Added i18n
+
+- Moved to svn.zope.org
+
+
+1.1.7 (2008-03-18)
+------------------
+
+- Added functional tests
+
+
+1.1.6 (2008-02-28)
+------------------
+
+- Use z3c.autoinclude
+
+
+1.1.5 (2008-02-22)
+------------------
+
+- Added buildout.cfg for testing
+
+- Added viewlet manager for configlet navigation
+
+
+1.1.4 (2008-02-20)
+------------------
+
+- Use z3ext.layoutform
+
+
+1.1.3 (2008-02-0?)
+------------------
+
+- Added 'UI' configuration category
+
+
+1.1.2 (2008-02-04)
+------------------
+
+- Fixed problem with generated class and persistence
+
+- Remove all <grant/> directives
+
+
+1.1.0 (2008-01-31)
+------------------
+
+- Use z3ext.layout for rendering
+
+
+1.0.0 (2007-26-07)
+------------------
+
+- Initial release

Modified: z3ext.controlpanel/tags/1.2.6/setup.py
===================================================================
--- z3ext.controlpanel/trunk/setup.py	2008-08-28 14:17:52 UTC (rev 90549)
+++ z3ext.controlpanel/tags/1.2.6/setup.py	2008-08-28 15:11:36 UTC (rev 90552)
@@ -21,7 +21,7 @@
 def read(*rnames):
     return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
 
-version='1.2.6dev'
+version='1.2.6'
 
 
 setup(name = 'z3ext.controlpanel',

Deleted: z3ext.controlpanel/tags/1.2.6/src/z3ext/controlpanel/configure.zcml
===================================================================
--- z3ext.controlpanel/trunk/src/z3ext/controlpanel/configure.zcml	2008-08-28 14:17:52 UTC (rev 90549)
+++ z3ext.controlpanel/tags/1.2.6/src/z3ext/controlpanel/configure.zcml	2008-08-28 15:11:36 UTC (rev 90552)
@@ -1,78 +0,0 @@
-<configure 
-   xmlns="http://namespaces.zope.org/zope"
-   xmlns:z3ext="http://namespaces.zope.org/z3ext"
-   i18n_domain="z3ext">
-
-  <includeDependencies package="z3ext.controlpanel" />
-
-  <permission
-     id="z3ext.Configure"
-     title="Configure control panel's configlets." />
-
-  <utility
-     provides=".interfaces.IConfiglet"
-     factory=".root.RootConfiglet" />
-
-  <class class=".root.RootConfiglet">
-    <require
-       permission="zope.Public"
-       interface=".interfaces.IConfiglet
-		  zope.interface.common.mapping.IEnumerableMapping" />
-  </class>
-
-  <!-- data storage -->
-  <utility factory=".storage.DataStorage" />
-
-  <subscriber handler=".storage.dataStorageCopied" />
-
-  <!-- default categories -->
-  <z3ext:configlet
-     name="system"
-     schema=".interfaces.ISystemConfiglet"
-     title="System configuration"
-     description="This area allows you to configure system."
-     provides=".interfaces.ICategory"
-     permission="zope.Public" />
-
-  <z3ext:configlet
-     name="ui"
-     schema=".interfaces.IUIConfiguration"
-     title="User interface configuration"
-     description="This area allows you to configure portal look&amp;feel."
-     provides=".interfaces.ICategory"
-     permission="zope.Public" />
-
-  <!-- settings view -->
-  <adapter
-     name="settings"
-     for="zope.app.component.interfaces.ISite *"
-     provides="zope.interface.Interface"
-     factory=".root.getSettings" />
-
-  <!-- Configlet publisher -->
-  <adapter
-     for=".interfaces.IConfiglet *"
-     factory="z3c.traverser.traverser.PluggableTraverser"
-     provides="zope.publisher.interfaces.IPublishTraverse" />
-
-  <subscriber
-     for=".interfaces.IConfiglet *"
-     provides="z3c.traverser.interfaces.ITraverserPlugin"
-     factory="z3c.traverser.traverser.ContainerTraverserPlugin" />
-
-  <include package=".browser" />
-
-  <!-- Registering documentation with API doc -->
-  <configure
-     xmlns:apidoc="http://namespaces.zope.org/apidoc"
-     xmlns:zcml="http://namespaces.zope.org/zcml"
-     zcml:condition="have apidoc">
-
-    <apidoc:bookchapter
-       id="z3ext-controlpanel"
-       title="z3ext.controlpanel - Control Panel"
-       doc_path="README.txt"
-       parent="z3ext" />
-  </configure>
-
-</configure>

Copied: z3ext.controlpanel/tags/1.2.6/src/z3ext/controlpanel/configure.zcml (from rev 90551, z3ext.controlpanel/trunk/src/z3ext/controlpanel/configure.zcml)
===================================================================
--- z3ext.controlpanel/tags/1.2.6/src/z3ext/controlpanel/configure.zcml	                        (rev 0)
+++ z3ext.controlpanel/tags/1.2.6/src/z3ext/controlpanel/configure.zcml	2008-08-28 15:11:36 UTC (rev 90552)
@@ -0,0 +1,77 @@
+<configure 
+   xmlns="http://namespaces.zope.org/zope"
+   xmlns:z3ext="http://namespaces.zope.org/z3ext"
+   i18n_domain="z3ext">
+
+  <includeDependencies package="z3ext.controlpanel" />
+
+  <permission
+     id="z3ext.Configure"
+     title="Configure control panel's configlets." />
+
+  <utility
+     provides=".interfaces.IConfiglet"
+     factory=".root.RootConfiglet" />
+
+  <class class=".root.RootConfiglet">
+    <require
+       permission="zope.Public"
+       interface=".interfaces.IConfiglet
+		  zope.interface.common.mapping.IEnumerableMapping" />
+  </class>
+
+  <!-- data storage -->
+  <utility factory=".storage.DataStorage" />
+  <subscriber handler=".storage.dataStorageCopied" />
+
+  <!-- default categories -->
+  <z3ext:configlet
+     name="system"
+     schema=".interfaces.ISystemConfiglet"
+     title="System configuration"
+     description="This area allows you to configure system."
+     provides=".interfaces.ICategory"
+     permission="zope.Public" />
+
+  <z3ext:configlet
+     name="ui"
+     schema=".interfaces.IUIConfiguration"
+     title="User interface configuration"
+     description="This area allows you to configure portal look&amp;feel."
+     provides=".interfaces.ICategory"
+     permission="zope.Public" />
+
+  <!-- settings view -->
+  <adapter
+     name="settings"
+     for="zope.app.component.interfaces.ISite *"
+     provides="zope.interface.Interface"
+     factory=".root.getSettings" />
+
+  <!-- Configlet publisher -->
+  <adapter
+     for=".interfaces.IConfiglet *"
+     factory="z3c.traverser.traverser.PluggableTraverser"
+     provides="zope.publisher.interfaces.IPublishTraverse" />
+
+  <subscriber
+     for=".interfaces.IConfiglet *"
+     provides="z3c.traverser.interfaces.ITraverserPlugin"
+     factory="z3c.traverser.traverser.ContainerTraverserPlugin" />
+
+  <include package=".browser" />
+
+  <!-- Registering documentation with API doc -->
+  <configure
+     xmlns:apidoc="http://namespaces.zope.org/apidoc"
+     xmlns:zcml="http://namespaces.zope.org/zcml"
+     zcml:condition="have apidoc">
+
+    <apidoc:bookchapter
+       id="z3ext-controlpanel"
+       title="z3ext.controlpanel - Control Panel"
+       doc_path="README.txt"
+       parent="z3ext" />
+  </configure>
+
+</configure>

Deleted: z3ext.controlpanel/tags/1.2.6/src/z3ext/controlpanel/storage.py
===================================================================
--- z3ext.controlpanel/trunk/src/z3ext/controlpanel/storage.py	2008-08-28 14:17:52 UTC (rev 90549)
+++ z3ext.controlpanel/tags/1.2.6/src/z3ext/controlpanel/storage.py	2008-08-28 15:11:36 UTC (rev 90552)
@@ -1,103 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2007 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.
-#
-##############################################################################
-""" IDataStorage implementation
-
-$Id$
-"""
-from BTrees.OOBTree import OOBTree
-
-from zope import interface, component, event
-from zope.proxy import removeAllProxies
-from zope.location.pickling import locationCopy
-from zope.location.interfaces import ILocation
-from zope.app.component.hooks import getSite
-from zope.app.component.interfaces import ISite
-from zope.annotation.interfaces import IAnnotations
-from zope.lifecycleevent import ObjectCopiedEvent
-from zope.lifecycleevent.interfaces import IObjectCopiedEvent
-from z3ext.controlpanel.interfaces import IDataStorage
-
-ANNOTATION_KEY = 'z3ext.controlpanel.Settings'
-_temp = {}
-
-
-class DataStorage(object):
-    interface.implements(IDataStorage)
-
-    @property
-    def _data(self):
-        site = getSite()
-        ann = IAnnotations(site, None)
-        if ann is None:
-            return _temp
-
-        storage = ann.get(ANNOTATION_KEY)
-        if storage is None:
-            storage = OOBTree()
-            ann[ANNOTATION_KEY] = storage
-
-        return storage
-
-    def __getitem__(self, name):
-        data = self._data.get(name)
-
-        if data is None:
-            data = OOBTree()
-            self._data[name] = data
-
-        return data
-
-    def __setitem__(self, name, data):
-        self._data[name] = data
-
-    def __delitem__(self, name):
-        if name in self._data:
-            del self._data[name]
-
-    def __contains__(self, name):
-        return name in self._data
-
-
- at component.adapter(ISite, IObjectCopiedEvent)
-def dataStorageCopied(site, appevent):
-    ann = IAnnotations(removeAllProxies(appevent.original), None)
-    if ann is None:
-        return
-
-    oldStorage = ann.get(ANNOTATION_KEY)
-    if oldStorage is None:
-        return
-
-    ann = IAnnotations(removeAllProxies(site), None)
-    if ann is None:
-        return
-
-    newStorage = ann.get(ANNOTATION_KEY)
-    if newStorage is None:
-        newStorage = OOBTree()
-        ann[key] = newStorage
-
-    for key, obj in oldStorage.items():
-        copy = locationCopy(obj)
-
-        if isinstance(obj, OOBTree):
-            for subkey, subobj in obj.items():
-                subcopy = locationCopy(subobj)
-                if ILocation.providedBy(subobj):
-                    subcopy.__parent__ = subcopy.__name__ = None
-                    event.notify(ObjectCopiedEvent(subcopy, subobj))
-
-                copy[subkey] = subcopy
-
-        newStorage[key] = copy

Copied: z3ext.controlpanel/tags/1.2.6/src/z3ext/controlpanel/storage.py (from rev 90551, z3ext.controlpanel/trunk/src/z3ext/controlpanel/storage.py)
===================================================================
--- z3ext.controlpanel/tags/1.2.6/src/z3ext/controlpanel/storage.py	                        (rev 0)
+++ z3ext.controlpanel/tags/1.2.6/src/z3ext/controlpanel/storage.py	2008-08-28 15:11:36 UTC (rev 90552)
@@ -0,0 +1,108 @@
+##############################################################################
+#
+# Copyright (c) 2007 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.
+#
+##############################################################################
+""" IDataStorage implementation
+
+$Id$
+"""
+from BTrees.OOBTree import OOBTree
+
+from zope import interface, component, event
+from zope.proxy import removeAllProxies
+from zope.location.pickling import locationCopy
+from zope.location.interfaces import ILocation
+from zope.app.component.interfaces import ISite
+from zope.app.component.hooks import getSite, setSite
+from zope.annotation.interfaces import IAnnotations
+from zope.lifecycleevent import ObjectCopiedEvent
+from zope.lifecycleevent.interfaces import IObjectCopiedEvent
+from z3ext.controlpanel.interfaces import IDataStorage
+
+ANNOTATION_KEY = 'z3ext.controlpanel.Settings'
+_temp = {}
+
+
+class DataStorage(object):
+    interface.implements(IDataStorage)
+
+    @property
+    def _data(self):
+        site = getSite()
+        ann = IAnnotations(site, None)
+        if ann is None:
+            return _temp
+
+        storage = ann.get(ANNOTATION_KEY)
+        if storage is None:
+            storage = OOBTree()
+            ann[ANNOTATION_KEY] = storage
+
+        return storage
+
+    def __getitem__(self, name):
+        data = self._data.get(name)
+
+        if data is None:
+            data = OOBTree()
+            self._data[name] = data
+
+        return data
+
+    def __setitem__(self, name, data):
+        self._data[name] = data
+
+    def __delitem__(self, name):
+        if name in self._data:
+            del self._data[name]
+
+    def __contains__(self, name):
+        return name in self._data
+
+
+ at component.adapter(ISite, IObjectCopiedEvent)
+def dataStorageCopied(site, appevent):
+    oldSite = getSite()
+    setSite(site)
+
+    ann = IAnnotations(removeAllProxies(appevent.original), None)
+    if ann is None:
+        return
+
+    oldStorage = ann.get(ANNOTATION_KEY)
+    if oldStorage is None:
+        return
+
+    ann = IAnnotations(removeAllProxies(site), None)
+    if ann is None:
+        return
+
+    newStorage = ann.get(ANNOTATION_KEY)
+    if newStorage is None:
+        newStorage = OOBTree()
+        ann[key] = newStorage
+
+    for key, obj in oldStorage.items():
+        copy = locationCopy(obj)
+
+        if isinstance(obj, OOBTree):
+            for subkey, subobj in obj.items():
+                subcopy = locationCopy(subobj)
+                if ILocation.providedBy(subobj):
+                    subcopy.__parent__ = subcopy.__name__ = None
+                    event.notify(ObjectCopiedEvent(subcopy, subobj))
+
+                copy[subkey] = subcopy
+
+        newStorage[key] = copy
+
+    setSite(oldSite)



More information about the Checkins mailing list