A flexible package manager that supports multiple versions, configurations, platforms, and compilers.
OTHER License
Bot releases are visible (Hide)
Published by tgamblin about 4 years ago
This release contains one feature addition:
SPACK_GNUPGHOME
to override Spack's GPG path (#17139)Several bugfixes for CUDA, binary packaging, and spack -V
:
.libs
method searches for libcudart
instead of libcuda
(#18000)CUDAHOSTCXX
in environments that contain CUDA (#17826)buildcache create
: NoOverwriteException
is a warning, not an error (#17832)spack buildcache list --allarch
(#17884)spack -V
works with releases/latest
tag and shallow clones (#17884)And fixes for GitHub Actions and tests to ensure that CI passes on the
release branch (#15687, #17279, #17328, #17377, #17732).
Published by tgamblin about 4 years ago
This release contains the following bugfixes:
It also adds a support script for Spack tutorials:
Published by becker33 about 4 years ago
This minor release includes two new features:
This release also includes several important fixes:
spack buildcache list
does not exit on first failure and lists later mirrors (#17565)Published by scheibelp over 4 years ago
This minor release includes several important fixes:
spack install
message to prompt user when an environment is not explicitly activated (#17454)This release also adds a mirror for all sources that are fetched in Spack (#17077). It is expected to be useful when the official website for a Spack package is unavailable.
Published by becker33 over 4 years ago
v0.15.0
is a major feature release.
Cray support Spack will now work properly on Cray "Cluster"
systems (non XC systems) and after a module purge
command on Cray
systems. See #12989
Virtual package configuration Virtual packages are allowed in
packages.yaml configuration. This allows users to specify a virtual
package as non-buildable without needing to specify for each
implementation. See #14934
New config subcommands This release adds spack config add
and
spack config remove
commands to add to and remove from yaml
configuration files from the CLI. See #13920
Environment activation Anonymous environments are no longer
automatically activated in the current working directory. To activate
an environment from a spack.yaml
file in the current directory, use
the spack env activate .
command. This removes a concern that users
were too easily polluting their anonymous environments with accidental
installations. See #17258
Apple clang compiler The clang compiler and the apple-clang
compiler are now separate compilers in Spack. This allows Spack to
improve support for the apple-clang compiler. See #17110
Finding external packages Spack packages can now support an API
for finding external installations. This allows the spack external find
command to automatically add installations of those packages to
the user's configuration. See #15158
spack load --first
option to load first match (instead of prompting user) (#15622)spack dev-build
command:
spack install --fail-fast
allows builds to fail at the first error (rather than best-effort) (#15295)spack view
command: new support for a copy/relocate view type (#16480)spack mirror -a
command now supports excluding packages (#14154)spack buildcache create
is now environment-aware (#16580)The following commands were deprecated in v0.13.0, and have now been removed:
spack configure
spack build
spack diy
The following commands were deprecated in v0.14.0, and will be removed in the next major release:
spack bootstrap
Some of the most notable bugfixes in this release include:
-h
(#15429)spack install
gracefully handles being backgrounded (#15723, #14682)-isystem
instead of -I
in cases that the underlying build system does as well (#16077)The Spack project is constantly engaged in routine maintenance,
bugfixes, and improvements for the package ecosystem. Of particular
note in this release are the following:
develop
branch run E4S CI pipeline (#16338)spack debug report
command makes reporting bugs easier (#15834)Published by tgamblin over 4 years ago
This is a minor release on the 0.14
series. It includes performance improvements and bug fixes:
spack install
handles foreground/background (#15723)index.yaml
database file (#15298).prefix
in environments/views (#15475)TERM
env variable (#15630)LMOD
env vars to Intel modules (#15778)Published by tgamblin over 4 years ago
This is a bugfix release on top of v0.14.0
. Specific fixes include:
spack load
now works with packages that have been renamed (#14348)suite-sparse
installation (#15326)configure_args
during module refresh (#11084)Published by tgamblin over 4 years ago
v0.14.0
is a major feature release, with 3 highlighted features:
Distributed builds. Multiple Spack instances will now coordinate properly with each other through locks. This works on a single node (where you've called spack
several times) or across multiple nodes with a shared filesystem. For example, with SLURM, you could build trilinos
and its dependencies on 2 24-core nodes, with 3 Spack instances per node and 8 build jobs per instance, with srun -N 2 -n 6 spack install -j 8 trilinos
. This requires a filesystem with locking enabled, but not MPI or any other library for parallelism.
Build pipelines. You can also build in parallel through Gitlab CI. Simply create a Spack environment and push it to Gitlab to build on Gitlab runners. Pipeline support is now integreated into a single spack ci
command, so setting it up is easier than ever. See the Pipelines section in the docs.
Container builds. The new spack containerize
command allows you to create a Docker or Singularity recipe from any Spack environment. There are options to customize the build if you need them. See the Container Images section in the docs.
In addition, there are several other new commands, many bugfixes and improvements, and spack load
no longer requires modules, so you can use it the same way on your laptop or on your supercomputer.
Spack grew by over 300 packages since our last release in November 2019, and the project grew to over 500 contributors. Thanks to all of you for making yet another great release possible. Detailed notes below.
spack ci
command to manage CI pipelines (#12854)spack containerize
(#14202)spack load
now works without using modules (#14062, #14628)spack gc
(#13534)spack commands --format=bash
auto-generates completion (#14393, #14607)spack test
sends args to pytest
, supports better listing (#14319)spack buildcache
command (#14237, #14346, #14466, #14467, #14639, #14642, #14659, #14696, #14698, #14714, #14732, #14929, #15003, #15086, #15134)spack find -p
now works in environments (#10019, #13972)spack find
(#14757)spack ci
(#12854)spack containerize
(#14202)spack gc
(#13534)spack load
accepts --only package
, --only dependencies
(#14062, #14628)spack commands --format=bash
(#14393)spack commands --update-completion
(#14607)spack install --with-cache
has new option: --no-check-signature
(#11107)spack test
now has --list
, --list-long
, and --list-names
(#14319)spack install --help-cdash
moves CDash help out of the main help (#13704)spack release-jobs
has been rolled into spack ci
spack bootstrap
will be removed in a future version, as it is no longer needed to set up modules (see spack load
improvements above)spack ci
command to build pipelines (see docs)octave
compiler wrapper usage (#14726)builtin
aren't missing dependencies (#13949)Published by tgamblin over 4 years ago
This release contains several bugfixes:
Published by tgamblin almost 5 years ago
This release contains more major performance improvements for Spack environments, as well as bugfixes for mirrors and a python
issue with RHEL8.
BundlePackages
(#13908)spack mirror create
on the same dir (#13908)python
is unavailable (#14252)Published by tgamblin almost 5 years ago
This release contains major performance improvements for Spack environments, as well as some bugfixes and minor changes.
Published by tgamblin almost 5 years ago
This is a bugfix release on top of v0.13.0
. Specific fixes include:
spack find
now displays variants and other spec constraintsPublished by tgamblin almost 5 years ago
v0.13.0
is our biggest Spack release yet, with many new major features.
From facility deployment to improved environments, microarchitecture
support, and auto-generated build farms, this release has features for all of
our users.
Spack grew by over 700 packages in the past year, and the project now has
over 450 contributors. Thanks to all of you for making this release possible.
PATH
, LD_LIBRARY_PATH
, CPATH
,CMAKE_PREFIX_PATH
, PKG_CONFIG_PATH
, etc. to point to this view.skylake
, broadwell
, power9
, zen2
avx512
and sse3
spack install foo target=icelake
matrix:
)spack release-jobs
can detect package.py
changes and generate.gitlab-ci.yml
to create binaries for an environment or stackspack mirror create --all
downloads all package sources/resources/patchesspack dev-build
runs phases of the install pipeline on the working directoryspack deprecate
permanently symlinks an old, unwanted package to a new onespack verify
checks that packages' files match what was originally installedspack find --json
prints JSON
that is easy to parse with, e.g. jq
spack find --format FORMAT
allows you to flexibly print package metadataspack spec --json
prints JSON version of spec.yaml
RPATHs
needed to make executables find compilerlibstdc++
in icpc
or g++
)spack compiler find
now also throttles number of spawned processes$TMPDIR
instead of$spack/var/spack/cache
.spec
format stringsspec.yaml
file anywhere in the CLI you can type a spec.spack edit
respects VISUAL
environment variablespack build
, spack configure
, spack diy
deprecated in favor ofspack dev-build
and spack install
Published by tgamblin almost 6 years ago
This is a minor bugfix release, with a minor fix in the tutorial and a flake8
fix.
Bugfixes
r
back to regex strings in binary distributionPublished by tgamblin almost 6 years ago
spack.yaml
and spack.lock
files for tracking dependenciesOver 2,900 packages (800 added since last year)
Spack would not be possible without our community. Thanks to all of our
contributors for the
new features and packages in this release!
Published by tgamblin over 6 years ago
This release contains the following fixes:
gfortran
7 compiler detection (#7017)Published by tgamblin almost 7 years ago
This release contains bugfixes for compiler flag handling. There were issues in v0.11.0
that caused some packages to be built without proper optimization.
Fixes:
Includes:
list_url
in various R packagesPublished by tgamblin almost 7 years ago
Spack v0.11.0 contains many improvements since v0.10.0.
Below is a summary of the major features, broken down by category.
spack list -t proxy-app
)spack buildcache
, #4854)spack bootstrap
command now sets up a basic module environment (#3057)spack install
output (#5714, #5950)spack dependents
and spack dependencies
commands (#4478)conflicts()
directive (#3125)test
dependencies (#5132)depends_on(..., patches=<patch list>)
spack blame
command shows contributors to packages (#5522)spack create
now guesses many more build systems (#2707)PythonPackage
support (#3367)config.yaml
setup-env.csh
(#4044)Spack would not be possible without our community. Thanks to all of our
contributors for the
new features and packages in this release!
Published by tgamblin almost 8 years ago
This is Spack v0.10.0
. With this release, we will start to push Spack releases more regularly. This is the last Spack release without automated package testing. With the next release, we will begin to run package tests in addition to unit tests.
Spack has grown rapidly from 422 to 1,114 packages, thanks to the hard work of over 100 contributors. Below is a condensed version of all the changes since v0.9.1
.
sbang
cflags
, cxxflags
, fflags
on the command linespack install
supports --dirty option for emergenciesbuild
, link
, and run
Package
base classes for custom build systems
AutotoolsPackage
, CMakePackage
, PythonPackage
, etc.spack create
now guesses many more build systemsspack setup
spec
objects
BLAS
/LAPACK
/SCALAPACK
librariesspec['blas'].blas_libs
nose
to pytest
for unit tests.
Published by tgamblin over 9 years ago
Minor release with some updates to the README to point people to the mailing list and to outline how to contribute.