D7374: hghave: add a check for the `xz` compression utility
mharbison72 (Matt Harbison)
phabricator at mercurial-scm.org
Tue Nov 19 03:49:56 UTC 2019
Closed by commit rHG21e05aabef8c: hghave: add a check for the `xz` compression utility (authored by mharbison72).
This revision was automatically updated to reflect the committed changes.
REPOSITORY
rHG Mercurial
CHANGES SINCE LAST UPDATE
https://phab.mercurial-scm.org/D7374?vs=18055&id=18222
CHANGES SINCE LAST ACTION
https://phab.mercurial-scm.org/D7374/new/
REVISION DETAIL
https://phab.mercurial-scm.org/D7374
AFFECTED FILES
tests/hghave.py
tests/test-archive.t
CHANGE DETAILS
diff --git a/tests/test-archive.t b/tests/test-archive.t
--- a/tests/test-archive.t
+++ b/tests/test-archive.t
@@ -574,8 +574,8 @@
#if py3
$ hg archive ../archive.txz
- $ xz -l ../archive.txz | head -n1
- Strms Blocks Compressed Uncompressed Ratio Check Filename
+ $ which xz >/dev/null && xz -l ../archive.txz | head -n1 || true
+ Strms Blocks Compressed Uncompressed Ratio Check Filename (xz !)
$ rm -f ../archive.txz
#else
$ hg archive ../archive.txz
diff --git a/tests/hghave.py b/tests/hghave.py
--- a/tests/hghave.py
+++ b/tests/hghave.py
@@ -673,6 +673,13 @@
return False
+ at check("xz", "xz compression utility")
+def has_xz():
+ # When Windows invokes a subprocess in shell mode, it uses `cmd.exe`, which
+ # only knows `where`, not `which`. So invoke MSYS shell explicitly.
+ return matchoutput("sh -c 'test -x \"`which xz`\"'", b'')
+
+
@check("msys", "Windows with MSYS")
def has_msys():
return os.getenv('MSYSTEM')
To: mharbison72, #hg-reviewers, indygreg
Cc: indygreg, mercurial-devel
More information about the Mercurial-devel
mailing list