Re: [ZODB-Dev] Towards ZODB on Python 3

2013-03-10 Thread Jim Fulton
On Fri, Mar 8, 2013 at 9:31 AM, Marius Gedminas mar...@gedmin.as wrote: (Resending because I used the wrong From address and the mail got stuck in moderation.) Some goals, in order of decreasing priority 1. ZODB should work on Python 3 2. ZODB databases created on Python 2 should be

Re: [ZODB-Dev] Towards ZODB on Python 3

2013-03-10 Thread Tres Seaver
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 03/10/2013 09:19 AM, Jim Fulton wrote: Now, ZODB is built on top of pickles. And pickles in Python 2 know about two kinds of strings: str and unicode. But there are actually *three* kinds of strings in Python-land: * bytes * unicode *

Re: [ZODB-Dev] Towards ZODB on Python 3

2013-03-10 Thread Jim Fulton
On Sun, Mar 10, 2013 at 11:25 AM, Tres Seaver tsea...@palladion.com wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 03/10/2013 09:19 AM, Jim Fulton wrote: ... I think the fix is pretty straightforward. In the default __setstate__ provided by Persistent, and when loading

Re: [ZODB-Dev] Towards ZODB on Python 3

2013-03-10 Thread Tres Seaver
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 03/10/2013 11:55 AM, Jim Fulton wrote: On Sun, Mar 10, 2013 at 11:25 AM, Tres Seaver tsea...@palladion.com wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 03/10/2013 09:19 AM, Jim Fulton wrote: ... I think the fix is pretty

Re: [ZODB-Dev] Towards ZODB on Python 3

2013-03-10 Thread Jim Fulton
On Sun, Mar 10, 2013 at 12:13 PM, Tres Seaver tsea...@palladion.com wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 03/10/2013 11:55 AM, Jim Fulton wrote: On Sun, Mar 10, 2013 at 11:25 AM, Tres Seaver tsea...@palladion.com wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On

[ZODB-Dev] Towards ZODB on Python 3

2013-03-08 Thread Marius Gedminas
(Resending because I used the wrong From address and the mail got stuck in moderation.) Some goals, in order of decreasing priority 1. ZODB should work on Python 3 2. ZODB databases created on Python 2 should be loadable with ZODB on Python 3. 3. ZODB databases created on Python 3 should