[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