Fix performance regression with spack mirror create --all (#32005)

This PR fixes the performance regression reported in #31985 and a few
other issues found while refactoring the spack mirror create command.

Modifications:

* (Primary) Do not require concretization for
  `spack mirror create --all`
* Forbid using --versions-per-spec together with --all
* Fixed a few issues when reading specs from input file (specs were
  not concretized, command would fail when trying to mirror
  dependencies)
* Fix issue with default directory for spack mirror create not being
  canonicalized
* Add more unit tests to poke spack mirror create
* Skip externals also when mirroring environments
* Changed slightly the wording for reporting (it was mentioning
  "Successfully created" even in presence of errors)
* Fix issue with colify (was not called properly during error
  reporting)
This commit is contained in:
Massimiliano Culpo
2022-08-12 01:51:01 +02:00
committed by GitHub
parent a550b8ce30
commit 1913dc2da3
14 changed files with 419 additions and 187 deletions

View File

@@ -17,6 +17,6 @@ class RktBase(RacketPackage):
version("8.3", commit="cab83438422bfea0e4bd74bc3e8305e6517cf25f") # tag='v8.3'
depends_on("racket@8.3", type=("build", "run"), when="@8.3")
name = "base"
racket_name = "base"
pkgs = True
subdirectory = "pkgs/{0}".format(name)
subdirectory = "pkgs/{0}".format(racket_name)

View File

@@ -20,6 +20,6 @@ class RktCextLib(RacketPackage):
depends_on("rkt-dynext-lib@8.3", type=("build", "run"), when="@8.3")
depends_on("rkt-scheme-lib@8.3", type=("build", "run"), when="@8.3")
name = "cext-lib"
racket_name = "cext-lib"
pkgs = True
subdirectory = name
subdirectory = racket_name

View File

@@ -20,6 +20,6 @@ class RktCompilerLib(RacketPackage):
depends_on("rkt-rackunit-lib@8.3", type=("build", "run"), when="@8.3")
depends_on("rkt-zo-lib@1.3", type=("build", "run"), when="@8.3")
name = "compiler-lib"
racket_name = "compiler-lib"
pkgs = True
subdirectory = "pkgs/{0}".format(name)
subdirectory = "pkgs/{0}".format(racket_name)

View File

@@ -16,6 +16,6 @@ class RktDynextLib(RacketPackage):
version("8.3", commit="cc22e2456df881a9008240d70dd9012ef37395f5") # tag = 'v8.3'
depends_on("rkt-base@8.3", type=("build", "run"), when="@8.3")
name = "dynext-lib"
racket_name = "dynext-lib"
pkgs = True
subdirectory = name
subdirectory = racket_name

View File

@@ -17,6 +17,6 @@ class RktRackunitLib(RacketPackage):
depends_on("rkt-base@8.3:", type=("build", "run"), when="@8.3")
depends_on("rkt-testing-util-lib@8.3", type=("build", "run"), when="@8.3")
name = "rackunit-lib"
racket_name = "rackunit-lib"
pkgs = True
subdirectory = name
subdirectory = racket_name

View File

@@ -16,5 +16,5 @@ class RktSchemeLib(RacketPackage):
version("8.3", commit="a36e729680818712820ee5269f5208c3c0715a6a") # tag='v8.3'
depends_on("rkt-base@8.3", type=("build", "run"), when="@8.3")
name = "scheme-lib"
racket_name = "scheme-lib"
pkgs = True

View File

@@ -16,6 +16,6 @@ class RktTestingUtilLib(RacketPackage):
version("8.3", commit="683237bee2a979c7b1541092922fb51a75ea8ca9") # tag='v8.3'
depends_on("rkt-base@8.3:", type=("build", "run"), when="@8.3")
name = "testing-util-lib"
racket_name = "testing-util-lib"
pkgs = True
subdirectory = name
subdirectory = racket_name

View File

@@ -16,6 +16,6 @@ class RktZoLib(RacketPackage):
version("1.3", commit="cab83438422bfea0e4bd74bc3e8305e6517cf25f") # tag='v1.3'
depends_on("rkt-base@8.3:", type=("build", "run"), when="@1.3")
name = "zo-lib"
racket_name = "zo-lib"
pkgs = True
subdirectory = "pkgs/{0}".format(name)
subdirectory = "pkgs/{0}".format(racket_name)