changeset 47039:94c0c36299b1 stable

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
author Matt Harbison <matt_harbison@yahoo.com>
date Thu, 06 May 2021 18:40:23 -0400
parents 5b3513177f2b
children e917fa36fb58
files tests/hghave.py
diffstat 1 files changed, 4 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/tests/hghave.py	Wed May 12 12:41:52 2021 -0400
+++ b/tests/hghave.py	Thu May 06 18:40:23 2021 -0400
@@ -863,7 +863,10 @@
 
 @check("py3exe", "a Python 3.x interpreter is available")
 def has_python3exe():
-    return matchoutput('python3 -V', br'^Python 3.(5|6|7|8|9)')
+    py = 'python3'
+    if os.name == 'nt':
+        py = 'py -3'
+    return matchoutput('%s -V' % py, br'^Python 3.(5|6|7|8|9)')
 
 
 @check("pure", "running with pure Python code")