Augie Fackler <augie@google.com> [Thu, 24 Jan 2019 14:12:00 -0500] rev 41345
py3: fix up test-encoding-align.t for python3
I'm not super thrilled with how this reads, but the original didn't
thrill me either.
Differential Revision: https://phab.mercurial-scm.org/D5682
Augie Fackler <augie@google.com> [Thu, 24 Jan 2019 13:57:23 -0500] rev 41344
py3: these two casefolding tests pass for me on my Mac
I assume the buildbot didn't catch them because it's on a
case-sensitive filesystem.
Differential Revision: https://phab.mercurial-scm.org/D5681
Augie Fackler <augie@google.com> [Thu, 24 Jan 2019 13:54:45 -0500] rev 41343
py3: port test-bugzilla.t to Python 3
Some assorted fixes required in the extension itself, all around
bytes/str issues.
Differential Revision: https://phab.mercurial-scm.org/D5680
Martin von Zweigbergk <martinvonz@google.com> [Sun, 20 Jan 2019 21:49:58 -0800] rev 41342
uncommit: set dirstateparents from within _fixdirstate()
It's now done in the same way for uncommit and unamend, so we can
share the code.
Differential Revision: https://phab.mercurial-scm.org/D5662
Martin von Zweigbergk <martinvonz@google.com> [Sun, 20 Jan 2019 22:00:25 -0800] rev 41341
unamend: fix unamending of renamed rename
Before this patch, we were passing in the result of a status call for
a different set of commits than what we calculated copies for, which
seemed suspicous to me. The rewritten version gets status and copy
information from the same sets of commits.
Differential Revision: https://phab.mercurial-scm.org/D5661
Martin von Zweigbergk <martinvonz@google.com> [Sun, 20 Jan 2019 22:00:21 -0800] rev 41340
uncommit: mark old node obsolete after updating dirstate
The next patch will start doing more things with the context object
for the old node and that ran into problems without this
change. Regardless of that, I think it seems better to first update to
the new node and then mark the old node obsolete.
Differential Revision: https://phab.mercurial-scm.org/D5660
Martin von Zweigbergk <martinvonz@google.com> [Fri, 18 Jan 2019 17:09:42 -0800] rev 41339
unamend: import "copies" module as "copiesmod" to avoid shadowing
Differential Revision: https://phab.mercurial-scm.org/D5659
Martin von Zweigbergk <martinvonz@google.com> [Fri, 18 Jan 2019 17:08:02 -0800] rev 41338
tests: add more tests of uncommit/unamend with copies
The unamend tests show suboptimal behavior.
Differential Revision: https://phab.mercurial-scm.org/D5658
Martin von Zweigbergk <martinvonz@google.com> [Fri, 18 Jan 2019 16:49:18 -0800] rev 41337
tests: clean up after each test in test-unamend.t
Differential Revision: https://phab.mercurial-scm.org/D5657
Augie Fackler <augie@google.com> [Thu, 24 Jan 2019 10:21:59 -0500] rev 41336
cleanup: use clang-tidy to add missing {} around one-line statements
I find this easier to read. Cleanup performed like this:
hg files 'set:(**.c or **.cc or **.h) and not "listfile:contrib/clang-format-ignorelist"' | while read f ; do
clang-tidy -fix -checks=readability-braces-around-statements $f -- $(python-config --cflags) -Imercurial/cext -Imercurial
done
make format-c
I had to revert chg/chg.c as it's got a construct that seems to confuse
clang-tidy, so I'll work on that file later if this change is acceptable. I
only tackle files that are under clang-format's authority because otherwise
I'd have to do a bunch of manual formatting. A few files didn't get edited
because clang-tidy couldn't find some headers. Again, I'll figure that out
later assuming this change is accepted.
No check-code rule added for now because writing the regex sounds hard. In a
perfect world I guess we could write a test that uses clang-tidy on these
files, but I think clang-tidy is pretty rarely installed. :/
Differential Revision: https://phab.mercurial-scm.org/D5675