The class vs. type think suggests that its an old-style vs. new-style class 
conflict. Can you run explain_pickle() and check exactly which step fails?

On Tuesday, April 14, 2015 at 4:16:14 PM UTC+2, Jeroen Demeyer wrote:
>
> Hello all, 
>
> I am working on #18109 which does some major restructuring of the 
> IntegerListsLex class. 
>
> The problem is that breaks some pickles from the pickle jar. This is 
> completely understandable. Now my question is: what to do to fix this? 
> With #17842 (needs review by the way!) I got this traceback: 
>
> sage: sage.structure.sage_object.unpickle_all() 
>   * unpickle failure: 
> load('/home/jdemeyer/.sage/temp/tamiyo/22824/dir_huFT4h//pickle_jar/_class__sage_combinat_integer_list_IntegerListsLex__.sobj')
>  
>
> Traceback (most recent call last): 
>    File "sage/structure/sage_object.pyx", line 1473, in 
> sage.structure.sage_object.unpickle_all 
> (build/cythonized/sage/structure/sage_object.c:14187) 
>      object = load(os.path.join(dir,A)) 
>    File "sage/structure/sage_object.pyx", line 917, in 
> sage.structure.sage_object.load 
> (build/cythonized/sage/structure/sage_object.c:10764) 
>      X = loads(open(filename).read(), compress=compress) 
>    File "sage/structure/sage_object.pyx", line 1271, in 
> sage.structure.sage_object.loads 
> (build/cythonized/sage/structure/sage_object.c:12709) 
>      return unpickler.load() 
> UnpicklingError: NEWOBJ class argument isn't a type object 
>
> But now what? I tried 
>
> from sage.structure.sage_object import register_unpickle_override 
> register_unpickle_override('sage.combinat.integer_list', 
> 'IntegerListsLex', _unpickle_old_IntegerListsLex) 
>
> but it seems that the function _unpickle_old_IntegerListsLex() is not 
> called. 
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to