-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 12/07/2012 01:11 PM, Gediminas Paulauskas wrote:
2012/12/7 Tres Seaver <tseaver@palladion.com>:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 12/07/2012 01:52 AM, Marius Gedminas wrote:
[3] FAILED winbot / zope.app.i18n_py_265_32 https://mail.zope.org/pipermail/zope-tests/2012-December/069796.html
Error in test testNoTargetLanguage (zope.app.i18n.tests.test_translationdomain.TestTranslationDomain) Traceback (most recent call last): File "c:\Python26_32\lib\unittest.py", line 279, in run testMethod() File "c:\eggs\zope.i18n-3.8.0-py2.6.egg\zope\i18n\tests\test_itranslationdomain.py",
line 99, in testNoTargetLanguage eq(translate('short_greeting',
context=context, default=42), 42) File "c:\buildslave\zope.app.i18n\build\src\zope\app\i18n\translationdomain.py",
line 74, in translate catalog_names =
self._catalogs.get(target_language, []) TypeError: Object has default comparison
Here, the 'target_langeage' returned by the negotiator is None, which the OOBTree is refusing to treat as a key (because its comparison semantics are undefined across process boundaries / Python versions)::
from BTrees.OOBTree import OOBTree x = OOBTree() x[None] = 1 Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: Object has default comparison
Such keys haven't been allowed since::
r117933 | jim | 2010-10-26 17:14:00 -0400 (Tue, 26 Oct 2010) | 7 lines
Bug Fixed - BTrees allowed object keys with insane comparison. (Comparison inherited from object, which compares based on in-process address.) Now BTrees raise TypeError is an attempt is made to save a key with comparison inherited from object. (This doesn't apply to old-style class instances.)
The error happens in get, not set, should it?
The C code throws the error whenever dealing with a user-supplied key which cannot be safely compared to existing keys.
Otherwise, a patch for zope.app.i18n to fix this case is attached (not committed).
+1 for your patch. Tres. - -- =================================================================== Tres Seaver +1 540-429-0999 tseaver@palladion.com Palladion Software "Excellence by Design" http://palladion.com -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) Comment: Using GnuPG with undefined - http://www.enigmail.net/ iEYEARECAAYFAlDCQqMACgkQ+gerLs4ltQ7boACgjbWfWCKTMl0eTKDjkcbCcHKi OZkAoNIFpN2PGERjLRnXhk/IHK9cK7iD =ug61 -----END PGP SIGNATURE-----