[Zope] Broken ZDiscussions-0.5.3 on 2.2.1b1: missing comma...

J. Atwood jatwood@bwanazulia.com
Mon, 21 Aug 2000 08:10:01 -0400


Yup... Ethan picked up that problem. It has been identified and will be
fixed in the new release.

Thanks,
J

> From: J M Cerqueira Esteves <jmce@artenumerica.com>
> Organization: Arte Numerica
> Date: Mon, 21 Aug 2000 12:28:44 +0100
> To: zope@zope.org
> Cc: Jose Manuel Sebrosa <sebrosa@artenumerica.com>
> Subject: [Zope] Broken ZDiscussions-0.5.3 on 2.2.1b1: missing comma...
> 
> 
> I tried to install ZDiscussions (ZUBB) 0.5.3 it on a Zope 2.2.1b1 and got
> a broken product. The traceback I got at Zope startup was:
> 
> 2000-08-21T01:44:09 ERROR(200) Zope Couldn't import Products.ZDBase
> Traceback (innermost last):
> File /usr/local/lib/Zope-2.2.1b1/lib/python/OFS/Application.py, line 396,
> in import_products (Object: string)
> File /var/lib/zope/an/Products/ZDBase/__init__.py, line 86, in ?
> File /var/lib/zope/an/Products/ZDBase/ZDiscussions.py, line 106, in ?
> File /usr/local/lib/Zope-2.2.1b1/lib/python/App/class_init.py, line 109,
> in default__class_init__  (Object: ZDItem)
> File /usr/local/lib/Zope-2.2.1b1/lib/python/AccessControl/Permission.py,
> line 204, in registerPermissions
> ValueError: unpack sequence of wrong size
> 
> 
> The problem seems to be a missing comma in the definition of__ac_permissions__
> in class ZDItem (file ZDiscussions.py):
> 
> __ac_permissions__ = (
> ('Manage properties', ('manage_addProperty',
> 'manage_editProperties',
> 'manage_delProperties',
> 'manage_changeProperties',))
> )
> 
> Since this is lacking a comma before the last parenthesis,
> outer parentheses are "dropped" and it becomes as a two-element tuple:
> ((X,methods))  ->  (X,methods)
> that is, a "naked" permission, instead of the intended one-element (one
> permission) tuple ((X,methods),).
> 
> In fact, ac_permissions_ was already defined like this in
> ZDiscussions-0.2.0...
> 
> I wonder if this was clearly noticed before 2.2.1b1, since line 204 of
> Permission.py (see traceback above) belongs to a new function called
> `registerPermissions'.  This function begins with
> 
> for setting in permissions:
> if _registerdPermission(setting[0]): continue
> if len(setting)==2:
> perm, methods = setting
> default = defaultDefault
> else:
> perm, methods, default = setting
> _registeredPermissions[perm]=1
> 
> and with the bug above, its easy to see the mess resulting when `permissions'
> has the above __ac_permissions__ value.
> 
> 
> Apart from this, is ZDiscussions (ZUBB) 0.5.3 fully compatible with
> Zope 2.2.1?  I just restarted Zope after adding the comma and the
> product is no longer broken.  Perhaps I can do some testing now...
> 
> Best regards
> -- 
> jmce: +351 919838775 ~ http://artenumerica.com/ ~ http://artenumerica.org/
> 
> _______________________________________________
> Zope maillist  -  Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> **   No cross posts or HTML encoding!  **
> (Related lists - 
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
> 
>