comparison mercurial/fileset.py @ 45430:e47385ef4e17

grep: fix hash(linestate) to not include linenum linestate.__eq__() just compares the line values whereas __hash__() does hash both self.line and self.linenum, which violates the rule. __hash__() was added at fb502719c75c, "python 2.6 compatibility: add __hash__ to classes that have __eq__" with no additional remarks, so this would probably be a simple mistake. The test output changed because difflib.SequenceMatcher() internally uses a dict. As you can see, the line "export" is unchanged at the revision 2, so the new output is correct.
author Yuya Nishihara <yuya@tcha.org>
date Wed, 09 Sep 2020 11:41:18 +0900
parents b7808443ed6a
children 89a2afe31e82
comparison
equal deleted inserted replaced
45429:9c8d2cf7f591 45430:e47385ef4e17