Raphaël Gomès <rgomes@octobus.net> [Tue, 04 May 2021 10:33:36 +0200] rev 47044
rust-status: highlight a bug in Rust-augmented status
This was reported in issue6514, confirmed with this test reproduction.
This will be fixed with the next changeset.
Differential Revision: https://phab.mercurial-scm.org/D10638
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 07 May 2021 10:39:58 +0200] rev 47043
cache: avoid warming the fnodetags cache after clone
That cache can quite expensive to compute on large repository as not that `hg
clone` is warming all cache, this can introduces a significant slowdown for
clone time[1]. As a stop gap measure introduce a quick fix for
that on stable, skipping the fnodetags cache post-clone.
[1] https://www.mercurial-scm.org/pipermail/mercurial/2021-April/052679.html
Differential Revision: https://phab.mercurial-scm.org/D10695
Matt Harbison <matt_harbison@yahoo.com> [Wed, 05 May 2021 17:47:30 -0400] rev 47042
run-tests: fix whitelist/blacklist with directories on Windows
The file name is resolved with `os.path.relpath()` in the `Test` constructor,
which yields `\` on Windows. That doesn't match the `/` separator when using
MSYS tools to build the list, and it isn't obvious that this is the problem
because directory separators can mostly be used interchangeably. The
`--test-list` argument already seems to be properly handled.
Matt Harbison <matt_harbison@yahoo.com> [Thu, 11 Mar 2021 23:20:41 -0500] rev 47041
run-tests: ignore PermissionError when checking available ports
I'm not sure what this is, but I'm getting it occasionally when running in WSL.
When it was raised, none of the tests could run.
Matt Harbison <matt_harbison@yahoo.com> [Mon, 12 Apr 2021 20:58:19 -0400] rev 47040
heptapod-ci: enable pytype checking
The trigger is manual for now, until we get a better idea about stability,
resource usage, etc.
Differential Revision: https://phab.mercurial-scm.org/D10462
Matt Harbison <matt_harbison@yahoo.com> [Thu, 06 May 2021 18:40:23 -0400] rev 47039
hghave: fix the definition of `python3` to work on Windows
Both py2 and py3 executables are named `python.exe`, and may or may not be on
PATH. So use the dispatcher executable that comes with py3 to fetch the version
of the latest py3 executable. This allows at least one relnotes test to run on
Windows.
Differential Revision: https://phab.mercurial-scm.org/D10694
Matt Harbison <matt_harbison@yahoo.com> [Wed, 12 May 2021 12:41:52 -0400] rev 47038
util: avoid echoing the password to the console on Windows py3 (issue6446)
The `getpass.getpass()` implementation on Windows first checks if `sys.stdin`
and `sys.__stdin__` are the same object. It's not on py3 because the former is
replaced in dispatch.py with something that doesn't normalize '\n' to '\r\n'.
When they aren't the same object, it simply calls `sys.stdin.readline()` instead
of the mscvrt functions that read the input characters before they are echoed.
This simply copies the `getpass.win_getpass()` implementation without the stdin
check, and byteifies around the edges. I'm not sure if there's a reasonable
replacement for the check that we could implement. When echoing input into the
hg command, the `ui.interactive()` check causes `ui.getpass()` to bail before
getting here. If the proper config switches are used to bypass that and call
this, the process stalls until '\n' is input into the console. So there could
be a deadlock here when run by another command if the wrong config settings are
applied.
Differential Revision: https://phab.mercurial-scm.org/D10708
Nate Skulic <nate.skulic@gmail.com> [Mon, 10 May 2021 00:54:08 +0000] rev 47037
convert: update p4 for Python 3
Differential Revision: https://phab.mercurial-scm.org/D10703
Matt Harbison <matt_harbison@yahoo.com> [Sun, 02 May 2021 16:56:20 -0400] rev 47036
tests: change the fixer commands to use the buffer attribute on stdio objects
Otherwise `\r` was getting injected into the fixed lines and throwing off the
commit hashes on Windows when the fixer is invoked with py3.
Differential Revision: https://phab.mercurial-scm.org/D10637
Matt Harbison <matt_harbison@yahoo.com> [Sat, 01 May 2021 16:13:53 -0400] rev 47035
tests: stabilize test-persistent-nodemap.t on Windows
Several issues here:
- Hooks can't invoke shell scripts on Windows, so use `sh` to launch
- `dd` in MSYS only recognizes `status=noxfer`
- The `PATH` updating triggered a massive slowdown, but is no longer needed
I have no idea why, but removing the `PATH` update substantially increased the
speed of the test. It was running finishing at ~4:30 with `--debug` and ~14:50
without it, but now completes in ~2:20 on my Windows laptop.
Differential Revision: https://phab.mercurial-scm.org/D10636