py3: read/write plain lock file in binary mode
A lock file shouldn't contain '\n', so this isn't a BC.
util: stop calling os.stat_float_times()
It had Python-wide side effects, and it disappears in 3.7.0.
As of this change, we're mostly working on 3.7.0b2. There are a few
worrying failures, mostly around regular expressions, but we'll have
to tackle those separately.
Differential Revision: https://phab.mercurial-scm.org/D2697
cleanup: use stat_result[stat.ST_MTIME] instead of stat_result.st_mtime
The latter is floating point by default, and we've been doing
os.stat_float_times(False). Unfortunately, os.stat_float_times was
removed between Python 3.7.0a1 and 3.7.0b2, so we have to stop using
it.
Differential Revision: https://phab.mercurial-scm.org/D2696
osutil: implement minimal __getitem__ compatibility on our custom listdir type
We previously declined to do this, but the removal of the deprecated
os.stat_float_times() method in Python 3.7 forces our hand.
Differential Revision: https://phab.mercurial-scm.org/D2695
hgweb: adapt to socket._fileobject changes in Python 3
Differential Revision: https://phab.mercurial-scm.org/D2688
debugcommands: fix some %r output with bytestr() wrappers
Almost fixes test-merge-tools.t. I think the remaining failure there
is due to some overspecified tempfile names.
Differential Revision: https://phab.mercurial-scm.org/D2675
tests: add test for issue 5494 but with --collapse
This was not fixed, so the test case currently demonstrates the
breakage.
Differential Revision: https://phab.mercurial-scm.org/D2714
tests: .hg/merge is a directory, so use `test -d`
This part of test-rebase-interrupts.t would have passed before the fix
in
a580b2d65ded (rebase: make sure merge state is cleaned up for no-op
rebases (
issue5494), 2017-05-18).
Differential Revision: https://phab.mercurial-scm.org/D2713