Armin Rigo added the comment:
Benjamin: oups, sorry. I don't remember setting the "easy" keyword, my mistake.
Fwiw I'm +1 on Marc-Andre's solution. Make it a tunable setting, e.g. with
sys.setcollisionlimit(). Defaults to sys.maxint on existing Pythons and some
smaller value (70?) on new Pythons. It has the same benefits as the recursion
limit: it's theoretically bad, but most of the time very useful.
It would also crash on bad usages of custom __hash__() methods: e.g. if you put
a lot of keys in a dict, all with a custom __hash__() that returns 42. I
imagine that it can be considered a good thing to raise in this case rather
than silently degrade performance forever.
Python tracker <rep...@bugs.python.org>
Python-bugs-list mailing list