* Features in this Release
+ Spec splicing
To make binary installation more seamless in Spack, `v0.23`
introduces "splicing", which allows users to deploy binaries
using local, optimized versions of a binary interface, even
if they were not built with that interface. For example, this
would allow you to build binaries in the cloud using `mpich`
and install them on a system using a local, optimized version
of `mvapich2` *without rebuilding*. Spack preserves full
provenance for the installed packages and knows that they
were built one way but deployed another.
The intent is to leverage this across many key HPC binary
packages, e.g. MPI, CUDA, ROCm, and libfabric.
Fundamentally, splicing allows Spack to redeploy an existing
spec with different dependencies than how it was built. There
are two interfaces to splicing.
a. Explicit Splicing
In the concretizer config, you can specify a target spec
and a replacement by hash.
```yaml
concretizer:
splice:
explicit:
- target: mpi
replacement: mpich/abcdef
```
Here, every installation that would normally use the target
spec will instead use its replacement. Above, any spec using
*any* `mpi` will be spliced to depend on the specific `mpich`
OBS-URL: https://build.opensuse.org/package/show/network:cluster/spack?expand=0&rev=111