[Checkins] SVN: z3c.layer.trusted/trunk/ - Doctests show that removing security proxies from traversed objects is the desired behavior.

Michael Howitz mh at gocept.com
Sat Feb 21 09:40:06 EST 2009


Log message for revision 96943:
  - Doctests show that removing security proxies from traversed objects is the desired behavior.
  
  - Using ``zope.container`` instead of ``zope.app.container``.
  
  - Made sure that long_description renders properly on pypi.
  
  - Cleaned up dependencies.
  
  

Changed:
  U   z3c.layer.trusted/trunk/CHANGES.txt
  U   z3c.layer.trusted/trunk/buildout.cfg
  U   z3c.layer.trusted/trunk/setup.py
  U   z3c.layer.trusted/trunk/src/z3c/layer/trusted/README.txt
  D   z3c.layer.trusted/trunk/src/z3c/layer/trusted/SETUP.cfg
  U   z3c.layer.trusted/trunk/src/z3c/layer/trusted/tests.py
  U   z3c.layer.trusted/trunk/src/z3c/layer/trusted/zope.traversing.browser.zcml

-=-
Modified: z3c.layer.trusted/trunk/CHANGES.txt
===================================================================
--- z3c.layer.trusted/trunk/CHANGES.txt	2009-02-21 14:36:28 UTC (rev 96942)
+++ z3c.layer.trusted/trunk/CHANGES.txt	2009-02-21 14:40:06 UTC (rev 96943)
@@ -2,6 +2,19 @@
 CHANGES
 =======
 
+1.1.0 (unreleased)
+------------------
+
+- Doctests show that removing security proxies from traversed
+  objects is the desired behavior.
+
+- Using ``zope.container`` instead of ``zope.app.container``.
+
+- Made sure that long_description renders properly on pypi.
+
+- Cleaned up dependencies.
+
+
 1.0.1 (2008-01-24)
 ------------------
 

Modified: z3c.layer.trusted/trunk/buildout.cfg
===================================================================
--- z3c.layer.trusted/trunk/buildout.cfg	2009-02-21 14:36:28 UTC (rev 96942)
+++ z3c.layer.trusted/trunk/buildout.cfg	2009-02-21 14:40:06 UTC (rev 96943)
@@ -1,7 +1,6 @@
 [buildout]
 develop = .
 parts = test checker coverage
-find-links = http://pypi.python.org/simple/z3c.layer.minimal/
 
 [test]
 recipe = zc.recipe.testrunner

Modified: z3c.layer.trusted/trunk/setup.py
===================================================================
--- z3c.layer.trusted/trunk/setup.py	2009-02-21 14:36:28 UTC (rev 96942)
+++ z3c.layer.trusted/trunk/setup.py	2009-02-21 14:40:06 UTC (rev 96943)
@@ -17,24 +17,23 @@
 $Id:$
 """
 import os
-import xml.sax.saxutils
 from setuptools import setup, find_packages
 
 def read(*rnames):
-    text = open(os.path.join(os.path.dirname(__file__), *rnames)).read()
-    return xml.sax.saxutils.escape(text)
+    return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
 
+version = '1.0.2dev'
+
 setup(
-    name = 'z3c.layer.trusted',
-    version = '1.0.2dev',
+    name='z3c.layer.trusted',
+    version=version,
     author='Zope Foundation and Contributors',
     author_email='zope-dev at zope.org',
     description = "Trusted layer setup for Zope3",
     long_description=(
         read('README.txt')
         + '\n\n' +
-        'Detailed Documentation\n'
-        '**********************'
+        '.. contents::\n'
         + '\n\n' +
         read('src', 'z3c', 'layer', 'trusted', 'README.txt')
         + '\n\n' +
@@ -60,15 +59,16 @@
     extras_require = dict(
         test = [
             'zope.testbrowser',
+            'zope.app.testing',
+            'zope.app.zcmlfiles',
+            'z3c.layer.minimal [test]',
             ],
         ),
     install_requires = [
         'setuptools',
-        'zope.configuration',
-        'zope.traversing',
-        'zope.app.http',
-        'zope.app.publisher',
-        'zope.app.securitypolicy',
+        'zope.publisher',
+        'zope.app.publication',
+        'zope.container',
         'z3c.layer.minimal',
         ],
     zip_safe = False,

Modified: z3c.layer.trusted/trunk/src/z3c/layer/trusted/README.txt
===================================================================
--- z3c.layer.trusted/trunk/src/z3c/layer/trusted/README.txt	2009-02-21 14:36:28 UTC (rev 96942)
+++ z3c.layer.trusted/trunk/src/z3c/layer/trusted/README.txt	2009-02-21 14:40:06 UTC (rev 96943)
@@ -165,3 +165,16 @@
   </html>
   <BLANKLINE>
   <BLANKLINE>
+
+When an object gets traversed, its security proxy is removed, so its
+sub-objects can be publically accessed, too:
+
+  >>> import zope.site.folder
+  >>> getRootFolder()['test'] = zope.site.folder.Folder()
+  >>> manager.open(skinURL + '/container_contents.html')
+
+The view displays the types of the content objects inside the root
+folder. The content objects are not security proxied:
+
+  >>> print manager.contents
+  [<class 'zope.site.folder.Folder'>]
\ No newline at end of file

Deleted: z3c.layer.trusted/trunk/src/z3c/layer/trusted/SETUP.cfg
===================================================================
--- z3c.layer.trusted/trunk/src/z3c/layer/trusted/SETUP.cfg	2009-02-21 14:36:28 UTC (rev 96942)
+++ z3c.layer.trusted/trunk/src/z3c/layer/trusted/SETUP.cfg	2009-02-21 14:40:06 UTC (rev 96943)
@@ -1,3 +0,0 @@
-<data-files zopeskel/etc/package-includes>
-  z3c.layer.trusted-*.zcml
-</data-files>

Modified: z3c.layer.trusted/trunk/src/z3c/layer/trusted/tests.py
===================================================================
--- z3c.layer.trusted/trunk/src/z3c/layer/trusted/tests.py	2009-02-21 14:36:28 UTC (rev 96942)
+++ z3c.layer.trusted/trunk/src/z3c/layer/trusted/tests.py	2009-02-21 14:40:06 UTC (rev 96943)
@@ -14,38 +14,27 @@
 """
 $Id$
 """
-import re
+
 import unittest
-from zope.testing import renormalizing
-from zope.app.testing import functional
+import z3c.layer
+import zope.app.testing.functional
 
-from z3c.layer import trusted
 
-layer = functional.defineLayer('TestLayer', 'ftesting.zcml')
+layer = zope.app.testing.functional.defineLayer('TestLayer', 'ftesting.zcml')
 
 
-class ITrustedTestingSkin(trusted.ITrustedBrowserLayer):
+class ITrustedTestingSkin(z3c.layer.trusted.ITrustedBrowserLayer):
     """The ITrustedBrowserLayer testing skin."""
 
 
-def getRootFolder():
-    return functional.FunctionalTestSetup().getRootFolder()
-
-
 def test_suite():
     suite = unittest.TestSuite()
-
-    s = functional.FunctionalDocFileSuite(
-        'README.txt',
-        globs={'getRootFolder': getRootFolder},
-        checker = renormalizing.RENormalizing([
-            (re.compile(r'httperror_seek_wrapper:', re.M), 'HTTPError:'),
-            ])
-        )
+    s = zope.app.testing.functional.FunctionalDocFileSuite('README.txt')
     s.layer = TestLayer
     suite.addTest(s)
 
     return suite
 
+
 if __name__ == '__main__':
     unittest.main(defaultTest='test_suite')

Modified: z3c.layer.trusted/trunk/src/z3c/layer/trusted/zope.traversing.browser.zcml
===================================================================
--- z3c.layer.trusted/trunk/src/z3c/layer/trusted/zope.traversing.browser.zcml	2009-02-21 14:36:28 UTC (rev 96942)
+++ z3c.layer.trusted/trunk/src/z3c/layer/trusted/zope.traversing.browser.zcml	2009-02-21 14:40:06 UTC (rev 96943)
@@ -13,19 +13,19 @@
       />
 
   <adapter
-      for="zope.app.container.interfaces.IItemContainer
+      for="zope.container.interfaces.IItemContainer
            z3c.layer.trusted.ITrustedBrowserLayer"
       provides="zope.publisher.interfaces.browser.IBrowserPublisher"
-      factory="zope.app.container.traversal.ItemTraverser"
+      factory="zope.container.traversal.ItemTraverser"
       permission="zope.Public"
       trusted="True"
       />
 
   <adapter
-      for="zope.app.container.interfaces.ISimpleReadContainer
+      for="zope.container.interfaces.ISimpleReadContainer
            z3c.layer.trusted.ITrustedBrowserLayer"
       provides="zope.publisher.interfaces.browser.IBrowserPublisher"
-      factory="zope.app.container.traversal.ItemTraverser"
+      factory="zope.container.traversal.ItemTraverser"
       permission="zope.Public"
       trusted="True"
       />



More information about the Checkins mailing list