[Checkins] SVN: Zope/trunk/ Revert changes made in the name of #375322.

Chris Withers chris at simplistix.co.uk
Tue May 12 06:50:04 EDT 2009


Log message for revision 99869:
  Revert changes made in the name of #375322.
  
  These changes weren't discussed with the community first, they break backwards compatibility, and environment should logically be one dict-like object, not a sequence of dicts.

Changed:
  U   Zope/trunk/doc/CHANGES.rst
  U   Zope/trunk/src/Zope2/Startup/handlers.py
  U   Zope/trunk/src/Zope2/Startup/tests/test_schema.py
  U   Zope/trunk/src/Zope2/Startup/zopeschema.xml

-=-
Modified: Zope/trunk/doc/CHANGES.rst
===================================================================
--- Zope/trunk/doc/CHANGES.rst	2009-05-12 09:57:03 UTC (rev 99868)
+++ Zope/trunk/doc/CHANGES.rst	2009-05-12 10:50:04 UTC (rev 99869)
@@ -14,10 +14,6 @@
 - zExceptions.convertExceptionType:  new API, breaking out conversion of
   exception names to exception types from 'upgradeException'.
 
-- Launchpad #375322: the <environment> section within the zope.conf
-  file is now a multisection in order to provide a more modular configuration
-  support.
-
 - Launchpad #374719: introducing new ZPublisher events:
   PubStart, PubSuccess, PubFailure, PubAfterTraversal and PubBeforeCommit.
   

Modified: Zope/trunk/src/Zope2/Startup/handlers.py
===================================================================
--- Zope/trunk/src/Zope2/Startup/handlers.py	2009-05-12 09:57:03 UTC (rev 99868)
+++ Zope/trunk/src/Zope2/Startup/handlers.py	2009-05-12 10:50:04 UTC (rev 99869)
@@ -184,10 +184,8 @@
     """
 
     # Set environment variables
-    d = {}
-    for s in config.environment: 
-        d.update(s)
-    os.environ.update(d)
+    for k,v in config.environment.items():
+        os.environ[k] = v
 
     # Add directories to the pythonpath
     instancelib = os.path.join(config.instancehome, 'lib', 'python')

Modified: Zope/trunk/src/Zope2/Startup/tests/test_schema.py
===================================================================
--- Zope/trunk/src/Zope2/Startup/tests/test_schema.py	2009-05-12 09:57:03 UTC (rev 99868)
+++ Zope/trunk/src/Zope2/Startup/tests/test_schema.py	2009-05-12 10:50:04 UTC (rev 99869)
@@ -101,23 +101,9 @@
               NSYNC doesnt
             </environment>
             """)
-        items = conf.environment[0].items()
+        items = conf.environment.items()
         items.sort()
         self.assertEqual(items, [("FEARFACTORY", "rocks"), ("NSYNC","doesnt")])
-        conf, handler = self.load_config_text("""\
-            # instancehome is here since it's required
-            instancehome <<INSTANCE_HOME>>
-            <environment>
-              FEARFACTORY rocks
-            </environment>
-            <environment>
-              NSYNC doesnt
-            </environment>
-            """)
-        self.assertEqual(len(conf.environment), 2)
-        # in principle, we should test the handler as well
-        #  But this would have vast side effects
-        #  Thus, we test with a non regression test
 
     def test_ms_author_via(self):
         import webdav

Modified: Zope/trunk/src/Zope2/Startup/zopeschema.xml
===================================================================
--- Zope/trunk/src/Zope2/Startup/zopeschema.xml	2009-05-12 09:57:03 UTC (rev 99868)
+++ Zope/trunk/src/Zope2/Startup/zopeschema.xml	2009-05-12 10:50:04 UTC (rev 99869)
@@ -292,14 +292,14 @@
     </description>
   </multisection>
 
-  <multisection type="environment" attribute="environment" name="*">
+  <section type="environment" attribute="environment" name="*">
     <description>
      A section which allows a user to define arbitrary key-value pairs for
      use as environment variables during Zope's run cycle.  It
      is not recommended to set system-related environment variables such as
      PYTHONPATH within this section.
     </description>
-  </multisection>
+  </section>
 
   <key name="instancehome" datatype="existing-directory"
        required="yes">



More information about the Checkins mailing list