[Zope-Checkins] SVN: Zope/trunk/ - removed deprecated support for
'__ac_permissions__' and 'meta_types'
Yvo Schubbe
y.2006_ at wcm-solutions.de
Thu Jun 22 09:06:31 EDT 2006
Log message for revision 68789:
- removed deprecated support for '__ac_permissions__' and 'meta_types'
Changed:
U Zope/trunk/doc/CHANGES.txt
U Zope/trunk/lib/python/OFS/Application.py
-=-
Modified: Zope/trunk/doc/CHANGES.txt
===================================================================
--- Zope/trunk/doc/CHANGES.txt 2006-06-22 13:03:27 UTC (rev 68788)
+++ Zope/trunk/doc/CHANGES.txt 2006-06-22 13:06:30 UTC (rev 68789)
@@ -18,6 +18,9 @@
Restructuring
+ - Removed deprecated support for product initialization based on
+ '__ac_permissions__' and 'meta_types' attributes.
+
- removed zLOG module which was deprecated since Zope 2.9
Features added
Modified: Zope/trunk/lib/python/OFS/Application.py
===================================================================
--- Zope/trunk/lib/python/OFS/Application.py 2006-06-22 13:03:27 UTC (rev 68788)
+++ Zope/trunk/lib/python/OFS/Application.py 2006-06-22 13:06:30 UTC (rev 68789)
@@ -778,57 +778,35 @@
product, product_name, package_dir, app)
context=ProductContext(productObject, app, product)
- # Look for an 'initialize' method in the product. If it does
- # not exist, then this is an old product that has never been
- # updated. In that case, we will analyze the product and
- # build up enough information to do initialization manually.
+ # Look for an 'initialize' method in the product.
initmethod=pgetattr(product, 'initialize', None)
if initmethod is not None:
initmethod(context)
- # Support old-style product metadata. Older products may
- # define attributes to name their permissions, meta_types,
- # constructors, etc.
permissions={}
new_permissions={}
if pgetattr(product, '__ac_permissions__', None) is not None:
- warn('__init__.py of %s has a long deprecated '
- '\'__ac_permissions__\' attribute. '
- '\'__ac_permissions__\' will be ignored by '
- 'install_product in Zope 2.10. Please use registerClass '
- 'instead.' % product.__name__,
+ warn("__init__.py of %s has a long deprecated "
+ "'__ac_permissions__' attribute. '__ac_permissions__' "
+ "is now ignored by install_product. Please use "
+ "registerClass instead."
+ % product.__name__,
DeprecationWarning)
- for p in pgetattr(product, '__ac_permissions__', ()):
- permission, names, default = (
- tuple(p)+('Manager',))[:3]
- if names:
- for name in names:
- permissions[name]=permission
- elif not folder_permissions.has_key(permission):
- new_permissions[permission]=()
if pgetattr(product, 'meta_types', None) is not None:
- warn('__init__.py of %s has a long deprecated \'meta_types\' '
- 'attribute. \'meta_types\' will be ignored by '
- 'install_product in Zope 2.10. Please use registerClass '
- 'instead.' % product.__name__,
+ warn("__init__.py of %s has a long deprecated 'meta_types' "
+ "attribute. 'meta_types' is now ignored by "
+ "install_product. Please use registerClass instead."
+ % product.__name__,
DeprecationWarning)
- for meta_type in pgetattr(product, 'meta_types', ()):
- # Modern product initialization via a ProductContext
- # adds 'product' and 'permission' keys to the meta_type
- # mapping. We have to add these here for old products.
- pname=permissions.get(meta_type['action'], None)
- if pname is not None:
- meta_type['permission']=pname
- meta_type['product']=productObject.id
- meta_type['visibility'] = 'Global'
- meta_types.append(meta_type)
if pgetattr(product, 'methods', None) is not None:
- warn('__init__.py of %s has a long deprecated \'methods\' '
- 'attribute. \'methods\' will be ignored by '
- 'install_product in Zope 2.10. Please use registerClass '
- 'instead.' % product.__name__,
+ warn("__init__.py of %s has a long deprecated 'methods' "
+ "attribute. 'methods' support might be removed in Zope "
+ "2.11 or a later feature release. Please use the "
+ "'legacy' argument of registerClass instead if the "
+ "methods are constructors. Or refactor the product "
+ "using adapters." % product.__name__,
DeprecationWarning)
for name,method in pgetattr(
product, 'methods', {}).items():
More information about the Zope-Checkins
mailing list