summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTodd Gamblin <tgamblin@llnl.gov>2020-08-05 17:01:18 -0700
committerTodd Gamblin <tgamblin@llnl.gov>2020-08-12 23:58:10 -0700
commitc05fa25057d400566017681c4d992a29550d3f4d (patch)
treed40f5f768bae2701e447fc6c3fda9f11a84c835b
parent8e2f41fe181c693666c28a23c6117faccb4808a3 (diff)
downloadspack-c05fa25057d400566017681c4d992a29550d3f4d.tar.gz
spack-c05fa25057d400566017681c4d992a29550d3f4d.tar.bz2
spack-c05fa25057d400566017681c4d992a29550d3f4d.tar.xz
spack-c05fa25057d400566017681c4d992a29550d3f4d.zip
bugfix: fix spack -V with releases/latest and shallow clones (#17884)
`spack -V` stopped working when we added the `releases/latest` tag to track the most recent release. It started just reporting the version, even on a `develop` checkout. We need to tell it to *only* search for tags that start with `v`, so that it will ignore `releases/latest`. `spack -V` also would print out unwanted git eror output on a shallow clone. - [x] add `--match 'v*'` to `git describe` arguments - [x] route error output to `os.devnull`
-rw-r--r--lib/spack/spack/main.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/spack/spack/main.py b/lib/spack/spack/main.py
index b15e99f08b..33c8d1f4c6 100644
--- a/lib/spack/spack/main.py
+++ b/lib/spack/spack/main.py
@@ -128,8 +128,8 @@ def get_version():
git = exe.which("git")
if git:
with fs.working_dir(spack.paths.prefix):
- desc = git(
- "describe", "--tags", output=str, fail_on_error=False)
+ desc = git("describe", "--tags", "--match", "v*",
+ output=str, error=os.devnull, fail_on_error=False)
if git.returncode == 0:
match = re.match(r"v([^-]+)-([^-]+)-g([a-f\d]+)", desc)