github spack/spack v0.11.0

latest releases: v0.17.2, releases/latest, v0.17.1...
4 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.

New packages

  • Spack now has 2,178 packages (from 1,114 in v0.10.0)
  • Many more Python packages (356) and R packages (471)
  • 48 Exascale Proxy Apps (try spack list -t proxy-app)

Core features for users

  • Relocatable binary packages (spack buildcache, #4854)
  • Spack now fully supports Python 3 (#3395)
  • Packages can be tagged and searched by tags (#4786)
  • Custom module file templates using Jinja (#3183)
  • spack bootstrap command now sets up a basic module environment (#3057)
  • Simplified and better organized help output (#3033)
  • Improved, less redundant spack install output (#5714, #5950)
  • Reworked spack dependents and spack dependencies commands (#4478)

Major new features for packagers

  • Multi-valued variants (#2386)
  • New conflicts() directive (#3125)
  • New dependency type: test dependencies (#5132)
  • Packages can require their own patches on dependencies (#5476)
    • depends_on(..., patches=<patch list>)
  • Build interface for passing linker information through Specs (#1875)
    • Major packages that use blas/lapack now use this interface
  • Flag handlers allow packages more control over compiler flags (#6415)
  • Package subclasses support many more build systems:
    • autotools, perl, qmake, scons, cmake, makefile, python, R, WAF
    • package-level support for installing Intel HPC products (#4300)
  • spack blame command shows contributors to packages (#5522)
  • spack create now guesses many more build systems (#2707)
  • Better URL parsing to guess package version URLs (#2972)
  • Much improved PythonPackage support (#3367)


  • Much faster concretization (#5716, #5783)
  • Improved output redirection (redirecting build output works properly #5084)
  • Numerous improvements to internal structure and APIs

Tutorials & Documentation

  • Many updates to documentation
  • New tutorial material from SC17
    • configuration
    • build systems
    • build interface
    • working with module generation
  • Documentation on docker workflows and best practices

Selected improvements and bug fixes

  • No longer build Python eggs -- installations are plain directories (#3587)
  • Improved filtering of system paths from build PATHs and RPATHs (#2083, #3910)
  • Git submodules are properly handled on fetch (#3956)
  • Can now set default number of parallel build jobs in config.yaml
  • Improvements to setup-env.csh (#4044)
  • Better default compiler discovery on Mac OS X (#3427)
    • clang will automatically mix with gfortran
  • Improved compiler detection on Cray machines (#3075)
  • Better support for IBM XL compilers
  • Better tab completion
  • Resume gracefully after prematurely terminated partial installs (#4331)
  • Better mesa support (#5170)

Spack would not be possible without our community. Thanks to all of our
contributors for the
new features and packages in this release!

Don't miss a new spack release

NewReleases is sending notifications on new releases.