[Zope3-dev] Re: give ability to get rid of deprecated code
Florent Xicluna
laxyf at yahoo.fr
Mon Sep 11 17:22:07 EDT 2006
Florent wrote:
> I propose to patch the 'trunk' in order to allow removing of these packages.
> Here are the proposed changes:
> - catch 'ImportError' when we make use of zope.app.skins
> - introduce ZCML feature 'deprecatedlayers' which is 'on' by default
> and can be disabled
> - add a 'zcml:condition="have deprecatedlayers"' on each <layer> directive
>
Below is the tested patch.
-- Florent
Index: zope/app/apidoc/browser/configure.zcml
===================================================================
--- zope/app/apidoc/browser/configure.zcml (revision 70097)
+++ zope/app/apidoc/browser/configure.zcml (working copy)
@@ -1,10 +1,12 @@
<configure
xmlns="http://namespaces.zope.org/browser"
xmlns:zope="http://namespaces.zope.org/zope"
+ xmlns:zcml="http://namespaces.zope.org/zcml"
i18n_domain="zope">
<!-- BBB 2006/02/18, to be removed after 12 months -->
<layer
+ zcml:condition="have deprecatedlayers"
name="apidoc"
interface=".skin.apidoc"
bbb_aware="true"
Index: zope/app/apidoc/browser/skin.py
===================================================================
--- zope/app/apidoc/browser/skin.py (revision 70078)
+++ zope/app/apidoc/browser/skin.py (working copy)
@@ -27,5 +27,8 @@
"""The `APIDOC` skin."""
# BBB 2006/02/18, to be removed after 12 months
-import zope.app.skins
-zope.app.skins.set('APIDOC', APIDOC)
+try:
+ import zope.app.skins
+ zope.app.skins.set('APIDOC', APIDOC)
+except ImportError:
+ pass
Index: zope/app/basicskin/__init__.py
===================================================================
--- zope/app/basicskin/__init__.py (revision 70078)
+++ zope/app/basicskin/__init__.py (working copy)
@@ -23,5 +23,8 @@
nothing else"""
# BBB 2006/02/18, to be removed after 12 months
-import zope.app.skins
-zope.app.skins.set('Basic', IBasicSkin)
+try:
+ import zope.app.skins
+ zope.app.skins.set('Basic', IBasicSkin)
+except ImportError:
+ pass
Index: zope/app/boston/__init__.py
===================================================================
--- zope/app/boston/__init__.py (revision 70078)
+++ zope/app/boston/__init__.py (working copy)
@@ -34,8 +34,11 @@
"""
# BBB 2006/02/18, to be removed after 12 months
-import zope.app.skins
-zope.app.skins.set('Boston', Boston)
+try:
+ import zope.app.skins
+ zope.app.skins.set('Boston', Boston)
+except ImportError:
+ pass
class IHead(IViewletManager):
"""Head viewlet manager."""
Index: zope/app/boston/configure.zcml
===================================================================
--- zope/app/boston/configure.zcml (revision 70078)
+++ zope/app/boston/configure.zcml (working copy)
@@ -7,6 +7,7 @@
<!-- BBB 2006/02/18, to be removed after 12 months -->
<layer
+ zcml:condition="have deprecatedlayers"
name="boston"
interface="zope.app.boston.boston"
bbb_aware="true"
Index: zope/app/css/__init__.py
===================================================================
--- zope/app/css/__init__.py (revision 70078)
+++ zope/app/css/__init__.py (working copy)
@@ -31,5 +31,8 @@
"""
# BBB 2006/02/18, to be removed after 12 months
-import zope.app.skins
-zope.app.skins.set('CSS', CSS)
+try:
+ import zope.app.skins
+ zope.app.skins.set('CSS', CSS)
+except ImportError:
+ pass
Index: zope/app/css/configure.zcml
===================================================================
--- zope/app/css/configure.zcml (revision 70097)
+++ zope/app/css/configure.zcml (working copy)
@@ -1,9 +1,11 @@
<configure
xmlns="http://namespaces.zope.org/zope"
- xmlns:browser="http://namespaces.zope.org/browser">
+ xmlns:browser="http://namespaces.zope.org/browser"
+ xmlns:zcml="http://namespaces.zope.org/zcml">
<!-- BBB 2006/02/18, to be removed after 12 months -->
<browser:layer
+ zcml:condition="have deprecatedlayers"
name="css"
interface="zope.app.css.layer"
bbb_aware="true"
Index: zope/app/debugskin/__init__.py
===================================================================
--- zope/app/debugskin/__init__.py (revision 70078)
+++ zope/app/debugskin/__init__.py (working copy)
@@ -26,5 +26,8 @@
"""Rotterdam-based skin with debug functionality"""
# BBB 2006/02/18, to be removed after 12 months
-import zope.app.skins
-zope.app.skins.set('Debug', IDebugSkin)
+try:
+ import zope.app.skins
+ zope.app.skins.set('Debug', IDebugSkin)
+except ImportError:
+ pass
Index: zope/app/debugskin/configure.zcml
===================================================================
--- zope/app/debugskin/configure.zcml (revision 70078)
+++ zope/app/debugskin/configure.zcml (working copy)
@@ -1,10 +1,12 @@
<configure
xmlns="http://namespaces.zope.org/browser"
xmlns:zope="http://namespaces.zope.org/zope"
+ xmlns:zcml="http://namespaces.zope.org/zcml"
>
<!-- BBB 2006/02/18, to be removed after 12 months -->
<layer
+ zcml:condition="have deprecatedlayers"
interface=".IDebugLayer"
name="debug"
bbb_aware="true"
Index: zope/app/layers/meta.zcml
===================================================================
--- zope/app/layers/meta.zcml (revision 0)
+++ zope/app/layers/meta.zcml (revision 0)
@@ -0,0 +1,3 @@
+<configure xmlns:meta="http://namespaces.zope.org/meta">
+ <meta:provides feature="deprecatedlayers" />
+</configure>
Modification de propriétés sur zope\app\layers\meta.zcml
___________________________________________________________________
Nom : svn:eol-style
+ native
Index: zope/app/layers/SETUP.cfg
===================================================================
--- zope/app/layers/SETUP.cfg (revision 0)
+++ zope/app/layers/SETUP.cfg (revision 0)
@@ -0,0 +1,5 @@
+# Tell zpkg how to install the ZCML slugs.
+
+<data-files zopeskel/etc/package-includes>
+ zope.app.layers-*.zcml
+</data-files>
Index: zope/app/layers/zope.app.layers-meta.zcml
===================================================================
--- zope/app/layers/zope.app.layers-meta.zcml (revision 0)
+++ zope/app/layers/zope.app.layers-meta.zcml (revision 0)
@@ -0,0 +1 @@
+<include package="zope.app.layers" file="meta.zcml" />
Modification de propriétés sur zope\app\layers\zope.app.layers-meta.zcml
___________________________________________________________________
Nom : svn:eol-style
+ native
Index: zope/app/publisher/browser/configure.zcml
===================================================================
--- zope/app/publisher/browser/configure.zcml (revision 70078)
+++ zope/app/publisher/browser/configure.zcml (working copy)
@@ -1,6 +1,7 @@
<configure
xmlns="http://namespaces.zope.org/zope"
- xmlns:browser="http://namespaces.zope.org/browser">
+ xmlns:browser="http://namespaces.zope.org/browser"
+ xmlns:zcml="http://namespaces.zope.org/zcml">
<interface
interface="zope.app.publisher.interfaces.browser.IMenuItemType" />
@@ -12,6 +13,7 @@
<!-- BBB 2006/02/18, to be removed after 12 months -->
<browser:layer
+ zcml:condition="have deprecatedlayers"
name="default"
interface="zope.publisher.interfaces.browser.IDefaultBrowserLayer"
bbb_aware="true"
Index: zope/app/publisher/browser/meta.zcml
===================================================================
--- zope/app/publisher/browser/meta.zcml (revision 70078)
+++ zope/app/publisher/browser/meta.zcml (working copy)
@@ -1,6 +1,7 @@
<configure
xmlns="http://namespaces.zope.org/zope"
- xmlns:meta="http://namespaces.zope.org/meta">
+ xmlns:meta="http://namespaces.zope.org/meta"
+ xmlns:zcml="http://namespaces.zope.org/zcml">
<meta:directives namespace="http://namespaces.zope.org/browser">
@@ -129,6 +130,7 @@
<!-- BBB 2006/02/18, to be removed after 12 months -->
<meta:directive
+ zcml:condition="have deprecatedlayers"
name="layer"
schema=".metadirectives.ILayerDirective"
handler=".metaconfigure.layer"
@@ -136,6 +138,7 @@
<!-- BBB 2006/02/18, to be removed after 12 months -->
<meta:directive
+ zcml:condition="have deprecatedlayers"
name="skin"
schema=".metadirectives.ISkinDirective"
handler=".metaconfigure.skin"
Index: zope/app/publisher/browser/metaconfigure.py
===================================================================
--- zope/app/publisher/browser/metaconfigure.py (revision 70078)
+++ zope/app/publisher/browser/metaconfigure.py (working copy)
@@ -25,7 +25,7 @@
from zope.publisher.interfaces.browser import IBrowserRequest, IDefaultSkin
from zope.publisher.interfaces.browser import IBrowserSkinType
-from zope.app import zapi, layers, skins
+from zope.app import zapi
# referred to through ZCML
from zope.app.publisher.browser.resourcemeta import resource
@@ -142,6 +142,7 @@
>>> warnings.showwarning = showwarning
"""
+ from zope.app import layers
if name is not None and ',' in name:
raise TypeError("Commas are not allowed in layer names.")
if name is None and interface is None:
@@ -286,6 +287,7 @@
Enabling the warnings again:
>>> warnings.showwarning = showwarning
"""
+ from zope.app import skins
if name is None and interface is None:
raise ConfigurationError(
"You must specify the 'name' or 'interface' attribute.")
Index: zope/app/rotterdam/__init__.py
===================================================================
--- zope/app/rotterdam/__init__.py (revision 70078)
+++ zope/app/rotterdam/__init__.py (working copy)
@@ -29,5 +29,8 @@
"""
# BBB 2006/02/18, to be removed after 12 months
-import zope.app.skins
-zope.app.skins.set('Rotterdam', Rotterdam)
+try:
+ import zope.app.skins
+ zope.app.skins.set('Rotterdam', Rotterdam)
+except ImportError:
+ pass
Index: zope/app/rotterdam/configure.zcml
===================================================================
--- zope/app/rotterdam/configure.zcml (revision 70078)
+++ zope/app/rotterdam/configure.zcml (working copy)
@@ -1,9 +1,11 @@
<configure
xmlns="http://namespaces.zope.org/zope"
- xmlns:browser="http://namespaces.zope.org/browser">
+ xmlns:browser="http://namespaces.zope.org/browser"
+ xmlns:zcml="http://namespaces.zope.org/zcml">
<!-- BBB 2006/02/18, to be removed after 12 months -->
<browser:layer
+ zcml:condition="have deprecatedlayers"
name="rotterdam"
interface="zope.app.rotterdam.rotterdam"
bbb_aware="true"
Index: zope/app/tree/browser/__init__.py
===================================================================
--- zope/app/tree/browser/__init__.py (revision 70078)
+++ zope/app/tree/browser/__init__.py (working copy)
@@ -33,8 +33,11 @@
navigation macro."""
# BBB 2006/02/18, to be removed after 12 months
-import zope.app.skins
-zope.app.skins.set('StaticTree', IStaticTreeSkin)
+try:
+ import zope.app.skins
+ zope.app.skins.set('StaticTree', IStaticTreeSkin)
+except ImportError:
+ pass
class StatefulTreeView(BrowserView):
Index: zope/app/tree/browser/configure.zcml
===================================================================
--- zope/app/tree/browser/configure.zcml (revision 70078)
+++ zope/app/tree/browser/configure.zcml (working copy)
@@ -1,6 +1,7 @@
<configure
xmlns="http://namespaces.zope.org/zope"
xmlns:browser="http://namespaces.zope.org/browser"
+ xmlns:zcml="http://namespaces.zope.org/zcml"
i18n_domain="zope"
>
@@ -43,6 +44,7 @@
<!-- BBB 2006/02/18, to be removed after 12 months -->
<browser:layer
+ zcml:condition="have deprecatedlayers"
interface=".IStaticTreeLayer"
name="statictree"
bbb_aware="true"
Index: zope/app/zopetop/__init__.py
===================================================================
--- zope/app/zopetop/__init__.py (revision 70078)
+++ zope/app/zopetop/__init__.py (working copy)
@@ -37,5 +37,8 @@
"""
# BBB 2006/02/18, to be removed after 12 months
-import zope.app.skins
-zope.app.skins.set('ZopeTop', ZopeTop)
+try:
+ import zope.app.skins
+ zope.app.skins.set('ZopeTop', ZopeTop)
+except ImportError:
+ pass
More information about the Zope3-dev
mailing list