On Friday, November 22, 2013 7:52:12 AM UTC-8, William wrote: > Is the pickling issue a bug in Sage? >
I'd say so. It's a subtle one: loads(dumps(cremona_curves(37).next().gens(descent_second_limit=10))) tends to work but loading the saved pickle from a file does not. Executing V=loads(dumps(cremona_curves(37).next().gens(descent_second_limit=10))) is also iffy. The call that goes wrong is create_object(self, version, key, **extra_args) with: self = <class 'sage.schemes.generic.homset.SchemeHomsetFactory'> version = (5, 13, 'beta2') key = (113771600, 113729872, Category of schemes over Integer Ring) extra_args = {} The last argument being empty could be a consequence of circularity: the dict would only be filled during its setstate, so during unpickling it might not have run if its contents (indirectly) refer to this category itself again, which sounds rather likely to be the case. Another point: key[0] and key[1] are ids. It makes no sense to pickle those [on the bright side, they don't seem to be used in this bit of code] -- 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 sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/groups/opt_out.