Mercurial > hg
annotate contrib/win32/hg.bat @ 50744:bca4037306da stable
rust-revlog: fix incorrect results with NULL_NODE prefixes
In case a short hash is a prefix of `NULL_NODE`, the correct revision
number lookup is `NULL_REVISION` only if there is no match in the nodemap.
Indeed, if there is a single nodemap match, then it is an ambiguity with the
always matching `NULL_NODE`.
Before this change, using the Mercurial development repository as a testbed (it
has public changesets with node ID starting with `0005` and `0009`), this is
what `rhg` did (plain `hg` provided for reference)
```
$ rust/target/debug/rhg cat -r 000 README
README: no such file in rev 000000000000
$ hg cat -r 000 README
abort: ambiguous revision identifier: 000
```
Here is the expected output for `rhg` on ambiguous prefixes (again, before
this change):
```
$ rust/target/debug/rhg cat -r 0001 README
abort: ambiguous revision identifier: 0001
```
The test provided by 8c29af0f6d6e in `test-rhg.t` could become flaky with
this change, unless all hashes are fixed. We expect reviewers to be more
sure about that than we are.
author | Georges Racinet <georges.racinet@octobus.net> |
---|---|
date | Thu, 30 Mar 2023 11:34:30 +0200 |
parents | fc8a5c9ecee0 |
children |
rev | line source |
---|---|
6513
66e87c11447d
Add a batch file driver for Windows
Paul Moore <p.f.moore@gmail.com>
parents:
diff
changeset
|
1 @echo off |
66e87c11447d
Add a batch file driver for Windows
Paul Moore <p.f.moore@gmail.com>
parents:
diff
changeset
|
2 rem Windows Driver script for Mercurial |
66e87c11447d
Add a batch file driver for Windows
Paul Moore <p.f.moore@gmail.com>
parents:
diff
changeset
|
3 |
66e87c11447d
Add a batch file driver for Windows
Paul Moore <p.f.moore@gmail.com>
parents:
diff
changeset
|
4 setlocal |
66e87c11447d
Add a batch file driver for Windows
Paul Moore <p.f.moore@gmail.com>
parents:
diff
changeset
|
5 set HG=%~f0 |
66e87c11447d
Add a batch file driver for Windows
Paul Moore <p.f.moore@gmail.com>
parents:
diff
changeset
|
6 |
46885
fc8a5c9ecee0
win32: enable legacy I/O mode to fix missing pager output on Windows with py3
Matt Harbison <matt_harbison@yahoo.com>
parents:
23934
diff
changeset
|
7 set PYTHONLEGACYWINDOWSSTDIO=1 |
fc8a5c9ecee0
win32: enable legacy I/O mode to fix missing pager output on Windows with py3
Matt Harbison <matt_harbison@yahoo.com>
parents:
23934
diff
changeset
|
8 |
19091
f01a351db791
win32: use explicit path to "python.exe" only if it exists
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
12653
diff
changeset
|
9 rem Use a full path to Python (relative to this script) if it exists, |
f01a351db791
win32: use explicit path to "python.exe" only if it exists
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
12653
diff
changeset
|
10 rem as the standard Python install does not put python.exe on the PATH... |
f01a351db791
win32: use explicit path to "python.exe" only if it exists
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
12653
diff
changeset
|
11 rem Otherwise, expect that python.exe can be found on the PATH. |
6513
66e87c11447d
Add a batch file driver for Windows
Paul Moore <p.f.moore@gmail.com>
parents:
diff
changeset
|
12 rem %~dp0 is the directory of this script |
66e87c11447d
Add a batch file driver for Windows
Paul Moore <p.f.moore@gmail.com>
parents:
diff
changeset
|
13 |
19091
f01a351db791
win32: use explicit path to "python.exe" only if it exists
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
12653
diff
changeset
|
14 if exist "%~dp0..\python.exe" ( |
f01a351db791
win32: use explicit path to "python.exe" only if it exists
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
12653
diff
changeset
|
15 "%~dp0..\python" "%~dp0hg" %* |
f01a351db791
win32: use explicit path to "python.exe" only if it exists
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
12653
diff
changeset
|
16 ) else ( |
f01a351db791
win32: use explicit path to "python.exe" only if it exists
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
12653
diff
changeset
|
17 python "%~dp0hg" %* |
f01a351db791
win32: use explicit path to "python.exe" only if it exists
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
12653
diff
changeset
|
18 ) |
6513
66e87c11447d
Add a batch file driver for Windows
Paul Moore <p.f.moore@gmail.com>
parents:
diff
changeset
|
19 endlocal |
23934
975c4fc4a512
hg.bat: return exit code explicitly for indirect invocation
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
19091
diff
changeset
|
20 |
975c4fc4a512
hg.bat: return exit code explicitly for indirect invocation
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
19091
diff
changeset
|
21 exit /b %ERRORLEVEL% |