Skip Montanaro <[EMAIL PROTECTED]> added the comment: damn... my cc to [EMAIL PROTECTED] didn't work. Here's the recap (message to python-checkins):
me> ... I thought Guido was of the opinion that the 3.0 version should me> be able to read dumb dbms written by earlier Python versions.... And write them. From msg72963: (1) Be able to read databases written by Python 2.x. (1a) Write databases readable by Python 2.x. Ah, but wait a minute. I see your comment in msg76080: If you look at the 2.7 code all it requires of keys and values in __setitem__ is that they are strings; there is nothing about Latin-1 in terms of specific encoding (must be a 3.0 addition to make the str/unicode transition the easiest). The acid test. I executed the attached mydb2write.py using Python 2.5 then executed the attached mydb3read.py using Python 3.0. The output: % python2.5 mydb2write.py 1 abc 2 [4, {4.2999999999999998: 12}] 3 <__main__.C instance at 0x34bb70> % python3.0 mydb3read.py 1 b'abc' 2 [4, {4.2999999999999998: 12}] Traceback (most recent call last): File "mydb3read.py", line 13, in <module> print(3, pickle.loads(db['3'])) File "/Users/skip/local/lib/python3.0/pickle.py", line 1329, in loads return Unpickler(file, encoding=encoding, errors=errors).load() _pickle.UnpicklingError: bad pickle data so if the ability to read Python 2.x dumbdbm files is still a requirement I think there's a little more work to do. ---------- nosy: +skip.montanaro Added file: http://bugs.python.org/file12095/mydb2write.py _______________________________________ Python tracker <[EMAIL PROTECTED]> <http://bugs.python.org/issue3799> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com