[Checkins] SVN: grok/branches/jw-conditional-features/s work on optional grokcore.* features
Jan Wijbrand Kolman
cvs-admin at zope.org
Tue May 1 17:41:41 UTC 2012
Log message for revision 125535:
work on optional grokcore.* features
Changed:
U grok/branches/jw-conditional-features/setup.py
U grok/branches/jw-conditional-features/src/grok/components.py
U grok/branches/jw-conditional-features/src/grok/configure.zcml
U grok/branches/jw-conditional-features/src/grok/ftests/chameleon/chameleon_available.py
U grok/branches/jw-conditional-features/src/grok/meta.zcml
-=-
Modified: grok/branches/jw-conditional-features/setup.py
===================================================================
--- grok/branches/jw-conditional-features/setup.py 2012-05-01 17:39:31 UTC (rev 125534)
+++ grok/branches/jw-conditional-features/setup.py 2012-05-01 17:41:37 UTC (rev 125535)
@@ -13,11 +13,32 @@
'********\n'
)
+classic_require = [
+ 'grokcore.catalog',
+ 'grokcore.formlib >= 1.4',
+ 'grokcore.json >= 1.2dev',
+ 'grokcore.message',
+ 'grokcore.rest >= 1.3dev',
+ 'grokcore.security[role] >= 1.6dev',
+ 'grokcore.viewlet >= 1.10dev',
+ 'grokcore.xmlrpc >= 1.2dev',
+ 'simplejson',
+ 'zc.catalog',
+ 'zope.errorview [browser]',
+ 'zope.i18n',
+ 'zope.i18nmessageid',
+ 'zope.login',
+ 'zope.password',
+ 'zope.principalregistry',
+ ]
tests_require = [
+ 'grokcore.chameleon',
+ 'grokcore.layout',
+ 'grokcore.message',
'zope.app.wsgi',
'zope.configuration',
'zope.testing',
- ]
+ ] + classic_require
setup(
name='grok',
@@ -41,30 +62,18 @@
include_package_data = True,
zip_safe=False,
install_requires=[
- 'grokcore.annotation >= 1.1',
- 'grokcore.catalog',
- 'grokcore.chameleon',
- 'grokcore.component >= 2.3',
+ 'grokcore.annotation >= 1.3dev',
+ 'grokcore.component >= 2.5dev',
'grokcore.content',
- 'grokcore.formlib >= 1.4',
- 'grokcore.json',
- 'grokcore.layout',
- 'grokcore.message',
- 'grokcore.rest',
- 'grokcore.security[role] >= 1.1',
- 'grokcore.site > 1.4',
- 'grokcore.traverser',
- 'grokcore.view >= 2.6.1',
- 'grokcore.viewlet >= 1.3',
+ 'grokcore.security >= 1.6dev',
+ 'grokcore.site >= 1.6dev',
+ 'grokcore.traverser >= 1.1dev',
+ 'grokcore.view >= 2.7dev',
'grokcore.view [security_publication]',
- 'grokcore.xmlrpc',
- 'grokcore.catalog',
'martian >= 0.14',
'pytz',
'setuptools',
- 'simplejson',
'z3c.autoinclude',
- 'zc.catalog',
'ZODB3',
'zope.annotation',
'zope.app.appsetup',
@@ -75,19 +84,13 @@
'zope.component',
'zope.container',
'zope.contentprovider',
- 'zope.errorview [browser]',
'zope.event',
'zope.exceptions',
- 'zope.i18n',
- 'zope.i18nmessageid',
'zope.interface',
'zope.intid',
'zope.keyreference',
'zope.lifecycleevent',
'zope.location',
- 'zope.login',
- 'zope.password',
- 'zope.principalregistry',
'zope.publisher',
'zope.schema',
'zope.security',
@@ -96,5 +99,8 @@
'zope.traversing',
],
tests_require=tests_require,
- extras_require={'test': tests_require},
+ extras_require={
+ 'classic': classic_require,
+ 'test': tests_require,
+ },
)
Modified: grok/branches/jw-conditional-features/src/grok/components.py
===================================================================
--- grok/branches/jw-conditional-features/src/grok/components.py 2012-05-01 17:39:31 UTC (rev 125534)
+++ grok/branches/jw-conditional-features/src/grok/components.py 2012-05-01 17:41:37 UTC (rev 125535)
@@ -40,7 +40,6 @@
import grokcore.view
import grokcore.site
-import grokcore.message
import grokcore.layout
from grok import interfaces, util
@@ -62,8 +61,17 @@
return util.application_url(self.request, self.context, name, data)
def flash(self, message, type='message'):
- """Send a short message to the user."""
- grokcore.message.send(message, type=type, name='session')
+ """Send a short message to the user.
+ """
+ try:
+ import grokcore.message
+ except ImportError:
+ raise NotImplementedError(
+ 'The flash() method is not available. Please list '
+ 'grokcore.message in the install_requires of your '
+ 'application to use it.')
+ else:
+ grokcore.message.send(message, type=type, name='session')
class View(ViewSupportMixin, grokcore.view.View):
Modified: grok/branches/jw-conditional-features/src/grok/configure.zcml
===================================================================
--- grok/branches/jw-conditional-features/src/grok/configure.zcml 2012-05-01 17:39:31 UTC (rev 125534)
+++ grok/branches/jw-conditional-features/src/grok/configure.zcml 2012-05-01 17:41:37 UTC (rev 125535)
@@ -1,8 +1,9 @@
-
<configure
- xmlns="http://namespaces.zope.org/zope"
- xmlns:browser="http://namespaces.zope.org/browser"
- xmlns:grok="http://namespaces.zope.org/grok">
+ xmlns="http://namespaces.zope.org/zope"
+ xmlns:browser="http://namespaces.zope.org/browser"
+ xmlns:grok="http://namespaces.zope.org/grok"
+ xmlns:zcml="http://namespaces.zope.org/zcml"
+ >
<include package="zope.app.publication" file="meta.zcml" />
<include package="zope.browserpage" file="meta.zcml" />
@@ -39,18 +40,36 @@
<include package="zope.app.wsgi" />
<include package="grokcore.annotation" />
- <include package="grokcore.chameleon" />
- <include package="grokcore.formlib" />
- <include package="grokcore.json" />
- <include package="grokcore.layout" />
<include package="grokcore.site" />
<include package="grokcore.traverser" />
<include package="grokcore.view" />
<include package="grokcore.view" file="publication_security.zcml" />
- <include package="grokcore.viewlet" />
- <include package="grokcore.rest" />
- <include package="grokcore.xmlrpc" />
+ <configure zcml:condition="installed grokcore.catalog">
+ <include package="grokcore.catalog" />
+ </configure>
+ <configure zcml:condition="installed grokcore.chameleon">
+ <include package="grokcore.chameleon" />
+ </configure>
+ <configure zcml:condition="installed grokcore.layout">
+ <include package="grokcore.layout" />
+ </configure>
+ <configure zcml:condition="installed grokcore.formlib">
+ <include package="grokcore.formlib" />
+ </configure>
+ <configure zcml:condition="installed grokcore.viewlet">
+ <include package="grokcore.viewlet" />
+ </configure>
+ <configure zcml:condition="installed grokcore.json">
+ <include package="grokcore.json" />
+ </configure>
+ <configure zcml:condition="installed grokcore.rest">
+ <include package="grokcore.rest" />
+ </configure>
+ <configure zcml:condition="installed grokcore.xmlrpc">
+ <include package="grokcore.xmlrpc" />
+ </configure>
+
<securityPolicy
component="zope.securitypolicy.zopepolicy.ZopeSecurityPolicy" />
Modified: grok/branches/jw-conditional-features/src/grok/ftests/chameleon/chameleon_available.py
===================================================================
--- grok/branches/jw-conditional-features/src/grok/ftests/chameleon/chameleon_available.py 2012-05-01 17:39:31 UTC (rev 125534)
+++ grok/branches/jw-conditional-features/src/grok/ftests/chameleon/chameleon_available.py 2012-05-01 17:41:37 UTC (rev 125535)
@@ -1,7 +1,6 @@
"""
Demonstrate the grokcore.chameleon template component has been registered.
-
>>> from zope.app.wsgi.testlayer import Browser
>>> getRootFolder()["mammoth"] = Mammoth()
>>> browser = Browser()
Modified: grok/branches/jw-conditional-features/src/grok/meta.zcml
===================================================================
--- grok/branches/jw-conditional-features/src/grok/meta.zcml 2012-05-01 17:39:31 UTC (rev 125534)
+++ grok/branches/jw-conditional-features/src/grok/meta.zcml 2012-05-01 17:41:37 UTC (rev 125535)
@@ -1,14 +1,23 @@
<configure
xmlns="http://namespaces.zope.org/zope"
xmlns:meta="http://namespaces.zope.org/meta"
- xmlns:grok="http://namespaces.zope.org/grok">
+ xmlns:grok="http://namespaces.zope.org/grok"
+ xmlns:zcml="http://namespaces.zope.org/zcml"
+ >
<include package="z3c.autoinclude" file="meta.zcml" />
<include package="grokcore.component" file="meta.zcml" />
- <include package="grokcore.formlib" file="meta.zcml" />
<include package="grokcore.security" file="meta.zcml" />
<include package="grokcore.view" file="meta.zcml" />
- <include package="grokcore.viewlet" file="meta.zcml" />
<include package="grokcore.annotation" file="meta.zcml" />
<include package="grokcore.site" file="meta.zcml" />
- <include package="grokcore.catalog" file="meta.zcml" />
+
+ <configure zcml:condition="installed grokcore.formlib">
+ <include package="grokcore.formlib" file="meta.zcml" />
+ </configure>
+ <configure zcml:condition="installed grokcore.viewlet">
+ <include package="grokcore.viewlet" file="meta.zcml" />
+ </configure>
+ <configure zcml:condition="installed grokcore.catalog">
+ <include package="grokcore.catalog" file="meta.zcml" />
+ </configure>
</configure>
More information about the checkins
mailing list