# HG changeset patch # User Pierre-Yves David # Date 2020-02-18 17:32:31 # Node ID 75ada5fe9b62cfb3a728ee92fd97b11edf545574 # Parent 23df5ecfa365e83eac12ecaa28b80b677fc3e9e5 hghave: add a `rust` keyword to detect the use of compiled rust code The content of some on disk cache can varies when using rust (because it is faster to do so in the rust variant). So we need to be able to detect this case for some test. Differential Revision: https://phab.mercurial-scm.org/D8162 diff --git a/tests/hghave.py b/tests/hghave.py --- a/tests/hghave.py +++ b/tests/hghave.py @@ -332,6 +332,17 @@ def has_hg_range(v): return gethgversion() >= (int(major), int(minor)) +@check("rust", "Using the Rust extensions") +def has_rust(): + """Check is the mercurial currently running is using some rust code""" + cmd = b'hg debuginstall --quiet 2>&1' + match = br'checking module policy \(([^)]+)\)' + policy = matchoutput(cmd, match) + if not policy: + return False + return b'rust' in policy.group(1) + + @check("hg08", "Mercurial >= 0.8") def has_hg08(): if checks["hg09"][0]():