[Checkins] SVN: Products.Five/trunk/ Five now requires site.zcml to live in /etc

Rocky Burt rocky at serverzen.com
Mon May 29 16:24:13 EDT 2006


Log message for revision 68359:
  Five now requires site.zcml to live in /etc

Changed:
  U   Products.Five/trunk/CHANGES.txt
  D   Products.Five/trunk/skel/
  U   Products.Five/trunk/zcml.py

-=-
Modified: Products.Five/trunk/CHANGES.txt
===================================================================
--- Products.Five/trunk/CHANGES.txt	2006-05-29 19:42:51 UTC (rev 68358)
+++ Products.Five/trunk/CHANGES.txt	2006-05-29 20:24:13 UTC (rev 68359)
@@ -8,6 +8,18 @@
 Restructuring
 -------------
 
+* Zope 2.10+ now includes site.zcml as part of its instance creation
+  skel directory.  As a consequence Five now requires this file to exist
+  in every instance.  If upgrading a site from Zope 2.9 to 2.10, you will 
+  need to copy site.zcml and package-includes/ from your installed Zope 
+  installation location (skel/etc/) into the etc/ directory of your upgraded 
+  instance.
+  
+  The rationale for requiring this new file is to bring Zope 2 instances
+  closer in consistency to Zope 3 instances.  It also eases use of Zope 3
+  coding techniques in Zope 2 and removes some confusion when trying
+  to run pure Zope 3 applications on Zope 2.
+
 * Zope 2.10+ uses the Zope 3 PageTemplate engine (incl. TAL and
   TALES).  A bunch of special and magic code in Five has become
   obsolete with this, some other had to be readjusted.

Modified: Products.Five/trunk/zcml.py
===================================================================
--- Products.Five/trunk/zcml.py	2006-05-29 19:42:51 UTC (rev 68358)
+++ Products.Five/trunk/zcml.py	2006-05-29 20:24:13 UTC (rev 68359)
@@ -32,13 +32,14 @@
 
     # load instance site configuration file
     site_zcml = os.path.join(INSTANCE_HOME, "etc", "site.zcml")
-    if os.path.exists(site_zcml):
-        file = site_zcml
-    else:
-        file = os.path.join(os.path.dirname(__file__), "skel", "site.zcml")
+    if not os.path.exists(site_zcml):
+        raise IOError, "site.zcml is now required to live at '%s', for " \
+                       "sites upgraded from Zope 2.9 please copy site.zcml " \
+                       "from your installed Zope's skel/etc directory" \
+                       % site_zcml
 
     global _context
-    _context = xmlconfig.file(file)
+    _context = xmlconfig.file(site_zcml)
 
 
 def load_config(file, package=None, execute=True):



More information about the Checkins mailing list