summaryrefslogtreecommitdiff
path: root/share
AgeCommit message (Collapse)AuthorFilesLines
2024-10-28cmd/solve: use interface from cmd/spec (#47182)Greg Becker2-8/+10
Currently, `spack solve` has different spec selection semantics than `spack spec`. `spack solve` currently does not allow specifying a single spec when an environment is active. This PR modifies `spack solve` to inherit the interface from `spack spec`, and to use the same spec selection logic. This will allow for better use of `spack solve --show opt` for debugging. --------- Co-authored-by: Todd Gamblin <tgamblin@llnl.gov>
2024-10-28ML CI: Linux aarch64 (#39666)Adam J. Stewart3-0/+222
* ML CI: Linux aarch64 * Add config files * No aarch64 tag * Don't specify image * Use amazonlinux image Co-authored-by: kwryankrattiger <80296582+kwryankrattiger@users.noreply.github.com> * Update and require * GCC is too old * Fix some builds * xgboost doesn't support old GCC + cuda * Run on newer Ubuntu * Remove mxnet * Try aarch64 range * Use main branch * Conflict applies to all targets * cuda only required when +cuda * Use tagged version * Comment out tf-estimator * Add ROCm, use newer Ubuntu * Remove ROCm --------- Co-authored-by: kwryankrattiger <80296582+kwryankrattiger@users.noreply.github.com>
2024-10-26Add `-t` short option for `spack --backtrace` (#47227)Todd Gamblin2-4/+4
Signed-off-by: Todd Gamblin <tgamblin@llnl.gov>
2024-10-25Normalize Spack Win entry points (#38648)John W. Parent2-0/+78
* Normalize Spack Win entrypoints Currently Spack has multiple entrypoints on Windows that in addition to differing from *nix implementations, differ from shell to shell on Windows. This is a bit confusing for new users and in general unnecessary. This PR adds a normal setup script for the batch shell while preserving the previous "click from file explorer for spack shell" behavior. Additionally adds a shell title to both powershell and cmd letting users know this is a Spack shell * remove doskeys
2024-10-24Env help: expand and refine subcommand help and descriptions (#47089)Tamara Dahlgren2-33/+33
This PR is in response to a question in the `environments` slack channel (https://spackpm.slack.com/archives/CMHK7MF51/p1729200068557219) about inadequate CLI help/documentation for one specific subcommand. This PR uses the approach I took for the descriptions and help for `spack test` subcommands. Namely, I use the first line of the relevant docstring as the description, which is shown per subcommand in `spack env -h`, and the entire docstring as the help. I then added, where it seemed appropriate, help. I also tweaked argument docstrings to tighten them up, make consistent with similar arguments elsewhere in the command, and elaborate when it seemed important. (The only subcommand I didn't touch is `loads`.) For example, before: ``` $ spack env update -h usage: spack env update [-hy] env positional arguments: env name or directory of the environment to activate optional arguments: -h, --help show this help message and exit -y, --yes-to-all assume "yes" is the answer to every confirmation request ``` After the changes in this PR: ``` $ spack env update -h usage: spack env update [-hy] env update the environment manifest to the latest schema format update the environment to the latest schema format, which may not be readable by older versions of spack a backup copy of the manifest is retained in case there is a need to revert this operation positional arguments: env name or directory of the environment optional arguments: -h, --help show this help message and exit -y, --yes-to-all assume "yes" is the answer to every confirmation request ``` --------- Co-authored-by: Todd Gamblin <tgamblin@llnl.gov>
2024-10-24bootstrap: add clingo 3.13 binaries and more (#47126)Harmen Stoppels7-624/+704
2024-10-23ci: Remove deprecated logic from the ci module (#47062)Scott Wittenburg4-166/+2
ci: Remove deprecated logic from the ci module Remove the following from the ci module, schema, and tests: - deprecated ci stack and handling of old ci config - deprecated mirror handling logic - support for artifacts buildcache - support for temporary storage url
2024-10-23ParaView: Various fixes to better support no mpi and fides builds (#47114)kwryankrattiger1-1/+1
* ParaView: Explicitly set the ENABLE_MPI on/off * Disallow MPI in the DAG when ~mpi * @5.13 uses 'remove_children', use pugixml@1.11:, See #47098 * cloud_pipelines/stacks/data-vis-sdk: paraview +raytracing: add +adios2 +fides Co-authored-by: Bernhard Kaindl <bernhardkaindl7@gmail.com>
2024-10-22spack arch: add --family --generic flags (#47078)Harmen Stoppels2-3/+7
This allows users to do: ``` spack install ... target=$(spack arch --target --family) spack install ... arch=$(spack arch --family) spack install ... target=$(spack arch --target --generic) spack install ... arch=$(spack arch --generic) ``` Deprecate `--generic-target` in favor of `--generic --target`
2024-10-21Devtools darwin (#46910)Tom Scogland3-0/+100
* stacks: add a stack for devtools on darwin After getting this whole mess building on darwin, let's keep it that way, and maybe make it so we have some non-ML darwin binaries in spack as well. * reuse: false for devtools * dtc: fix darwin dylib name and id On mac the convention is `lib<name>.<num>.dylib`, while the makefile creates a num suffixed one by default. The id in the file is also a local name rather than rewritten to the full path, this fixes both problems. * node-js: make whereis more deterministic * relocation(darwin): catch Mach-O load failure The MachO library can throw an exception rather than return no headers, this happened in an elf file in the test data of go-bootstrap. Trying catching the exception and moving on for now. May also need to look into why we're trying to rewrite an elf file. * qemu: add darwin flags to clear out warnings There's a build failure for qemu in CI, but it's invisible because of the immense mass of warning output. Explicitly specify the target macos version and remove the extraneous unknown-warning-option flag. * dtc: libyaml is also a link dependency libyaml is required at runtime to run the dtc binary, lack of it caused the ci for qemu to fail when the library wasn't found.
2024-10-21Build wrf%oneapi in aws-pcluster-x86_64_v4 stack (#47075)Stephen Sachs1-4/+2
2024-10-18e4s ci stacks: add nwchem (#47055)eugeneswalker5-0/+5
2024-10-17e4s ci stacks: add fftx cpu, cuda, and rocm builds (#47004)eugeneswalker6-0/+14
* e4s ci stacks: add fftx cpu, cuda, and rocm builds * disable fftx+rocm due to spack github issue #47034 * e4s oneapi: fftx has spack build error https://github.com/spack/spack/issues/47048
2024-10-16e4s external rocm ci: upgrade to v6.2.1 (#46871)eugeneswalker2-76/+76
* e4s external rocm ci: upgrade to v6.2.1 * use ghcr.io/spack/spack/ubuntu22.04-runner-amd64-gcc-11.4-rocm6.2.1:2024.10.08 * magma +rocm: add entry for v6.2.1
2024-10-16ci: use ghcr.io images instead of dockerhub hosted (#46830)eugeneswalker7-12/+12
2024-10-15Reduce noop job resource requests (#46920)Caetano Melone1-2/+2
`no-spec-to-rebuild` jobs use far less resources than they request. For example, [this](https://gitlab.spack.io/spack/spack/-/jobs/12944487) job [used](https://prometheus.spack.io/api/v1/query_range?query=container_memory_working_set_bytes{pod=%22runner-dcsgp53u-project-2-concurrent-3-0ubclrr1%22}&start=1728655743&end=1728656543&step=1s) around 3MB. While this won't lead to any crazy cost savings, k8s requests effectively block other jobs from using the resources, so reducing this to a reasonable number is important.
2024-10-15env depfile: generate Makefile with absolute script path (#46966)Tobias Ribizel1-1/+1
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2024-10-14Don't require OIDC initialization for noop (#46921)kwryankrattiger1-0/+1
ref. https://github.com/spack/spack-infrastructure/pull/957
2024-10-10Use pcluster-alinux2 container image with pre-installed compilers (#44150)Stephen Sachs6-70/+76
2024-10-04`gc`: restrict to specific specs (#46790)Todd Gamblin2-1/+7
`spack gc` has so far been a global or environment-specific thing. This adds the ability to restrict garbage collection to specific specs, e.g. if you *just* want to get rid of all your unused python installations, you could write: ```console spack gc python ``` - [x] add `constraint` arg to `spack gc` - [x] add a simple test Signed-off-by: Todd Gamblin <tgamblin@llnl.gov>
2024-10-03Noop jobs should do less work (#46732)kwryankrattiger1-0/+4
2024-10-02fix 'command -v' not in csh (#45845)Ray Huang1-2/+2
2024-09-30Update and standardize implementation of RADIUSS packages (#45648)Adrien Bernede1-2/+3
* Add latest releases of Camp, RAJA, Umpire, CHAI and CARE * Address review comments + blt requirement in Umpire * CARE @develop & @main: Submodules -> False * Changes in Umpire * Changes in RAJA * Changes in CHAI * Changes in RAJA: prefer 'spec.satisfies' to 'in spec' This is due to a non-equivalence in Spack with providers like mpi. See e.g. https://github.com/spack/spack/pull/46126 * Changes in Umpire: prefer 'spec.satisfies' to 'in spec' This is due to a non-equivalence in Spack with providers like mpi. See e.g. https://github.com/spack/spack/pull/46126 * Changes in CARE: Still need to update to CachedCMakePackage based on RADIUSS Spack Configs version * Missing change in RAJA + changes in fmt * Fix synta * Changes in Camp * Fix style * CHAI: when ~raja, turn off RAJA in build system * Fix: Ascent@0.9.3 does not support RAJA@2024.07.0 * Enforce same version constraint on Umpire as for RAJA * Enforce preferred version of vtk-m in ascent 0.9.3 * Migrate CARE package to CachedCMakePackage * Fix style in CARE package * CARE: Apply changes for uniform implementation accross RADIUSS projects * Caliper: move to CachedCMakePackage, from RADIUSS Spack Configs * Adapt RAJA Perf to spack CI * Activate CHAI, CARE and RAJAPerf in Spack CI * Fixes and diffs with RADIUSS Spack Configs * Caliper: fix * Caliper : fix + RAJAPerf : style * RAJAPerf: fixes * Update maintainers * raja-perf: fix license header * raja-perf: Fix variant naming openmp_target -> omptarget * raja-perf: style and blt dependency versions * CARE: benchmark and examples off by default (like tests) * CARE: fix missing variable * Update var/spack/repos/builtin/packages/raja-perf/package.py * CARE: fix branch name * Revert changes in MFEM to pass CI * Fix CXX17 condition in RAJA + add sycl option in RAJAPerf --------- Co-authored-by: Rich Hornung <hornung1@llnl.gov>
2024-09-26developer-tools-ci: remove version constraint on Emacs (#46590)Alec Scott1-1/+1
2024-09-24ML CI: Ubuntu 22 -> 24 (#45644)Adam J. Stewart4-12/+10
2024-09-19run-unit-tests: no xdist if coverage (#46480)Harmen Stoppels1-3/+3
xdist only slows down unit tests under coverage
2024-09-17cloud_pipelines/.gitlab-ci.yml: run spack arch (#46437)Harmen Stoppels1-0/+1
2024-09-16Revert "allow failure for cray-sles (#46411)" (#46413)kwryankrattiger1-1/+0
This reverts commit 576251f0dad79d0e69f73eb393ce40a0921df0b4.
2024-09-16allow failure for cray-sles (#46411)Harmen Stoppels1-0/+1
2024-09-13Optionally output package namespace (#46359)Kyle Knoepfel2-2/+4
2024-09-12e4s rocm external ci stack: upgrade to rocm v6.2.0 (#46328)eugeneswalker2-76/+76
* e4s rocm external ci stack: upgrade to rocm v6.2.0 * magma: add rocm 6.2.0
2024-09-10bugfix: `elfutils` has no bzip2 or xz variants (#46294)Todd Gamblin1-1/+1
Signed-off-by: Todd Gamblin <tgamblin@llnl.gov>
2024-09-09gptune: new test API (#45383)AcriusWinter1-1/+0
* gptune: new test API * gptune: cleanup; finish API changes; separate unrelated test parts * gptune: standalone test cleanup with timeout constraints * gptune: ensure stand-alone test bash failures terminate; enable in CI * gptune: add directory to terminate_bash_failures * gptune/stand-alone tests: use satisifes for checking variants --------- Co-authored-by: Tamara Dahlgren <dahlgren1@llnl.gov>
2024-09-06use updated container with cmake@3.30.2 (#46262)eugeneswalker2-2/+2
2024-09-06Bootstrap GnuPG and `file` on Windows (#41810)John W. Parent3-2/+6
Spack can now bootstrap two new dependencies on Windows: GnuPG, and file. These dependencies are modeled as a separate package, and they install a cross-compiled binary. Details on how they binaries are built are in https://github.com/spack/windows-bootstrap-resources
2024-09-06fish: use shlex.quote instead of custom quote (#46251)Harmen Stoppels1-45/+45
2024-09-05spack deprecate: deprecate --link-type flag (#46202)Harmen Stoppels1-1/+1
2024-09-02e4s ci stacks: add geopm-runtime (#45881)eugeneswalker3-3/+2
2024-08-30windows-vis: vtk~mpi (#46133)Harmen Stoppels1-1/+1
2024-08-30cray: allow failure due to broken blas (#46111)Harmen Stoppels1-0/+2
1. libsci_cray.so is broken, as it fails to list `libdl.so` in DT_NEEDED. 2. cray compilers fail to build a different blas
2024-08-27lammps: improve FFT selection and add fft_kokkos variant (#45969)Nick Hagerty1-2/+2
2024-08-22Make spack compiler find use external find (#45784)Massimiliano Culpo2-4/+8
so that there is no duplicate detection logic for compilers
2024-08-19Remove deprecated `--safe-only` in spack version cmd (#45765)Alec Scott2-4/+2
2024-08-18WarpX: Python on pyAMReX (#45251)Axel Huebl8-10/+10
* WarpX: Python on pyAMReX Long overdue update for WarpX: in 2024, we updated our Python bindings to rely on the new pyAMReX package. This deprecates the old `py-warpx` package and adds a new dependency and variant to WarpX. Also deprecates old versions that we will not continue to support. * Update Cloud/E4S Pipelines for WarpX `py-warpx` is replaced by `warpx +python` oneAPI does not support IPO/LTO: diable for `py-amrex` even though pybind11 strongly encourages it.
2024-08-16e4s ci: add wrf (#45719)eugeneswalker4-0/+8
* e4s ci: add wrf * e4s ci: also add wrf companion/adjacent package wps * e4s oneapi: comment out wps: %oneapi not supported?
2024-08-16Run unit test in parallel again in CI (#45793)Massimiliano Culpo1-1/+1
The --trace-config option was failing for linux unit-tests, so we were running serial.
2024-08-14e4s ci: add chapel (#45659)eugeneswalker5-2/+14
* e4s ci: add chapel * e4s ci: fix gpu target typo Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com> --------- Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2024-08-14spack buildcache push: parallel in general (#45682)Harmen Stoppels2-4/+4
Make spack buildcache push for the non-oci case also parallel, and --update-index more efficieny
2024-08-13spack buildcache push: best effort (#45631)Harmen Stoppels2-4/+12
"spack buildcache push" for partially installed environments pushes all it can by default, and only dumps errors towards the end. If --fail-fast is provided, error out before pushing anything if any of the packages is uninstalled oci build caches using parallel push now use futures to ensure pushing goes in best-effort style.
2024-08-12remove config:concretizer:clingo (#45684)Harmen Stoppels3-3/+0