Join GitHub today
Hash#rehash does not properly rehash #4958
When rehashing a hash with equal objects in it, they don't get removed.
I already looked into the issue and it seems that the problem is that Hash#rehash does not handle collisions properly. When two objects have the same hash / bucket number, they get inserted even if they are the same (see example).
Hash#rehash should remove the duplicate entries.
I looked at your impl, and it was fine except for a couple things:
I almost had a fix but I'm pulled away to finish something else.