Le lundi 28 août 2017 14:05:29 UTC+2, Erik Bray a écrit : > > On Sat, Aug 26, 2017 at 9:00 AM, Frédéric Chapoton <fchap...@gmail.com > <javascript:>> wrote: > > Shorter traceback, with the same issue. This has probably something to > do > > with the behaviour of weak-cahe (which is different with python3) > > > > > > Traceback (most recent call last): > > File > > > "/home/chapoton/sage3/local/lib/python3.6/site-packages/sage/rings/polynomial/polynomial_ring_constructor.py", > > > > line 604, in _get_from_cache > > return _cache[key] > > File "sage/misc/weak_dict.pyx", line 699, in > > sage.misc.weak_dict.WeakValueDictionary.__getitem__ > > (/home/chapoton/sage3/src/build/cythonized/sage/misc/weak_dict.c:3507) > > TypeError: unhashable type: 'ComplexIntervalField_class_with_category' > > Quick question: Would I be able to reproduce this on devel, or do I > need to check out your Python 3 branch? > > This appears only with the very latest version of my experimental branch, which I have not yet pushed to trac. And Jeroen may well be true that this comes from "overwriting __eq__ blocks inheritance of __hash__". I was hoping that this warning is harmless, but it seems that will also have to fix that. Sigh.
Using the py3-test-run as described in https://trac.sagemath.org/ticket/15995#comment:2, we see many of these "__eq__ / __hash__" issues everywhere. Frederic > > Le samedi 26 août 2017 08:53:01 UTC+2, Frédéric Chapoton a écrit : > >> > >> Hello, > >> > >> during my experiments with python3, I am now stopped on a crash > involving > >> hash of Complex interval fields. > >> > >> The full log is attached. It ends with > >> > >> TypeError: key = (Complex Interval Field with 53 bits of precision, > >> ('x',), False, None) > >> > >> unhashable type: 'ComplexIntervalField_class_with_category' > >> > >> This is strange, because CIF and type(CIF) are both hashable in the > usual > >> sage with python2. > >> > >> has anybody any idea of what is happening ? > >> > >> Frederic > >> > > -- > > 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+...@googlegroups.com <javascript:>. > > To post to this group, send email to sage-...@googlegroups.com > <javascript:>. > > Visit this group at https://groups.google.com/group/sage-devel. > > For more options, visit https://groups.google.com/d/optout. > -- 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 https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.