[Checkins] SVN: Products.CMFCore/trunk/Products/CMFCore/ - FSMetadata: Remove handling of .security and .properties metadata

Jens Vagelpohl jens at dataflake.org
Wed Aug 27 03:23:06 EDT 2008


Log message for revision 90399:
  - FSMetadata: Remove handling of .security and .properties metadata
    files which was supposed to have been removed in CMF 2.0 already.
  

Changed:
  U   Products.CMFCore/trunk/Products/CMFCore/CHANGES.txt
  U   Products.CMFCore/trunk/Products/CMFCore/FSMetadata.py
  A   Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/test4.py.metadata
  D   Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/test4.py.security
  A   Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/testPT.pt.metadata
  D   Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/testPT.pt.properties
  D   Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/test_directory/directorytest.pt
  D   Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/test_directory/directorytest.pt.properties
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_FSSecurity.py

-=-
Modified: Products.CMFCore/trunk/Products/CMFCore/CHANGES.txt
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/CHANGES.txt	2008-08-27 05:41:04 UTC (rev 90398)
+++ Products.CMFCore/trunk/Products/CMFCore/CHANGES.txt	2008-08-27 07:23:04 UTC (rev 90399)
@@ -4,6 +4,9 @@
 2.2.0 (unreleased)
 ------------------
 
+- FSMetadata: Remove handling of .security and .properties metadata
+  files which was supposed to have been removed in CMF 2.0 already.
+
 - SkinsTool: Added the ability to do a diff comparison between items
   found using the portal_skins "Find" ZMI tab.
   (https://bugs.launchpad.net/zope-cmf/+bug/238489)

Modified: Products.CMFCore/trunk/Products/CMFCore/FSMetadata.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/FSMetadata.py	2008-08-27 05:41:04 UTC (rev 90398)
+++ Products.CMFCore/trunk/Products/CMFCore/FSMetadata.py	2008-08-27 07:23:04 UTC (rev 90399)
@@ -58,9 +58,8 @@
             # found the new type, lets use that
             self._readMetadata()
         else:
-            # not found so try the old ones
-            self._properties = self._old_readProperties()
-            self._security = self._old_readSecurity()
+            self._properties = {}
+            self._security = {}
 
     def getProxyRoles(self):
         """ Returns the proxy roles """
@@ -146,65 +145,3 @@
         # with existing API
         return None
 
-    def _old_readProperties(self):
-        """
-        Reads the properties file next to an object.
-
-        Moved from DirectoryView.py to here with only minor
-        modifications. Old and deprecated in favour of .metadata now
-        """
-        fp = self._filename + '.properties'
-        try:
-            f = open(fp, 'rt')
-        except IOError:
-            return None
-        else:
-            warn('.properties objects will disappear in CMF 2.0 - Use '
-                 '.metadata objects instead.', DeprecationWarning)
-            lines = f.readlines()
-            f.close()
-            props = {}
-            for line in lines:
-                kv = line.split('=', 1)
-                if len(kv) == 2:
-                    props[kv[0].strip()] = kv[1].strip()
-                else:
-                    logger.exception("Error parsing .properties file")
-
-            return props
-
-    def _old_readSecurity(self):
-        """
-        Reads the security file next to an object.
-
-        Moved from DirectoryView.py to here with only minor
-        modifications. Old and deprecated in favour of .metadata now
-        """
-        fp = self._filename + '.security'
-        try:
-            f = open(fp, 'rt')
-        except IOError:
-            return None
-        else:
-            warn('.security objects will disappear in CMF 2.0 - Use '
-                 '.metadata objects instead.', DeprecationWarning)
-            lines = f.readlines()
-            f.close()
-            prm = {}
-            for line in lines:
-                try:
-                    c1 = line.index(':')+1
-                    c2 = line.index(':',c1)
-                    permission = line[:c1-1]
-                    acquire = bool(line[c1:c2])
-                    proles = line[c2+1:].split(',')
-                    roles=[]
-                    for role in proles:
-                        role = role.strip()
-                        if role:
-                            roles.append(role)
-                except:
-                    logger.exception("Error reading permission "
-                                     "from .security file")
-                prm[permission]=(acquire,roles)
-            return prm

Added: Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/test4.py.metadata
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/test4.py.metadata	                        (rev 0)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/test4.py.metadata	2008-08-27 07:23:04 UTC (rev 90399)
@@ -0,0 +1,3 @@
+[security]
+View = 1:Manager,Owner
+Access contents information = 0:

Deleted: Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/test4.py.security
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/test4.py.security	2008-08-27 05:41:04 UTC (rev 90398)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/test4.py.security	2008-08-27 07:23:04 UTC (rev 90399)
@@ -1,2 +0,0 @@
-View:acquire:Manager,Owner
-Access contents information::
\ No newline at end of file

Added: Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/testPT.pt.metadata
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/testPT.pt.metadata	                        (rev 0)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/testPT.pt.metadata	2008-08-27 07:23:04 UTC (rev 90399)
@@ -0,0 +1,2 @@
+[default]
+title=Zope Pope

Deleted: Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/testPT.pt.properties
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/testPT.pt.properties	2008-08-27 05:41:04 UTC (rev 90398)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/testPT.pt.properties	2008-08-27 07:23:04 UTC (rev 90399)
@@ -1 +0,0 @@
-title=Zope Pope

Deleted: Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/test_directory/directorytest.pt
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/test_directory/directorytest.pt	2008-08-27 05:41:04 UTC (rev 90398)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/test_directory/directorytest.pt	2008-08-27 07:23:04 UTC (rev 90399)
@@ -1 +0,0 @@
-<div tal:replace="request/SERVER_NAME" />
\ No newline at end of file

Deleted: Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/test_directory/directorytest.pt.properties
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/test_directory/directorytest.pt.properties	2008-08-27 05:41:04 UTC (rev 90398)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/fake_skins/fake_skin/test_directory/directorytest.pt.properties	2008-08-27 07:23:04 UTC (rev 90399)
@@ -1 +0,0 @@
-title=Zope Pope

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_FSSecurity.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_FSSecurity.py	2008-08-27 05:41:04 UTC (rev 90398)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_FSSecurity.py	2008-08-27 07:23:04 UTC (rev 90399)
@@ -88,7 +88,8 @@
         # baseline
         self._checkSettings(self.ob.fake_skin.test5,'View',1,[])
         # add .rpm with dodgy permission name
-        self._writeFile('test5.py.security','Access stoopid contents::')
+        self._writeFile('test5.py.metadata',
+                        '[security]\nAccess stoopid contents = 0:')
         # check baseline
         self._checkSettings(self.ob.fake_skin.test5,'View',1,[])
 
@@ -97,7 +98,7 @@
         # baseline
         self._checkSettings(self.ob.fake_skin.test5,'View',1,[])
         # add dodgy .rpm
-        self._writeFile('test5.py.security','View:aquire:')
+        self._writeFile('test5.py.metadata','[security]\nView = aquire:')
         # check baseline
         self._checkSettings(self.ob.fake_skin.test5,'View',1,[])
 
@@ -106,27 +107,29 @@
     class DebugModeTests( FSSecurityBase ):
 
         def test_addPRM( self ):
-            # Test adding of a .security
+            # Test adding of a .metadata
             # baseline
             self._checkSettings(self.ob.fake_skin.test5,'View',1,[])
             # add
-            self._writeFile('test5.py.security','View:acquire:Manager')
+            self._writeFile('test5.py.metadata',
+                            '[security]\nView = 1:Manager')
             # test
             self._checkSettings(self.ob.fake_skin.test5,'View',1,['Manager'])
 
         def test_delPRM( self ):
-            # Test deleting of a .security
+            # Test deleting of a .metadata
             # baseline
             self._checkSettings(self.ob.fake_skin.test5,'View',1,[])
-            self._writeFile('test5.py.security','View:acquire:Manager')
+            self._writeFile('test5.py.metadata',
+                            '[security]\nView = 1:Manager')
             self._checkSettings(self.ob.fake_skin.test5,'View',1,['Manager'])
             # delete
-            self._deleteFile('test5.py.security')
+            self._deleteFile('test5.py.metadata')
             # test
             self._checkSettings(self.ob.fake_skin.test5,'View',1,[])
 
         def test_editPRM( self ):
-            # Test editing a .security
+            # Test editing a .metadata
             # we need to wait a second here or the mtime will actually
             # have the same value as set in the last test.
             # Maybe someone brainier than me can figure out a way to make this
@@ -134,19 +137,21 @@
             sleep(1)
 
             # baseline
-            self._writeFile('test5.py.security','View::Manager,Anonymous')
+            self._writeFile('test5.py.metadata',
+                            '[security]\nView = 0:Manager,Anonymous')
             self._checkSettings(self.ob.fake_skin.test5,'View',0,['Manager','Anonymous'])
             # edit
-            self._writeFile('test5.py.security','View:acquire:Manager')
+            self._writeFile('test5.py.metadata',
+                            '[security]\nView = 1:Manager')
             # test
             self._checkSettings(self.ob.fake_skin.test5,'View',1,['Manager'])
 
         def test_DelAddEditPRM( self ):
-            # Test deleting, then adding, then editing a .security file
+            # Test deleting, then adding, then editing a .metadata file
             # baseline
-            self._writeFile('test5.py.security','View::Manager')
+            self._writeFile('test5.py.metadata','[security]\nView = 0:Manager')
             # delete
-            self._deleteFile('test5.py.security')
+            self._deleteFile('test5.py.metadata')
             self._checkSettings(self.ob.fake_skin.test5,'View',1,[])
 
             # we need to wait a second here or the mtime will actually
@@ -155,11 +160,13 @@
             sleep(1)
 
             # add back
-            self._writeFile('test5.py.security','View::Manager,Anonymous')
+            self._writeFile('test5.py.metadata',
+                            '[security]\nView = 0:Manager,Anonymous')
             self._checkSettings(self.ob.fake_skin.test5,'View',0,['Manager','Anonymous'])
 
             # edit
-            self._writeFile('test5.py.security','View:acquire:Manager')
+            self._writeFile('test5.py.metadata',
+                            '[security]\nView = 1:Manager')
             # test
             self._checkSettings(self.ob.fake_skin.test5,'View',1,['Manager'])
 



More information about the Checkins mailing list