[Checkins] SVN: z3c.unconfigure/trunk/ Forgot to add a meta.zcml so
that the <unconfigure> directive could
Philipp von Weitershausen
philikon at philikon.de
Thu Aug 7 06:13:54 EDT 2008
Log message for revision 89491:
Forgot to add a meta.zcml so that the <unconfigure> directive could
actually be registered from ZCML.
Changed:
U z3c.unconfigure/trunk/CHANGES.txt
U z3c.unconfigure/trunk/src/z3c/unconfigure/README.txt
U z3c.unconfigure/trunk/src/z3c/unconfigure/config.py
A z3c.unconfigure/trunk/src/z3c/unconfigure/meta.zcml
U z3c.unconfigure/trunk/src/z3c/unconfigure/testing.py
U z3c.unconfigure/trunk/src/z3c/unconfigure/tests/fixtures/overrides.zcml
U z3c.unconfigure/trunk/src/z3c/unconfigure/tests/fixtures/overrides2.zcml
U z3c.unconfigure/trunk/src/z3c/unconfigure/tests/overrides.txt
U z3c.unconfigure/trunk/src/z3c/unconfigure/tests/subscribers.txt
-=-
Modified: z3c.unconfigure/trunk/CHANGES.txt
===================================================================
--- z3c.unconfigure/trunk/CHANGES.txt 2008-08-07 09:22:05 UTC (rev 89490)
+++ z3c.unconfigure/trunk/CHANGES.txt 2008-08-07 10:13:53 UTC (rev 89491)
@@ -6,6 +6,12 @@
* ...
+1.0.1 (2008-08-07)
+------------------
+
+* Added a ``meta.zcml`` file so that the ``<unconfigure>`` directive
+ can actually be registered from ZCML.
+
1.0 (2008-08-07)
----------------
Modified: z3c.unconfigure/trunk/src/z3c/unconfigure/README.txt
===================================================================
--- z3c.unconfigure/trunk/src/z3c/unconfigure/README.txt 2008-08-07 09:22:05 UTC (rev 89490)
+++ z3c.unconfigure/trunk/src/z3c/unconfigure/README.txt 2008-08-07 10:13:53 UTC (rev 89491)
@@ -26,6 +26,7 @@
... <print msg="Goodbye World!" />
... <print msg="LOL!" />
...
+ ... <include package="z3c.unconfigure" file="meta.zcml" />
... <unconfigure>
... <lolcat who="I" canhas="cheezburger" />
... <print msg="LOL!" />
@@ -40,6 +41,7 @@
>>> zcml("""
... <configure>
+ ... <include package="z3c.unconfigure" file="meta.zcml" />
... <unconfigure>
... <lolcat who="I" canhas="cheezburger" />
... </unconfigure>
@@ -74,10 +76,13 @@
third party file:
>>> cat('overrides.zcml')
- <unconfigure>
- <lolcat who="I" canhas="cheezburger" />
- <print msg="LOL!" />
- </unconfigure>
+ <configure>
+ <include package="z3c.unconfigure" file="meta.zcml" />
+ <unconfigure>
+ <lolcat who="I" canhas="cheezburger" />
+ <print msg="LOL!" />
+ </unconfigure>
+ </configure>
What you would do now is include first that third party package's
configuration and then load your overrides (which is typically done
Modified: z3c.unconfigure/trunk/src/z3c/unconfigure/config.py
===================================================================
--- z3c.unconfigure/trunk/src/z3c/unconfigure/config.py 2008-08-07 09:22:05 UTC (rev 89490)
+++ z3c.unconfigure/trunk/src/z3c/unconfigure/config.py 2008-08-07 10:13:53 UTC (rev 89491)
@@ -13,10 +13,20 @@
##############################################################################
"""The 'unconfigure' grouping directive
"""
+from zope.configuration import config
+from zope.configuration.interfaces import IConfigurationContext
from zope.configuration.zopeconfigure import ZopeConfigure
from zope.security import adapter
import zope.component.zcml
+def groupingDirectiveAllNS(_context, name, schema, handler,
+ usedIn=IConfigurationContext):
+ """Registers a grouping directive with all namespaces.
+ """
+ config.defineGroupingDirective(_context, name, schema, handler,
+ namespace="*", usedIn=usedIn)
+
+
def is_subscriber(discriminator, callable=None, args=(), kw={},
includepath=(), info='', order=0):
"""Determines whether the action has been emitted from the
Added: z3c.unconfigure/trunk/src/z3c/unconfigure/meta.zcml
===================================================================
--- z3c.unconfigure/trunk/src/z3c/unconfigure/meta.zcml (rev 0)
+++ z3c.unconfigure/trunk/src/z3c/unconfigure/meta.zcml 2008-08-07 10:13:53 UTC (rev 89491)
@@ -0,0 +1,17 @@
+<configure xmlns:meta="http://namespaces.zope.org/meta">
+ <!-- We want the <unconfigure> directive to be available in all
+ namespaces. Unfortunately, zope.configuration provides no
+ built-in way to register a directive this way, so we have to
+ make one ourselves. -->
+ <meta:directive
+ namespace="http://namespaces.zope.org/meta"
+ name="groupingDirectiveAllNS"
+ schema="zope.configuration.config.IFullInfo"
+ handler=".config.groupingDirectiveAllNS"
+ />
+ <meta:groupingDirectiveAllNS
+ name="unconfigure"
+ schema="zope.configuration.zopeconfigure.IZopeConfigure"
+ handler=".config.Unconfigure"
+ />
+</configure>
Property changes on: z3c.unconfigure/trunk/src/z3c/unconfigure/meta.zcml
___________________________________________________________________
Name: svn:eol-style
+ native
Modified: z3c.unconfigure/trunk/src/z3c/unconfigure/testing.py
===================================================================
--- z3c.unconfigure/trunk/src/z3c/unconfigure/testing.py 2008-08-07 09:22:05 UTC (rev 89490)
+++ z3c.unconfigure/trunk/src/z3c/unconfigure/testing.py 2008-08-07 10:13:53 UTC (rev 89491)
@@ -20,8 +20,6 @@
from zope.testing import doctest
from zope.configuration import config
from zope.configuration import xmlconfig
-from zope.configuration import zopeconfigure
-from z3c.unconfigure.config import Unconfigure
class IPrint(Interface):
msg = Text(title=u'Message')
@@ -54,11 +52,6 @@
def zcml(source):
context = config.ConfigurationMachine()
xmlconfig.registerCommonDirectives(context)
- config.defineGroupingDirective(context,
- name='unconfigure',
- namespace="*",
- schema=zopeconfigure.IZopeConfigure,
- handler=Unconfigure)
# Test directives
config.defineSimpleDirective(
Modified: z3c.unconfigure/trunk/src/z3c/unconfigure/tests/fixtures/overrides.zcml
===================================================================
--- z3c.unconfigure/trunk/src/z3c/unconfigure/tests/fixtures/overrides.zcml 2008-08-07 09:22:05 UTC (rev 89490)
+++ z3c.unconfigure/trunk/src/z3c/unconfigure/tests/fixtures/overrides.zcml 2008-08-07 10:13:53 UTC (rev 89491)
@@ -1,4 +1,7 @@
-<unconfigure>
- <lolcat who="I" canhas="cheezburger" />
- <print msg="LOL!" />
-</unconfigure>
+<configure>
+ <include package="z3c.unconfigure" file="meta.zcml" />
+ <unconfigure>
+ <lolcat who="I" canhas="cheezburger" />
+ <print msg="LOL!" />
+ </unconfigure>
+</configure>
Modified: z3c.unconfigure/trunk/src/z3c/unconfigure/tests/fixtures/overrides2.zcml
===================================================================
--- z3c.unconfigure/trunk/src/z3c/unconfigure/tests/fixtures/overrides2.zcml 2008-08-07 09:22:05 UTC (rev 89490)
+++ z3c.unconfigure/trunk/src/z3c/unconfigure/tests/fixtures/overrides2.zcml 2008-08-07 10:13:53 UTC (rev 89491)
@@ -1,5 +1,6 @@
<configure>
<lolcat who="I" canhas="hamburger" />
+ <include package="z3c.unconfigure" file="meta.zcml" />
<unconfigure>
<print msg="LOL!" />
</unconfigure>
Modified: z3c.unconfigure/trunk/src/z3c/unconfigure/tests/overrides.txt
===================================================================
--- z3c.unconfigure/trunk/src/z3c/unconfigure/tests/overrides.txt 2008-08-07 09:22:05 UTC (rev 89490)
+++ z3c.unconfigure/trunk/src/z3c/unconfigure/tests/overrides.txt 2008-08-07 10:13:53 UTC (rev 89491)
@@ -23,6 +23,7 @@
>>> cat('overrides2.zcml')
<configure>
<lolcat who="I" canhas="hamburger" />
+ <include package="z3c.unconfigure" file="meta.zcml" />
<unconfigure>
<print msg="LOL!" />
</unconfigure>
Modified: z3c.unconfigure/trunk/src/z3c/unconfigure/tests/subscribers.txt
===================================================================
--- z3c.unconfigure/trunk/src/z3c/unconfigure/tests/subscribers.txt 2008-08-07 09:22:05 UTC (rev 89490)
+++ z3c.unconfigure/trunk/src/z3c/unconfigure/tests/subscribers.txt 2008-08-07 10:13:53 UTC (rev 89491)
@@ -18,6 +18,7 @@
... <subscriber handler=".handlers.locatedtrusted"
... trusted="yes" locate="yes" />
...
+ ... <include package="z3c.unconfigure" file="meta.zcml" />
... <unconfigure>
... <subscriber handler=".handlers.regular" />
... <subscriber handler=".handlers.trusted" trusted="yes" />
@@ -48,6 +49,7 @@
... <subscriber handler=".handlers.regular" />
... <subscriber handler=".handlers.regular" for=".handlers.Event2" />
...
+ ... <include package="z3c.unconfigure" file="meta.zcml" />
... <unconfigure>
... <subscriber handler=".handlers.regular" />
... </unconfigure>
More information about the Checkins
mailing list