Compare commits

...

4926 Commits

Author SHA1 Message Date
Massimiliano Culpo
b3fa390226 Set __version__ to v0.20.2 2023-10-03 16:53:50 +02:00
Harmen Stoppels
93be34bfc4 Update CHANGELOG.md 2023-10-03 16:53:50 +02:00
Harmen Stoppels
da4ff7e2d4 buildcache: ignore errors of newer buildcache version (#40279)
Currently buildcaches are forward incompatible in an annoying way: spack
errors out when trying to use them.

With this change, you just get a warning.
2023-10-03 16:53:50 +02:00
Massimiliano Culpo
3246b08295 Remove Python 3.6 from bootstrap tests on Ubuntu, add 3.11 (#40131) 2023-10-03 16:53:50 +02:00
Harmen Stoppels
fd4784805e Spack python 3.12: PEP 695 unparse support (#40155) 2023-10-03 16:53:50 +02:00
Jordan Galby
ca77a3013f Print error when missing git (#40254)
Like a missing curl.
2023-10-03 16:53:50 +02:00
Harmen Stoppels
d3c0da48d9 Don't drop build deps on overwrite install (#40252)
If you `spack install x ^y` where `y` is a pure build dep of `x`, and
then uninstall `y`, and then `spack install --overwrite x ^y`, the build
fails because `y` is not re-installed.

Same can happen when you install a develop spec, run `spack gc`,
modify sources, and install again; develop specs rely on overwrite
install to work correctly.
2023-10-03 16:53:50 +02:00
Harmen Stoppels
26b8f4ffeb GHA: pin flake8 to 6.0.0 to avoid style change 2023-10-03 16:53:50 +02:00
Jordan Galby
9cb4e4534f Fix Spack freeze on install child process unexpected exit (#39015)
* Fix spack frozen on child process defunct

* Rename parent/child pipe to read/write to emphasize non-duplex mode
2023-10-03 16:53:50 +02:00
Jordan Galby
19fc944bcc Fix package.py error handling bug (#39017) 2023-10-03 16:53:50 +02:00
Harmen Stoppels
12cb071fe2 Fix broken semver regex (#39414) 2023-10-03 16:53:50 +02:00
Harmen Stoppels
0e905f5e64 Fix broken inode assertion (#39188) 2023-10-03 16:53:50 +02:00
Xavier Delaruelle
dd30f2dea3 modules: use curly braces to enclose value in Tcl modulefile (#38375)
Use curly braces instead of quotes to enclose value or text in Tcl
modulefile. Within curly braces Tcl special characters like [, ] or $
are treated verbatim whereas they are evaluated within quotes.

Curly braces is Tcl recommended way to enclose verbatim content [1].

Note: if curly braces charaters are used within content, they must be
balanced. This point has been checked against current repository and no
unbalanced curly braces has been spotted.

Fixes #24243

[1] https://wiki.tcl-lang.org/page/Tcl+Minimal+Escaping+Style
2023-10-03 16:53:50 +02:00
Harmen Stoppels
e27723d046 repo cache: use -inf default instead of 0 (#39214)
FastPackageChecker.modified_since should use a default number < 0

When the repo cache does not exist, Spack uses mtime 0. This causes the repo
cache not to be generated when the repo has mtime 0.

Some popular package managers such as spack use 0 mtime normalization for
reproducible tarballs. So when installing spack with spack from a buildcache, the
repo cache doesn't generate

Also add some typehints
2023-10-03 16:53:50 +02:00
Todd Gamblin
d7fcaef01e mypy: add more ignored modules to pyproject.toml (#38769)
`mypy` will check *all* imported packages, even optional dependencies outside your
project, and this can cause issues if you are targeting python versions *older* than the
one you're running in. `mypy` will report issues in the latest versions of dependencies
as errors even if installing on some older python would have installed an older version
of the dependency.

We saw this problem before with `numpy` in #34732. We've started seeing it with IPython
in #38704. This fixes the issue by exempting `IPython` and a number of other imports of
Spack's from `mypy` checking.
2023-10-03 16:53:50 +02:00
Massimiliano Culpo
f4cf4e468a Prevent "spack external find" to error out on wrong permissions (#38755)
fixes #38733
2023-10-03 16:53:50 +02:00
Harmen Stoppels
69fe0a5518 Fix multiple quadratic complexity issues in environments (#38771)
1. Fix O(n^2) iteration in `_get_overwrite_specs`
2. Early exit `get_by_hash` on full hash
3. Fix O(n^2) double lookup in `all_matching_specs` with hashes
4. Fix some legibility issues
2023-10-03 16:53:50 +02:00
Massimiliano Culpo
f8483aca0d Add CHANGELOG entry for v0.20.1 (#38836) 2023-10-03 16:53:50 +02:00
Massimiliano Culpo
6d5697cbe1 Set __version__ to v0.20.2.dev0 2023-10-03 16:53:50 +02:00
Harmen Stoppels
e8658d6493 Set version to v0.20.1 2023-07-07 12:08:59 +02:00
Massimiliano Culpo
0a4bd29ce5 Change mirror urls on the backport PR 2023-07-07 12:08:59 +02:00
Massimiliano Culpo
506b899676 Mark an unparse test xfail 2023-07-07 12:08:59 +02:00
Xavier Delaruelle
c2103b27f6 modules: ignore more Modules variables in from_sourcing_file (#38455)
Update list of excluded variables in `from_sourcing_file` function to
cover all variables specific to Environment Modules or Lmod. Add
specifically variables relative to the definition of `module()`, `ml()`
and `_module_raw()` Bash functions.

Fixes #13504
2023-07-07 12:08:59 +02:00
Xavier Delaruelle
1a2e845958 Add raw attribute to env.set command (#38465)
Update `env.set` command and underlying `SetEnv` object to add the `raw`
boolean attribute. `raw` is optional and set to False by default. When
set to True, value format is skipped for object when generating
environment modifications.

With this change it is now possible to define environment variable
whose value contains variable reference syntax (like `{foo}` or `{}`)
that should be set as-is.

Fixes #29578
2023-07-07 12:08:59 +02:00
Greg Becker
e5f270c8da show external status as [e] (#33792) 2023-07-07 12:08:59 +02:00
Gurkirat Singh
0fd224404a docs: add quotes around some values in a YAML example (#38412) 2023-07-07 12:08:59 +02:00
Xavier Delaruelle
215020f9bb modules: use depends-on to autoload module with Lmod on Tcl (#38347)
Update Tcl modulefile template to use the `depends-on` command to
autoload modules if Lmod is the current module tool.

Autoloading modules with `module load` command in Tcl modulefile does
not work well for Lmod at some extend. An attempt to unload then load
designated module is performed each time such command is encountered. It
may lead to a load storm that may not end correctly with large number of
module dependencies.

`depends-on` command should be used for Lmod instead of `module load`,
as it checks if module is already loaded, and does not attempt to reload
this module.

Lua modulefile template already uses `depends_on` command to autoload
dependencies. Thus it is already considered that to use Lmod with Spack,
it must support `depends_on` command (version 7.6+).

Environment Modules copes well with `module load` command to autoload
dependencies (version 3.2+). `depends-on` command is supported starting
version 5.1 (as an alias of `prereq-all` command) which was relased last
year.

This change introduces a test to determine if current module tool that
evaluates modulefile is Lmod. If so, autoload dependencies are defined
with `depends-on` command. Otherwise `module load` command is used.

Test is based on `LMOD_VERSION_MAJOR` environment variable, which is set
by Lmod starting version 5.1.

Fixes #36764
2023-07-07 12:08:59 +02:00
Xavier Delaruelle
b366cb3c90 modules: append trailing delimiter to MANPATH when set (#36678)
Update modulefile templates to append a trailing delimiter to MANPATH
environment variable, if the modulefile sets it.

With a trailing delimiter at ends of MANPATH's value, man will search
the system man pages after searching the specific paths set.

Using append-path/append_path to add this element, the module tool
ensures it is appended only once. When modulefile is unloaded, the
number of append attempt is decreased, thus the trailing delimiter is
removed only if this number equals 0.

Disclaimer: no path element should be appended to MANPATH by generated
modulefiles. It should always be prepended to ensure this variable's
value ends with the trailing delimiter.

Fixes #11355.
2023-07-07 12:08:59 +02:00
Peter Scheibel
e0bba8f4a3 pip is a pythonextension not a pythonpackage, and it turns out we werent doing our external surgery on things that inherited pythonextension (#38186) 2023-07-07 12:08:59 +02:00
Jonathon Anderson
60195d72c9 containerize: use an ENTRYPOINT script (#37769) 2023-07-07 12:08:59 +02:00
Massimiliano Culpo
2008503a1f Fix compiler removal from command line (#38057)
* Improve lib/spack/spack/test/cmd/compiler.py

* Use "tmp_path" in the "mock_executable" fixture

* Return a pathlib.Path from mock_executable

* Fix mock_executable fixture on Windows

"mock_gcc" was very similar to mock_executable, so use the latter to reduce code duplication

* Remove wrong compiler cache, fix compiler removal

fixes #37996

_CACHE_CONFIG_FILES was both unneeded and wrong, if called
subsequently with different scopes.

Here we remove that cache, and we fix an issue with compiler
removal triggered by having the same compiler spec in multiple
scopes.
2023-07-07 12:08:59 +02:00
QuellynSnead
9df47aabdb libxcb/xcb-proto: Enable internal Python dependency (#37575)
In the past, Spack did not allow two different versions of the
same package within a DAG. That led to difficulties with packages
that still required Python 2 while other packages had already
switched to Python 3.

The libxcb and xcb-proto packages did not have Python 3 support
for a time. To get around this issue, Spack maintainers disabled
their dependency on an internal (i.e., Spack-provided) Python
(see #4145),forcing these packages to look for a system-provided
Python (see #7646).

This has worked for us all right, but with the arrival of our most
recent platform we seem to be missing the critical xcbgen Python
module on the system. Since most software has largely moved on to
Python 3 now, let's re-enable internal Spack dependencies for the
libxcb and xcb-proto packages.
2023-07-07 12:08:59 +02:00
Tiziano Müller
80e90b924a Bugfix: cray manifest parsing regression (#37909)
fa7719a changed syntax for specifying exact versions, which are
required for some compiler specs (including those read as part
of parsing a Cray manifest). This fixes that and also makes a
couple other improvements to manifest parsing.

* Instantiate compiler specs with exact versions (fixes #37893)
* fix slingshot network detection (CPE 22.10+ has libcxi.so
  in /usr/lib64)
* "spack external find": add arg to ignore default dir for cray
  manifests
2023-07-07 12:08:59 +02:00
Jonathon Anderson
c6ff664366 containers: don't install epel-release on Fedora (#37766) 2023-07-07 12:08:59 +02:00
Tamara Dahlgren
d27debd940 Bugfix/tests: add slash to test log message (#37874) 2023-07-07 12:08:59 +02:00
Tamara Dahlgren
c93b8bceb8 Bugfix/tests: write not append stand-alone test status (#37841) 2023-07-07 12:08:59 +02:00
Massimiliano Culpo
f602c67606 Update RtD and Sphinx configuration (#38046) 2023-07-07 12:08:59 +02:00
Massimiliano Culpo
3a082f0112 archspec: fix entry in the JSON file (#37793) 2023-07-07 12:08:59 +02:00
Massimiliano Culpo
9fb25b7404 Memoize a few hot functions during module file generation (#37739) 2023-07-07 12:08:59 +02:00
Peter Scheibel
9924c92c40 Add explicit CMake .libs implementation that returns an empty list; same for .headers (#35816) 2023-07-07 12:08:59 +02:00
Massimiliano Culpo
16cb6ac1ed Simplify implementation of "get_compiler_config" (#37989) 2023-07-07 12:08:59 +02:00
Harmen Stoppels
5821746258 fix InternalConcretizerError msg (#37791) 2023-07-07 12:08:59 +02:00
Greg Becker
d860083b08 bugfix: env concretize after remove (#37877) 2023-07-07 12:08:59 +02:00
Harmen Stoppels
f2d3818d5c spack remove: fix traversal when user specs intersect (#37882)
drop unnecessary double loop over the matching user specs.
2023-07-07 12:08:59 +02:00
Harmen Stoppels
0052f330be Set version to v0.20.1-dev 2023-07-07 12:08:59 +02:00
Todd Gamblin
456db45c4a Update CHANGELOG.md for v0.20.0 2023-05-21 01:47:57 +02:00
Massimiliano Culpo
e493ab31c6 Set version to 0.20.0 2023-05-19 18:46:40 +02:00
Harmen Stoppels
e0f45b33e9 spack env create: generate a view when newly created env has concrete specs (#37799) 2023-05-19 18:46:40 +02:00
Massimiliano Culpo
bb61ecb9b9 lmod: allow core compiler to be specified with a version range (#37789)
Use CompilerSpec with satisfies instead of string equality tests

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2023-05-19 15:14:17 +02:00
Greg Becker
9694225b80 compiler specs: do not print '@=' when clear from context (#37787)
Ensure that spack compiler add/find/list and lists of concrete specs
print the compiler effectively as {compiler.name}{@compiler.version}.

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2023-05-19 15:14:17 +02:00
Peter Scheibel
3b15e7bf41 Tk/Tcl packages: speed up file search (#35902) 2023-05-18 12:36:08 +02:00
Peter Scheibel
ac5f0cc340 Bugfix: allow preferred new versions from externals (#37747) 2023-05-18 12:36:08 +02:00
Harmen Stoppels
f67840511a lmod: fix build, bump patch version (#37744) 2023-05-18 12:36:08 +02:00
Massimiliano Culpo
bd9cfa3a47 Limit deepcopy to just the initial "all" section (#37718)
Modifications:
- [x] Limit the scope of the deepcopy when initializing module file writers
2023-05-18 12:36:08 +02:00
Scott Wittenburg
96c262b13e gitlab ci: no copy-only pipelines w/ deprecated config (#37720)
Make it clear that copy-only pipelines are not supported while still
using the deprecated ci config format. Also ensure that the deprecated
stack does not fail on spack pipelines for tags.
2023-05-18 12:36:08 +02:00
Tamara Dahlgren
d22fd79a0b spack test: fix stand-alone test suite status reporting (#37602)
* Fix reporting of packageless specs as having no tests

* Add test_test_output_multiple_specs with update to simple-standalone-test (and tests)

* Refactored test status summary; added more tests or checks
2023-05-18 12:36:08 +02:00
Massimiliano Culpo
8cf4bf7559 Fix spack find not able to display version ranges in compilers (#37715) 2023-05-18 12:36:08 +02:00
John W. Parent
14a703a4bb Windows: fix MSVC version handling (#37711)
MSVC compiler logic was using string parsing to extract version
from compiler spec, which was fragile. This broke in #37572, so has
been fixed and made more robust by using attribute access.
2023-05-18 12:36:08 +02:00
Harmen Stoppels
d7726f80e8 gha rhel8-platform-python: configure git safe.directory (#37708) 2023-05-18 12:36:08 +02:00
Peter Scheibel
d69c3a6ab7 Requirements and preferences should not define (non-git) versions (#37687)
Ensure that requirements `packages:*:require:@x` and preferences `packages:*:version:[x]`
fail concretization when no version defined in the package satisfies `x`. This always holds
except for git versions -- they are defined on the fly.
2023-05-18 12:36:08 +02:00
Harmen Stoppels
1fd964140d gha bootstrap-dev-rhel8: configure git safe.directory (#37702)
git has been updated to something more recent
2023-05-18 12:36:08 +02:00
Harmen Stoppels
c9bab946d4 check_modules_set_name: do not check for "enable" key (#37701) 2023-05-18 12:36:08 +02:00
Greg Becker
74a5cd2bb0 unify: when_possible and unify: true -- Bugfix for error in 37438 (#37681)
Two bugs came in from #37438

1. `unify: when_possible` was broken, because of an incorrect assertion. abstract/concrete
   spec pairs were compared against the results that were in the process of being computed,
   rather than against the previous results.
2. `unify: true` had an ordering bug that could mix the association between abstract and
   concrete specs

- [x] 1 is resolved by creating a lookup from old concrete specs to old abstract specs,
      and we use that to associate the "new" concrete specs that happen to be the old
      ones with their abstract specs (since those are stripped out for concretization
- [x] 2 is resolved by combining the new and old abstract as lists instead of combining
      them as sets. This is important because `set() | set()` does not make any ordering
      promises, even though set ordering is otherwise guaranteed in `python@3.7:`
2023-05-18 12:36:08 +02:00
Carson Woods
151ce6f923 Improve package source code context display on error (#37655)
Spack displays package code context when it shouldn't (e.g., on `FetchError`s)
and doesn't display it when it should (e.g., when errors occur in builder classes.
The line attribution can sometimes be off by one, as well.

- [x] Display package context when errors occur in a subclass of `PackageBase`
- [x] Display package context when errors occur in a subclass of `BaseBuilder`
- [x] Do not display package context when errors occur in `PackageBase`,
      `BaseBuilder` or other core code that is not in a `package.py` file.
- [x] Fix off-by-one error for core code (don't subtract one from the line number *unless*
      it's in an actual `package.py` file.

---------

Co-authored-by: Todd Gamblin <tgamblin@llnl.gov>
2023-05-18 12:36:08 +02:00
Scott Wittenburg
1c31ce82af gitlab ci: reduce job name length of build_systems pipeline (#37686) 2023-05-16 00:31:04 +02:00
Todd Gamblin
caab2cbfd2 bugfix: allow reuse of packages from foreign namespaces
We currently throw a nasty error if you try to reuse packages from some other namespace
(e.g., OLCF), but we should be able to reuse patched local versions of builtin packages.

Right now the only obstacle to that is that we try to look up virtual info for unknown
namespaces, and we can't get the package from the repo to do that. We *can* assume that
a package with a known namespace is similar, and that its virtual provider information
is reasonably accurate, so we now do that. This isn't 100% accurate, but neither is
relying on the package itself, as it may have gone out of date.

The real solution here is virtual edge information, but this is a stopgap until we have
that.
2023-05-15 20:25:09 +02:00
Todd Gamblin
a6f41006eb bugfix: don't look up virtual information for unknown packages
`spec_clauses()` attempts to look up package information for concrete specs in order to
determine which virtuals they may provide. This fails for renamed/deleted dependencies
of buildcaches and installed packages.

This will eventually be fixed by #35258, which adds virtual information on edges, but we
need a workaround to make older buildcaches usable.

- [x] make an exception for renamed packages and omit their virtual constraints
- [x] add a note that this will be solved by adding virtuals to edges
2023-05-15 20:25:09 +02:00
Todd Gamblin
18b4670d9f bugfix: don't look up patches from packages for concrete specs
The concretizer can fail with `reuse:true` if a buildcache or installation contains a
package with a dependency that has been renamed or deleted in the main repo (e.g.,
`netcdf` was refactored to `netcdf-c`, `netcdf-fortran`, etc., but there are still
binary packages with dependencies called `netcdf`).

We should still be able to install things for which we are missing `package.py` files.

`Spec.inject_patches_variant()` was failing this requirement by attempting to look up
the package class for concrete specs.  This isn't needed -- we can skip it.

- [x] swap two conditions in `Spec.inject_patches_variant()`
2023-05-15 20:25:09 +02:00
Harmen Stoppels
322fe415e4 Bump tutorial command (#37674) 2023-05-15 20:25:09 +02:00
Harmen Stoppels
096bfa4ba9 oneapi: before script load modules (#37678) 2023-05-15 20:25:09 +02:00
Todd Gamblin
cf9dc3fc81 spack find: get rid of @= in arch/compiler headers (#37672)
The @= in `spack find` output adds a bit of noise. Remove it as we
did for `spack spec` and `spack concretize`.

This modifies display_specs so it actually covers other places we use that routine, as
well, e.g., `spack buildcache list`.

before:

```
-- linux-ubuntu20.04-aarch64 / gcc@=11.1.0 -----------------------
ofdlcpi libpressio@0.88.0
```

after:

```
-- linux-ubuntu20.04-aarch64 / gcc@11.1.0 -----------------------
ofdlcpi libpressio@0.88.0
```
2023-05-15 09:08:50 +02:00
Bruno Turcksin
d265dd2487 Kokkos: add new release and new architectures (#37650) 2023-05-14 13:21:40 -07:00
Greg Becker
a2a6e65e27 concretizer: don't change concrete environments without --force (#37438)
If a user does not explicitly `--force` the concretization of an entire environment,
Spack will try to reuse the concrete specs that are already in the lockfile.

---------

Co-authored-by: becker33 <becker33@users.noreply.github.com>
Co-authored-by: Todd Gamblin <tgamblin@llnl.gov>
2023-05-14 13:36:03 +02:00
Paul R. C. Kent
0085280db8 gcc: add 12.3.0 (#37553) 2023-05-14 12:08:41 +02:00
Andrew W Elble
6e07bf149d freecad: new package w/ dependencies/updates (#37557)
* freecad: new package w/ dependencies/updates

* review

* symbols/debug variants only when autotools
2023-05-13 21:14:50 -05:00
dale-mittleman
811cd5e7ef Adding librdkafka versions 1.9.2, 2.0.2 (#37501)
Co-authored-by: Alec Scott <hi@alecbcs.com>
2023-05-13 16:00:12 -07:00
Adam J. Stewart
081e21f55e py-lightly: py-torch~distributed supported in next release (#37558) 2023-05-13 15:49:45 -07:00
Todd Gamblin
c5a24675a1 spack spec: remove noisy @= from output (#37663)
@= is accurate, but noisy. Other UI commands tend not to
print the redundant `@=` for known concrete versions;
make `spack spec` consistent with them.
2023-05-13 11:34:15 -07:00
eugeneswalker
e9bfe5cd35 new pkg: py-psmon (#37652) 2023-05-13 11:16:44 -07:00
eugeneswalker
ca84c96478 new pkg: py-psalg (#37653) 2023-05-13 09:02:57 -07:00
Chris Green
c9a790bce9 [gsoap] New package gSOAP (#37647) 2023-05-13 11:01:50 -05:00
eugeneswalker
91c5b4aeb0 e4s ci stacks: add: hdf5-vol-{log,cache} (#37651) 2023-05-13 04:54:44 +00:00
Larry Knox
c2968b4d8c Add HDF5 version 1.14.1 (#37579)
* Add HDF5 version 1.14.1
* Update to version HDF5 1.14.1-2.
2023-05-12 20:54:08 -04:00
Scott Wittenburg
c08be95d5e gitlab ci: release fixes and improvements (#37601)
* gitlab ci: release fixes and improvements

  - use rules to reduce boilerplate in .gitlab-ci.yml
  - support copy-only pipeline jobs
  - make pipelines for release branches rebuild everything
  - make pipelines for protected tags copy-only

* gitlab ci: remove url changes used in testing

* gitlab ci: tag mirrors need public key

Make sure that mirrors associated with release branches and tags
contain the public key needed to verify the signed binaries.  This
also ensures that when stack-specific mirror contents are copied
to the root, the root mirror has the public key as well.

* review: be more specific about tags, curl flags

* Make the check in ci.yaml consistent with the .gitlab-ci.yml

---------

Co-authored-by: Ryan Krattiger <ryan.krattiger@kitware.com>
2023-05-12 15:22:42 -05:00
Lehman Garrison
4e5fb62679 py-asdf: add 2.15.0 and dependencies (#37642)
* py-asdf: add 2.15.0 and dependencies

* py-asdf: PR review
2023-05-12 15:35:22 -04:00
Adam J. Stewart
cafc21c43d py-lightly: add v1.4.5 (#37625) 2023-05-12 11:39:03 -07:00
Adam J. Stewart
72699b43ab py-dill: add v0.3.1.1 (#37415) 2023-05-12 11:37:51 -07:00
MatthewLieber
6c85f59a89 Osu/mvapich2.3.7 1 (#37636)
* add 3.0b release

* adding mvapich2 version 2.3.7-1

---------

Co-authored-by: Matt Lieber <lieber.31@osu.edu>
2023-05-12 11:30:05 -07:00
Nathan Hanford
eef2536055 Allow buildcache specs to be referenced by hash (#35042)
Currently, specs on buildcache mirrors must be referenced by their full description. This PR allows buildcache specs to be referenced by their hashes, rather than their full description.

### How it works

Hash resolution has been moved from `SpecParser` into `Spec`, and now includes the ability to execute a `BinaryCacheQuery` after checking the local store, but before concluding that the hash doesn't exist.

### Side-effects of Proposed Changes

Failures will take longer when nonexistent hashes are parsed, as mirrors will now be scanned.

### Other Changes

- `BinaryCacheIndex.update` has been modified to fail appropriately only when mirrors have been configured.
- Tests of hash failures have been updated to use `mutable_empty_config` so they don't needlessly search mirrors.
- Documentation has been clarified for `BinaryCacheQuery`, and more documentation has been added to the hash resolution functions added to `Spec`.
2023-05-12 10:27:42 -07:00
Massimiliano Culpo
e2ae60a3b0 Update archspec to v0.2.1 (#37633) 2023-05-12 18:59:58 +02:00
Chris Green
d942fd62b5 [root] New version 6.28.04 with C++20 support (#37640)
* Add FNAL Spack team to maintainers.
* New version 6.28/04.
* Support C++20 with ROOT >= 6.28.04.
2023-05-12 09:50:48 -07:00
Andrey Parfenov
99d511d3b0 Add more variants for STREAM to customize build (#37283)
* Added STREAM builds customization

* Changed stream_type to enum

* fix code style issues

Signed-off-by: Andrey Parfenov <andrey.parfenov@intel.com>

* rm not necessary optimization

Signed-off-by: Andrey Parfenov <andrey.parfenov@intel.com>

---------

Signed-off-by: Andrey Parfenov <andrey.parfenov@intel.com>
Co-authored-by: iermolae <igor.ermolaev@intel.com>
2023-05-12 12:17:59 -04:00
Adam J. Stewart
ab8661533b GDAL: add v3.7.0 (#37598) 2023-05-12 12:13:10 -04:00
Robert Cohn
f423edd526 intel-oneapi-mkl: support gnu openmp (#37637)
* intel-oneapi-mkl: support gnu openmp

* intel-oneapi-mkl: support gnu openmp
2023-05-12 12:03:19 -04:00
Manuela Kuhn
0a4d4da5ce py-rsatoolbox: add 0.0.5, 0.1.0 and 0.1.2 (#37595)
* py-rsatoolbox: add 0.0.5, 0.1.0 and 0.1.2 from wheels

* py-setuptools: add 63.4.3

* remove wheels and open up requirements

* Fix style

* Update var/spack/repos/builtin/packages/py-rsatoolbox/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-rsatoolbox/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Change version for python restriction

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-05-12 10:32:12 -05:00
Manuela Kuhn
845187f270 py-mne: add 1.4.0 and py-importlib-resources: add 5.12.0 (#37624)
* py-mne: add 1.4.0 and py-importlib-resources: add 5.12.0

* Fix style

* Update var/spack/repos/builtin/packages/py-mne/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-05-12 10:31:35 -05:00
Lehman Garrison
9b35c3cdcc Update tensorflow variant defaults to match upstream defaults (#37610)
* Update tensorflow variant defaults to match project's defaults

* Apply code style
2023-05-12 10:27:51 -05:00
Robert Cohn
fe8734cd52 Fix logic in setting oneapi microarchitecture flags (#37634) 2023-05-12 10:58:08 -04:00
Chris Green
40b1aa6b67 [geant4,geant4-data] New version 10.7.4 (#37382) 2023-05-12 15:20:50 +01:00
Eduardo Rothe
ced8ce6c34 cudnn: add versions 8.5.0, 8.6.0, 8.7.0 (#35998) 2023-05-12 07:38:11 -04:00
Tamara Dahlgren
9201b66792 AML: Convert to new stand-alone test process (#35701) 2023-05-12 13:22:11 +02:00
Massimiliano Culpo
fd45839c04 Improve error message for buildcaches (#37626) 2023-05-12 11:55:13 +02:00
Mikael Simberg
2e25db0755 Add pika 0.15.1 (#37628) 2023-05-12 11:45:30 +02:00
Massimiliano Culpo
ebfc706c8c Improve error messages when Spack finds a too new DB / lockfile (#37614)
This PR ensures that we'll get a comprehensible error message whenever an old
version of Spack tries to use a DB or a lockfile that is "too new".

* Fix error message when using a too new DB
* Add a unit-test to ensure we have a comprehensible error message
2023-05-12 08:13:10 +00:00
Steven R. Brandt
644a10ee35 Coastal Codes (#37176)
* Coastal codes installation
* Finished debugging swan.
* Fix formatting errors identified by flake8
* Another attempt to fix formatting.
* Fixed year in header.
* Fixed maintainers syntax and other details from review comments.
* Remove redundant url.

---------

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2023-05-12 00:57:59 -04:00
snehring
bb96e4c9cc py-pysam: adding version 0.21.0 (#37623)
* py-pysam: adding version 0.21.0

* Update var/spack/repos/builtin/packages/py-pysam/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-05-12 00:47:53 -04:00
Tamara Dahlgren
d204a08aea Install/update the qt dependency (#37600) 2023-05-11 22:58:33 -05:00
Tamara Dahlgren
8e18297cf2 Environments: store spack version/commit in spack.lock (#32801)
Add a section to the lock file to track the Spack version/commit that produced
an environment. This should (eventually) enhance reproducibility, though we
do not currently do anything with the information. It just adds to provenance
at the moment.

Changes include:
- [x] adding the version/commit to `spack.lock`
- [x] refactor `spack.main.get_version()
- [x] fix a couple of environment lock file-related typos
2023-05-11 23:13:36 -04:00
MatthewLieber
b06d20be19 add 3.0b release (#37599)
Co-authored-by: Matt Lieber <lieber.31@osu.edu>
2023-05-11 17:10:15 -07:00
Alec Scott
a14d6fe56d gegl: add v0.4.44 (#37516) 2023-05-11 15:52:22 -07:00
eugeneswalker
47ec6a6ae5 e4s ci: trilinos +rocm: enable belos to fix build failure (#37617) 2023-05-11 14:02:20 -07:00
Massimiliano Culpo
5c7dda7e14 Allow using -j to control the parallelism of concretization (#37608)
fixes #29464

This PR allows to use
```
$ spack concretize -j X
```
to set a cap on the parallelism of concretization from the command line
2023-05-11 13:29:17 -07:00
Dom Heinzeller
0e87243284 libpng package: fix build error on macOS arm64 (#37613)
Turn off ARM NEON support on MacOS arm64

Co-authored-by: Stephen Herbener <stephen.herbener@gmail.com>
2023-05-11 16:27:43 -04:00
Nichols A. Romero
384f5f9960 Update Intel Pin package up to 3.27 (#37470) 2023-05-11 19:06:03 +02:00
Andrey Parfenov
c0f020d021 add openmp_max_threads variant and enable avx 512 optimizations for icelake (#37379)
* add openmp_max_threads variant and enable avx 512 optimizations for icelake and cascadelake

Signed-off-by: Andrey Parfenov <andrey.parfenov@intel.com>

* revert manual enabling of avx512 for icelake and cascadelake

Signed-off-by: Andrey Parfenov <andrey.parfenov@intel.com>

---------

Signed-off-by: Andrey Parfenov <andrey.parfenov@intel.com>
2023-05-11 09:23:04 -05:00
Tamara Dahlgren
dc58449bbf caliper: convert to new stand-alone test process (#35691) 2023-05-11 14:40:02 +02:00
Tamara Dahlgren
d8a72b68dd bricks: convert to new stand-alone test process (#35694) 2023-05-11 14:39:09 +02:00
Mosè Giordano
040c6e486e julia: Fix llvm shlib symbol version for v1.9 (#37606) 2023-05-11 08:22:40 -04:00
Harmen Stoppels
4fa7880b19 lmod: fix CompilerSpec concrete version / range (#37604) 2023-05-11 12:00:07 +02:00
Nisarg Patel
f090b05346 Update providers of virtual packages related to Intel OneAPI (#37412)
* add a virtual dependency name instead of complete package name

* add OneAPI components as providers of virtual packages

* Revert the default of tbb

---------

Co-authored-by: Nisarg Patel <nisarg.patel@lrz.de>
2023-05-11 05:58:24 -04:00
Mikael Simberg
0c69e5a442 Add fmt 10.0.0 (#37591) 2023-05-11 04:57:47 -04:00
Massimiliano Culpo
8da29d1231 Improve the message for errors in package recipes (#37589)
fixes #30355
2023-05-11 10:34:39 +02:00
Massimiliano Culpo
297329f4b5 Improve error message for missing "command" entry in containerize (#37590)
fixes #21242
2023-05-11 10:33:51 +02:00
Mosè Giordano
1b6621a14b julia: Add v1.9.0 (#35631) 2023-05-11 10:30:52 +02:00
Peter Scheibel
bfa54da292 Allow clingo to enforce flags when they appear in requirements (#37584)
Flags are encoded differently from other variants, and they need a choice rule to
ensure clingo has a choice to impose (or not) a constraint.
2023-05-11 09:17:16 +02:00
Jaelyn Litzinger
730ab1574f Upgrade exago's petsc dependency to v3.19.0 (#37092)
* add petsc 3.19 for exago@develop
* simplify version syntax
2023-05-10 18:25:11 -07:00
Harmen Stoppels
2c17c4e632 ci: remove --mirror-url flag (#37457)
The flags --mirror-name / --mirror-url / --directory were deprecated in 
favor of just passing a positional name, url or directory, and letting spack
figure it out.

---------

Co-authored-by: Scott Wittenburg <scott.wittenburg@kitware.com>
2023-05-10 16:34:29 -06:00
John W. Parent
ec800cccbb Windows: Fix external detection for service accounts (#37293)
Prior to this PR, the HOMEDRIVE environment variable was used to
detect what drive we are operating in. This variable is not available
for service account logins (like what is used for CI), so switch to
extracting the drive from PROGRAMFILES (which is more-widely defined).
2023-05-10 18:12:58 -04:00
John W. Parent
85cc9097cb Windows: prefer Python decompression support (#36507)
On Windows, several commonly available system tools for decompression
are unreliable (gz/bz2/xz). This commit refactors `decompressor_for`
to call out to a Windows or Unix-specific method:

* The decompressor_for_nix method behaves the same as before and
  generally treats the Python/system support options for decompression
  as interchangeable (although avoids using Python's built-in tar
  support since that has had issues with permissions).
* The decompressor_for_win method can only use Python support for
  gz/bz2/xz, although for a tar.gz it does use system support for
  untar (after the decompression step). .zip uses the system tar
  utility, and .Z depends on external support (i.e. that the user
  has installed 7zip).

A naming scheme has been introduced for the various _decompression
methods:

* _system_gunzip means to use a system tool (and fail if it's not
    available)
* _py_gunzip means to use Python's built-in support for decompressing
    .gzip files (and fail if it's not available)
* _gunzip is a method that can do either
2023-05-10 18:07:56 -04:00
snehring
830ee6a1eb py-gtdbtk: adding version 2.3.0 (#37581)
* py-gtdbtk: adding version 2.3.0

* py-gtdbtk: adding missing pydantic dep

* py-gtdbtk: restrict pydantic dep
2023-05-10 16:58:42 -05:00
Alec Scott
0da7b83d0b fd: merge fd-find with fd (#37580) 2023-05-10 14:29:13 -07:00
SoniaScard
f51a4a1ae1 Ophidia-analytics-framework, ophidia-io-server: Work (#36801)
* ophidia-io-server: new package at v1.7
* ophidia-io-server: Fix package
* ophidia-analytics-framework: new package at v1.7
* Fix code style in ophidia-analytics-framework
* Merge
* ophidia-analytics-framework: update package to v1.7.3
* Update package.py
* Fix style

---------

Co-authored-by: SoniaScard <SoniaScard@users.noreply.github.com>
Co-authored-by: Donatello Elia <eldoo@users.noreply.github.com>
2023-05-10 08:38:43 -07:00
H. Joe Lee
e49f10a28e fix(hdf5): h5pfc link failure (#37468)
* fix(hdf5): h5pfc link failure
  develop branch doesn't need linking any more.
  See: acb186f6e5
* [@spackbot] updating style on behalf of hyoklee

---------

Co-authored-by: hyoklee <hyoklee@users.noreply.github.com>
2023-05-10 08:33:27 -07:00
Harmen Stoppels
1d96fdc74a Fix compiler version issues (concrete vs range) (#37572) 2023-05-10 17:26:22 +02:00
Robert Cohn
8eb1829554 intel-oneapi-mkl: add threading support (#37586) 2023-05-10 10:47:57 -04:00
matteo-chesi
e70755f692 cuda: add versions 12.0.1, 12.1.0 and 12.1.1 (#37083) 2023-05-10 15:31:07 +02:00
G-Ragghianti
ebb40ee0d1 New option "--first" for "spack location" (#36283) 2023-05-10 12:26:29 +02:00
Robert Cohn
a2ea30aceb Create include/lib in prefix for oneapi packages (#37552) 2023-05-10 06:25:00 -04:00
Tamara Dahlgren
9a37c8fcb1 Stand-alone testing: make recipe support and processing spack-/pytest-like (#34236)
This is a refactor of Spack's stand-alone test process to be more spack- and pytest-like. 

It is more spack-like in that test parts are no longer "hidden" in a package's run_test()
method and pytest-like in that any package method whose name starts test_ 
(i.e., a "test" method) is a test part. We also support the ability to embed test parts in a
test method when that makes sense.

Test methods are now implicit test parts. The docstring is the purpose for the test part. 
The name of the method is the name of the test part. The working directory is the active
spec's test stage directory. You can embed test parts using the test_part context manager.

Functionality added by this commit:
* Adds support for multiple test_* stand-alone package test methods, each of which is 
   an implicit test_part for execution and reporting purposes;
* Deprecates package use of run_test();
* Exposes some functionality from run_test() as optional helper methods;
* Adds a SkipTest exception that can be used to flag stand-alone tests as being skipped;
* Updates the packaging guide section on stand-alone tests to provide more examples;
* Restores the ability to run tests "inherited" from provided virtual packages;
* Prints the test log path (like we currently do for build log paths);
* Times and reports the post-install process (since it can include post-install tests);
* Corrects context-related error message to distinguish test recipes from build recipes.
2023-05-10 11:34:54 +02:00
Alec Scott
49677b9be5 squashfs-mount: add v0.4.0 (#37478) 2023-05-10 10:49:21 +02:00
Alec Scott
6fc44eb540 shared-mime-info: add v1.10 (#37477) 2023-05-10 10:49:00 +02:00
Alec Scott
234febe545 kinesis: add v2.4.8 (#37476) 2023-05-10 10:48:44 +02:00
Alec Scott
83a1245bfd unifdef: add v2.12 (#37456) 2023-05-10 10:48:20 +02:00
Alec Scott
241c37fcf7 conmon: add v2.1.7 (#37320) 2023-05-10 10:47:54 +02:00
Alec Scott
a8114ec52c runc: add v1.1.6 (#37308) 2023-05-10 10:47:44 +02:00
Manuela Kuhn
f92b5d586f py-datalad: add 0.18.3 (#37411)
* py-datalad: add 0.18.3

* [@spackbot] updating style on behalf of manuelakuhn

* Remove metadata variant

* Fix dependencies

* Remove redundant version restriction
2023-05-10 03:57:59 -04:00
Alec Scott
492d68c339 r-knitr: add v1.42 (#37203) 2023-05-09 17:43:58 -05:00
Alec Scott
2dcc55d6c5 ssht: add v1.5.2 (#37542) 2023-05-09 11:37:40 -07:00
eugeneswalker
dc897535df py-loguru: add v0.2.5, v0.3.0 (#37574)
* py-loguru: add v0.2.5

* py-loguru: add v0.3.0
2023-05-09 11:16:02 -07:00
kwryankrattiger
45e1d3498c CI: Backwards compatibility requires script override behavior (#37015) 2023-05-09 10:42:06 -06:00
eugeneswalker
af0f094292 memkind: parallel = false (#37566) 2023-05-09 09:04:54 -07:00
Alec Scott
44b51acb7b z-checker: add v0.9.0 (#37534) 2023-05-09 06:52:43 -07:00
eugeneswalker
13dd05e5ec hip: get_paths for hipify-clang (#37559)
* hip: get_paths for hipify-clang

* fix: need to actually use get_paths now to get hipify-clang path

* set hipify-clang path differentluy for external vs spack-installed case

* [@spackbot] updating style on behalf of eugeneswalker
2023-05-09 06:51:04 -07:00
Massimiliano Culpo
89520467e0 Use single quotes to inline manifest in Dockerfiles (#37571)
fixes #22341

Using double quotes creates issues with shell variable substitutions,
in particular when the manifest has "definitions:" in it. Use single
quotes instead.
2023-05-09 13:20:25 +02:00
Harmen Stoppels
9e1440ec7b spack view copy: relocate symlinks (#32306) 2023-05-09 12:17:16 +02:00
Alec Scott
71cd94e524 gh: add conflict for v2.28.0 and macos (#37563) 2023-05-09 08:55:54 +02:00
Alec Scott
ba696de71b breseq: add v0.38.1 (#37535) 2023-05-08 14:39:45 -07:00
Alec Scott
06b63cfce3 exiv2: add v0.27.6 (#37536) 2023-05-08 14:25:11 -07:00
Alec Scott
5be1e6e852 hazelcast: add v5.2.3 (#37537) 2023-05-08 14:22:46 -07:00
Alec Scott
e651c2b122 libjpeg-turbo: add v2.1.5 (#37539) 2023-05-08 14:19:24 -07:00
Alec Scott
ec2a4869ef mlst: add v2.23.0 (#37540) 2023-05-08 14:03:57 -07:00
Alec Scott
082fb1f6e9 scitokens-cpp: add v1.0.1 (#37541) 2023-05-08 14:00:33 -07:00
Alec Scott
95a65e85df delta: add v2.3.0 (#37545) 2023-05-08 13:46:08 -07:00
Alec Scott
d9e7aa4253 fd-find: add v8.7.0 (#37547) 2023-05-08 13:43:13 -07:00
Alec Scott
5578209117 druid: add v1.2.8 (#37546) 2023-05-08 13:42:10 -07:00
Alec Scott
b013a2de50 fd-find: add v8.7.0 (#37547) 2023-05-08 13:28:50 -07:00
Mark W. Krentel
d1c722a49c hpcviewer: add version 2023.04 (#37556) 2023-05-08 12:30:10 -07:00
eugeneswalker
3446feff70 use latest trilinos for +cuda variants (#37164) 2023-05-08 12:29:54 -07:00
eugeneswalker
41afeacaba new package: psalg (#37357)
* new package: psalg

* use new maintainer syntax

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

---------

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2023-05-08 12:26:19 -07:00
Massimiliano Culpo
0139288ced Add a "requires" directive, extend functionality of package requirements (#36286)
Add a "require" directive to packages, which functions exactly like
requirements specified in packages.yaml (uses the same fact-generation
logic); update both to allow making the requirement conditional.

* Packages may now use "require" to add constraints. This can be useful
  for something like "require(%gcc)" (where before we had to add a
  conflict for every compiler except gcc).
* Requirements (in packages.yaml or in a "require" directive) can be
  conditional on a spec, e.g. "require(%gcc, when=@1.0.0)" (version
  1.0.0 can only build with gcc).
* Requirements may include a message which clarifies why they are needed.
  The concretizer assigns a high priority to errors which generate these
  messages (in particular over errors for unsatisfied requirements that
  do not produce messages, but also over a number of more-generic
  errors).
2023-05-08 10:12:26 -07:00
eugeneswalker
d0cba2bf35 caliper +rocm: use hipcc for CMAKE_CXX_COMPILER (#35219) 2023-05-08 09:40:23 -07:00
Mark W. Krentel
6afa2d6298 libmonitor: add version 2023.03.15 (#37434) 2023-05-08 08:58:11 -07:00
Seth R. Johnson
947445ccdd Fix pixman macOS build and add missing build deps (#36982) 2023-05-08 08:47:51 -07:00
snehring
b605cd0151 trinity: adding version 2.15.1 (#37076) 2023-05-08 08:32:05 -07:00
Mikael Simberg
273bccbccf Add HPX 1.9.0 (#37426) 2023-05-08 12:24:02 +02:00
Alec Scott
d5d596a851 pkgconf: add v1.9.4 (#36437) 2023-05-07 23:27:28 +02:00
eugeneswalker
0ddb5de27c caliper +rocm: patch missing libunwind include dir (#37461)
* patch missing libunwind include dir

* caliper +libunwind +sampler: patch libunwind include dir
2023-05-07 12:49:46 -07:00
eugeneswalker
8942909852 petsc@3.19.1 +rocm: conflicts with rocprim@5.3.0 (#37474)
* petsc@3.19.1 +rocm: conflicts with rocprim@5.3.0

* conflict with rocprim@5.3.0:5.3.2 when +rocm
2023-05-07 17:27:52 +00:00
Alec Scott
0143d5bf01 libtiff: add v4.5.0 (#37523) 2023-05-07 12:22:56 -04:00
Harmen Stoppels
e17d6d5eee gitlab ci: bump tutorial image (#37544) 2023-05-07 16:24:33 +02:00
Alec Scott
2a54cda953 libblastrampoline: add v5.8.0 (#37538) 2023-05-07 10:45:34 +02:00
Alec Scott
097d3e15b4 libpcap: add v1.10.4 (#37451) 2023-05-05 22:02:57 -07:00
Tamara Dahlgren
374264f610 Packaging Guide: build-time test updates: option and test logs (#37093)
* Packaging Guide: build-time test updates: option and test logs
* Fix a couple of typos
2023-05-05 22:19:06 -06:00
Chris Green
d6bf9bc8f1 [elfutils] iconv is required (see ./configure --help) (#37464) 2023-05-05 22:16:03 -06:00
Harmen Stoppels
fa7719a031 Improve version, version range, and version list syntax and behavior (#36273)
## Version types, parsing and printing

- The version classes have changed: `VersionBase` is removed, there is now a
  `ConcreteVersion` base class. `StandardVersion` and `GitVersion` both inherit
  from this.

- The public api (`Version`, `VersionRange`, `ver`) has changed a bit:
  1. `Version` produces either `StandardVersion` or `GitVersion` instances.
  2. `VersionRange` produces a `ClosedOpenRange`, but this shouldn't affect the user.
  3. `ver` produces any of `VersionList`, `ClosedOpenRange`, `StandardVersion`
     or `GitVersion`.

- No unexpected type promotion, so that the following is no longer an identity:
  `Version(x) != VersionRange(x, x)`.

- `VersionList.concrete` now returns a version if it contains only a single element
  subtyping `ConcreteVersion` (i.e. `StandardVersion(...)` or `GitVersion(...)`)

- In version lists, the parser turns `@x` into `VersionRange(x, x)` instead
  of `Version(x)`.

- The above also means that `ver("x")` produces a range, whereas
  `ver("=x")` produces a `StandardVersion`. The `=` is part of _VersionList_
  syntax.

- `VersionList.__str__` now outputs `=x.y.z` for specific version entries,
  and `x.y.z` as a short-hand for ranges `x.y.z:x.y.z`.

- `Spec.format` no longer aliases `{version}` to `{versions}`, but pulls the
  concrete version out of the list and prints that -- except when the list is
  is not concrete, then is falls back to `{versions}` to avoid a pedantic error.
  For projections of concrete specs, `{version}` should be used to render
  `1.2.3` instead of `=1.2.3` (which you would get with `{versions}`).
  The default `Spec` format string used in `Spec.__str__` now uses
  `{versions}` so that `str(Spec(string)) == string` holds.

## Changes to `GitVersion`

- `GitVersion` is a small wrapper around `StandardVersion` which enriches it
   with a git ref. It no longer inherits from it.

- `GitVersion` _always_ needs to be able to look up an associated Spack version
  if it was not assigned (yet). It throws a `VersionLookupError` whenever `ref_version`
  is accessed but it has no means to look up the ref; in the past Spack would
  not error and use the commit sha as a literal version, which was incorrect.
   
- `GitVersion` is never equal to `StandardVersion`, nor is satisfied by it. This
  is such that we don't lose transitivity. This fixes the following bug on `develop`
  where `git_version_a == standard_version == git_version_b` does not imply
  `git_version_a == git_version_b`. It also ensures equality always implies equal
  hash, which is also currently broken on develop; inclusion tests of a set of
  versions + git versions would behave differently from inclusion tests of a
  list of the same objects.

- The above means `ver("ref=1.2.3) != ver("=1.2.3")` could break packages that branch
  on specific versions, but that was brittle already, since the same happens with
  externals: `pkg@1.2.3-external` suffixes wouldn't be exactly equal either. Instead,
  those checks should be `x.satisfies("@1.2.3")` which works both for git versions and
  custom version suffixes.

- `GitVersion` from commit will now print as `<hash>=<version>` once the
  git ref is resolved to a spack version. This is for reliability -- version is frozen
  when added to the database and queried later. It also improves performance
  since there is no need to clone all repos of all git versions after `spack clean -m`
  is run and something queries the database, triggering version comparison, such
  as potentially reuse concretization.

- The "empty VerstionStrComponent trick" for `GitVerison` is dropped since it wasn't
  representable as a version string (by design). Instead, it's replaced by `git`,
  so you get `1.2.3.git.4` (which reads 4 commits after a tag 1.2.3). This means
  that there's an edge case for version schemes `1.1.1`, `1.1.1a`, since the
  generated git version `1.1.1.git.1` (1 commit after `1.1.1`) compares larger
  than `1.1.1a`, since `a < git` are compared as strings. This is currently a
  wont-fix edge case, but if really required, could be fixed by special casing
  the `git` string.

- Saved, concrete specs (database, lock file, ...) that only had a git sha as their
  version, but have no means to look the effective Spack version anymore, will
  now see their version mapped to `hash=develop`. Previously these specs
  would always have their sha literally interpreted as a version string (even when
  it _could_ be looked up). This only applies to databases, lock files and spec.json
  files created before Spack 0.20; after this PR, we always have a Spack version
  associated to the relevant GitVersion).

- Fixes a bug where previously `to_dict` / `from_dict` (de)serialization would not
  reattach the repo to the GitVersion, causing the git hash to be used as a literal
  (bogus) version instead of the resolved version. This was in particularly breaking
  version comparison in the build process on macOS/Windows.


## Installing or matching specific versions

- In the past, `spack install pkg@3.2` would install `pkg@=3.2` if it was a
  known specific version defined in the package, even when newer patch releases
  `3.2.1`, `3.2.2`, `...` were available. This behavior was only there because
  there was no syntax to distinguish between `3.2` and `3.2.1`. Since there is
  syntax for this now through `pkg@=3.2`, the old exact matching behavior is
  removed. This means that `spack install pkg@3.2` constrains the `pkg` version
  to the range `3.2`, and `spack install pkg@=3.2` constrains it to the specific
  version `3.2`.

- Also in directives such as `depends_on("pkg@2.3")` and their when
  conditions `conflicts("...", when="@2.3")` ranges are ranges, and specific
  version matches require `@=2.3.`.

- No matching version: in the case `pkg@3.2` matches nothing, concretization
  errors. However, if you run `spack install pkg@=3.2` and this version
  doesn't exist, Spack will define it; this allows you to install non-registered
  versions.

- For consistency, you can now do `%gcc@10` and let it match a configured
  `10.x.y` compiler. It errors when there is no matching compiler.
  In the past it was interpreted like a specific `gcc@=10` version, which
  would get bootstrapped.

- When compiler _bootstrapping_ is enabled, `%gcc@=10.2.0` can be used to
  bootstrap a specific compiler version.

## Other changes

- Externals, compilers, and develop spec definitions are backwards compatible.
  They are typically defined as `pkg@3.2.1` even though they should be
  saying `pkg@=3.2.1`. Spack now transforms `pkg@3` into `pkg@=3` in those cases.

- Finally, fix strictness of `version(...)` directive/declaration. It just does a simple
  type check, and now requires strings/integers. Floats are not allowed because
  they are ambiguous `str(3.10) == "3.1"`.
2023-05-05 22:04:41 -06:00
Alec Scott
f6497972b8 apr: add v1.7.4 (#37445) 2023-05-05 18:28:58 -04:00
Alec Scott
5c3ec5f47c fms: add v2023.01 (#37450) 2023-05-05 18:24:10 -04:00
Manuela Kuhn
16bddf152e py-palettable: add 3.3.3 (#37443) 2023-05-05 18:23:33 -04:00
Mittagskogel
4403df4f08 hdf5: Add conflict for older cmake versions. (#37463)
See HDFGroup/hdf5 issue 2906
2023-05-05 18:19:39 -04:00
Alec Scott
7cf45442a7 phast: add v1.6 (#37455) 2023-05-05 18:14:45 -04:00
Alec Scott
edb8bc91b2 mmg: add v5.7.1 (#37453) 2023-05-05 18:14:23 -04:00
Alec Scott
9610ecb936 octave: add v8.2.0 (#37454) 2023-05-05 18:09:16 -04:00
Eric Berquist
b2a8e8734e Fix typos in packaging guide (#37460) 2023-05-05 22:08:58 +00:00
Alec Scott
c287dbbf13 logrotate: add v3.21.0 (#37452) 2023-05-05 18:08:54 -04:00
Alec Scott
1808ce11de extrae: add v4.0.4 (#37449) 2023-05-05 18:03:55 -04:00
Alec Scott
13b0b1d574 cli11: add v2.3.2 (#37447) 2023-05-05 11:33:49 -07:00
snehring
261a34a7a4 Adding ncbi-vdb 3.0.2 (#37435)
* ncbi-vdb: adding version 3.0.2
* sra-tools: adding version restriction for newer versions
2023-05-05 11:06:07 -07:00
Alec Scott
222b44bd45 biobloom: add v2.3.5 (#37446) 2023-05-05 11:01:22 -07:00
Alec Scott
c105ac07bb editline: add v1.17.1 (#37448) 2023-05-05 10:57:47 -07:00
Harmen Stoppels
9ef062fcca Add spack buildcache push (alias to buildcache create) (#34861)
`spack buildcache create` is a misnomer cause it's the only way to push to
an existing buildcache (and it in fact calls binary_distribution.push).

Also we have `spack buildcache update-index` but for create the flag is
`--rebuild-index`, which is confusing (and also... why "rebuild"
something if the command is "create" in the first place, that implies it
wasn't there to begin with).

So, after this PR, you can use either

```
spack buildcache create --rebuild-index
```

or

```
spack buildcache push --update-index
```

Also, alias `spack buildcache rebuild-index` to `spack buildcache
update-index`.
2023-05-05 19:54:26 +02:00
Harmen Stoppels
ddea33bdc0 Update tutorial pipeline to Ubuntu 22.04 (#35451) 2023-05-05 17:52:07 +02:00
Harmen Stoppels
803425780e ci: stop downloading recent gmake (#37458) 2023-05-05 17:09:56 +02:00
Chris Green
d600aef4f4 Relax environment manifest filename requirements and lockfile identification criteria (#37413)
* Relax filename requirements and lockfile identification criteria

* Tests

* Update function docs and help text

* Update function documentation

* Update Sphinx documentation

* Adjustments per https://github.com/spack/spack/pull/37413#pullrequestreview-1413540132

* Further tweaks per https://github.com/spack/spack/pull/37413#pullrequestreview-1413971254

* Doc fixes per https://github.com/spack/spack/pull/37413#issuecomment-1535976068
2023-05-05 07:40:49 -05:00
Harmen Stoppels
af9b9f6baf binutils: enable debug section compression with zlib by default (#37359) 2023-05-05 14:14:48 +02:00
Harmen Stoppels
bbc779f3f0 cc: deal with -Wl,-rpath= without value, deal with NAG (#37215)
Spack never parsed `nagfor` linker arguments put on the compiler line: 
```
nagfor -Wl,-Wl,,-rpath,,/path
````
so, let's continue not attempting to parse that.
2023-05-05 12:16:31 +02:00
Harmen Stoppels
3ecb84d398 elfutils: unconditionally depend on zstd (#37368) 2023-05-05 10:40:14 +02:00
Michael Kuhn
b2c3973d4a meson: change default build type to "release" (#37436)
The same was done for CMake in #36679.
2023-05-05 10:35:40 +02:00
Harmen Stoppels
35e1dc8eba spack uninstall: reduce verbosity with named environments (#34001) 2023-05-05 10:23:08 +02:00
Harmen Stoppels
bf71b78094 deprecate buildcache create --rel, buildcache install --allow-root (#37285)
`buildcache create --rel`: deprecate this because there is no point in
making things relative before tarballing; on install you need to expand
`$ORIGIN` / `@loader_path` / relative symlinks anyways because some
dependencies may actually be in an upstream, or have different
projections.

`buildcache install --allow-root`: this flag was propagated through a
lot of functions but was ultimately unused.
2023-05-05 09:51:53 +02:00
Sergey Kosukhin
85730de055 mpich: avoid '-fallow-argument-mismatch' in the compiler wrappers (#33323) 2023-05-05 09:37:12 +02:00
Alec Scott
bc88b581b4 cleaveland4: add v4.5 (#37319) 2023-05-05 03:03:47 -04:00
Alec Scott
1ae556829a Revert "lua: add v5.4.5 (#37334)" (#37431)
This reverts commit 59e2ef6ad6.
2023-05-05 02:58:45 -04:00
Massimiliano Culpo
0c5a5e2ce0 Remove "blacklist" and "whitelist" from module configuration (#37432)
The sections were deprecated in v0.19
2023-05-05 00:28:34 -04:00
Greg Becker
c3593e5b48 Allow choosing the name of the packages subdirectory in repositories (#36643)
Co-authored-by: becker33 <becker33@users.noreply.github.com>
2023-05-04 23:36:21 +02:00
Robert Cohn
3c40d9588f intel-oneapi-mkl: include mpi libs when using +cluster (#37386) 2023-05-04 14:46:55 -04:00
Massimiliano Culpo
16613408e4 Place an upper bound on urllib3 to build docs (#37433) 2023-05-04 19:40:43 +02:00
Jack Morrison
6f22b5d724 iperf2: Add new versions 2.1.{7,8,9} (#37408) 2023-05-04 10:34:49 -07:00
Robert Cohn
420e093e42 detect ifx 2023.1, add test (#37377) 2023-05-04 10:27:19 -07:00
Erik Heeren
8e73eeb4b9 py-amici, py-python-libsbml: new packages (#35532)
* py-amici, py-python-libsbml: new packages

* Apply suggestions from code review

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Swig and cmake are build-only dependencies

* cmake as a run dependency after all

* py-amici: default boost and hdf5 variants to True

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-05-04 11:19:48 -05:00
Harmen Stoppels
a5300b5726 perl: fix jobserver job issue (#37428)
When building perl with posix jobserver, it seems to eat jobs, which
reduces parallelism to 1 in many cases, and is rather annoying. This is
solved in GNU Make 4.4 (fifo is more stable than file descriptors), but
that version is typically not available.

So, fix this issue by simply unsetting MAKEFLAGS for the duration of
./Configure. That's enough, and the build phase runs perfectly in
parallel again.
2023-05-04 17:50:00 +02:00
Massimiliano Culpo
86d3bad1e0 cmake build system: change default build type to Release (#36679)
This switches the default Make build type to `build_type=Release`.

This offers:
- higher optimization level, including loop vectorization on older GCC
- adds NDEBUG define, which disables assertions, which could cause speedups if assertions are in loops etc
- no `-g` means smaller install size

Downsides are:
- worse backtraces (though this does NOT strip symbols)
- perf reports may be useless
- no function arguments / local variables in debugger (could be of course)
- no file path / line numbers in debugger

The downsides can be mitigated by overriding to `build_type=RelWithDebInfo` in `packages.yaml`,
if needed.  The upside is that builds will be MUCH smaller (and faster) with this change.

---------

Co-authored-by: Gregory Becker <becker33@llnl.gov>
2023-05-04 11:33:35 -04:00
Massimiliano Culpo
600955edd4 Update vendored ruamel.yaml to v0.17.21 (#37008)
* Vendor ruamel.yaml v0.17.21

* Add unit test for whitespace regression

* Add an abstraction layer in Spack to wrap ruamel.yaml

All YAML operations are routed through spack.util.spack_yaml

The custom classes have been adapted to the new ruamel.yaml
class hierarchy.

Fixed line annotation issue in "spack config blame"
2023-05-04 08:00:38 -07:00
Massimiliano Culpo
95e61f2fdf Remove the old spec format in configuration (#37425)
The format was deprecated in v0.15
2023-05-04 07:59:11 -07:00
Mikael Simberg
e6d37b3b61 Add pika 0.15.0 (#37403) 2023-05-04 07:48:24 -04:00
Massimiliano Culpo
cf5daff6f5 Deprecate env: as top level environment key (#37424) 2023-05-04 07:08:29 -04:00
Annop Wongwathanarat
e5dcaebd43 acfl: add compiler-package mapping and fix version number (#36768) 2023-05-04 03:59:15 -05:00
Harmen Stoppels
84a70c26d9 buildcache metadata: store hash -> prefix mapping (#37404)
This ensures that:

a) no externals are added to the tarball metadata file
b) no externals are added to the prefix to prefix map on install, also
for old tarballs that did include externals
c) ensure that the prefix -> prefix map is always string to string, and
doesn't contain None in case for some reason a hash is missing
2023-05-04 10:09:22 +02:00
Mikael Simberg
3bfd948ec8 Add patches for generic context coroutine stack allocation in pika on macos (#37288) 2023-05-04 09:56:02 +02:00
Sam Reeve
58e527935c cabana: Add optional silo build (#37393) 2023-05-04 00:43:31 -04:00
Adam J. Stewart
c511fbb717 py-lightly: add v1.4.4 (#37406) 2023-05-03 15:41:05 -04:00
Bryce Torcello
541cdbbef2 docs: update RHEL/CentOS system prerequisites (#36720) 2023-05-03 19:04:16 +02:00
Alec Scott
eda806ab97 libjwt: add v1.15.2 (#37333) 2023-05-03 09:34:36 -07:00
Alec Scott
605aa45aab mii: add v1.1.2 (#37335) 2023-05-03 09:34:04 -07:00
Alec Scott
e8462f82ef texinfo: add v7.0.3 (#37348) 2023-05-03 09:33:28 -07:00
Manuela Kuhn
387ee494b0 py-mne: add 1.3.1 (#37399) 2023-05-03 10:17:17 -05:00
Manuela Kuhn
1f24fb1dd8 py-neurora: add 1.1.6.9 (#37398) 2023-05-03 10:13:58 -05:00
Manuela Kuhn
379aec5757 py-neurokit2: add 0.2.4 (#37396) 2023-05-03 10:13:12 -05:00
Manuela Kuhn
a091f7642d py-bidskit: add 2023.2.16 (#37395) 2023-05-03 10:12:16 -05:00
Manuela Kuhn
edc70942d7 py-nilearn: add 0.10.1 (#37394) 2023-05-03 10:11:14 -05:00
Alec Scott
a94d18ad08 perl-module-install: add v1.21 (#37341) 2023-05-03 08:26:50 -04:00
Egbert Eich
1491d8471d Add 'zypper' to the valid container.os_packages options (#36681)
Signed-off-by: Egbert Eich <eich@suse.com>
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
Co-authored-by: e4t <e4t@users.noreply.github.com>
2023-05-03 13:05:14 +02:00
Massimiliano Culpo
03d1841385 Allow adding specs to an environment without the 'specs' attribute (#37378) 2023-05-03 13:01:16 +02:00
Harmen Stoppels
7c8590ee44 remove unused global in bindist tests (#37358)
* remove unused global in bindist tests
* remove unused function
2023-05-03 05:34:14 -04:00
Jack Morrison
71aa12f72c Intel MPI Benchmarks 'IMB-P2P' is available for versions newer than 2018. (#37360) 2023-05-03 05:29:14 -04:00
Scott Wittenburg
c7e60f441a buildcache push: improve printing (#36141) 2023-05-03 10:42:22 +02:00
Tim Haines
11aa2d721e intel-tbb: Add versions 2021.8.0 and 2021.9.0 (#37391) 2023-05-03 00:13:31 -04:00
Chris Green
c110bcc5af libintl, iconv, gettext: account for libc provider and externals (#35450)
* libiconv can be provided by libc, so update packages which depend on
  libiconv to require the iconv virtual instead
* Many packages need special consideration when locating iconv depending
  on whether it is provided by libc (no prefix provided) or the libiconv
  package (in that case we want to provide a prefix)
* It was also noticed that when an iconv external was provided, that
  there was interference with linking (this should generally be handled
  by Spack's compiler wrappers and bears further investigation)
* Like iconv, libintl can be provided by libc or another package, namely
  gettext. It is not converted to a provider like libiconv because it
  provides additional routines. The logic is similar to that of iconv
  but instead of checking the provider, we check whether the gettext
  installation includes libintl.
2023-05-02 18:18:30 -07:00
renjithravindrankannath
4edd364a8b Guard use of OpenMP in rocblas test (#36673)
* Provide openmp from rocm-open-extras for roblas test
* Addressing the  prechecks/audit/package-audits check
* Correcting style check errors.
* rocm-openmp-extras path veriable restricting for test
* Correcting the env variable to run_tests
* Guard use of OpenMP to make it optional in rocblas test
* Removing unused patch
2023-05-02 13:11:13 -07:00
Zack Galbreath
42ede698c2 trilinos: add version 14.0.0 (#37387) 2023-05-02 14:53:37 -04:00
Massimiliano Culpo
68a4b2e4e4 GitHub Actions: do not install six in CI (#37361)
* GitHub Actions: do not install six in CI
* Remove workflow code that was commented out
* Remove any use of "six" from packages
2023-05-02 13:28:24 -04:00
renjithravindrankannath
131e1c0937 hip: Patch to handle file reorg changes for the tests (#36993)
* Patch to handle file reorg changes for the tests
* Correcting patch file name
* Limiting hipify-clang path to 5.4 and later
* Set hipify-clang path env in CMake
2023-05-02 13:23:26 -04:00
Daniel Ahlin
b8136d7052 gromacs: add 2023.1 version (#37371) 2023-05-02 12:53:11 -04:00
Alec Scott
c4ac9246e2 muparser: add v2.3.4 (#37298) 2023-05-02 11:34:44 -04:00
Alec Scott
3dd3526de9 globalarrays: add v5.8.2 (#37325) 2023-05-02 10:43:13 -04:00
Alec Scott
5c4636c86d spot: add v2.11.5 (#37299) 2023-05-02 08:43:10 -04:00
Alec Scott
a6ee9369b6 osi: add v0.108.8 (#37340) 2023-05-02 08:33:14 -04:00
Richard Berger
b8f35c4aa7 ports-of-call: add version 1.5.1 (#37366) 2023-05-02 08:23:28 -04:00
Glenn Johnson
e5a48033bd proj: don't depend on googletest at build time (#37240)
* proj: v6 depends on googletest at build time

* Have cmake block check for run_tests
2023-05-02 08:23:13 -04:00
Alec Scott
49497dd254 uriparser: add v0.9.7 (#37350) 2023-05-02 08:15:49 -04:00
Alec Scott
d60b055f64 redis-plus-plus: add v1.3.8 (#37344) 2023-05-02 08:15:27 -04:00
Alec Scott
59e2ef6ad6 lua: add v5.4.5 (#37334) 2023-05-02 07:38:33 -04:00
Alec Scott
a7744b0dbc sqlitebrowser: add v3.12.2 (#37300) 2023-05-02 07:38:11 -04:00
Jonathon Anderson
78cfad7881 intel-tbb: backport GCC 13 support patch (#37291) 2023-05-02 06:25:06 -04:00
Tristan Carel
60d3ed86d9 steps: add version 4.1.1, remove others (#37250)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-05-02 05:37:05 -04:00
Luca Heltai
c16c5ad106 dealii: add support for 9.4.1 and 9.4.2 (#36627)
* Make sure the standard is cxx17 for 9.4:

* Fix patches for > 9.4
2023-05-02 10:49:53 +02:00
Mark W. Krentel
9c854bf78e libpfm4: add version 4.13.0 (#37364) 2023-05-02 04:39:11 -04:00
Harmen Stoppels
27bce8d489 gdb: add missing zstd, add system dep for zlib (#37369) 2023-05-02 04:34:13 -04:00
Massimiliano Culpo
a92f1e37aa Disable module file generation by default (#37258)
* Disable module generation by default (#35564)

a) It's used by site administrators, so it's niche
b) If it's used by site administrators, they likely need to modify the config anyhow, so the default config only serves as an example to get started
c) it's too arbitrary to enable tcl, but disable lmod

* Remove leftover from old module file schema

* Warn if module file config is detected and generation is disabled

---------

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2023-05-02 10:28:27 +02:00
Olivier Cessenat
99c3ecc139 visit: python 3.9 and above acceptable (#37071) 2023-05-02 10:18:44 +02:00
Alec Scott
0f6170875c gh: add v2.28.0 (#37302) 2023-05-02 10:12:27 +02:00
Weiqun Zhang
986809c4c5 amrex: add 23.05 (#37362) 2023-05-02 04:04:28 -04:00
Alec Scott
d9c128132a tree: add v2.1.0 (#37349) 2023-05-02 03:30:43 -04:00
Alec Scott
a0cac6c6bf gnupg: add v2.4.1 (#37326) 2023-05-02 09:21:42 +02:00
Alec Scott
470523cc35 libibumad: add v44.1 (#37332) 2023-05-01 22:49:15 -07:00
Alec Scott
c82d4fdc08 pharokka: add v1.3.2 (#37342) 2023-05-01 22:48:30 -07:00
Alec Scott
c03448c827 jsoncpp: add v1.9.5 (#37303) 2023-05-02 01:41:11 -04:00
Alec Scott
59cd0711ba nco: add v5.1.5 (#37338) 2023-05-02 00:44:00 -04:00
Alec Scott
8ef31b23a4 kubernetes: add v1.27.1 (#37331) 2023-05-02 00:43:38 -04:00
Alec Scott
1bae07e54e libyogrt: add v1.33 (#37305) 2023-05-02 00:14:56 -04:00
Alec Scott
c7a2766ded brynet: add v1.12.2 (#37309) 2023-05-02 00:05:01 -04:00
Alec Scott
2a95b1e282 oniguruma: add v6.9.8 (#37307) 2023-05-02 00:04:36 -04:00
Alec Scott
5eb217e878 nanomsg: add v1.2 (#37306) 2023-05-02 00:04:15 -04:00
Alec Scott
22486eeb4e faust: add v2.54.9 (#37310) 2023-05-02 00:03:59 -04:00
Alec Scott
e5665730b6 liblouis: add v3.25.0 (#37304) 2023-05-02 00:03:44 -04:00
Alec Scott
edccf0d819 mapserver: add v8.0.1 (#37312) 2023-05-01 23:58:33 -04:00
Alec Scott
815b2f542a libmmtf-cpp: add v1.1.0 (#37311) 2023-05-01 23:58:11 -04:00
Alec Scott
b50f6510d4 beakerlib: add v1.29.3 (#37316) 2023-05-01 23:47:18 -04:00
Alec Scott
226f331a21 kubectl: add v1.27.1 (#37330) 2023-05-01 23:41:39 -04:00
Alec Scott
bc0477f3e0 bedtools2: add v2.31.0 (#37301) 2023-05-01 23:28:01 -04:00
Alec Scott
cf924e397f wsmancli: add v2.6.2 (#37351) 2023-05-01 23:22:13 -04:00
eugeneswalker
bfe0bc1c6b new package: py-lcls-krtc (#37263)
* new package: py-lcls-krtc

* new package: py-pykerberos

* py-lcls-krtc: ^py-pykerberos for link
2023-05-01 23:21:54 -04:00
Alec Scott
1d2e30b8b2 heaptrack: add v1.3.0 (#37327) 2023-05-01 23:16:57 -04:00
Alec Scott
e11f635174 mixcr: add v4.3.2 (#37336) 2023-05-01 23:16:39 -04:00
Alec Scott
611c24c01c c-blosc: add v1.21.2 (#37317) 2023-05-01 23:16:24 -04:00
Alec Scott
2f49e20b12 nginx: add v1.24.0 (#37339) 2023-05-01 23:10:44 -04:00
Alec Scott
409bba7cf9 alembic: add v1.8.5 (#37315) 2023-05-01 23:05:33 -04:00
Alec Scott
378aa835f8 tippecanoe: add v1.36.0 (#37313) 2023-05-01 23:05:12 -04:00
Alec Scott
2500443f11 mpi-bash: add v1.3 (#37337) 2023-05-01 23:04:48 -04:00
Satish Balay
f5c32d57e0 petsc, py-petsc4py: add v3.19.1 (#37356) 2023-05-01 18:58:03 -04:00
Benjamin Meyers
ba6dadf760 Update py-editdistance@0.6.2 (#37365)
* Update py-editdistance@0.6.2

* [@spackbot] updating style on behalf of meyersbs
2023-05-01 18:33:37 -04:00
Alec Scott
83535ed503 console-bridge: add v1.0.2 (#37321) 2023-05-01 14:53:59 -07:00
Alec Scott
051d668ca4 dropwatch: add v1.5.4 (#37322) 2023-05-01 14:50:00 -07:00
Alec Scott
3029e943b1 flibcpp: add v1.0.2 (#37323) 2023-05-01 14:47:47 -07:00
Alec Scott
3d48bd88d3 helib: add v2.2.2 (#37328) 2023-05-01 14:42:12 -07:00
Alec Scott
fcf9068a04 hunspell: add v1.7.2 (#37329) 2023-05-01 14:40:40 -07:00
Alec Scott
724c34db5f procenv: add v0.60 (#37343) 2023-05-01 14:05:40 -07:00
Alec Scott
1b79725229 restic: add v0.15.2 (#37345) 2023-05-01 13:59:36 -07:00
Alec Scott
06e6c341e4 shapeit4: add v4.2.2 (#37347) 2023-05-01 13:56:26 -07:00
Adam J. Stewart
a2fc3dbfc5 py-sphinx: add v7.0.0 (#37352) 2023-05-01 12:17:50 -07:00
Alec Scott
fbda3e23ac scons: add v4.5.2 (#37346) 2023-05-01 11:12:09 -04:00
Massimiliano Culpo
3c3a4c7577 Factor YAML manifest manipulation out of the Environment class (#36927)
Change the signature of the Environment.__init__ method to have
a single argument, i.e. the directory where the environment manifest 
is located. Initializing that directory is now delegated to a function 
taking care of all the error handling upfront. Environment objects 
require a "spack.yaml" to be available to be constructed.

Add a class to manage the environment manifest file. The environment 
now delegates to an attribute of that class the responsibility of keeping
track of changes modifying the manifest. This allows simplifying the 
updates of the manifest file, and helps keeping in sync the spec lists in
memory with the spack.yaml on disk.
2023-05-01 15:06:10 +02:00
eugeneswalker
cfb34d19fe Revert "new package: roentdek (#37265)" (#37355)
This reverts commit fec20bb567.
2023-05-01 08:36:36 +02:00
snehring
8183210e59 Feature/topiary (#37157)
* generax: adding new package generax

* muscle5: adding new package muscle5

* py-custom-inherit: adding new package py-custom-inherit

* py-ete3: adding new package py-ete3

* py-itolapi: adding new package py-itolapi

* py-opentree: adding new package py-opentree

* py-pypng: adding new package py-pypng

* py-toyplot: adding new package py-toyplot

* py-toytree: adding new package py-toytree

* py-pastml: adding new package py-pastml

* raxml-ng: adding new version 1.1.0

* py-topiary: adding new package py-topiary

* generax: adding master branch version
generax: adding version 2.0.1
generax: add mpi variant

* py-topiary: add main

* generax: correcting commit for 2.0.1

* Update var/spack/repos/builtin/packages/py-itolapi/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-opentree/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* py-topiary-asr: rename package, requested changes.

* Update var/spack/repos/builtin/packages/py-topiary-asr/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-04-29 17:52:32 -04:00
Manuela Kuhn
896a81ba35 py-nipype: add 1.8.6 (#37279)
* py-nipype: add 1.8.6

* Exchange test dep with skip_modules
2023-04-29 15:56:15 -05:00
Greg Becker
21cadf96e0 Spec.format: fix bug in dependency hash formatting (#37073)
Co-authored-by: becker33 <becker33@users.noreply.github.com>
2023-04-28 23:33:05 +02:00
eugeneswalker
cceeb96e06 new package: py-amityping (#37262) 2023-04-28 13:51:52 -05:00
Alec Scott
7853ffc881 libmaxminddb: add v1.7.1 (#37185) 2023-04-28 11:08:21 -07:00
Victor Brunini
4363b1c2dc superlu-dist: do not discard cflags from Spack (#37260)
Make sure to append additional flags needed for specific compilers
in the flag_handler instead of adding them as separate cmake define
lines that override the main spack cflags.
2023-04-28 09:37:58 -04:00
Harmen Stoppels
c85877566f Reduce the number of stat calls in "spack verify" (#37251)
Spack comes to a crawl post-install of nvhpc, which is partly thanks to
this post install hook which has a lot of redundancy, and isn't correct.

1. There's no need to store "type" because that _is_ "mode".
2. There are more file types than "symlink", "dir", "file".
3. Don't checksum device type things
4. Don't run 3 stat calls (exists, stat, isdir/islink), but one lstat
   call
5. Don't read entire files into memory

I also don't know why `spack.crypto` wasn't used for checksumming, but I
guess it's too late for that now. Finally md5 would've been the faster
algorithm, which would've been fine given that a non cryptographicall
checksum was used anyways.
2023-04-28 13:24:24 +00:00
dale-mittleman
fc201a2b75 Fixing patch version constraint for llvm external ncurses patch (#37145) 2023-04-28 15:10:03 +02:00
Massimiliano Culpo
ddd191b1c0 libxml2: fix test method (#37242)
This was discovered using #34236
2023-04-28 13:45:16 +02:00
eugeneswalker
fec20bb567 new package: roentdek (#37265) 2023-04-28 04:35:56 -07:00
eugeneswalker
63869bba47 new package: py-pyabel (#37264) 2023-04-28 04:31:18 -07:00
eugeneswalker
eacf11e6cc new package: xtcdata (#37261) 2023-04-28 04:31:06 -07:00
snehring
7bd987aa5b sentieon-genomics: adding new version 20211207. (#37223) 2023-04-28 12:33:22 +02:00
Jonathon Anderson
cba8d1253d Add container images supporting RHEL alternatives (#36713)
Add container support for AlmaLinux, Fedora 37 and 38 and Rocky Linux
2023-04-28 12:28:33 +02:00
Andrew W Elble
c87cc5c7b1 kicad: new version 7.0.2 (#37228) 2023-04-28 12:25:28 +02:00
Richard Berger
4a7893bed6 slurm: add version 22-05-8-1 and 23-02-1-1 (#37238) 2023-04-28 12:24:10 +02:00
Adam J. Stewart
44196085f6 py-psycopg2: add v2.9.6 (#37235) 2023-04-28 11:50:27 +02:00
John Jolly
076660804d bricks: Fix package to properly find spack opencl-clhpp (#37239)
The bricks package uses header from the opencl-clhpp package when built with
the cuda variant activated. In order to find the header files, the bricks
CMakeLists.txt uses the `find_package(OpenCL 2.0)` statement. The CMake
FindOpenCL module searches several paths to find the header files. Eventually
it will search for header files in the local /usr/include directories. If
OpenCL headers are found, but CUDA is not installed locally, then the build
will fail.

One of the CMake variables searched for a path to the OpenCL headers is
OCL_ROOT. This fix utilizes the OCL_ROOT variable to identify the correct path
to the install opencl-clhpp package within Spack. Also, if the cuda variant is
not used, then the OpenCL build is disabled to prevent a build failure due to
improperly-identified locally-installed OpenCL header files.

The default behavior of the build process has not changed. An external variable
definitions must be made to activate these features. Specifically, to disable
the OpenCL build, this flag must be provided to CMake:

    -DBRICK_USE_OPENCL=OFF

The Spack build process explicitly uses this option unless the cuda variant is
specified. If the cuda variant is specified, then the BRICK_USE_OPENCL variable
is set to ON and the OCL_ROOT variable is set to the path of the opencl-clhpp
include directory.
2023-04-28 11:37:22 +02:00
Alec Scott
e57db5c528 apfel: add v3.0.6 (#37267) 2023-04-28 11:18:05 +02:00
Alec Scott
01cdc4f960 cmor: add v3.7.2 (#37268) 2023-04-28 11:17:44 +02:00
Alec Scott
93e88853c6 figtree: add v1.4.4 (#37269) 2023-04-28 11:17:31 +02:00
Alec Scott
561c192e30 fping: add v5.1 (#37270) 2023-04-28 11:17:16 +02:00
Alec Scott
65c625a44f gapbs: add v1.4 (#37271) 2023-04-28 11:16:55 +02:00
Alec Scott
08291cb63d glfw: add v3.3.8 (#37272) 2023-04-28 11:16:41 +02:00
Alec Scott
dcd0f8d252 jemalloc: add v5.3.0 (#37273) 2023-04-28 11:14:12 +02:00
Alec Scott
fa0367691e sandbox: add v2.25 (#37274) 2023-04-28 11:13:56 +02:00
Alec Scott
e3a76bf2a9 snap-berkeley: add v2.0.3 (#37275) 2023-04-28 11:13:39 +02:00
Alec Scott
e2f9cdfbdc tcpdump: add v4.99.4 (#37276) 2023-04-28 11:13:22 +02:00
Alec Scott
1eb4e30d28 wps: add v4.5 (#37277) 2023-04-28 11:12:28 +02:00
Sangu Mbekelu
2f529a7320 py-subword-nmt (#37161)
* "new py-subword-nmt package"

* [@spackbot] updating style on behalf of Sangu-Mbekelu

* Update package.py

updating package based on review

* [@spackbot] updating style on behalf of Sangu-Mbekelu

---------

Co-authored-by: Sangu Mbekelu <s.mbekelu9@gmail.com>
2023-04-28 00:22:45 -04:00
Manuela Kuhn
cb4234b971 py-virtualenv: add 20.22.0 (#37259)
* py-virtualenv: add 20.22.0

* [@spackbot] updating style on behalf of manuelakuhn

* Fix dependency versions for release 20.22.0

* Remove python version restrictions

* [@spackbot] updating style on behalf of manuelakuhn

* py-platformdirs: add 3.5.0

* py-filelock: add 3.12.0

* Fix dependency bound for py-platformdirs

* py-importlib-metadata: add 6.6.0
2023-04-27 22:28:18 -05:00
Adam J. Stewart
ee7cdb8a68 macOS: use Apple GL/GLU by default (#36618)
* macOS: use Apple GL/GLU by default

* Use CLT instead

* Use CLT instead

* Undo change to libuuid
2023-04-27 21:54:48 -05:00
eugeneswalker
7dc0bf5fcb legion: add versions up to 23.03.0 (#37257)
* legion: add versions up to 23.03.0

* add maintainer
2023-04-27 19:17:42 -04:00
Chris Green
d01b542df7 [py-breathe] New version 4.35.0 (#37233)
* [py-breathe] New version 4.35.0

* Update var/spack/repos/builtin/packages/py-breathe/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-04-27 13:57:31 -04:00
Thomas-Ulrich
c59eb8cdea fixes #29350 by enabling headers variant in binutils when compiling llvm with gold (#37245) 2023-04-27 09:53:45 -07:00
Manuela Kuhn
ed34c4a004 py-memory-profiler: add 0.61.0 (#37248) 2023-04-27 11:38:08 -05:00
Chris Green
7cbaf2ff56 [py-sphinx-design] New versions 0.4.0, 0.4.1 (#37234)
* [py-sphinx-design] New versions 0.4.0, 0.4.1

* conflicts() -> depends_on()

Per @adamjstewart

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-04-27 11:37:23 -05:00
Massimiliano Culpo
cd851e173d gcc: add v13.1.0 (#37230)
version 13.1 builds with apple-clang@14.0.3
2023-04-27 16:41:44 +02:00
Harmen Stoppels
8be2f017e7 gcc: no need to special case macos/linux wrt rpaths (#37243) 2023-04-27 15:52:28 +02:00
Michael Kuhn
f6464abfcb Fix pkgconfig dependencies (#37236)
Packages shouldn't typically depend on pkg-config or pkgconf but on the
virtual provider pkgconfig.
2023-04-27 10:04:22 +02:00
Alec Scott
ce81f15e6f r-covr: add v3.6.2 (#37194) 2023-04-27 02:22:29 -04:00
Wouter Deconinck
4d597bdecc py-gssapi: depends_on krb5 (#37227)
This dependency was somehow overlooked (but is pretty crucial) because it doesn't appear in the python requirements...
2023-04-26 22:35:15 -04:00
Manuela Kuhn
62ea6bed89 py-bidscoin: add 4.0.0 and py-pydeface as new deb package (#37231) 2023-04-26 20:58:57 -04:00
Manuela Kuhn
742fbd458d py-mypy: add 1.2.0 (#37224) 2023-04-26 20:54:11 -04:00
Manuela Kuhn
10b6651d35 py-flake8: add 6.0.0 and update dependencies (#37222) 2023-04-26 20:53:49 -04:00
Alec Scott
3f3fc804c6 r-afex: add v1.2-1 (#37188) 2023-04-26 19:36:53 -05:00
Alec Scott
c7d586d03a r-argparse: add v2.2.2 (#37189) 2023-04-26 19:36:11 -05:00
Alec Scott
b17feb9b06 r-bit: add v4.0.5 (#37190) 2023-04-26 19:35:30 -05:00
Alec Scott
2e4a9f1abf r-loo: add v2.6.0 (#37205)
* r-loo: add v2.6.0

* Split r dependency from other deps to align with common r package style
2023-04-26 19:34:19 -05:00
Alec Scott
117d374a61 r-bookdown: add v0.33 (#37191)
* r-bookdown: add v0.33

* Add r@3.5.0: dependency to package
2023-04-26 19:33:18 -05:00
Alec Scott
67cf37d750 r-compositions: add v2.0-6 (#37192)
* r-compositions: add v2.0-6

* Split r dependecies from other r packages to match common format
2023-04-26 19:32:15 -05:00
Alec Scott
6e276ecb4c r-convevol: add v2.0.0 (#37193) 2023-04-26 19:31:34 -05:00
Alec Scott
8c6a3f15e5 r-desolve: add v1.35 (#37195) 2023-04-26 19:29:14 -05:00
Alec Scott
65bbd2a1e6 r-fastmap: add v1.1.1 (#37196) 2023-04-26 19:27:49 -05:00
Alec Scott
426f8e987b r-formatr: add v1.14 (#37197) 2023-04-26 19:27:11 -05:00
Alec Scott
a78e061117 r-ggvis: add v0.4.8 (#37198) 2023-04-26 19:26:24 -05:00
Alec Scott
17e14757e2 r-glmnet: add v4.1-7 (#37199)
* r-glmnet: add v4.1-7

* Split r dependency from other deps to follow common format
2023-04-26 19:25:42 -05:00
Alec Scott
2bb3553f24 r-insight: add v0.19.1 (#37200) 2023-04-26 19:24:55 -05:00
Alec Scott
6267a1f68d r-interp: add v1.1-4 (#37201)
* r-interp: add v1.1-4

* split r dep from other dependencies to match common format
2023-04-26 19:24:08 -05:00
Alec Scott
666ceb998c r-jomo: add v2.7-6 (#37202) 2023-04-26 19:23:09 -05:00
Alec Scott
e4cc4018c1 r-lattice: add v0.21-8 (#37204)
* r-lattice: add v0.21-8

* Enforce a higher version of R as according to cran
2023-04-26 19:12:26 -05:00
Alec Scott
5551b7a506 r-magic: add v1.6-1 (#37206) 2023-04-26 19:06:27 -05:00
Alec Scott
facc93a30e r-maptools: add v1.1-6 (#37207) 2023-04-26 19:05:29 -05:00
Alec Scott
b3101d1c85 r-meta: add v6.2-1 (#37208) 2023-04-26 19:04:07 -05:00
H. Joe Lee
0d7890baa5 spdk: add a new package (#35520)
* spdk: add a new package
* chore: fix formatting and style
* fix: add rdma-core dependency
* fix: remove spdk < 23.01 versions per @soumagne review
* spdk: add 22.01.1 version
* spdk: address @soumagne reviews
* spdk: fix fio audit failure
* spdk: fix fio version and remove debugging info
2023-04-26 16:38:14 -07:00
Wouter Deconinck
d43ae9fa10 scitokens-cpp: depends_on pkgconfig (#37168)
A missing dependency, showing up as:
```console
#24 1113.1 3 errors found in build log:
#24 1113.1      20    -- Check for working CXX compiler: /opt/spack/lib/spack/env/gcc/g++ 
#24 1113.1            - skipped
#24 1113.1      21    -- Detecting CXX compile features
#24 1113.1      22    -- Detecting CXX compile features - done
#24 1113.1      23    -- Found CURL: /opt/software/linux-debian-x86_64_v3/gcc-12.2.0/curl-
#24 1113.1            7.85.0-ca5zznsdkp2hwbnikha6sgqzcpuw74sc/lib/libcurl.so (found versio
#24 1113.1            n "7.85.0")
#24 1113.1      24    -- Found UUID : /opt/software/linux-debian-x86_64_v3/gcc-12.2.0/util
#24 1113.1            -linux-uuid-2.38.1-45xrjgjjauvev5qarwji7xgmlnhqlzkh/lib/libuuid.so
#24 1113.1      25    -- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
#24 1113.1   >> 26    CMake Error at /opt/software/linux-debian-x86_64_v3/gcc-12.2.0/cmake
#24 1113.1            -3.24.3-6doi3daa6ihw6mk4zbk5oiiuiaahsny7/share/cmake-3.24/Modules/Fi
#24 1113.1            ndPkgConfig.cmake:663 (message):
#24 1113.1      27      pkg-config tool not found
#24 1113.1      28    Call Stack (most recent call first):
#24 1113.1      29      /opt/software/linux-debian-x86_64_v3/gcc-12.2.0/cmake-3.24.3-6doi3
#24 1113.1            daa6ihw6mk4zbk5oiiuiaahsny7/share/cmake-3.24/Modules/FindPkgConfig.c
#24 1113.1            make:829 (_pkg_check_modules_internal)
#24 1113.1      30      CMakeLists.txt:39 (pkg_check_modules)
#24 1113.1      31    
#24 1113.1      32    
```

Ref: https://github.com/scitokens/scitokens-cpp/blob/v1.0.0/CMakeLists.txt#L32
2023-04-27 00:02:55 +02:00
Trevor [LAS]
055e5abc93 py-ipyrad (#37160)
* Adding py-ipyrad for testing

* py-ipyrad: placating flake8

* py-ipyrad: adding version 0.9.90, fixing hard coded path.

* py-ipyrad: use join_path instead of hard coded linux path

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* py-ipyrad: Removing unneeded dependencies

* py-ipyrad: Readded future (see ipyrad setup.py)

* py-ipyrad: Switch to an anchored link in the docs

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* py-ipyrad: Removed patch decorator

---------

Co-authored-by: snehring <snehring@iastate.edu>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-04-26 17:04:57 -04:00
Michael Kuhn
16f86c7f96 rocksdb: add 8.1.1 (#37169) 2023-04-26 10:07:42 -07:00
Michael Kuhn
0292568f97 libbson, mongo-c-driver: add 1.23.3 (#37175) 2023-04-26 10:05:45 -07:00
Gerhard Theurich
61c24dc7c3 esmf: add v8.4.2 (#37183) 2023-04-26 10:03:13 -07:00
Alec Scott
cbb8900e6e genrich: add v0.6.1 (#37184) 2023-04-26 10:01:59 -07:00
Alec Scott
6084b9be5b openwsman: add v2.7.2 (#37186) 2023-04-26 09:59:21 -07:00
Alec Scott
e4eba24191 shortstack: add v4.0.1 (#37187) 2023-04-26 09:58:27 -07:00
Alec Scott
aa0b013efe abyss: add v2.3.5 (#37209) 2023-04-26 09:28:48 -07:00
Alec Scott
9d49664679 advancecomp: add v2.5 (#37210) 2023-04-26 09:26:04 -07:00
Alec Scott
8c4bd595f3 barrnap: add v0.9 (#37212) 2023-04-26 09:19:27 -07:00
Alec Scott
8669844084 check: add v0.15.2 (#37216) 2023-04-26 09:18:49 -07:00
Alec Scott
2477fe2ff7 bowtie: add v1.3.1 (#37213) 2023-04-26 09:18:04 -07:00
Alec Scott
3f7ea01e9d faiss: add v1.7.4 (#37217) 2023-04-26 09:15:52 -07:00
Alec Scott
c334a16a2f nanoflann: add v1.4.3 (#37218) 2023-04-26 09:13:52 -07:00
Alec Scott
4fec857504 pestpp: add v5.2.3 (#37219) 2023-04-26 09:12:52 -07:00
Alec Scott
f859da6119 rinetd: add v0.73 (#37220) 2023-04-26 09:11:37 -07:00
Alec Scott
1c19eccf29 specfem3d-globe: add v8.0.0 (#37221) 2023-04-26 09:10:22 -07:00
Adam J. Stewart
1b7bf9a95b py-lightly: add v1.4.3 (#37178) 2023-04-26 17:47:40 +02:00
Adam J. Stewart
8e7b2c999a py-sphinx: add v6.2.1 (#37177) 2023-04-26 17:46:55 +02:00
Manuela Kuhn
dec0c540e9 py-wesanderson: add new package (#37182) 2023-04-26 10:29:20 -05:00
Adam J. Stewart
d74b02f59a py-tensorflow: add v2.11–2.12 (#36263) 2023-04-26 08:03:47 -05:00
Richard Berger
37335f8fcf flecsi: add 2.2.0 release, cleanup (#37158)
* flecsi: add 2.2.0 release, cleanup

* flecsi: deprecate 1.x versions

* flecsi: add missing 1.4.1 release

* flecsi: add missing 2.0.0 release
2023-04-26 05:52:15 -07:00
Thomas Madlener
eb4552542d elfutils package: fix +debuginfod installation issue (#36758)
* elfutils cannot build against libarchive@3.62+iconv 
* elfutils needs libmicrohttpd version 0.9.50 or older
* elfutils: explicitly depend on pkg-config
* libmicrohttpd: Add several new versions
2023-04-25 22:57:19 -07:00
Benjamin Meyers
b5f546b72b New: py-ax-platform; Update: py-botorch, py-gpytorch, py-linear-operator, py-pyro-ppl, py-typeguard (#37143) 2023-04-25 21:53:12 -04:00
Alec Scott
b2fb851d18 gmp: Add patch for MacOS M1/M2 machines to fix segfault (#37166)
* Add patch for MacOS M1/M2 machines to fix segfault when using gmp

* Update var/spack/repos/builtin/packages/gmp/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Restrict patch to v6.2.1

* Update var/spack/repos/builtin/packages/gmp/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-04-25 20:43:15 -04:00
Simon Frasch
f4b0510156 spla: version 1.5.5 (#37173) 2023-04-25 20:03:59 -04:00
Austin McCartney
a371e1e645 Narrow patch diff context for zziplib package (#29236)
The patch for the zziplib package applied for version 0.13.69 and
earlier includes a reference to Creative Commons
Attribution-NonCommercial-ShareAlike 2.0 Generic license, which
causes Flexera's ~expensive perl script~ FlexNet Code Insights open
source license and compliance tool to flag Spack as a non-commercial
product. This patch narrows the diff context in the patch to exclude
this text. The semantics of the patch file are unchanged.
2023-04-25 19:58:18 -04:00
Cyrus Harrison
80881f9119 add ascent 0.9.1 release (#37139)
* add ascent 0.9.1 release
* fix typo
2023-04-25 12:54:24 -07:00
Adam J. Stewart
c82594de21 py-scipy: PyPI-based Python version support (#37137) 2023-04-25 12:42:24 -07:00
Adam J. Stewart
eb15d49d61 py-numpy: PyPI-based Python version support, add v1.24.3 (#37136)
* py-numpy: add v1.24.3
* PyPI-based Python version support
* Sort in reverse order
2023-04-25 10:55:10 -07:00
Harmen Stoppels
97beb2658b require: do not allow additional properties (#37174) 2023-04-25 11:52:51 +02:00
eugeneswalker
75bf6d665c e4s ci: add xyce (#36841)
* e4s ci: add xyce

* relax trilinos contraints for xyce

* also relax trilinos constraint for e4s-power stack

* allow trilinos~shylu for xyce
2023-04-24 16:32:01 -07:00
eugeneswalker
c76023d7ac e4s ci: add mgard (#36584) 2023-04-24 23:35:40 +02:00
Alec Scott
6edfc07092 megadock: add v4.1.1 (#37154) 2023-04-24 14:04:31 -05:00
Alec Scott
a6b2a713d7 sdl2-image: add v2.6.3 (#37155) 2023-04-24 12:02:54 -07:00
Carlos Bederián
416b570825 gromacs: rework plumed support (#37013) 2023-04-24 20:59:45 +02:00
Alec Scott
28ad553856 libgit2: add v1.6.4 (#37153) 2023-04-24 11:56:27 -07:00
Alec Scott
a17f5efa75 libcyaml: add v1.4.0 (#37152) 2023-04-24 10:58:14 -07:00
Alec Scott
c8b21f43eb imath: add v3.1.7 (#37151) 2023-04-24 10:51:57 -07:00
Alec Scott
b1be17144b glab: add v1.28.1 (#37150) 2023-04-24 13:37:52 -04:00
Juan Miguel Carceller
977ec0bd91 Extend patch to 1.82.0 (#37138)
Co-authored-by: jmcarcell <jmcarcell@users.noreply.github.com>
2023-04-24 09:33:13 -07:00
Adam J. Stewart
4d58eaaf15 py-sphinx: add v6.2.0 (#37140) 2023-04-24 09:28:17 -07:00
Seth R. Johnson
3092bd2559 silo: loosen hdf5 version requirements (#37146)
We have successfully been building silo@4.10.2 against hdf5@1.10.4 from
some time. Refinement of #34275 (which was concerned with 4.11 but
unnecessarily restricted 4.10).
2023-04-24 09:23:16 -07:00
Adam J. Stewart
48347bbd7c py-pandas: add v2.0.1 (#37148) 2023-04-24 09:20:44 -07:00
Adam J. Stewart
07dbbff728 py-lightning: add v2.0.2 (#37149) 2023-04-24 09:19:49 -07:00
Adam J. Stewart
b5d66e0144 MXNet: add v1.9 (#36590) 2023-04-24 11:13:09 -05:00
eugeneswalker
81d3df3289 gptune: add new v4.0.0; relax py-numpy requirement to align with requirements.txt (#37141) 2023-04-24 08:48:46 -07:00
Anton Kozhevnikov
d8169ba440 do not use device_alloc (#37147) 2023-04-24 17:34:35 +02:00
Adam J. Stewart
7df2865dce Copy more logs to CI artifacts (#36783)
* Copy more logs to CI artifacts

* Trigger rebuilds again

* Remove test variant
2023-04-24 10:08:30 -05:00
Alec Scott
e69d693727 graphviz: add v8.0.1 (#36724) 2023-04-24 10:40:39 +02:00
Alec Scott
af9c466d86 libdap4: add v3.20.6 (#37112) 2023-04-24 10:40:12 +02:00
Alec Scott
43089a3931 libconfig: add v1.7.3 (#37111) 2023-04-24 10:39:56 +02:00
Alec Scott
1638821831 libcap-ng: add v0.8.3 (#37110) 2023-04-24 10:39:44 +02:00
Alec Scott
97c03b4c31 hohqmesh: add v1.3.0 (#37108) 2023-04-24 10:39:31 +02:00
Alec Scott
405ab9551f highway: add v1.0.4 (#37107) 2023-04-24 10:39:10 +02:00
Alec Scott
edd44032fd grep: add v3.10 (#37106) 2023-04-24 10:38:53 +02:00
Alec Scott
fad766e8d0 gpgme: add v1.20.0 (#37105) 2023-04-24 10:38:00 +02:00
Alec Scott
932195a913 fio: add v3.34 (#37104) 2023-04-24 10:37:49 +02:00
Alec Scott
a09fcca192 fdupes: add v2.2.1 (#37103) 2023-04-24 10:37:37 +02:00
Alec Scott
df9bd3c439 cpp-argparse: add v2.9 (#37102) 2023-04-24 10:37:25 +02:00
Alec Scott
f5b1d1f494 codec2: add v1.0.5 (#37101) 2023-04-24 10:37:13 +02:00
Alec Scott
43a069a60f bracken: add v2.8 (#37099) 2023-04-24 10:36:33 +02:00
Alec Scott
f3ad153dcd beast2: add v2.6.7 (#37098) 2023-04-24 10:36:21 +02:00
Alec Scott
794ab80086 args: add v6.4.6 (#37097) 2023-04-24 10:36:06 +02:00
Alec Scott
8fc8e8019a apktool: add v2.7.0 (#37096) 2023-04-24 10:35:52 +02:00
Alec Scott
6880bfd412 lis: add v2.1.1 (#37113) 2023-04-24 10:34:58 +02:00
Alec Scott
90e31c39cc maeparser: add v1.3.1 (#37114) 2023-04-24 10:34:44 +02:00
Alec Scott
6d1969e4d7 mrcpp: add v1.4.2 (#37115) 2023-04-24 10:34:30 +02:00
Alec Scott
90b4753f72 msmc2: add v2.1.4 (#37116) 2023-04-24 10:34:16 +02:00
Alec Scott
9285f591cc opam: add v2.1.3 (#37117) 2023-04-24 10:34:02 +02:00
Alec Scott
cf2ca0c9f3 openal-soft: add v1.23.1 (#37118) 2023-04-24 10:33:48 +02:00
Alec Scott
dffa5c56c8 poke: add v3.1 (#37120) 2023-04-24 10:33:35 +02:00
Alec Scott
302855ea86 pugixml: add v1.13 (#37121) 2023-04-24 10:33:20 +02:00
Alec Scott
a747a6e1f1 rabbitmq-c: add v0.13.0 (#37122) 2023-04-24 10:32:42 +02:00
Alec Scott
9e45571ebc rsem: add v1.3.3 (#37123) 2023-04-24 10:32:22 +02:00
Alec Scott
dae888b981 sina: add v1.13.0 (#37124) 2023-04-24 10:32:09 +02:00
Alec Scott
d98e129931 speexdsp: add v1.2.1 (#37125) 2023-04-24 10:31:53 +02:00
Alec Scott
a6b9f88b6c string-view-lite: add v1.7.0 (#37126) 2023-04-24 10:31:39 +02:00
Alec Scott
6412b7ac5d transposome: add v0.12.1 (#37127) 2023-04-24 10:31:10 +02:00
Alec Scott
410f00e36d tree-sitter: add v0.20.8 (#37128) 2023-04-24 10:30:36 +02:00
Alec Scott
240d40e159 units: add v2.22 (#37129) 2023-04-24 10:30:22 +02:00
Alec Scott
b34a354efe vc: add v1.4.3 (#37130) 2023-04-24 10:30:02 +02:00
Alec Scott
2b3939a65e vtk: add v9.2.6 (#37131) 2023-04-24 10:29:45 +02:00
Alec Scott
2be4200455 zstr: add v1.0.7 (#37132) 2023-04-24 10:29:21 +02:00
Wouter Deconinck
a3354a547f py-numpy: set openblas symbol_suffix in site.cfg (#37134)
* py-numpy: set openblas `symbol_suffix` in site.cfg

This writes the correct `symbol_suffix` variant value from the `openblas` in the spec into the `site.cfg`. Fixes #37133.

* py-numpy: fix style

* py-numpy: handle symbol_suffix == "none"
2023-04-23 09:27:26 -04:00
Andrew W Elble
8143c086a0 qgis: unpin qca, update qca (#37049)
allows compilation with gcc 11
2023-04-22 17:41:39 -05:00
Wouter Deconinck
806f630c8f (py-)codecov: not on pypi anymore, replace by static binary (#36809)
* py-codecov: deprecate since not on pypi anymore

* codecov: new package

* [@spackbot] updating style on behalf of wdconinc

* codecov: use github URL instead, multi-platform

* fix: install to prefix.bin.codecov

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* codecov: use versions lookup dict

* codecov: versions -> _versions, fix style

---------

Co-authored-by: wdconinc <wdconinc@users.noreply.github.com>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-04-22 11:01:15 -05:00
Alec Scott
9d2aab415d bubblewrap: add v0.8.0 (#37100) 2023-04-22 15:40:01 +02:00
Erik Schnetter
a5d1c645a0 hwloc: New version 2.9.1 (#37084) 2023-04-22 04:22:37 -04:00
Erik Schnetter
d443a44854 openblas: New version 0.3.23 (#36986)
Silence make

Set a fixed and large NUM_THREADS by default, to avoid that it gets initialized with the host # CPUs.

Set OMP_NUM_THREADS/OPENBLAS_NUM_THREADS in terms of make_jobs so that tests don't need excessive CPU.

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2023-04-22 09:02:28 +02:00
Wouter Deconinck
6808df5729 opencascade: new version 7.7.1 (#37057)
No build system or dependency changes necessary.

New maintenance release announcement at https://www.opencascade.com/open-cascade-technology-7-7-1-maintenance-release/.

Full diff from 7.7.0 to 7.7.1 at https://git.dev.opencascade.org/gitweb/?p=occt.git;a=commitdiff;h=ffce0d66bbaafe3a95984d0e61804c201b9995d2;hp=185d29b92f6764ffa9fc195b7dbe7bba3c4ac855
2023-04-21 22:11:18 -07:00
Adam J. Stewart
6e4e7ab8b1 GDAL: add v3.6.4 (#37087) 2023-04-21 15:18:03 -07:00
John W. Parent
d8451b0c3f Windows: shell variables are case-insensitive (#36813)
If we modify both Path and PATH, on Windows they will clobber one
another. This PR updates the shell modification logic to automatically
convert variable names to upper-case on Windows.
2023-04-21 11:38:58 -07:00
Alec Scott
255c9ed5e9 librdkafka: add v2.1.0 (#36853) 2023-04-21 10:52:01 -07:00
Keita Iwabuchi
bd8e27503e Metall: add v0.24 and v0.25 (#36981)
* Metall package: add v0.22, v0.23, and v0.23.1
* Metall package: add v0.24 and v0.25
* Metall package: increase required Boost version
2023-04-21 10:50:01 -07:00
Bryce Torcello
459c5cfad6 r: fix building :3.6.1 with gcc 10: (#37080) 2023-04-21 11:43:09 -05:00
Robert Underwood
ff689be250 py-cupy allow customizing architecture and threads (#37072)
* py-cupy allow customizing architecture and threads

* Update var/spack/repos/builtin/packages/py-cupy/package.py

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>

* add missing self

---------

Co-authored-by: Robert Underwood <runderwood@anl.gov>
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-04-21 09:52:47 -05:00
eflumerf
aaac8b0545 xmlrpc-c: Add variant to enable curl client (#37075)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-04-21 16:50:10 +02:00
Tim Haines
066e1e083d Dyninst: add conflict for intel-parallel-studio (#37036) 2023-04-21 16:49:23 +02:00
John W. Parent
5c742d4f2b Hraden Spack's powershell interface (#37079)
Paths with spaces are an issue on Windows and our current powershell
scripts are not sufficiently hardended against their use.
This PR removes promlematic commandlets that do not work well with paths
with spaces and adds escape quotes in other areas where this could be an
issue.
2023-04-21 08:58:37 -05:00
markus-ferrell
c64ca97877 Enable verify tests on windows (#36975) 2023-04-21 14:32:33 +02:00
markus-ferrell
cd4dddbef1 Enable versions cmd tests on windows (#36974) 2023-04-21 14:31:14 +02:00
markus-ferrell
e77b1da772 Enable test suite tests on windows (#36966) 2023-04-21 14:18:06 +02:00
markus-ferrell
e1e8d3b66e Enable database tests for windows (#36968) 2023-04-21 14:15:29 +02:00
markus-ferrell
962df6334d Enable config values tests on windows (#36969) 2023-04-21 14:15:09 +02:00
markus-ferrell
ba255cf5ec Enable graph tests on windows (#36967) 2023-04-21 14:14:51 +02:00
Annop Wongwathanarat
2ca049e74a armpl-gcc: fix PKG_CONFIG_PATH for 23.04 (#37001) 2023-04-21 14:10:03 +02:00
snehring
cd2893640d interproscan: add version 5.61-93.0, fix build issue (#37009) 2023-04-21 14:05:23 +02:00
Glenn Johnson
b686974160 augustus: add version 3.5.0 (#37037)
Adjust dependencies and constraints.
2023-04-21 12:01:00 +02:00
Eric Brugger
3303dcbfbd VisIt: add v3.3.3. (#37034) 2023-04-21 11:59:20 +02:00
Glenn Johnson
950079845c zziplib: support multiple build systems (#37058)
This PR rewrites the zziplib recipe to use Spack's multiple build system
support.
2023-04-21 11:58:00 +02:00
Brian Vanderwende
57b56499b2 Add flag handler for mpi-serial (#37060) 2023-04-21 11:55:30 +02:00
Glenn Johnson
00715a66a1 arpack-ng: add version 3.9.0 (#37032) 2023-04-21 11:43:33 +02:00
dependabot[bot]
581bd6bb9a build(deps): bump codecov/codecov-action from 3.1.2 to 3.1.3 (#37077)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 3.1.2 to 3.1.3.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](40a12dcee2...894ff025c7)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-21 11:41:06 +02:00
dependabot[bot]
056eb659bb build(deps): bump actions/setup-python from 4.5.0 to 4.6.0 (#37078)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.5.0 to 4.6.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](d27e3f3d7c...57ded4d7d5)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-21 11:40:37 +02:00
Thomas Madlener
6476b2d79c edm4hep: add v0.8 (#37006) 2023-04-21 11:31:42 +02:00
Ashwin Kumar Karnad
a2078d709b octopus: add v12.2 (#35487) 2023-04-21 11:30:30 +02:00
Ashwin Kumar Karnad
c8ad4807c2 octopus: fix download links (#37081) 2023-04-21 05:22:34 -04:00
Harmen Stoppels
7cf53a647e readline: fix for nvhpc (#37024) 2023-04-21 11:02:55 +02:00
Massimiliano Culpo
cac44b9e15 Update archspec to latest release (#37070)
Fix -mcpu flags for gcc on neoverse-v1

Add support for NVHPC flags
2023-04-21 11:01:37 +02:00
Wouter Deconinck
354d59500b glib: new versions 2.76.1, 2.74.7 (#36361)
* glib: new version 2.76.1

This adds a new stable version of glib, 2.76.1 (skipping the 2.75 unstable series).

`mkenums.py` check now is specified as a dict, after r62dca6c1cf. The `filter_file` should disable both old and new. Better (maybe, but more complicated) would be to add the `can_fail` flag for this test.

The `iconv` argument was already deprecated and has now been removed. It is now resolved through meson itself, e71ecc8771.

Builds successfully on my system (and several dependents on top of it):
```console
==> glib: Successfully installed glib-2.76.1-7iy4mee2evabd357gviozbtyh5yxi27t
```
as does the previous 2.74.6 version

* glib: patch for 2.76.1, new version 2.74.7
2023-04-21 10:25:55 +02:00
Paul R. C. Kent
a639b22c7c add-llvm-1601-1602 (#37026) 2023-04-20 19:56:52 -07:00
Wouter Deconinck
4f13e2fa15 py-ocnn: new package (octree-based sparse CNN) (#37030)
O-CNN is an octree-based sparse convolutional neural network framework for 3D deep learning. It is built on py-torch.
2023-04-20 21:43:47 -05:00
Bernhard Kaindl
e3109a96d4 bcache: Simplify check if -lintl shall be added to LDFLAGS (#36569)
Replace my initial libintl check with the much nicer check for
"intl" in self.spec["gettext"].libs.names. Thanks to Chris Green!

Co-authored-by: Bernhard Kaindl <bkaindl@gmail.com>
2023-04-20 18:56:49 -07:00
Pariksheet Nanda
0b606b01dc uqtk: bump (#36670)
1. support version 3.1.3, which now depends on sundials@6

2. support version 3.1.2:, which broke the two patch files and
   therefore the two patch files have been replaced by more flexible
   filter_file() commands inside a patch() function.

3. rename the variant for python extension from using the package name
   "+pyuqtk" to the more standard "+python"

4. add maintainers @omsai and the upstream developer @bjdebus who
   offered to help with the spack packaging.

5. swig should only be a build-time dependency.  swig is only
   necessary until @:3.1.0

6. confirmed python dependencies are correct by inspecting imports,
   subset python dependencies type to build, run, and confirmed all
   31 build-time tests pass including the 9 python tests:

```console
$ spack env create uqtk-dev
$ spack add uqtk@3.1.3
$ spack install --test root && cat $(spack location -i uqtk)/.spack/install-time-test-log.txt
==> Testing package uqtk-3.1.3-nok6fut
==> [2023-04-19-14:56:25.005361] Running build-time tests
==> [2023-04-19-14:56:25.005536] RUN-TESTS: build-time tests [check]
==> [2023-04-19-14:56:25.009543] '/home/omsai/src/spack/opt/spack/linux-pureos10-skylake/gcc-10.2.1/gmake-4.4.1-b6g4apmfvxz3bn4eabh37dehcrg65fj7/bin/make' '-j4' '-n' 'test'
==> [2023-04-19-14:56:25.014903] '/home/omsai/src/spack/opt/spack/linux-pureos10-skylake/gcc-10.2.1/gmake-4.4.1-b6g4apmfvxz3bn4eabh37dehcrg65fj7/bin/make' '-j4' 'test'
Running tests...
/home/omsai/src/spack/opt/spack/linux-pureos10-skylake/gcc-10.2.1/cmake-3.26.3-zjmsfz23j5l4ytniz26uzvxonlu5qebr/bin/ctest --force-new-ctest-process
Test project /tmp/omsai/spack-stage/spack-stage-uqtk-3.1.3-nok6fut47h42cnaau7wkoohgqy5f2qqa/spack-build-nok6fut
      Start  1: ArrayReadAndWrite
      Start  2: ArrayDelColumn
      Start  3: Array1DMiscTest
      Start  4: Array2DMiscTest
 1/31 Test  #1: ArrayReadAndWrite ................   Passed    0.01 sec
      Start  5: ArraySortTest
 2/31 Test  #2: ArrayDelColumn ...................   Passed    0.01 sec
      Start  6: MultiIndexTest
 3/31 Test  #3: Array1DMiscTest ..................   Passed    0.01 sec
      Start  7: CorrTest
 4/31 Test  #4: Array2DMiscTest ..................   Passed    0.01 sec
      Start  8: QuadLUTest
 5/31 Test  #5: ArraySortTest ....................   Passed    0.02 sec
      Start  9: MCMC2dTest
 6/31 Test  #6: MultiIndexTest ...................   Passed    0.01 sec
      Start 10: MCMCRandomTest
 7/31 Test  #8: QuadLUTest .......................   Passed    0.02 sec
      Start 11: MCMCNestedTest
 8/31 Test #10: MCMCRandomTest ...................   Passed    0.02 sec
      Start 12: Deriv1dTest
 9/31 Test #12: Deriv1dTest ......................   Passed    0.01 sec
      Start 13: SecondDeriv1dTest
10/31 Test #13: SecondDeriv1dTest ................   Passed    0.01 sec
      Start 14: GradHessianTest
11/31 Test #11: MCMCNestedTest ...................   Passed    0.03 sec
      Start 15: GradientPCETest
12/31 Test #14: GradHessianTest ..................   Passed    0.01 sec
      Start 16: PCE1dTest
13/31 Test #15: GradientPCETest ..................   Passed    0.01 sec
      Start 17: PCEImplTest
14/31 Test #16: PCE1dTest ........................   Passed    0.01 sec
      Start 18: PCELogTest
15/31 Test #18: PCELogTest .......................   Passed    0.01 sec
      Start 19: Hessian2dTest
16/31 Test #19: Hessian2dTest ....................   Passed    0.01 sec
      Start 20: BCS1dTest
17/31 Test #20: BCS1dTest ........................   Passed    0.01 sec
      Start 21: BCS2dTest
18/31 Test #21: BCS2dTest ........................   Passed    0.01 sec
      Start 22: LowRankRegrTest
19/31 Test #22: LowRankRegrTest ..................   Passed    0.01 sec
      Start 23: PyModTest
20/31 Test #17: PCEImplTest ......................   Passed    0.07 sec
      Start 24: PyArrayTest
21/31 Test #23: PyModTest ........................   Passed    0.08 sec
      Start 25: PyArrayTest2
22/31 Test #25: PyArrayTest2 .....................   Passed    0.30 sec
      Start 26: PyQuadTest
23/31 Test #24: PyArrayTest ......................   Passed    1.44 sec
      Start 27: PyBCSTest1D
24/31 Test #26: PyQuadTest .......................   Passed    1.68 sec
      Start 28: PyBCSTest2D
25/31 Test #27: PyBCSTest1D ......................   Passed    1.66 sec
      Start 29: PyBADPTest
26/31 Test  #7: CorrTest .........................   Passed    3.43 sec
      Start 30: PyRegressionTest
27/31 Test #28: PyBCSTest2D ......................   Passed    1.50 sec
      Start 31: PyGalerkinTest
28/31 Test  #9: MCMC2dTest .......................   Passed    3.90 sec
29/31 Test #29: PyBADPTest .......................   Passed    1.66 sec
30/31 Test #30: PyRegressionTest .................   Passed    1.72 sec
31/31 Test #31: PyGalerkinTest ...................   Passed    1.63 sec

100% tests passed, 0 tests failed out of 31

Total Test time (real) =   5.35 sec
==> [2023-04-19-14:56:30.382797] '/home/omsai/src/spack/opt/spack/linux-pureos10-skylake/gcc-10.2.1/gmake-4.4.1-b6g4apmfvxz3bn4eabh37dehcrg65fj7/bin/make' '-j4' '-n' 'check'
==> [2023-04-19-14:56:30.385983] Target 'check' not found in Makefile
```
2023-04-20 18:53:39 -07:00
afzpatel
134b954c7f enabling test for rccl hsakmt-roct and rocm-opencl (#35465)
* initial commit for enabling test for rccl hsakmt-roct and rocm-opencl
* fix styling and cleaning code
* adding missing imports and minor fixes
* minor style fix
* moidfying hsakmt-roct test to run right after installation
2023-04-20 18:39:49 -07:00
Daniel Ahlin
bf970ebf9d nccl-fastsocket: initial packaging for nccl-fastsocket (#36557)
* nccl-fastsocket: Add NCCL transport plugin for GCP
* nccl-fastsocket: remove auto-gen. header and fix maintainers
* Update var/spack/repos/builtin/packages/nccl-fastsocket/package.py
* nccl-fastsocket: Add rationale for setting LD_LIBRARY_PATH

---------

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2023-04-20 21:38:40 -04:00
MatthewLieber
af47b9170c osu-micro-benchmarks: adding sha for 7.1 release (#36702)
* adding sha for 7.1 release
* add a new version

---------

Co-authored-by: Matt Lieber <lieber.31@osu.edu>
2023-04-20 18:33:58 -07:00
Ashwin Kumar Karnad
bf04551bf5 Fix bigdft-suite compilation (#36612)
(from d20f284100)
2023-04-20 18:18:11 -07:00
Wouter Deconinck
a419ffcf50 osg-ca-certs: igtf link should point to version, not 'current' (#35977)
* osg-ca-certs: igtf link should point to version, not 'current'
* osg-ca-certs: new version 1.110.igtf.1.119
* [@spackbot] updating style on behalf of wdconinc

---------

Co-authored-by: wdconinc <wdconinc@users.noreply.github.com>
2023-04-20 18:09:27 -07:00
Cory Bloor
de7c82f13f hiprand: split into new package (#36798) 2023-04-20 17:48:54 -07:00
Adam J. Stewart
37fb2c8dce py-kornia: add v0.6.12 (#37074) 2023-04-20 20:48:35 -04:00
Alec Scott
329fa0f067 libxaw3d: add v1.6.4 (#36854) 2023-04-20 17:35:32 -07:00
snehring
9d97ed1190 bamutil: fix filter_file invocation (#36978) 2023-04-20 17:25:51 -07:00
snehring
794fc47722 gmap-gsnap: adding new version 2023-03-24 (#36983) 2023-04-20 17:12:30 -07:00
Erik Schnetter
5842e17085 netlib-lapack: New version 3.11.0 (#36984) 2023-04-20 17:10:47 -07:00
Annop Wongwathanarat
5ef7e90462 lammps: add linking with acfl for FFT (#37000) 2023-04-20 16:48:24 -07:00
Adam J. Stewart
05215e016b ML CI: fix mirror name (#37007) 2023-04-20 16:45:15 -07:00
Pieter Ghysels
1ddde85221 Upgrade to STRUMPACK v7.1.0, update minimum CMake version (#37014)
* Upgrade to STRUMPACK v7.1.0, update minimum CMake version
* Update to v7.1.1, which has a fix for ROCm
2023-04-20 16:42:36 -07:00
Glenn Johnson
da8be02e66 ants: add version 2.4.3 (#37031)
* ants: add version 2.4.3
  - add version 2.4.3
  - deprecate old git version
* [@spackbot] updating style on behalf of glennpj

---------

Co-authored-by: glennpj <glennpj@users.noreply.github.com>
2023-04-20 16:31:27 -07:00
Rémi Lacroix
c348776096 Add new package MozJPEG (#37052)
* Add new package MozJPEG
  MozJPEG is a patched version of libjpeg-turbo which improves JPEG compression efficiency achieving higher visual quality and smaller file sizes at the same time.
* MozJPEG: Add myself as a maintainer and fix style
2023-04-20 19:28:07 -04:00
Glenn Johnson
683b933f68 atompaw: add version 4.2.0.2 (#37035) 2023-04-20 16:07:33 -07:00
Alec Scott
5c5f3c00a3 emacs: default to +tls true (#37038)
* emacs: default to +tls true
* Add myself as a maintainer for emacs pkg
2023-04-20 15:53:11 -07:00
AMD Toolchain Support
d5c549f1e6 stream optimization for aocc (#37039) 2023-04-20 15:45:17 -07:00
Olivier Cessenat
8fb38e3982 poppler-data: new version 0.4.12 (#37042) 2023-04-20 15:35:51 -07:00
Olivier Cessenat
61ce48c2ac poppler: new version 23.04.0 (#37043) 2023-04-20 15:34:40 -07:00
Olivier Cessenat
af19e51966 gxsview: new version 2022.11.04 (#37050) 2023-04-20 15:32:02 -07:00
Olivier Cessenat
04aaaa8270 netpbm: new version 10.73.43 (#37051) 2023-04-20 15:31:03 -07:00
Adam J. Stewart
f174bca689 py-lightly: add v1.4.2 (#37053)
* py-lightly: add v1.4.2
* pytorch and lightning 2.0 now supported
2023-04-20 15:29:53 -07:00
Cameron Book
7c9359d57e Add scotch-7.0.3 checksum. (#37054) 2023-04-20 15:26:50 -07:00
Kelly (KT) Thompson
09100ac5d9 Provide version 1.16 of lcov; volunteer to be maintainer. (#37056) 2023-04-20 13:51:39 -07:00
Emil Briggs
2b2c84aa8a rmgdft: new version 5.2.0 (#37059)
* Update for v5.0.4 release.
* Updated for version 5.0.5.
* Updated for new release.
2023-04-20 13:38:31 -07:00
snehring
a513272665 prism: adding new version 4.7 and java version restriction (#37061) 2023-04-20 13:36:01 -07:00
Matthew Thompson
843c0c060b gftl: add version 1.9.0, 1.10.0 (#37062) 2023-04-20 13:32:10 -07:00
Matthew Thompson
772772f14d gftl-shared: add version 1.6.0 (#37063) 2023-04-20 13:25:54 -07:00
Erik Schnetter
be133cd3d6 mpitrampoline: New version 5.3.0 (#37065) 2023-04-20 13:23:30 -07:00
Matthew Thompson
0ffedf2eba fargparse: add version 1.5.0 (#37066) 2023-04-20 13:22:08 -07:00
Matthew Thompson
82cfccaf85 pfunit: add version 4.7.0 (#37067) 2023-04-20 13:21:10 -07:00
Matthew Thompson
7d9e531de2 yafyaml: add version 1.1.0 (#37068) 2023-04-20 13:19:47 -07:00
Matthew Thompson
c0f096467e pflogger: add version 1.9.5, 1.10.0 (#37069) 2023-04-20 13:18:25 -07:00
Vicente Bolea
9684b03bff adios2: add latest release (#36563) 2023-04-20 14:50:51 -05:00
Alec Scott
1fb5707235 r-renv: add v0.17.3 (#36944) 2023-04-20 12:33:29 -05:00
Brian Vanderwende
381f1b76a7 Add RPC lib path to wrapper flags for HDF4 (#35628) 2023-04-20 08:49:04 -07:00
Massimiliano Culpo
1b7cf171ce Use core API to create a Makefile during bootstrapping (#37023) 2023-04-20 15:11:56 +02:00
Adam J. Stewart
01913d08e7 google-cloud-cli: add new package (#36830)
* google-cloud-cli: add new package

* black fixes

* Less verbose

* [@spackbot] updating style on behalf of adamjstewart

* More robust if ver doesn't exist for platform

* Deprecate ancient GEE

* Fix ppc64le bug

---------

Co-authored-by: adamjstewart <adamjstewart@users.noreply.github.com>
2023-04-19 16:12:03 -07:00
Adam J. Stewart
d5fa062e4a py-einops: add v0.6.1 (#37027) 2023-04-19 15:23:19 -07:00
Erik Schnetter
b164c03b09 coreutils: New version 9.3 (#37021) 2023-04-19 14:18:34 -07:00
Harmen Stoppels
d51af675ef make version(...) kwargs explicit (#36998)
- [x] Replace `version(ver, checksum=None, **kwargs)` signature with
      `version(ver, checksum=None, *, sha256=..., ...)` explicitly listing all arguments.
- [x] Fix various issues in packages:
  - `tags` instead of `tag`
  - `default` instead of `preferred`
  - `sha26` instead of `sha256`
  - etc

Also, use `sha256=...` consistently.

Note: setting `sha256` currently doesn't validate the checksum length, so you could do
`sha256="a"*32` and it would get checked as `md5`... but that's something for another PR.
2023-04-19 14:17:47 -07:00
Wouter Deconinck
c7508dc216 py-torch: define property cmake_prefix_paths (#37012)
* py-torch: define property cmake_prefix_paths

`py-torch` installs `libtorch` and a cmake config in a non-standard location. This points downstream code to the relevant locations. From there it should pick up the correctly library and include paths for C++ projects.

* py-torch: python_platlib suggestion

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* [@spackbot] updating style on behalf of wdconinc

* py-torch: back to self.spec["python"].package.platlib

* [@spackbot] updating style on behalf of wdconinc

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
Co-authored-by: wdconinc <wdconinc@users.noreply.github.com>
2023-04-19 17:12:45 -04:00
Veselin Dobrev
6ca41cfbcb Add mfem v4.5.2 and related updates/tweaks in other packages (#36154)
* Add mfem v4.5.2 and related updates/tweaks in other packages

* [mfem] Add the release source link for MFEM v4.5.2

* [mfem] Remove 'goxberry' (his request) from MFEM's maintainers list
2023-04-19 05:55:31 -07:00
Harmen Stoppels
ae909b3688 Extract depfile logic from cli command into a core module (#36995) 2023-04-19 14:36:29 +02:00
Alec Scott
3a5e48f476 installer.py: drop build edges of installed packages by default (#36707)
This means that `spack install` will now build the minimal set of packages
required to install the root(s).

To opt out of build edge pruning, use `spack install --include-build-deps`.

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2023-04-19 10:00:40 +02:00
Alec Scott
899838b325 apachetop: add v0.23.2 (#37017) 2023-04-19 09:48:52 +02:00
Alec Scott
001bf93ea3 r-rcpptoml: add v0.2.2 (#36886) 2023-04-19 02:07:40 -04:00
Todd Gamblin
b260234faf editing: add higher-precedence SPACK_EDITOR environment variable
Other tools like git support `GIT_EDITOR` which takes higher precedence than the
standard `VISUAL` or `EDITOR` variables. This adds similar support for Spack, in the
`SPACK_EDITOR` env var.

- [x] consolidate editor code from hooks into `spack.util.editor`
- [x] add more editor tests
- [x] add support for `SPACK_EDITOR`
- [x] add a documentation section for controlling the editor and reference it
2023-04-18 16:23:00 -07:00
Todd Gamblin
2f30da1762 refactor: unify use of spack.util.editor
Code from `spack.util.editor` was duplicated into our licensing hook in #11968. We
really only want one place where editor search logic is implemented. This consolidates
the logic into `spack.util.editor`, including a special case to run `gvim` with `-f`.

- [x] consolidate editor search logic in spack.util.editor
- [x] add tests for licensing case, where `Executable` is used instead of `os.execv`
- [x] make `_exec_func` argument of `editor()` into public `exec_fn` arg
- [x] add type annotations
2023-04-18 16:23:00 -07:00
Massimiliano Culpo
d92c21ec97 Fix compilation on Cray (target: any) (#37011)
fixes #36628

Fix using compilers that declare "target: any" in their
configuration. This should happen only on Cray with the
module based programming environment.
2023-04-18 15:47:52 -07:00
Benjamin Meyers
5960d74dca Update and fix py-dgl+cuda (#36823)
* Update and fix py-dgl+cuda

* [@spackbot] updating style on behalf of meyersbs

* Update py-dgl
2023-04-18 15:56:18 -05:00
Jonathon Anderson
c7232f4505 lammps: backport fix for +rocm+kokkos+kspace (#36850)
* lammps: backport hipfft fix for ROCm-based builds

* lammps: Mark incompatibility with Kokkos 4.x for old versions
2023-04-18 15:41:18 -05:00
Jonathon Anderson
08fd8c8d0a spack ci: preserve custom attributes in build jobs (#36651)
* Simplify test/cmd/ci.py::test_ci_generate_with_custom_scripts

* Rearrange the build-job logic in generate_gitlab_ci_yaml

* Preserve all unknown attributes in build jobs

* Slip tests for custom attributes in the tests for other job types

* Support custom artifacts

* [@spackbot] updating style on behalf of blue42u

* Don't bother sorting needs

---------

Co-authored-by: blue42u <blue42u@users.noreply.github.com>
2023-04-18 15:40:43 -05:00
Alec Scott
eb72217228 r-httpuv: add v1.6.9 (#36951) 2023-04-18 15:12:13 -05:00
Alec Scott
945d032f08 r-git2r: add v0.31.0 (#36864) 2023-04-18 15:08:24 -05:00
Alec Scott
78bfeb11ae r-highr: add v0.10 (#36867) 2023-04-18 15:06:24 -05:00
kwryankrattiger
9745865250 DaV SDK: Enable ParaView raytracing with in SDK (#36844)
* DaV SDK: Enable ParaView raytracing with in SDK

* CI: Drop swr testing from Data Vis SDK

* ISPC: extend LLVM requirement to main

* DaV SDK: Disallow concretizing develop unifyfs

No longer needed after mochi-margo patch
2023-04-18 13:39:47 -05:00
Benjamin Meyers
accbf2cffc New packages: py-ogb, py-outdated, py-littleutils (#36824)
* New packages: py-ogb, py-outdated, py-littleutils

* Update var/spack/repos/builtin/packages/py-outdated/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-04-18 11:08:57 -05:00
Annop Wongwathanarat
5d8ca81e82 py-scipy: link with OpenMP version of armpl-gcc when requested (#37002) 2023-04-18 11:08:29 -05:00
Harmen Stoppels
11e5b0cd91 fix typo (#36997) 2023-04-18 08:07:57 -05:00
Todd Gamblin
6845f41d67 Revert addition of SPACK_EDITOR pending review.
This reverts commit d8a26905ee.
This reverts commit 1ee049ccc3.

These were spuriously pushed to `develop`.
2023-04-18 03:57:24 -07:00
Todd Gamblin
1ee049ccc3 editing: add higher-precedence SPACK_EDITOR environment variable
Other tools like git support `GIT_EDITOR` which takes higher precedence than the
standard `VISUAL` or `EDITOR` variables. This adds similar support for Spack, in the
`SPACK_EDITOR` env var.

- [x] consolidate editor code from hooks into `spack.util.editor`
- [x] add more editor tests
- [x] add support for `SPACK_EDITOR`
- [x] add a documentation section for controlling the editor and reference it
2023-04-18 03:42:56 -07:00
Todd Gamblin
d8a26905ee refactor: unify use of spack.util.editor
Code from `spack.util.editor` was duplicated into our licensing hook in #11968. We
really only want one place where editor search logic is implemented. This consolidates
the logic into `spack.util.editor`, including a special case to run `gvim` with `-f`.

- [x] consolidate editor search logic in spack.util.editor
- [x] add tests for licensing case, where `Executable` is used instead of `os.execv`
- [x] make `_exec_func` argument of `editor()` into public `exec_fn` arg
- [x] add type annotations
2023-04-18 03:00:04 -07:00
Greg Becker
480b7f397e Allow users to remove items from hierarchy per-path (#31351)
* lmod modules: allow users to remove items from hierarchy per-spec

This allows MPI wrappers that depend on MPI to be removed from the MPI portion of
the hierarchy and be made available when the appropriate compiler is loaded.

module load gcc
module load mpi-wrapper  # implicitly loads mpi
module load hdf5

This allows users to treat an mpi wrapper like an mpi program
2023-04-17 22:17:11 -07:00
Wouter Deconinck
2bc1779a71 py-html5lib, madgraph5amc: correct hashes of empty files (#36979)
* py-html5lib: correct hashes of empty files

Going through and fixing hashes that are due to empty string.
```console
$ grep -Ir $(echo -n | sha256sum | awk '{print$1}') $SPACK_ROOT/var/spack/repos/builtin
/home/wdconinc/git/spack/var/spack/repos/builtin/packages/madgraph5amc/package.py:        sha256="e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
/home/wdconinc/git/spack/var/spack/repos/builtin/packages/py-html5lib/package.py:    version("0.99", sha256="e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855")
```

```console
$ spack checksum py-html5lib 0.99
==> Found 1 version of py-html5lib:
  
  0.99  https://files.pythonhosted.org/packages/source/h/html5lib/html5lib-0.99.tar.gz

==> Fetching https://files.pythonhosted.org/packages/source/h/html5lib/html5lib-0.99.tar.gz

    version("0.99", sha256="aff6fd3031c563883197e5a04b7df324086ff5f358278a0386808c463a077e59")
```

* madgraph5: remove incorrectly hashed version
2023-04-17 23:14:10 -04:00
Wouter Deconinck
9ea7937f6d qt: new version 5.15.9 (#36709)
This adds the new LTS version of Qt5. No build system changes needed.

The bundled libjpeg and sqlite versions were updated, but it is unclear if these are actual build requirements, and we have not been tracking these specific versions in the version dependencies (likely due to exactly this lack of clarity).

Compare: https://github.com/qt/qtbase/compare/v5.15.8-lts-lgpl...v5.15.9-lts-lgpl
2023-04-17 15:06:44 -04:00
Harmen Stoppels
381c0af988 Revert "move depfile logic into its own module, separate traversal logic from model (#36911)" (#36985)
This reverts commit a676f706a8.
2023-04-17 20:58:38 +02:00
Paul Kuberry
4519b42214 xyce: patch issue affecting MPICH (#36826) 2023-04-17 10:19:08 -07:00
Rémi Lacroix
8e50c08b3f Add NetCDF95 package. (#36959)
* Add NetCDF95 package.
  NetCDF95 is an alternative Fortran interface to the NetCDF library which uses Fortran   2003 features.
* [@spackbot] updating style on behalf of RemiLacroix-IDRIS

---------

Co-authored-by: RemiLacroix-IDRIS <RemiLacroix-IDRIS@users.noreply.github.com>
2023-04-17 10:02:54 -07:00
Tim Haines
121ef695e3 Boost: add version 1.82.0 (#36924) 2023-04-17 18:35:45 +02:00
Sergey Kosukhin
275bfc15b4 netcdf-c: major refactoring, new variants and versions (#36485) 2023-04-17 17:59:10 +02:00
Adam J. Stewart
036695ac94 CI: update Linux images in ML pipelines (#36766)
Add missing openssl/curl/pkgconfig deps to py-tokenizers

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2023-04-17 17:42:03 +02:00
Alec Scott
19b55d6b27 r-rstantools: add v2.3.1 (#36890) 2023-04-17 08:53:06 -05:00
Alec Scott
993303f840 r-r-utils: add v2.12.2 (#36884) 2023-04-17 08:29:41 -05:00
Harmen Stoppels
a676f706a8 move depfile logic into its own module, separate traversal logic from model (#36911) 2023-04-17 15:27:01 +02:00
Alec Scott
2081ab8be1 cgl: add v0.60.7 (#36940) 2023-04-17 15:07:34 +02:00
Alec Scott
f2efec7fcc masurca: add v4.1.0 (#36942) 2023-04-17 15:07:17 +02:00
Alec Scott
e7b549216c spot: add v2.11.4 (#36943) 2023-04-17 15:06:56 +02:00
Alec Scott
426570fc3f glab: add v1.28.0 (#36946) 2023-04-17 15:06:32 +02:00
Carlos Bederián
0e55055394 plumed: add 2.8.2, 2.7.6 and their supported gromacs combinations (#36929)
* plumed: Add 2.8.2, 2.7.6

* gromacs: add plumed 2.8.2 and 2.7.6 support
2023-04-17 15:05:31 +02:00
Alec Scott
1bbeb61668 slang: add v2.3.3 (#36952) 2023-04-17 15:04:57 +02:00
Alec Scott
376d87619b transdecoder: add v5.7.0 (#36953) 2023-04-17 15:04:41 +02:00
Alec Scott
f82b4a68b8 Add "build" stage to many Go packages (#36795) 2023-04-17 15:03:09 +02:00
Adam J. Stewart
abb236e98a py-lightly: py-torch+distributed required (#36955) 2023-04-17 15:02:13 +02:00
Adam J. Stewart
adf0ce6621 py-sphinx: add new versions (#36938) 2023-04-17 15:01:32 +02:00
Alec Scott
5368049128 ruby-rake: add v13.0.6 (#36945) 2023-04-17 15:00:39 +02:00
Alec Scott
8afa166edf hepmc3: add v3.2.6 (#36941) 2023-04-17 15:00:22 +02:00
Taillefumier Mathieu
79a1b3bc12 Add umpire support to SIRIUS (#36958) 2023-04-17 08:53:11 -04:00
Glenn Johnson
4b6ab53a10 Add dependency changes to R packages (#36937)
This PR adds dependency changes that were missed with some recent merges
of R package updates.
2023-04-17 09:50:46 +02:00
Harmen Stoppels
58f389779a rust: depend on curl+nghttp2 (#36947) 2023-04-16 21:50:37 -05:00
Wouter Deconinck
508cad0bbc apptainer: new versions 1.1.6, 1.1.7 (#36838)
* apptainer: new versions 1.0.6, 1.0.7

No changes to build system required. https://github.com/apptainer/apptainer/compare/v1.1.5...v1.1.7

* apptainer: rm hanging chad
2023-04-16 18:51:06 -07:00
Juan Miguel Carceller
d22fa1be19 Change extend to append (#36939)
Co-authored-by: jmcarcell <jmcarcell@users.noreply.github.com>
2023-04-16 18:40:48 -07:00
Wouter Deconinck
77830d92bd libmypaint: change extend to append (#36957)
* libmypaint: change extend to append

For same reason as #36939, `extend` takes a list as argument, while `append` takes list entry. Here `append` should be used.

* libmypaint: depends_on intltool
2023-04-16 18:37:48 -07:00
Alec Scott
14075f9f4c r-jsonlite: add v1.8.4 (#36872) 2023-04-15 22:02:50 -04:00
Alec Scott
fc58f5d174 r-progressr: add v0.13.0 (#36881) 2023-04-15 21:57:48 -04:00
Alec Scott
25ba8702c7 r-hoardr: add v0.5.3 (#36869) 2023-04-15 21:37:42 -04:00
Alec Scott
b064f9d1e0 r-sn: add v2.1.1 (#36891) 2023-04-15 13:09:25 -05:00
Alec Scott
d43690a91b r-rstan: add v2.21.8 (#36889) 2023-04-15 13:07:57 -05:00
Alec Scott
b6c2487f74 r-timedate: add v4022.108 (#36897) 2023-04-15 09:31:54 -07:00
Alec Scott
32c3ce204d libctl: add v4.5.1 (#36852) 2023-04-15 09:20:43 -05:00
Alec Scott
8893605b1e r-yulab-utils: add v0.0.6 (#36900) 2023-04-15 08:33:32 -05:00
Alec Scott
1345e98ae7 r-spades-tools: add v1.0.1 (#36892) 2023-04-15 15:25:05 +02:00
Alec Scott
7dfcb37975 r-svglite: add v2.1.1 (#36893) 2023-04-15 15:24:49 +02:00
Alec Scott
7854f64e1e r-taxizedb: add v0.3.1 (#36894) 2023-04-15 15:24:33 +02:00
Alec Scott
e18f6ffc28 r-tibble: add v3.2.1 (#36895) 2023-04-15 15:24:19 +02:00
Alec Scott
9e463adac1 r-tidytree: add v0.4.2 (#36896) 2023-04-15 15:24:04 +02:00
Alec Scott
839f820127 sdl2: add v2.26.5 (#36901) 2023-04-15 15:22:26 +02:00
Alec Scott
1c0b028aaa r-utf8: add v1.2.3 (#36898) 2023-04-15 15:22:10 +02:00
Alec Scott
db38f4d75a r-xts: add v0.13.0 (#36899) 2023-04-15 15:21:54 +02:00
Alec Scott
4cbc0c420c r-dendextend: add v1.17.1 (#36861) 2023-04-15 08:15:17 -05:00
Alec Scott
856b6d6d01 r-curl: add v5.0.0 (#36860) 2023-04-15 08:03:41 -05:00
Alec Scott
51fb778358 r-earth: add v5.3.2 (#36863) 2023-04-15 07:57:03 -05:00
Howard Pritchard
cad16f5d3d OpenMPI: tell it where libcuda.so is (#36784)
starting with the 5.0.x release stream the cuda related configury
items in Open MPI once again need --with-cuda-libdir so that
libcuda.so can be found at configure time, otherwise no cuda
support unless someone copies libcuda.so to
$CUDA_HOME/lib64

related to #36760

Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2023-04-15 14:53:15 +02:00
Annop Wongwathanarat
cf817bdd4e openblas: add -Wno-error=implicit-function-declaration for Arm compiler (#36821) 2023-04-15 14:45:35 +02:00
Annop Wongwathanarat
22984edb1b netlib-scalapack: add -Wno-error=implicit-function-declaration for Arm compiler (#36822) 2023-04-15 14:44:44 +02:00
Annop Wongwathanarat
03ba24b370 scorpio: add -Wno-error=implicit-function-declaration for Arm compiler (#36827) 2023-04-15 14:43:28 +02:00
Annop Wongwathanarat
6d366c39ae libffi: add -Wno-error=implicit-function-declaration for Arm compiler (#36832) 2023-04-15 14:42:13 +02:00
Jon Rood
242c1e4535 gingko: remove redundant build type variant (#36703) 2023-04-15 14:41:48 +02:00
Annop Wongwathanarat
5071174194 superlu-dist: add -Wno-error=implicit-function-declaration for Arm compiler (#36831) 2023-04-15 14:40:54 +02:00
dependabot[bot]
2651def9fa build(deps): bump actions/checkout from 3.5.1 to 3.5.2 (#36848)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3.5.1 to 3.5.2.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](83b7061638...8e5e7e5ab8)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-15 14:37:52 +02:00
Alec Scott
a37ed72a07 cub: add v2.1.0 (#36851) 2023-04-15 14:33:55 +02:00
Alec Scott
0bd54147d8 openjpeg: add v2.5.0 (#36858) 2023-04-15 14:33:02 +02:00
Alec Scott
0d5394e184 r-blockmodeling: add v1.1.4 (#36859) 2023-04-15 14:32:01 +02:00
Alec Scott
ff732bdb4d r-dt: add v0.27 (#36862) 2023-04-15 14:30:47 +02:00
Alec Scott
0ccc044f79 r-gson: add v0.1.0 (#36865) 2023-04-15 14:29:09 +02:00
Alec Scott
a465856cef r-gtools: add v3.9.4 (#36866) 2023-04-15 14:28:53 +02:00
Alec Scott
0e8f23f202 r-hms: add v1.1.3 (#36868) 2023-04-15 14:28:05 +02:00
Alec Scott
f936a1ef7e r-httr: add v1.4.5 (#36870) 2023-04-15 14:27:25 +02:00
Alec Scott
54bcdb8dec r-isoband: add v0.2.7 (#36871) 2023-04-15 14:27:10 +02:00
Alec Scott
2022b38fe2 r-listenv: add v0.9.0 (#36873) 2023-04-15 14:26:26 +02:00
Alec Scott
06d3b882ad r-lubridate: add v1.9.2 (#36874) 2023-04-15 14:25:49 +02:00
Alec Scott
4508803643 r-nimble: add v0.13.1 (#36875) 2023-04-15 14:25:34 +02:00
Alec Scott
f5c5a4a0b1 r-openssl: add v2.0.6 (#36876) 2023-04-15 14:25:18 +02:00
Alec Scott
60ee39d3d8 r-pbkrtest: add v0.5.2 (#36877) 2023-04-15 14:25:04 +02:00
Alec Scott
3b98ad4479 r-phangorn: add v2.11.1 (#36878) 2023-04-15 14:24:50 +02:00
Alec Scott
78c54a42bb r-pkgmaker: add v0.32.8 (#36879) 2023-04-15 14:24:33 +02:00
Alec Scott
0d624d9842 r-plyr: add v1.8.8 (#36880) 2023-04-15 14:24:18 +02:00
Alec Scott
b0eaab8242 r-psych: add v2.3.3 (#36882) 2023-04-15 14:23:22 +02:00
Alec Scott
4655936389 r-qtl: add v1.58 (#36883) 2023-04-15 14:20:26 +02:00
Alec Scott
7f319429fd r-rcppparallel: add v5.1.7 (#36885) 2023-04-15 14:20:02 +02:00
Alec Scott
7c20aaaab8 r-rlang: add v1.1.0 (#36887) 2023-04-15 14:19:18 +02:00
Alec Scott
a3d49a56a8 r-rrblup: add v4.6.2 (#36888) 2023-04-15 14:19:02 +02:00
finkandreas
e7238a0f26 suite-sparse: fix build with GPU targets 2023-04-15 14:18:45 +02:00
Juan Miguel Carceller
161485a774 cairo: add a dependency on which (#36908) 2023-04-15 14:16:41 +02:00
Alec Scott
b6c3cbff6f ncio: add v1.1.2 (#36857) 2023-04-15 14:09:00 +02:00
Alec Scott
55adddc239 aspcud: add v1.9.6 (#36912) 2023-04-15 14:08:43 +02:00
Alec Scott
903626c899 conserver: add v8.2.7 (#36913) 2023-04-15 14:07:16 +02:00
Alec Scott
afc6560429 exa: add v0.10.1 (#36914) 2023-04-15 14:06:57 +02:00
Alec Scott
03be2635eb libverto: add v0.3.2 (#36915) 2023-04-15 14:06:39 +02:00
Alec Scott
efa51e124d r-dorng: add v1.8.6 (#36916) 2023-04-15 14:06:20 +02:00
Alec Scott
6ab070d2ae r-gower: add v1.0.1 (#36917) 2023-04-15 14:05:53 +02:00
Alec Scott
433afe39a7 r-grbase: add v1.8.9 (#36918) 2023-04-15 14:05:36 +02:00
Alec Scott
9ba4b0cab8 r-tigris: add v2.0.1 (#36919) 2023-04-15 14:05:13 +02:00
Alec Scott
554d9125ef routino: add v3.3.3 (#36920) 2023-04-15 14:04:52 +02:00
Alec Scott
9e4dd4972f trident: add v23.01.1 (#36921) 2023-04-15 14:03:53 +02:00
Alec Scott
39c7b10735 double-conversion: add v3.2.1 (#36931) 2023-04-15 13:52:28 +02:00
Alec Scott
4bb4225f09 kraken: add v1.1.1 (#36932) 2023-04-15 13:51:34 +02:00
Alec Scott
1582ce6397 r-bayesplot: add v1.10.0 (#36933) 2023-04-15 13:50:58 +02:00
Caleb Robinson
becebe99b4 Updating torchgeo to 0.4.1 (#36793)
* Updating torchgeo to 0.4.1

* Added some commas

* Update var/spack/repos/builtin/packages/py-torchgeo/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-torchgeo/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-torchgeo/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Changed fiona bounds

* Update var/spack/repos/builtin/packages/py-torchgeo/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-04-14 22:17:35 -04:00
Adam J. Stewart
e3bb6d98fb py-pyupgrade: add v3.3.1 (#36926) 2023-04-14 17:18:00 -07:00
Juan Miguel Carceller
89b8445eb0 Add jmcarcell to the maintainers of some packages (#36909)
Co-authored-by: jmcarcell <jmcarcell@users.noreply.github.com>
2023-04-14 17:03:50 -07:00
Dan Bonachea
b7c2cc9b85 upcxx: Fixes for Cray targets (#36708)
* upcxx: Enhance auto-detection for HPE Cray EX platforms

1. Some Cray EX systems use ALPS instead of SLURM, ensure we default
   the pmi-runcmd appropriately.

2. Some Cray EX systems run a stock kernel and lack a Cray PrgEnv
   (yes, really), so add a check for libfabric CXI provider as a
   last resort for detecting Cray EX, and ensure we don't choke on
   a lack of `$CRAYPE_DIR`.

* upcxx: Cray XC improvements

1. Future-proof Cray XC detection, in case Spack ever starts reporting
   it as "linux".
2. Revert cray-libsci workaround for ALCF Theta. The workaround no longer
   appears to be necessary, and is actually causing failures on Theta now.

* upcxx: Add level_zero variant detection
2023-04-14 16:17:41 -07:00
Sergey Kosukhin
5efd689803 proj: fix installation of datum grid with Autotools (#36906) 2023-04-14 18:18:21 -04:00
Adam J. Stewart
4d11001046 Issue Templates: improve details formatting (#36923) 2023-04-14 12:16:22 -05:00
Doug Jacobsen
690394fabc Change environment modifications to escape with double quotes (#36789)
This commit changes the environment modifications class to escape
strings with double quotes instead of single quotes.

Single quotes prevent the expansion of enviornment variables that are
nested within environment variable definitions.
2023-04-14 10:13:17 -07:00
John W. Parent
7d083cf138 cmake: add version 3.26.3 (#36648) 2023-04-14 11:03:36 -04:00
Scott Wittenburg
bfa94c5781 gitlab ci: Better tagging of "service" jobs (#36846)
- Tag non-rebuild jobs to target a cheaper (and more highly available)
subset of runners.

- Add missing resource requests to these jobs as well.
2023-04-14 09:03:12 -06:00
kwryankrattiger
3710774d02 VTK-m: use conflict with virtuals variant with ROCm (#36845) 2023-04-14 16:55:46 +02:00
Alec Scott
32808f4fb5 yambo: add v5.1.1 (#36905) 2023-04-14 07:13:33 -04:00
Alec Scott
7c2fc29b6a tempestremap: add v2.1.6 (#36903) 2023-04-14 07:03:35 -04:00
Alec Scott
5504fd6730 speex: add v1.2.1 (#36902) 2023-04-14 12:28:37 +02:00
Alec Scott
7066b61be3 vecmem: add v0.24.0 (#36904) 2023-04-14 12:27:12 +02:00
Massimiliano Culpo
9ec289857c netcdf: fix bugs introduced with multiple build systems split (#36825)
Fixes #36689

- The "base" builder class should be last in the MRO
- `filter_compiler_wrappers` needs to be moved to builders
- Decorating a function from a mixin class require using
   the correct metaclass for the mixin
2023-04-14 10:59:12 +02:00
Massimiliano Culpo
92144d6375 lz4: fix bug on darwin, use makefile by default (#36820)
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2023-04-14 09:43:59 +02:00
Wouter Deconinck
0c2aafec33 cernlib: depends_on openssl when platform=linux (#36837)
Fixes #36836.
2023-04-14 09:17:13 +02:00
Adam J. Stewart
2380810d60 py-lightning: add v1.9.5 (#36803) 2023-04-14 09:08:19 +02:00
Alec Scott
7786da9117 kubernetes: add v1.27.0 and split off new package kubectl (#36780) 2023-04-14 09:07:42 +02:00
Wouter Deconinck
87dca0130c (py-)onnx: new version 1.13.0, 1.13.1 (for py-torch@2) (#36797)
* (py-)onnx: new version 1.13.0, 1.13.1 (for py-torch@2)

ONNX has a new version 1.13.1 which is required for py-torch +onnx_ml.
This version adds python 3.11 support, Mac M1/M2 support. No build
system changes changes.

- https://github.com/onnx/onnx/releases/tag/v1.13.0 (main changes)
- https://github.com/onnx/onnx/releases/tag/v1.13.1 (bugfixes)
- https://github.com/onnx/onnx/commits/main/CMakeLists.txt (top 6
  commits are on top of the last 1.12 release)
- https://github.com/onnx/onnx/blob/v1.13.1/requirements.txt
- https://github.com/onnx/onnx/blob/v1.13.1/requirements-release.txt

* py-onnx: update dependencies

* Apply suggestions from code review

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* protobuf: new version 3.22.2, depends_on abseil-cpp

* onnx: require c++14 for protobuf

* py-protobuf: new preferred version 3.20.3

* protobuf: new versions 3.20.2, 3.20.3

* [@spackbot] updating style on behalf of wdconinc

* protobuf: no double depends_on abseil-cpp

* py-protobuf: no preferred 3.20.3

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
Co-authored-by: wdconinc <wdconinc@users.noreply.github.com>
2023-04-13 21:25:58 -05:00
MikeG
f171d7ed15 py-dask-mpi: remove jupyter-server-proxy (#36680)
* py-dask-mpi: remove jupyter-server-proxy

This dependency isn't a 'hard' one; it optionally simplifies getting access to the web consoles.
See: https://github.com/dask/dask-mpi/pull/102

* Add patch to remove unnecessary dependency

* review comments

* pass formatting
2023-04-13 21:22:59 -05:00
Nisarg Patel
e2812a6e96 Update m4 (#36835)
* Update m4

For %oneapi & %intel, we explicitly set -O0 so dependents of m4 do not break
        # The default optimization level for icx/icpx is "-O2", 
        # but building m4 with this level breaks the build of dependents. 
        # So we set it explicitely to "-O0".

* [@spackbot] updating style on behalf of hpcnpatel
2023-04-13 21:02:43 -04:00
Adam J. Stewart
2b47a7a22f py-lightly: add new package (#36839) 2023-04-13 19:16:22 -05:00
eugeneswalker
a9db5620f5 remove x86_64_v3 tags (#36828) 2023-04-13 15:29:15 -05:00
Erik Schnetter
f4833a9869 mpiwrapper: New version 2.10.3 (#36816) 2023-04-13 20:28:51 +02:00
dependabot[bot]
4a44e4bed9 build(deps): bump actions/checkout from 3.5.0 to 3.5.1 (#36815)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3.5.0 to 3.5.1.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](8f4b7f8486...83b7061638)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-13 20:28:26 +02:00
Erik Schnetter
44e2d1cd03 mpitrampoline: add v5.2.3 (#36814) 2023-04-13 20:27:55 +02:00
Wouter Deconinck
ff319e9863 Resolve <include-fragment> tags e.g. in github release pages (#36674)
This aims to resolve #34164 by resolving the <include-fragment> tags
that GitHub has started using for their release pages, see
https://github.github.io/include-fragment-element/.

This feels a bit hacky but intended as a starting point for discussion.
After reading a page during spidering, it first parses for
include-fragments, gets them all, and treats them all as separate pages.
Then it looks for href links in both the page itself and the fragments.

Co-authored-by: Alec Scott <alec@bcs.sh>
2023-04-13 20:26:26 +02:00
Massimiliano Culpo
d918ae0bde containerize: strip binaries in a less aggressive way (#36683) 2023-04-13 17:09:34 +02:00
kwryankrattiger
b940468890 CI: Update Data Vis SDK image (#36761)
Supersedes #34224
2023-04-13 09:54:42 -05:00
Daniel Ahlin
0707ffd4e4 gromacs: Specify c++ stdlib for aocc (#36553)
Co-authored-by: Christoph Junghans <junghans@lanl.gov>
2023-04-13 07:39:58 -04:00
John W. Parent
7801577cd5 lz4: fixup incorrect builder method signature (#36812) 2023-04-13 12:33:55 +02:00
Jack Morrison
8668635f1f libfabric: Add v1.18.0; Drop linux-headers dependency (#36805)
* Remove libfabric dependency on linux-headers package when building with OPX support.
* Add libfabric verison 1.18.0
2023-04-12 21:50:19 -04:00
Daniel Ahlin
49fe67572e gromacs: Intel oneapi 2023 fixes (#36555)
* gromacs: oneapi@2023 - g++-dependency and MKL path

Fixes to build with oneapi@2023 and MKL 2023.
* Depend on gcc and add GMX_GPLUSPLUS_PATH to it
* MKL seems to be picked up without explicit directives
  and the old directives fails (at least for my tests) with MKL
  2023.

* gromacs: oneapi@2023 fix - address style errors

* gromacs: add danielahlin as maintainer

Adding danielahlin as maintainer as discussed in https://github.com/spack/spack/pull/36555#issuecomment-1496224128 and https://github.com/spack/spack/pull/36555#issuecomment-1504682712

* Update package.py

---------

Co-authored-by: Christoph Junghans <christoph.junghans@gmail.com>
Co-authored-by: Christoph Junghans <junghans@lanl.gov>
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-04-12 19:19:42 -06:00
John W. Parent
ced6353e14 Paraview package: build on Windows (#36583)
* Prevent use of x11
* Don't define mpi compilers in cmake interface as MSMPI has no compiler
  wrapper.
2023-04-12 21:18:32 -04:00
Massimiliano Culpo
32f2d7ab7e libgcrypt: add v1.10.2 (#36799) 2023-04-12 16:10:12 -04:00
John W. Parent
135a6a07f1 WGL: remove invalid variant detection (#36579)
Plat variant was removed in a previous PR, now prevent that variant from
being detected externally.
2023-04-12 13:04:51 -07:00
Massimiliano Culpo
a7ae996e6b Stop installing codecov from pip (#36804)
It shouldn't be needed since we use Codecov's Github action

See here for more information https://community.codecov.com/t/codecov-yanked-from-pypi-all-versions/4259
2023-04-12 19:28:55 +02:00
Wouter Deconinck
e08c02c471 py-hatchling: new version 1.14.0; new pkgs py-calver, py-trove-classifiers (#36796)
* py-hatchling: new version 1.14.0; new pkgs py-calver, py-trove-classifiers

Hatchling 1.14.0 adds a new dependency on trove-classifiers, which in turn
depends on calver. So, those two packages needed to be added as well.

- f8915309d3
- https://github.com/pypa/trove-classifiers/blob/2023.3.9/pyproject.toml
- https://github.com/di/calver/blob/2022.06.26/pyproject.toml

* Apply suggestions from code review

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-04-12 12:52:10 -04:00
dependabot[bot]
385834bd43 build(deps): bump codecov/codecov-action from 3.1.1 to 3.1.2 (#36794)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 3.1.1 to 3.1.2.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](d9f34f8cd5...40a12dcee2)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-12 11:28:39 -04:00
Yang Zongze
46e45507dc hpddm: add new versions (#36769) 2023-04-12 08:59:33 +02:00
Simon Pintarelli
e3a420daed umpire: depends on camp~cuda when ~cuda (#36788) 2023-04-12 01:54:41 -04:00
Matthieu Dorier
78af0545c4 duckdb: add new package (#36682) 2023-04-12 07:26:53 +02:00
Kevin Huck
c3f207428c apex: add v2.6.2 (#36686) 2023-04-12 07:24:23 +02:00
Laura Weber
169704f72a sublime-text: Add licensing information (#36690) 2023-04-12 07:18:41 +02:00
Laura Weber
d4b8589b35 tecplot: Add version 2022r2, Licensing, Env setup (#36695) 2023-04-12 07:15:20 +02:00
Adam J. Stewart
60b573727e PROJ: googletest only needed to test (#36691) 2023-04-12 07:01:52 +02:00
Adam J. Stewart
e3e395769d py-tensorboard: add new versions (#36712) 2023-04-12 07:00:57 +02:00
Wouter Deconinck
8da72eb40b scitokens-cpp: new versions 0.7.1, 1.0.0 (#36714)
Two new versions were released since 0.7.0.

- https://github.com/scitokens/scitokens-cpp/releases/tag/v0.7.1
- https://github.com/scitokens/scitokens-cpp/releases/tag/v1.0.0

Some changes to dependencies:
- openssl always was an explicit requirement (but transitively satisfied by curl),
- cmake 3.10 required for both new versions.

Tested that all these new versions build fine:
```console
18:04:40 wdconinc@menelaos ~/git/spack (develop *$%>) $ spack find -lvx
==> In environment scitokens-cpp
==> Root specs
------- scitokens-cpp@0.7.0  ------- scitokens-cpp@0.7.1  ------- scitokens-cpp@1.0.0

==> Installed packages
-- linux-ubuntu23.04-skylake / gcc@12.2.0 -----------------------
uvwdosd cmake@3.26.3~doc+ncurses+ownlibs~qt build_system=generic build_type=Release          5gqdlyl scitokens-cpp@0.7.1~ipo build_system=cmake build_type=RelWithDebInfo generator=make
r4bdoii scitokens-cpp@0.7.0~ipo build_system=cmake build_type=RelWithDebInfo generator=make  xnnvbsf scitokens-cpp@1.0.0~ipo build_system=cmake build_type=RelWithDebInfo generator=make
==> 4 installed packages
```
2023-04-12 06:59:55 +02:00
Alec Scott
55fd89a576 glab: add v1.27.0 (#36723) 2023-04-12 06:55:29 +02:00
Alec Scott
a8b8c080a8 libcap: add v2.68 (#36725) 2023-04-12 06:55:15 +02:00
Alec Scott
76024ed28c nginx: add v1.23.4 (#36726) 2023-04-12 06:54:59 +02:00
Alec Scott
2eef4bd42a apr: add v1.7.3 (#36733) 2023-04-12 06:52:40 +02:00
Alec Scott
7df17ad7d6 feh: add v3.10 (#36734) 2023-04-12 06:52:21 +02:00
Alec Scott
729675bcf6 libgpg-error: add v1.47 (#36735) 2023-04-12 06:52:05 +02:00
Alec Scott
c12ce32b55 libxcomposite: add v0.4.6 (#36736) 2023-04-12 06:51:31 +02:00
Alec Scott
1d5e085549 libxrandr: add v1.5.3 (#36737) 2023-04-12 06:51:18 +02:00
Alec Scott
d68378d312 libxxf86misc: add v1.0.4 (#36738) 2023-04-12 06:51:04 +02:00
Alec Scott
9e9d5f72a9 perl-exporter-tiny: add v1.006002 (#36739) 2023-04-12 06:50:47 +02:00
Alec Scott
7212aae423 solr: add v8.11.2 (#36748) 2023-04-12 06:50:31 +02:00
Alec Scott
77da0707b0 talloc: add v2.4.0 (#36749) 2023-04-12 06:50:13 +02:00
Alec Scott
850b3bf27a task: add v2.6.2 (#36750) 2023-04-12 06:49:58 +02:00
Alec Scott
e0546f1b99 thrift: add v0.18.1 (#36751) 2023-04-12 06:49:44 +02:00
Alec Scott
a2365b68c2 xcb-proto: add v1.15.2 (#36752) 2023-04-12 06:49:13 +02:00
Alec Scott
f898406ae7 xerces-c: add v3.2.4 (#36753) 2023-04-12 06:48:55 +02:00
Alec Scott
6d96977980 xkeyboard-config: add v2.34 (#36754) 2023-04-12 06:48:39 +02:00
Adam J. Stewart
d79423fe9e protobuf: add new versions (#36711) 2023-04-12 06:47:42 +02:00
Glenn Johnson
f4658a520c r-hydrogof: add new package and dependencies (#36763)
- r-hydrogof
- r-hydrotsm
- r-automap
2023-04-12 06:39:06 +02:00
Alec Scott
94615285d1 sed: add v4.9 (#36747) 2023-04-12 06:38:22 +02:00
willdunklin
bf81f812a5 ascent: patch v0.9.0 for finding RAJA (#36645) 2023-04-12 06:36:48 +02:00
Adam J. Stewart
4863d6f21b py-fiona: add v1.9.3 (#36765) 2023-04-12 06:33:35 +02:00
Wouter Deconinck
2e242897e0 simsipm: add v2.0.2 (#36718) 2023-04-12 06:27:30 +02:00
Thomas Madlener
31c583581f lhapdf: Pass additional python lib dirs only if possible (#36771) 2023-04-12 06:25:54 +02:00
Howard Pritchard
781769545f Open MPI: fix pmix dependency for 5.0.x releases (#36773)
The Open MPI 5.0.x release stream needs PMIx 4.2(?).x  not 5
(which transates to pmix-master).

Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2023-04-12 06:22:56 +02:00
Annop Wongwathanarat
575bd1c3f8 acfl: add version 23.04 (#36775) 2023-04-12 06:15:18 +02:00
Annop Wongwathanarat
6cfb9339ee armpl-gcc: add version 23.04 (#36776) 2023-04-12 06:13:57 +02:00
afzpatel
9ddfdec193 Enable rocm support and gtest variant for ucx (#36693) 2023-04-12 06:12:44 +02:00
Alec Scott
4ba49f3814 libxcursor: add v1.2.1 (#36777) 2023-04-12 06:10:42 +02:00
Alec Scott
b83ff386b8 libxmu: add v1.1.4 (#36778) 2023-04-12 06:09:07 +02:00
snehring
d5d8b81e21 py-drep: adding new version 3.4.2 (#36625) 2023-04-11 20:25:38 -05:00
Jonathon Anderson
8e12eef4e1 py-torch: Update conflicts for +/~tensorpipe (#36781)
* py-torch: Update conflicts for +/~tensorpipe

* [@spackbot] updating style on behalf of blue42u

* Update var/spack/repos/builtin/packages/py-torch/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* [@spackbot] updating style on behalf of blue42u

---------

Co-authored-by: blue42u <blue42u@users.noreply.github.com>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-04-11 20:24:42 -05:00
John W. Parent
f1c0775245 Perl package: fix 64-bit detection on Windows (#36785) 2023-04-11 19:08:15 -04:00
John W. Parent
530669346a Windows/MSVC: propagate all VCVARS changes to Spack env (#36582)
MSVC compilers rely on vcvars environment setup scripts to establish
build environement variables neccesary for all projects to build
successfully. Prior to this we were only piping LIB, INCLUDE, and PATH
change through.

Instead we need to propegate all changes to the env variables made by
VCVARs in order to establish robust support for the MSVC compiler.
This most significantly impacts projects that need to be build with
NMake and MSBuild
2023-04-11 19:04:34 -04:00
kwryankrattiger
68f50f9b11 Fides 1.2 (#36787)
* VTK-m: Add conflict for 64 bit ids and Ascent types

* Fides: Add version 1.2

* [@spackbot] updating style on behalf of kwryankrattiger
2023-04-11 18:44:10 -04:00
Michael Kuhn
9996812067 meson: add 1.1.0 (#36790) 2023-04-11 18:07:55 -04:00
Alec Scott
2bf8284659 go: add v1.20.3 and v1.19.8 (#36791) 2023-04-11 17:34:31 -04:00
markus-ferrell
3edb044706 Windows testing: reenable tests for "spack dependents" (#36786)
All the tests worked out of the box. This just removes the skip statements.
2023-04-11 14:30:40 -07:00
eugeneswalker
0e9b5a05e8 mgard: add 2023-03-31, 2023-01-10 (#36585) 2023-04-11 23:16:14 +02:00
Alec Scott
d75343031e xtrans: add v1.4.0 (#36779) 2023-04-11 23:12:05 +02:00
kwryankrattiger
6e659cc38b ParaView: Need VTKm for CUDA (#36620) 2023-04-11 15:41:23 -05:00
Wouter Deconinck
ae2dd867a1 Update package.py (#36722)
No changes to the package recipe required.

Changelog: https://gitlab.com/Pythia8/releases/-/compare/pythia8306...pythia8309
2023-04-11 08:37:54 -07:00
Juan Miguel Carceller
d7dc26aeb7 Limit version of intel-tbb (#36731)
Co-authored-by: jmcarcell <jmcarcell@users.noreply.github.com>
2023-04-11 08:11:14 -07:00
Wouter Deconinck
ea04ad108f xrootd: new version 5.5.4 (#36721)
No changes to the build recipe required. Changelog at https://github.com/xrootd/xrootd/compare/v5.5.3...v5.5.4.

Built successfully on my test system:
```console
[+] /opt/software/linux-ubuntu23.04-skylake/gcc-12.2.0/xrootd-5.5.4-cgyz43ivwwqkc7bhdofnxhl2fusysg3m
```
2023-04-11 08:07:59 -07:00
Nisarg Patel
eecd2f984f Update opencoarray to v2.10.1 and fgsl to v1.5.0 (#36626) 2023-04-11 16:29:10 +02:00
Harmen Stoppels
1c3961bdd0 Remove a unit-test that monkey-patches os.stat (#36757)
"test_create_stage_root_bad_uid" started failing as pytest updated to v7.3.0
2023-04-11 14:02:35 +02:00
eugeneswalker
a88fdb216f ci: gpu-tests stack: swap x86_64-{cuda,rocm} for x86_64 (#36759) 2023-04-10 17:01:18 -07:00
Alec Scott
8feeb07d4f r-caretensemble: add v2.0.2 (#36742) 2023-04-10 17:39:28 -05:00
kwryankrattiger
b2310f9e64 Ci backwards compat (#36045)
* CI: Fixup docs for bootstrap.

* CI: Add compatibility shim

* Add an update method for CI

Update requires manually renaming section to `ci`. After
this patch, updating and using the deprecated `gitlab-ci` section
should be possible.

* Fix typos in generate warnings

* Fixup CI schema validation

* Add unit tests for legacy CI

* Add deprecated CI stack for continuous testing

* Allow updating gitlab-ci section directly with env update

* Make warning give good advice for updating gitlab-ci

* Fix typo in CI name

* Remove white space

* Remove unneeded component of deprected-ci
2023-04-10 16:46:45 -05:00
Alec Scott
2c7d7388da r-gsodr: add v3.1.8 (#36746) 2023-04-10 17:37:39 -04:00
Alec Scott
1f7b1f5ee1 r-conquer: add v1.3.3 (#36743) 2023-04-10 17:34:49 -04:00
Alec Scott
6054daf1e0 r-data-table: add v1.14.8 (#36744) 2023-04-10 17:34:28 -04:00
Alec Scott
15bbd0724d r-cachem: add v1.0.7 (#36741) 2023-04-10 17:34:06 -04:00
Alec Scott
5771500255 r-ff: add v4.0.9 (#36745) 2023-04-10 16:03:03 -05:00
Alec Scott
4d535ed50f r-blob: add v1.2.4 (#36740) 2023-04-10 15:50:03 -05:00
Alec Scott
219c49db04 r-intervals: add v0.15.3 (#36727) 2023-04-10 15:48:17 -05:00
snehring
4006ce28aa armadillo: add new version 12.2.0 (#36755) 2023-04-10 12:37:51 -07:00
Thomas Madlener
cb9ae0fa77 krb5, xrootd: Make usable with OpenSSL 3 (#36728) 2023-04-10 05:34:08 -04:00
Michael Kuhn
c35e59a6c4 zstd: add 1.5.5 (#36717) 2023-04-09 21:02:18 +02:00
Jonathon Anderson
c32aeea1a4 py-wheel: Add dependency on python+ctypes (#36716) 2023-04-09 10:59:05 -05:00
Adam J. Stewart
6de3786c36 cuDNN: LD_LIBRARY_PATH required (#36466) 2023-04-08 12:05:34 -05:00
SXS Bot
3869761216 spectre: add v2023.04.07 (#36704)
Co-authored-by: sxs-bot <sxs-bot@users.noreply.github.com>
2023-04-07 21:17:22 -04:00
Vanessasaurus
04209599ef Automated deployment to update package flux-pmix 2023-04-07 (#36700)
* Automated deployment to update package flux-pmix 2023-04-07
* fix style

Signed-off-by: vsoch <vsoch@users.noreply.github.com>

---------

Signed-off-by: vsoch <vsoch@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
Co-authored-by: vsoch <vsoch@users.noreply.github.com>
2023-04-07 20:27:32 -04:00
Wouter Deconinck
9d05e65578 wayland: new version 1.22 (#36694)
No build system changes compared to the previous release, https://gitlab.freedesktop.org/wayland/wayland/-/compare/1.21.0...1.22.0
2023-04-07 16:58:15 -07:00
John W. Parent
9d7b79d8e1 Windows support: correct 64-bit check (#36578) 2023-04-07 16:50:54 -07:00
Wouter Deconinck
65ee864232 cppzmq: new versions 4.8.1, 4.9.0 (updated cmake dependency) (#36699)
* cppzmq: new versions 4.8.1, 4.9.0 (updated cmake dependency)
  No important changes in the build system,    https://github.com/zeromq/cppzmq/compare/v4.7.1...v4.9.0, other than the more recent cmake required starting with 4.8.0.
  There is also a patch version 4.8.0, but presumably 4.8.1 is preferred.
* cppzmq: add maintainer
2023-04-07 09:36:22 -07:00
Richard Berger
4703c3bcb8 lammps: add missing hipfft dependency (#36697) 2023-04-07 09:28:28 -07:00
Massimiliano Culpo
a7b2196eab Fix incorrect reformatting of spack.yaml (#36698)
* Extract a method to warn when the manifest is not up-to-date

* Extract methods to update the repository and ensure dir exists

* Simplify further the write method, add failing unit-test

* Fix the function computing YAML equivalence between two instances
2023-04-07 13:37:28 +02:00
kwryankrattiger
4ace1e660a Ecp hdf5 vol (#35195)
* ECP-SDK: enable hdf5 VOL adapters
- When +hdf5, enable VOL adapters suitable for the SDK.
- Each VOL package must prepend to the HDF5_PLUGIN_PATH.
- hdf5: 1.13.3 will break existing VOL packages, constrain
  VOLs related to SDK and add note to keep 1.13.2 available.
- hdf5-vol-async:
    - Do not set HDF5_VOL_CONNECTOR, consumers must opt-in.
    - Enforce DAG constraints on MPI to require threaded version.
    - Depend on an explicit version of argbots to relax
      concretization issues in other spack environments.
- paraview: fix compiler flag usage for the 110 ABI (followup to #33617).
* ECP Data and ViS: Add constraits for HDF5 VOLS
* CI: HDF5 1.14 builds without VisIt
* hdf5-vol-async: Update docs string

---------

Co-authored-by: Stephen McDowell <stephen.mcdowell@kitware.com>
2023-04-06 15:21:11 -07:00
SoniaScard
12eff8daad Packages/ophidia server (#36632)
* ophidia-server: new package at v1.7
* Merge
* Update package.py
  Fix style in package.py
* Fix maintainers syntax

---------

Co-authored-by: SoniaScard <SoniaScard@users.noreply.github.com>
2023-04-06 17:11:52 -04:00
Adam J. Stewart
017d66eb79 abseil-cpp: add v20230125.2 (#36636) 2023-04-06 13:29:42 -07:00
kwryankrattiger
9e11d0e489 ParaView: add latest release v5.11.1 (#36577)
* ParaView: add latest release v5.11.1

* ParaView: No longer need XDMF patch after 5.11.1
2023-04-06 11:18:42 -07:00
Miroslav Stoyanov
74ad92e16b manually add mpi home to testing (#36633) 2023-04-06 10:52:43 -07:00
Jonathon Anderson
3e2d03984e Fix py-torch build on Linux >=6.0.3 (#35983)
* Fix py-torch build on Linux >=6.0.3

* Update var/spack/repos/builtin/packages/py-torch/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-04-06 13:48:05 -04:00
Adam J. Stewart
bd8dc1919b py-grpcio: add v1.52.0 (#36637) 2023-04-06 10:46:52 -07:00
Adam J. Stewart
6922e8f282 py-portpicker: add new package (#36638) 2023-04-06 10:39:15 -07:00
kwryankrattiger
a70f307f7e ParaView: Add variant for raytracing (#36640)
* ParaView: Add variant for raytracing

* [@spackbot] updating style on behalf of kwryankrattiger
2023-04-06 10:30:00 -07:00
Wouter Deconinck
c338d2fb02 root: depends_on vc@1.3.0: (open-ended) (#36663) 2023-04-06 09:51:20 -07:00
Vanessasaurus
b32edd3a72 Automated deployment to update package flux-core 2023-04-06 (#36676)
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
2023-04-06 12:47:51 -04:00
John W. Parent
44e15da92c Spack on Windows: spack.bat comment syntax (#36531)
Comments must start with `rem` in most cases.
2023-04-06 09:43:27 -07:00
Cameron Stanavige
685dd7272a veloc/scr component releases (#36672)
VeloC/SCR component releases needed for upcoming VeloC release.

* AXL v0.8.0
* ER  v0.4.0
* KVTree v1.4.0
* Rankstr v0.3.0
* Redset v0.3.0
* Shuffile v0.3.0
* Spath v0.3.0

Added some dependency compatibility restraints as the new componenet
versions have a change to how their cmake config works.
2023-04-06 09:27:32 -07:00
Massimiliano Culpo
0b9694575f spack install: fail if --log-file and not --log-format (#36684)
fixes #34551

"spack install" now fails if a user passed the --logfile option without specifying a log format.
2023-04-06 09:09:18 -07:00
Rocco Meli
6e490f2239 GNINA: add cuDNN variant and make RDKit optional (#36270)
* add cuDNN variant and make RDKit optional
* [@spackbot] updating style on behalf of RMeli
* add newer version of rdkit

---------

Co-authored-by: RMeli <RMeli@users.noreply.github.com>
2023-04-06 08:49:02 -07:00
Massimiliano Culpo
0ce548a850 singularity: deprecate all versions pre-fork, remove maintainer (#36654) 2023-04-06 11:31:10 +02:00
Alec Scott
d19475c3b4 crmc: add v2.0.1 (#36236)
Hint: The diff for this file is large because it initially had CRLF (DOS) eol style.
2023-04-06 06:12:56 +02:00
Andrey Perestoronin
3d1320c834 intel-oneapi-openvpl-2023.1.0 (#36668) 2023-04-05 17:48:12 -04:00
Andrey Perestoronin
bb735fb896 intel 2023.1.0 release fix versioning (#36665) 2023-04-05 16:58:11 -04:00
Jen Herting
767046f8da [py-mizani] added version 0.8.1 (#36500) 2023-04-05 16:57:56 -04:00
Axel Huebl
8f800aca72 openPMD-api: 0.15.1 Patch version.hpp (#36662)
Forgot to bump a version in the public header during release.
2023-04-05 16:28:24 -04:00
Jen Herting
65556eb53e New package: py-qiskit-ibm-provider and more (#36661)
* [py-singledispatchmethod] new package

* [py-singledispatchmethod] added missing dependency

* new package required for qiskit

* [py-rustworkx]

- removed redundant dependency on py-wheel
- added dependency on py-numpy

* [py-websocket-client] added version 1.5.1

* modified it is ahead of upstream

* [py-qiskit-terra]

- flake8
- removed duplicate dependencies
- fixed acceptable range for py-symengine

* [py-qiskit-terra] tweedledum no longer needed

* [py-qiskit-terra] depends on py-singledispatchmethod

* [py-qiskit-ibm-provider] new package

---------

Co-authored-by: Sid Pendelberry <sid@rit.edu>
2023-04-05 14:51:35 -04:00
Massimiliano Culpo
a080cf0193 archspec: add v0.2.0, deprecate old versions (#36653)
* archspec: add v0.2.0, deprecate old versions

* Simplify version ranges

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Remove py-setuptools

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-04-05 14:51:12 -04:00
Massimiliano Culpo
3e1c6b27a4 Update archspec to HEAD of develop (#36657) 2023-04-05 13:23:42 -04:00
Jen Herting
f28219cdda [py-backports-zoneinfo] New package (#36499)
* [py-backports-zoneinfo] New package

* [py-backports-zoneinfo] removed references to python 3.6
2023-04-05 12:05:20 -05:00
Daniel Ahlin
4206478f5e gromacs: add cufftmp variant to enable distributed PME when using CUDA (#36552)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-04-05 12:30:24 -04:00
Dan Bonachea
eebfb1cf07 UPC++/GASNet-EX 2023.3.0 update (#36629) 2023-04-05 13:55:17 +02:00
Mikael Simberg
8235e1f38a pika: Add version 0.14.0 (#36652)
* Rename PIKA_WITH_P2300_REFERENCE_IMPLEMENTATION CMake option in pika package

* Remove unnecessary use of self in pika package

* Use append instead of list += for single options in pika package

* Add pika 0.14.0
2023-04-05 13:18:48 +02:00
Massimiliano Culpo
a1703fa437 binutils: deprecate old version, build static on darwin (#36646)
The issue comes from libctf.
2023-04-05 09:20:09 +02:00
Massimiliano Culpo
4b3cc800ff minisign: add v0.11 (#36647) 2023-04-04 23:59:27 -04:00
Thomas-Ulrich
5cf7c60d74 add tandem package (#36546)
* add tandem package
* apply black
* fix import
* fix year of license
* add version 1.0 and associated compile fix
* change git to property
* add conflict to intel
2023-04-04 18:37:20 -07:00
SoniaScard
674c22f815 Packages/ophidia primitives (#36575)
* ophidia-primitives: new package at v1.7
* ophidia-primitives: Add mantainers
* ophidia-primitives: Fix style
* ophidia-primitives: update configure arguments
* Fix style in package.py
---------

Co-authored-by: SoniaScard <SoniaScard@users.noreply.github.com>
Co-authored-by: Donatello Elia <eldoo@users.noreply.github.com>
2023-04-04 18:30:22 -07:00
Luc Berger
5a4890cef8 Kokkos: add release 4.0.0 (#36532)
* Kokkos: add release 4.0.0
* Kokkos: updating default c++ standard requirement
  Now Kokkos requires c++17 as its new minimum c++ standard library.
* Kokkos: adding support for new GPU architectures
  The new updates include NVIDIA Hopper and AMD Navi
* Kokkos: fixing style...
* paraview +rocm: constrain kokkos dep to @:3.7.01

---------

Co-authored-by: eugeneswalker <38933153+eugeneswalker@users.noreply.github.com>
Co-authored-by: eugeneswalker <eugenesunsetwalker@gmail.com>
2023-04-04 18:23:53 -07:00
afzpatel
66a9a9caa8 Enable tests for rocm packages - rocm-smi-lib, rocm-cmake and rocm-clang-ocl (#35299)
* initial commit for enabling test for rocm-smi-lib, rocm-cmake and rocm-clang-ocl
* fix styling and cleaning code
* disabling some tests for rocm-smi-lib
* fix style errors
2023-04-04 18:11:26 -07:00
Adam J. Stewart
c3a41c742e bazel: new versions, macOS patches (#36641) 2023-04-04 17:28:05 -04:00
Massimiliano Culpo
664c12c7be zig: add v0.10.1 (#36639) 2023-04-04 21:57:30 +02:00
John W. Parent
44306d3492 hdf5 package: fix wrapper handling on Windows(#36265)
* msmpi has no wrappers so don't set MPI_CXX_COMPILER etc. for that
  MPI implementation
* hdf5 on Windows does not have h5cc etc., so do not try to filter
  them on Windows
2023-04-04 11:40:30 -07:00
Howard Pritchard
354d498971 OpeMPI: make memchecker variant sticky (#36329)
related to #36255

Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2023-04-04 14:23:07 -04:00
willdunklin
d2fd68071e sensei: fix ascent constraints (#36622) 2023-04-04 11:49:13 -05:00
eugeneswalker
1a2510d031 suite-sparse ^openblas~shared threads=openmp: add -fopenmp (#36521)
* suite-sparse ^openblas~shared threads=openmp: add -fopenmp to cflags, cxxflags

* use compiler.openmp_flag
2023-04-04 08:52:34 -07:00
Jonathon Anderson
78f5b2a2c6 Add workflow:rules:always to spack ci output (#36011) 2023-04-04 10:03:58 -05:00
Wouter Deconinck
d0cd340628 py-uproot, py-awkward, py-awkward-cpp: new versions (#36421)
* py-uproot: new versions 5.0.4, 5.0.5

No changed in dependency versions

* py-awkward-cpp: new versions

* py-awkward: new versions

* py-awkward: new version in 1.10.* series
2023-04-04 09:46:29 -05:00
Filippo Spiga
6a2f80e2c6 Adding NVIDIA HPC SDK 23.3 (#36624)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-04-04 14:55:26 +02:00
Valentin Volkl
ed0c6cd0f3 frontier-client: fix build with clang (#29590) 2023-04-04 08:23:32 -04:00
Jean Luca Bez
6aa4c29119 update h5bench VOL-ASYNC dependecy with fixes (#36514) 2023-04-04 10:39:17 +02:00
Harmen Stoppels
dc1399386c Make spack config update work on environments (#36542)
Previously `spack -e bla config update <section>` would treat the
environment config scope as standard config file instead of a single
file config scope. This fixes that.
2023-04-04 10:19:05 +02:00
Matthew Thompson
6fca0f8018 pfunit: fix error with BUILD_SHARED_LIBS (#36554) 2023-04-04 10:15:26 +02:00
Wouter Deconinck
88cc949841 libdrm: new version 2.4.115 (#35586)
https://gitlab.freedesktop.org/mesa/drm/-/compare/libdrm-2.4.114...libdrm-2.4.115 only bugfixes
2023-04-04 10:14:19 +02:00
Juan Miguel Carceller
c81d0a9e97 acts: add a dependency on git-lfs (#36517)
Co-authored-by: jmcarcell <jmcarcell@users.noreply.github.com>
2023-04-04 10:13:11 +02:00
John W. Parent
e4794274d6 Add versions 3.24.4, 3.25.3 (#36001)
Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2023-04-04 10:11:21 +02:00
Harmen Stoppels
2b112dd02c llvm: add missing zstd dep (#36613) 2023-04-04 10:06:41 +02:00
Alex Richert
5da231969e esmf: add static netcdf-c support (#34579) 2023-04-04 10:01:21 +02:00
Valentin Volkl
c3b0806f6c lhapdfsets: fix an error by avoiding the lhapdf command (#35997)
Co-authored-by: Wouter Deconinck <wdconinc@gmail.com>
2023-04-04 09:56:10 +02:00
George Malerbo
77d55ebbd1 sdl2-ttf: add new package 2023-04-04 09:49:39 +02:00
Harmen Stoppels
e9a1d0a157 filter __spack_path_placeholder__ in generated module files after buildcache install (#36611)
* filter __spack_path_placeholder__ in generated module files after buildcache install

* fix windows
2023-04-04 09:45:43 +02:00
Weiqun Zhang
5560017ebe amrex: add v23.04 (#36596) 2023-04-04 09:41:48 +02:00
Adam J. Stewart
87da3a07bb PyTorch: fix ppc64le patching (#36621) 2023-04-04 09:27:23 +02:00
Daryl W. Grunau
712b30c9c5 eospac: expose version 6.5.6 (#36615)
Co-authored-by: Daryl W. Grunau <dwg@lanl.gov>
2023-04-03 23:31:14 -04:00
Andrey Perestoronin
dc194ec14c added new packages (#36608) 2023-04-03 23:30:51 -04:00
Daniel Ahlin
5c0004bbc1 gromacs: make package inherit from CudaPackage (#36551)
To conform to spack way of specifying cuda_arch. This commit does
not change version-specific gencode handling for older gromacs
versions
2023-04-03 23:10:47 -04:00
Adam J. Stewart
3d923fd5b8 py-pillow: add v9.5.0 (#36593) 2023-04-03 20:13:03 -05:00
Adam J. Stewart
a8c400bae0 py-pandas: add v2.0.0 (#36617) 2023-04-03 20:12:48 -05:00
Xavier Delaruelle
7a77ecbdb6 modules: remove default symlink on uninstall (#36454)
When app is uninstalled, if it matches a default, then remove the
default symlink targeting its modulefile.

Until now, when a default were uninstalled, the default symlink were
left pointing to a nonexistent modulefile.
2023-04-03 22:54:18 +02:00
Mikael Simberg
91636f0e9d Bump required CMake version for stdexec (#36605) 2023-04-03 16:04:14 -04:00
Massimiliano Culpo
f91968cf6f Improve Dockerfile recipe generation (#35187)
- Update default image to Ubuntu 22.04 (previously was still Ubuntu 18.04)
- Optionally use depfiles to install the environment within the container
- Allow extending Dockerfile Jinja2 template
- Allow extending Singularity definition file Jinja2 template
- Deprecate previous options to add extra instructions
2023-04-03 21:05:19 +02:00
Benjamin Meyers
3d149a7db2 New package py-pycorenlp (#36609) 2023-04-03 13:40:56 -05:00
Cory Bloor
cfea2d1010 hip: mathlibs inherit CudaPackage and ROCmPackage (#34586)
Unless the amdgpu_target is overriden, the libraries will default to
being built for cuda, since amdgpu_target=none is both default and in
conflict with +rocm. This requires a custom Disjoint set to include
both the 'auto' variant used by the rocm mathlibs and the 'none'
variant used by ROCmPackage.

* Fix search for hip+cuda in hipcub@5.1 and later

This patch is not strictly necessary, but it may fix the search for HIP
in certain environments.

* Backport fix for CUDA 11.5 to hipsparse
2023-04-03 20:28:24 +02:00
vijay kallesh
0860139c83 Updated homepage URL (#36519) 2023-04-03 11:21:13 -07:00
Vanessasaurus
182ef042ce Automated deployment to update package flux-sched 2023-04-01 (#36591)
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
2023-04-03 10:48:27 -07:00
Massimiliano Culpo
9d68100891 Rework error handling within the ASP logic program (#36536)
* Reduce effort on grounding by employing cardinality constraints

If we use a cardinality constraint instead of a rule
using pair of values, we'll end up grounding 1 rule
instead of all the possible pair combinations of the
allowed values.

* Display all errors from concretization, instead of just one

If clingo produces multiple "error" facts, we now print all
of them in the error message. Before we were printing just
the one with the least priority.

Consolidate a few common patterns in concretize.lp to ensure
that certain node attributes have one and only one value
assigned.

All errors are displayed, so use a single criterion
instead of three.

* Account for weights in concretize.lp

To recover the optimization order we had before, account
for weights of errors when minimizing.

The priority is mapped to powers of 10, so to effectively
get back the same results as with priorities.
2023-04-03 19:23:29 +02:00
Axel Huebl
ebffc53b93 openPMD-api: 0.15.1 (#36604)
Latest patch release, fixing build issues.
2023-04-03 16:39:34 +02:00
Robert Cohn
4c3edac454 namd: add oneapi support (#36139) 2023-04-03 16:39:09 +02:00
Matin Raayai
5e33f6bbc5 External Detection for llvm-amdgpu (#36595)
* Added external detection of llvm-amdgpu.

* Style cleaning for llvm-amdgpu.
2023-04-03 14:51:58 +02:00
Harmen Stoppels
a19f13f57a zstd: fix makefile build, default to makefile (#36606) 2023-04-03 14:50:38 +02:00
Harmen Stoppels
93cad90413 openblas: use "all" target since it's marked sequential (#35905)
openblas likes to concurrently writes to the same archive from different
targets, and solves that through .NOTPARALLEL: all

We run `make x y z` which is not affected by `NOTPARALLEL`, running into
races.
2023-04-03 11:45:38 +02:00
Xavier Delaruelle
7e4927b892 modules: correctly detect explicit installation (#36533)
When generating modulefile, correctly detect software installation asked
by user as explicit installation.

Explicit installation status were previously fetched from database
record of spec, which was only set after modulefile generation.

Code is updated to pass down the explicit status of software
installation to the object that generates modulefiles.

Fixes #34730.
Fixes #12105.

A value for the explicit argument has to be set when creating a new
installation, but for operations on existing installation, this value is
retrieved from database. Such operations are: module rm, module refresh,
module setdefaults or when get_module function is used.

Update on the way tests that mimics an installation, thus explicit
argument has to be set under such situation.
2023-04-03 11:19:18 +02:00
Harmen Stoppels
88548ba76f binutils 2.40: add missing zstd dep (#36598) 2023-04-03 06:41:38 +02:00
Laura Weber
2117e37a0b sublime-text: Fix the dependencies of the recent update (#36562) 2023-04-02 19:53:54 +02:00
Tristan Carel
ac62817ba0 petsc: simplify dependencies with hypre (#36573)
* petsc: simplify dependencies with hypre

* add propagation of `complex` variant to hypre
2023-04-02 10:00:10 -05:00
Harmen Stoppels
08cf82b977 papyrus: disable tests (#36599) 2023-04-02 13:34:25 +02:00
Leonard-Anderson-NNL
4242989f22 New package: py-mike and dependency. (#36587)
Co-authored-by: Cloud User <leonardanderson@leonardander004.hzterscemazurawp3xenxzahla.bx.internal.cloudapp.net>
2023-04-01 21:53:48 -05:00
Juan Miguel Carceller
b524351e10 root: vc variant: root accepts only vc version 1.3.0 (#36594)
Co-authored-by: jmcarcell <jmcarcell@users.noreply.github.com>
2023-04-01 21:47:34 +02:00
Alex Richert
b9bde03df5 yafyaml: Add fismahigh variant to comply with FISMA standards (#36471) 2023-04-01 21:12:00 +02:00
Satish Balay
5c3bc36fde petsc,py-petsc4py,slepc,py-slepc4py: add version 3.19.0 (#36588) 2023-04-01 12:40:19 -05:00
John W. Parent
2a2c9cdf02 CMake: add version 3.26.2 (#36567) 2023-04-01 15:21:13 +02:00
Bernhard Kaindl
8b98564840 libxpm: Fix linking with libintl (#36568)
Original Author of this change: Chris Green <greenc@fnal.gov>

Two changes:
- Remove adding the library path using -L: It is obsolete now
  that we have the library paths in before the system paths.
- Link with -linto only if the gettext recipe provides it:
  When we are on a glibc system, we can use external gettext,
  which means we use the libintl inside libc.so: no -lintl then.

This change was already submitted in #35450 and reviewed but is
stuck in this big PR which is trying to do too in a single PR.
2023-04-01 15:11:14 +02:00
John W. Parent
d79c8179fc Perl package: change attr to method (#36580)
This fixes a bug in the Windows build of Perl.

An attribute defined in package class is inaccessible from the install
method due to builder: refactor it to be a method.
2023-03-31 21:57:55 -04:00
John W. Parent
1175831203 netcdf-c package: fix patch applied on Windows (#36581) 2023-03-31 20:52:36 -04:00
Rocco Meli
210b2e8caa MDAnalysis 2.4.3 (#36541)
* mda 2.4.3

* black

* mda update and reshuffle

* add tidynamics
2023-03-31 18:47:56 +00:00
John W. Parent
a8e2961010 Allow configurable stage names (#36509)
Add `config:stage_name` which is a Spec format string that can
customize the names of stages created by Spack. This was primarily
created to allow generating shorter stage names on Windows (along
with `config:build_stage`, this can be used to create stages with
short absolute paths).

By default, this is not set and the prior name stage format is used.

This also removes the username component that is always added to
Stage paths on Windows (if users want to include this, they can
add it to the `build_stage`).
2023-03-31 11:46:47 -07:00
Alec Scott
a6a364d3b8 py-aioitertools: add v0.11.0 (#36540)
* py-aioitertools: add v0.11.0

* Update var/spack/repos/builtin/packages/py-aioitertools/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update package.py

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-31 14:16:12 -04:00
Harmen Stoppels
46bbce1922 compiler wrapper: fix -Xlinker parsing (#35929)
* compiler wrapper: fix -Xlinker parsing
* handle the case of -rpath without value; avoid that we drop the flag
* also handle the -Xlinker -rpath -Xlinker without further args case...
* fix test
* get rid of global $rp var, reduce branching
2023-03-31 09:47:24 -07:00
Satish Balay
14465e61ae petsc: builds break with gnu-make-4.4.1 (#35906)
Use 'make' detected by spack within petsc build
2023-03-31 09:28:48 -07:00
kwryankrattiger
4064191fbc Ascent: Drop VTK-h dependency for 0.9 (#36458)
* Ascent: Drop VTK-h dependency for 0.9

* Ascent: Remove duplicate OpenMP constraints

* Ascent: 0.9.0 cannot build with vtk-m@2

* Ascent: Only needs vtkm when using vtkh

* Ascent: Require fides when building with ADIOS2
2023-03-31 11:24:45 -05:00
renjithravindrankannath
7bb64b526f rocsparse: exclude v5.4 from being patched (#36571) 2023-03-31 18:14:04 +02:00
Cameron Rutherford
4f42092f4f hiop: add v0.7.2 (#36570) 2023-03-31 11:33:26 -04:00
Tristan Carel
3b5b9e8474 steps: add variants gmsh and kokkos (#36543) 2023-03-31 11:27:58 -04:00
Paul Romano
aabd76cb74 OpenMC: add v0.13.3 (#36564)
* OpenMC: add v0.13.3

* Add missing version in list for py-openmc
2023-03-31 11:18:26 -04:00
H. Joe Lee
fbde853360 hdf5: add a map variant (#35523)
* hdf5: add map variant
* hdf5: add mininum version for map variant
* hdf5: fix black error
2023-03-31 10:48:08 -04:00
Benjamin Meyers
951f691d1b New: py-dalib, py-qdldl, py-qpsolvers; Update: py-ecos, py-scs, py-osqp (#36549)
* New: py-dalib, py-qdldl, py-qpsolvers; Update: py-ecos, py-scs, py-osqp

* [@spackbot] updating style on behalf of meyersbs

* Update py-qpsolvers homepage

* Add when clause to py-future
2023-03-31 09:34:02 -05:00
Benjamin Meyers
27978fd355 New package py-json2html (#36111)
* New package py-json2html

* Remove deprecated python deps
2023-03-31 09:32:31 -05:00
John W. Parent
349b5d982b Add latet CMake release (#36119) 2023-03-31 08:28:49 -04:00
Ashwin Kumar Karnad
c2c56c1ca1 octopus: Add sparskit variant (#36494)
Co-authored-by: Hans Fangohr <fangohr@users.noreply.github.com>
Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2023-03-31 08:18:53 -04:00
Weston Ortiz
7e06b5bc88 goma: add additional versions up to 7.4.3 (#36561) 2023-03-31 06:49:12 -04:00
Miroslav Stoyanov
17cec3b101 Deprecate old tasmanian (#36534)
* deprecated old versions and deps
* syntax fix

---------

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2023-03-31 06:48:48 -04:00
Harmen Stoppels
b0e7b8c794 typehint a few globals (#36544) 2023-03-31 08:32:56 +02:00
Alec Scott
98ac3acc92 py-aiobotocore: add v2.5.0 (#36538)
* py-aiobotocore: add v2.5.0

* Fix dependencies for v2.5.0

* Add py-botocore@1.29.76
2023-03-30 20:52:37 -05:00
Benjamin Meyers
7d66c3b5d1 New package py-coclust (#36548)
* New package py-coclust

* [@spackbot] updating style on behalf of meyersbs
2023-03-30 20:41:15 -05:00
Benjamin Meyers
ae9a65ae56 New package py-soyclustering (#36550)
* New package py-soyclustering

* [@spackbot] updating style on behalf of meyersbs
2023-03-30 20:33:33 -05:00
Michael Kuhn
996442ea9b py-h5py: add 3.8.0 (#35960) 2023-03-30 20:20:55 -05:00
marcosmazz
bd20b7b8b7 QE v7.1 add post-processing tools installation (#36484)
* QE v7.1 add post-processing tools installation

Quantum-Espersso@7.1 ships with an incoplete CMakeLists.txt that prevents the installation of post-processing tools.
Added patches, is fixed in two different commits in upstream.

* fixed style

* removed spaces

* added MR references
2023-03-30 16:28:14 -07:00
Scott Wittenburg
08426ec492 gitlab ci: request more memory for publish job (#36560) 2023-03-31 00:19:59 +02:00
Adam J. Stewart
f863859bde py-lightning: add v2.0.1 (#36565) 2023-03-30 17:57:31 -04:00
Ashwin Kumar Karnad
07559d778e octopus: Add berkeleygw variant (#36495)
* octopus: Add berkeleygw variant
* octopus: style fix
2023-03-30 14:57:05 -07:00
Edoardo Aprà
33833a4f32 nwche: add v7.2.0 (#36193)
* removed env variables now default. added spec fftw3. removed obsolete version 7.0.0

* tweak NWCHEM_MODULES based on version
2023-03-30 22:15:56 +02:00
Adam J. Stewart
e544bb6271 py-scipy: py-pythan is only a build dep (#36528) 2023-03-30 16:13:17 -04:00
Massimiliano Culpo
e1a104e3a2 Add type-hints to spack.bootstrap (#36491) 2023-03-30 22:12:18 +02:00
Alex Richert
f5624f096c perl: add patching to allow building with intel@19.1.3 (#35666) 2023-03-30 13:07:33 -04:00
Cyrus Harrison
d82fc158ca add conduit 0.8.7 release (#36357) 2023-03-30 12:40:35 -04:00
Ashwin Kumar Karnad
709c5c4844 octopus: add etsf-io variant (#36490) 2023-03-30 18:15:04 +02:00
Ashwin Kumar Karnad
e356390575 octopus: Add NFFT variant (#36489) 2023-03-30 18:04:29 +02:00
Ashwin Kumar Karnad
906a8c56af octopus+cgal: requires boost: add --with-boost=spec["boost"].prefix (#36472) 2023-03-30 17:37:11 +02:00
Adam J. Stewart
6c5d3299fe Feature Request template: remove spack version requirement (#36503) 2023-03-30 16:39:36 +02:00
Richard Berger
fefa4b8cc4 r3d: add pic variant (#36476) 2023-03-30 16:37:35 +02:00
Erik Heeren
2ca471745c easyloggingpp: new package (#36487) 2023-03-30 16:35:33 +02:00
Alec Scott
3756d5761b poke: add v3.0 (#36479) 2023-03-30 16:32:05 +02:00
Nathalie Furmento
0c05f2bc21 Add StarPU latest release 1.4.0 (#36518)
* starpu: add v1.4.0
2023-03-30 09:59:00 -04:00
Harmen Stoppels
054cbe84de python: sequential make install :( (#35557) 2023-03-30 07:16:11 -04:00
Eric Brugger
a185343493 VisIt: Update to VisIt 3.3.2. (#36510) 2023-03-30 03:34:20 -04:00
Massimiliano Culpo
16404034dc Fix a couple of minor bugs with ASP weights (#36522)
Reorder versions so that deprecated ones are last. 

Account for default not used when the variant exists.
2023-03-30 01:08:57 -04:00
Sergey Kosukhin
516a023173 py-findlibs: add patch to support paths under lib64 (#36524) 2023-03-30 01:04:15 -04:00
Jack Morrison
f8064cd744 * Add new linux-headers version 6.2.8. (#36474)
* Add new libfabric versions 1.17.1, 1.17.0, 1.16.0, 1.15.2.
* Add libfabric dependency on numactl and linux-headers when building
  with OPX provider support.
* Set libfabric flag_handler to pass compiler flags as arguments to
  configure.
2023-03-29 21:34:33 -05:00
Adam J. Stewart
781c87840d py-kornia: add v0.6.11 (#36512) 2023-03-29 14:33:23 -05:00
Adam J. Stewart
b9a3254b66 py-black: add v23.3.0 (#36513) 2023-03-29 14:33:08 -05:00
Adam J. Stewart
20d2e6a9fd py-pyproj: add v3.5.0 (#36504)
* py-pyproj: add v3.5.0
* PROJ: add v9, fix datum grid installation
* [@spackbot] updating style on behalf of adamjstewart

---------

Co-authored-by: adamjstewart <adamjstewart@users.noreply.github.com>
2023-03-29 12:30:39 -07:00
snehring
b6390e335c gmap-gsnap: Adding new version and perl run dep (#36508) 2023-03-29 12:28:17 -07:00
Ivan Maidanski
3e09f04241 libatomic_ops: add v7.8.0 (#36515) 2023-03-29 12:23:16 -07:00
Harmen Stoppels
67c4ada08b py-cython: set upperbound for backported patch (#36525) 2023-03-29 12:43:40 -04:00
Adam J. Stewart
701e46464d Python: add Apple Clang version conflicts (#36511)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-03-29 10:49:10 -04:00
Harmen Stoppels
dba57ff113 ci: require x86_64_v3 everywhere (#36158) 2023-03-29 15:58:48 +02:00
Massimiliano Culpo
7579eaf75a Fix dyninst build with old boost (#36198)
Fix patching old boost versions to account for builders.

Add a proper version constraint on boost for recent dyninst.
The constraint can be found in dyninst source code under
"cmake/Boost.cmake" which contains:

  set(_boost_min_version 1.70.0)

Co-authored-by: Greg Becker <becker33@llnl.gov>
2023-03-29 15:26:51 +02:00
julian-zeidler
aa99063065 charliecloud: add squashfuse variant, add v0.32, v0.31 (#36404) 2023-03-29 01:33:05 -04:00
John W. Parent
18c21d0c32 Add CMake version 3.26.1 (#36349) 2023-03-28 21:03:39 -04:00
John W. Parent
6b03c9f285 Windows: spack.bat CLI handling robustness (#36281)
* Current develop spack.bat file cannot handle any reserved characters
  being passed via the CLI, particularly '=' and '?'. To address this,
  re-do the CLI parsing for loop to use custom logic to allow for more
  granular handling of CLI args.
* We take a less-than-ideal approach to escaping local scope and
  handling unset variables as well as the actual parsing of CL
  arguments. To address this, don't quote the args and then try to
  parse the quotes we just added (resulting in spack flags being
  undefined). Instead, leverage batch script features. Since we are
  not unnecessarily quoting things, we don't need to think about
  removing them, and in the case of paths with spaces, we should _not_
  be removing the quotes as we currently do.
2023-03-28 16:50:37 -07:00
John W. Parent
7ffe2fadfe WGL package: correct libs/headers detection (#35113)
Corrects libs detection with a more specific root, otherwise there
can be inconsistencies between version of WGL requested and the
version picked up by `find_libraries`.

Corrects headers detection - win-sdk, win-wdk, and WGL headers all
exist under the same directory, so we can compute the headers for WGL
without querying the spec for win-sdk (which causes errors).

This commit also removes the `plat` variant of `wgl`, which is
redundant with the Spec's target.
2023-03-28 16:31:10 -07:00
Ashwin Kumar Karnad
a3a9b48ed7 octopus: Add pnfft variant (#36492) 2023-03-28 13:50:36 -07:00
Laura Weber
e0fb737e8e SublimeText: add Sublime Text 4, build 4143 (#36480)
* Add Sublime Text 4, build 4143
* Reformatted with black
* Manual formatting adjustments.
2023-03-28 13:49:27 -07:00
Alec Scott
5e70943d1b perl-extutils-makemaker: add v7.70 (#36478) 2023-03-28 13:43:20 -07:00
Alec Scott
a48abfee75 at-spi2-core: add v2.48.0 (#36477) 2023-03-28 13:37:58 -07:00
Erik Heeren
af86759116 glm: add version 0.9.9.3 (#36486) 2023-03-28 13:34:21 -07:00
Erik Schnetter
6a868ec9c5 snappy: New version 1.1.10 (#36473) 2023-03-28 13:09:17 -07:00
Ryan Marcellino
c6ab42a86a xdotool: add version 3.20211022.1 (#36505) 2023-03-28 12:56:13 -07:00
Ryan Marcellino
a771bfadd1 py-pyautogui: add v0.9.53 (#36498) 2023-03-28 13:50:29 -05:00
Todd Gamblin
d76a8b7de7 retry: bugfix: package requirements with git commits (#35057) (#36347)
- [x] Specs that define 'new' versions in the require: section need to generate associated facts to indicate that those versions are valid.
- [x] add test to verify success with unknown versions.
- [x] remove unneeded check that was leading to extra complexity and test
      failures (at this point, all `hash=version` does not require listing out that version
      in `packages.yaml`)
- [x] unique index for origin (dont reuse 0)

Co-authored-by: Peter Josef Scheibel <scheibel1@llnl.gov>
2023-03-28 11:18:54 -07:00
MatthewLieber
9a93f223d6 mvapich: add pmi_version variant, add process_manager=none (#36324)
Co-authored-by: Matt Lieber <lieber.31@osu.edu>
2023-03-28 19:46:42 +02:00
Howard Pritchard
b8735fd1e4 PMIX: add current 4.2.x releases (#36496)
Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2023-03-28 10:13:26 -07:00
Erik Schnetter
eb80f4d9af simulationio: New version 9.0.3 (#36465)
* simulationio: New version 9.0.3
* simulationio: Require swig @3
2023-03-28 10:09:13 -07:00
Gerhard Theurich
9160e78729 Add ESMF v8.4.1, and number of other changes to improve ESMF integration with Spack (#35980)
* Add v8.4.1, and a few other changes.
    Minor adjustments for better alignment between Spack and ESMF native
    build. For ESMF >= 8.3.1 now Spack defaults to using
    external-parallelio. Before use internal version, which was PIO-1 all
    the way up to v8.3.0b10 anyway! Xerces is disabled by default.
* Deal with two long lines flagged by prechecks/style.
* Try to satisfy prechecks/style.
* Try to satisfy flake8 rules wrt indentation of continuation lines.
* Now trying to satisfy "black reformatting".
* For "black" formatting really put that ugly comma at the end before
closing parentheses. Interesting.
* Support building against external-parallelio even w/o mpi, but select the
   external-parallelio dependency accordingly.
* Correct C compiler setting.
* Handle `pnetcdf` variant consistent with how `ParallelIO` does it. And
  also pass the `pnetcdf` variant down to the `external-parallelio`
  dependency if set.
* Long line formatting again.
* Simplify handling of tarball URL construction and update sha256
  checksums.
* Align version check with recommended self.spec.satisfies().
* Deprecate v8.4.0 which has a bug that can cause memory corruption, fixed
  in v8.4.1.
* Use double quotes vs single quotes as per style-check... although
  https://spack-tutorial.readthedocs.io/en/latest/tutorial_packaging.html#querying-spec-versions
  clearly shows it with single quotes.
2023-03-28 09:33:49 -07:00
Eric Brugger
0d829b632f VisIt: Update to VisIt 3.3.1. (#36464) 2023-03-28 10:08:03 -04:00
eugeneswalker
c88b30b426 e4s power ci: ecp-data-vis-sdk: disable visit due to build issues (#36475) 2023-03-28 06:02:47 -04:00
Harmen Stoppels
d862edcce0 macos: set new ad-hoc signature with codesign after binary string replacement (#35585) 2023-03-28 00:33:35 -04:00
Erik Heeren
3b497359b7 ISPC: unblock 1.17-1.19 (#36346)
* ispc: attempts at getting more recent versions to work
* ispc: more attempts to get newer versions to build
* ispc: cleanup
* llvm: remove ispc_patches variant again
* ispc: unpin ncurses
* ispc: satisfy style checks
* ispc: 1.19 is only compatible with LLVM 13-15 
  otherwise it would not build against develop, as this now has LLVM 16
* ispc: relax LLVM version to what ispc requires itself
  verified that it builds against LLVM 13, 14, 15, but not 12 and 16
* ispc: use spec.satisfies instead of version comparison
  according to suggestions from review and docs, this is the canonical way to do it
* ispc: checksum 1.18.1
  just in order to include all versions, also checked that it builds

---------

Co-authored-by: Martin Aumüller <aumuell@reserv.at>
2023-03-27 11:30:36 -07:00
G-Ragghianti
4c599980da Package heffte: Enable smoke test to find MPI launcher (#35724)
* Enable smoke test to find MPI launcher
* Adding self as maintainer
* Style fix
* Update var/spack/repos/builtin/packages/heffte/package.py

---------

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2023-03-27 11:26:56 -07:00
Ashwin Kumar Karnad
7266cc9b92 octopus: Update compiler flags (#36446)
* octopus: set the right compiler flags
  https://github.com/fangohr/octopus-in-spack/pull/70
* octopus: fix pep8 style issue
2023-03-27 11:13:28 -07:00
Annop Wongwathanarat
cc4a528274 sw4lite: add linking with libarmflang (#36461) 2023-03-27 11:08:53 -07:00
Shihab Shahriar Khan
efbfe38f63 arborx: make explicit the need to specify cuda_arch when +cuda (#36450) 2023-03-27 10:49:17 -07:00
Harmen Stoppels
5072e48dab Add llnl.util.filesystem.find_first (#36083)
Add a `find_first` method that locates one instance of a file
that matches a specified pattern by recursively searching a directory
tree. Unlike other `find` methods, this only locates one file at most,
so can use optimizations that avoid searching the entire tree:
Typically the relevant files are at low depth, so it makes sense to
locate files through iterative deepening and early exit.
2023-03-27 09:42:16 -07:00
Satish Balay
c5b3fc6929 py-mpi4py: always force rebuild cython sources (#36460) 2023-03-27 10:05:31 -05:00
kaanolgu
deca4ce107 Babelstream Spack Package (#36164) 2023-03-27 17:04:28 +02:00
Jose E. Roman
e612436e26 New patch release SLEPc 3.18.3 (#36401)
Thanks-To: Satish Balay
2023-03-27 09:47:18 -05:00
Wouter Deconinck
fd19759783 xrootd: update patch (#36350)
Due to case change, a patch in xrootd doesn't apply cleanly. This fixes the patch by turning it into a `filter_file` with a more limited regex match.
2023-03-27 11:36:24 +02:00
Paul R. C. Kent
3265215f1d py-pyscf: add v2.2.0,2.1.1,2.1.0 libcint: add v5.2.0 (#35497)
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-27 11:34:17 +02:00
Auriane R
428e5726c1 Rename p2300 variant with stdexec (#36322) 2023-03-27 11:24:25 +02:00
dependabot[bot]
e0570c819c build(deps): bump actions/checkout from 3.4.0 to 3.5.0 (#36418)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3.4.0 to 3.5.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](24cb908017...8f4b7f8486)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-27 09:16:07 +00:00
Xavier Delaruelle
ea60220a84 modules: enhance help message (#36410)
Update tcl and lmod modulefile template to provide more information on
help message (name, version and target) like done on whatis for lmod
modulefiles.
2023-03-27 10:48:25 +02:00
Dennis Klein
84d67190a6 fairlogger: new versions, deprecations and various other updates (#36405) 2023-03-27 10:46:15 +02:00
Alec Scott
80a34ae9cc perl-moose: add v2.2203 (#36368) 2023-03-27 10:42:39 +02:00
Tamara Dahlgren
7beb57cb05 Bugfix: add perl-data-optlist 0.113 dependency (#36411) 2023-03-27 10:42:15 +02:00
Wouter Deconinck
055c30acfb root: new version 6.28.02 (#36419)
Only bugfixes: https://root.cern/doc/v628/release-notes.html#release-6.2802.

Builds fine on my test system:
```
[+] /opt/software/linux-ubuntu23.04-skylake/gcc-12.2.0/root-6.28.02-zwzhoz6d4323lggrqi66y6prg4hlzwie
```
2023-03-27 10:34:00 +02:00
Alec Scott
3cd61b9b83 libslirp: add v4.7.0 (#36423) 2023-03-27 10:33:25 +02:00
Alec Scott
6e8f449882 perl-exporter-tiny: add v1.006001 (#36424) 2023-03-27 10:33:07 +02:00
Alec Scott
51b0023638 perl-params-validate: add v1.31 (#36425) 2023-03-27 10:32:51 +02:00
Alec Scott
f02c374181 perl-time-hires: add v1.9758 (#36426) 2023-03-27 10:32:36 +02:00
Alec Scott
ff3245382e perl-time-piece: add v1.3401 (#36427) 2023-03-27 10:32:20 +02:00
Wouter Deconinck
ebc492f1e8 Xorg docs: new versions (#36455) 2023-03-27 04:22:34 -04:00
Alec Scott
5b8f005962 perl-try-tiny: add v0.31 (#36428) 2023-03-27 10:05:54 +02:00
Alec Scott
b11febbbc9 perl-uri: add v5.08 (#36429) 2023-03-27 10:05:35 +02:00
Alec Scott
5837d4c587 perl-xml-parser-lite: add v0.722 (#36430) 2023-03-27 10:04:15 +02:00
Alec Scott
e5ea7b6e32 perl-xml-parser: add v2.46 (#36431) 2023-03-27 10:04:00 +02:00
Alec Scott
c69a1af5c7 perl-xml-simple: add v2.25 (#36432) 2023-03-27 10:03:44 +02:00
Alec Scott
b40f9f72ed perl-xml-writer: add v0.900 (#36433) 2023-03-27 10:03:30 +02:00
Alec Scott
ab3fd38eda perl-yaml-libyaml: add v0.84 (#36434) 2023-03-27 10:03:10 +02:00
Alec Scott
5b9b8902ac perl-yaml-tiny: add v1.74 (#36435) 2023-03-27 10:02:52 +02:00
Alec Scott
8671f32b14 perl-yaml: add v1.30 (#36436) 2023-03-27 10:02:33 +02:00
Alec Scott
24f41ad050 postgresql: add v15.2 (#36438) 2023-03-27 10:02:17 +02:00
Alec Scott
732153c9e2 pstreams: add v1.0.3 (#36440) 2023-03-27 09:57:26 +02:00
Adam J. Stewart
227d19ef02 py-pytest-cov: add v4.0.0 (#36447) 2023-03-27 09:56:50 +02:00
Alec Scott
7600422183 presentproto: add v1.1 (#36439) 2023-03-27 09:51:52 +02:00
Wouter Deconinck
c2b4f5bf45 libpthread-stubs: adapt to XorgPackage (#36453)
This resolves a loose end from #36241 (missed due to package name). `libpthread-stubs` is another package from the xcb project that is now tracked through https://gitlab.freedesktop.org/xorg/ instead. No new versions; no changed hashes.
2023-03-27 09:48:55 +02:00
Satish Balay
56d98c3f0a petsc, py-petsc4py: add v3.18.4, v3.18.5 (#36406)
* py-petsc4py: update ldshared-dev.patch [to work with current @main]

* petsc4py: always force rebuild cython sources
2023-03-27 09:44:43 +02:00
Axel Huebl
37fadd9b2f openPMD-api: 0.15.0 (#36452) 2023-03-27 09:42:09 +02:00
AMD Toolchain Support
72318ba364 LAMMPS: Add Intel Package Support for AOCC 4.0 (#36155)
Add AOCC support for LAMMPS INTEL Package

Co-authored-by: Tooley, Phil <phil.tooley@amd.com>
Co-authored-by: usivakum <Umashankar.Sivakumar@amd.com>
2023-03-27 09:23:03 +02:00
Wouter Deconinck
32416eedd8 lhapdf: new version 6.5.4 (#36451) 2023-03-27 09:14:50 +02:00
Wouter Deconinck
417a5e4c3e sherpa: new bugfix version 2.2.15 (#36420)
Minor bugfix only, https://gitlab.com/sherpa-team/sherpa/-/compare/v2.2.14...v2.2.15
2023-03-27 09:14:23 +02:00
Wouter Deconinck
85f1eb4534 py-versioneer: new versions, depends_on py-tomli (#36415) 2023-03-26 08:55:24 -05:00
Alec Scott
39100c5336 gobject-introspection: add v1.72.1 (#36422) 2023-03-26 13:02:42 +02:00
Wouter Deconinck
9f59d4f199 py-build: new versions 0.10.0 (-> flit) (#36416)
* py-build: new versions 0.10.0 (-> flit)

py-build switched to flit with 0.10, https://github.com/pypa/build/blob/0.10.0/pyproject.toml

```
==> py-build: Successfully installed py-build-0.10.0-twgngkplyegllaovlp45r76nsk7bqezw
```

* py-pyproject-hooks: new package 1.0.0

* py-build: depends_on py-pyproject-hooks

* py-pyproject-hooks: use pypi url and hash

* py-build: replace patch with filter_file

* py-build: remove patch in favor of filter_file
2023-03-25 21:49:24 -05:00
Wouter Deconinck
334f704d36 py-iniconfig: new version 2.0.0 (-> hatchling) (#36413)
* py-iniconfig: new version 2.0.0 (-> hatchling)

py-iniconfig switched to hatchling with v2.0.0:
https://github.com/pytest-dev/iniconfig/blob/v2.0.0/pyproject.toml

```
==> py-iniconfig: Successfully installed py-iniconfig-2.0.0-ttoip2aalmxqqybv3vnozcabk47vg2yn
```

* Update var/spack/repos/builtin/packages/py-iniconfig/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-25 16:19:08 -05:00
Alec Scott
eb7b18e827 py-agate-dbf: add v0.2.2 (#36445) 2023-03-25 16:17:34 -05:00
Alec Scott
9a4b710f4e py-advancedhtmlparser: add v9.0.1 (#36444) 2023-03-25 16:16:51 -05:00
Alec Scott
d7a75b4fae py-absl-py: add v1.4.0 (#36443) 2023-03-25 16:15:52 -05:00
Alec Scott
c20feda19c py-about-time: add v4.2.1 (#36442) 2023-03-25 16:15:00 -05:00
Alec Scott
e2a170f8a2 py-a2wsgi: add v1.7.0 (#36441) 2023-03-25 13:37:45 -05:00
Wouter Deconinck
6777f2d9e9 py-pathspec: new versions through 0.11.1 (-> flit) (#36414)
py-pathspec changed from setuptools to using flit as the build system:
https://github.com/cpburnz/python-pathspec/blob/v0.11.1/pyproject.toml

```
==> py-pathspec: Successfully installed py-pathspec-0.11.1-5jxzfunl4o7ubzpwq5442diobkg7t5fl
```
2023-03-25 11:31:47 -05:00
Eric Brugger
a7175979cd Silo: Add conflict for silo 4.11 and gcc 11.1. (#36335) 2023-03-25 11:50:59 +01:00
Xavier Delaruelle
c4923fe3b3 modules: add support for append_flags/remove_flags (#36402)
Adapt tcl and lmod modulefile templates to generate append-path or
remove-path commands in modulefile when respectively append_flags or
remove_flags commands are defined in package for run environment.

Fixes #10299.
2023-03-24 15:38:24 -04:00
Dennis Klein
ae504ce2fe fairmq: add new package (#36400) 2023-03-24 15:33:23 -04:00
Arnur Nigmetov
e4edcf6104 henson: simplify args logic with define_from_variant (#36398)
Co-authored-by: Arnur Nigmetov <nigmetov@tugraz.at>
2023-03-24 15:28:20 -04:00
AMD Toolchain Support
693eea499c Changes to AOCC spack recipe to use new compiler download URLs (#36353) 2023-03-24 12:24:29 -07:00
John W. Parent
a451f55340 Expat package: add CMake-build option (#35109)
* Add option to optionally build with CMake
* Autotools is preferred where available
* Unlike the autotools-based build, the CMake-based build creates
  either static or shared libs, not both (the default is shared
  and is controlled with a new "shared" variant that only exists
  when building with cmake)
* Note that `cmake~ownlibs` depends on expat, so would require
  `expat build_system=autotools` (to avoid a cyclic dependency)
2023-03-24 11:10:46 -07:00
Jim Edwards
15f7b72557 gfortran version fix (#36351)
* gfortran version fix
* modified approach to get gfortran version
* add checksum for v8.4.1
2023-03-24 10:47:44 -07:00
Alec Scott
6bf33b2b7f perl-module-corelist: add v5.20230320 (#36366)
* perl-module-corelist: add v5.20230320
* [@spackbot] updating style on behalf of alecbcs

---------

Co-authored-by: alecbcs <alecbcs@users.noreply.github.com>
2023-03-24 10:23:57 -07:00
Alec Scott
dac62c8cf8 perl-module-build: add v0.4232 (#36365) 2023-03-24 10:21:17 -07:00
Adam J. Stewart
30b8b0e6f5 py-timmm: add v0.6.13 (#36377) 2023-03-24 13:19:27 -04:00
Alec Scott
8741d2a7ed perl-moo: add v2.005005 (#36367) 2023-03-24 10:00:36 -07:00
Alec Scott
4ec1d860fc perl-mro-compat: add v0.15 (#36369) 2023-03-24 09:55:46 -07:00
Alec Scott
df614169bd perl-net-http: add v6.22 (#36370) 2023-03-24 09:54:11 -07:00
Alec Scott
1029590672 perl-padwalker: add v2.5 (#36372) 2023-03-24 09:46:34 -07:00
Alec Scott
c7e2346d8b perl-package-deprecationmanager: add v0.18 (#36371) 2023-03-24 09:46:14 -07:00
Alec Scott
93631d7512 perl-parallel-forkmanager: add v2.02 (#36373) 2023-03-24 09:44:39 -07:00
Alec Scott
54e5dc3eb5 perl-path-tiny: add v0.144 (#36374) 2023-03-24 09:43:12 -07:00
Alec Scott
0a9eea593b perl-pdf-api2: add v2.044 (#36375) 2023-03-24 09:41:39 -07:00
Alec Scott
17e50f519a perl-pegex: add v0.75 (#36376) 2023-03-24 09:39:13 -07:00
Alec Scott
d15fe6a345 perl-perl4-corelibs: add v0.005 (#36379) 2023-03-24 15:55:53 +01:00
Alec Scott
3504866185 perl-perlio-utf8-strict: add v0.010 (#36380) 2023-03-24 15:55:37 +01:00
Alec Scott
d0aee3aa30 perl-scalar-list-utils: add v1.63 (#36381) 2023-03-24 15:55:17 +01:00
Alec Scott
bbf7ff348a perl-statistics-descriptive: add v3.0800 (#36382) 2023-03-24 15:54:59 +01:00
Alec Scott
c6ec5a71a7 perl-sub-exporter: add v0.989 (#36383) 2023-03-24 15:54:43 +01:00
Alec Scott
56358c5901 perl-sub-install: add v0.929 (#36384) 2023-03-24 15:54:05 +01:00
Alec Scott
06d8196dfd perl-sub-name: add v0.26 (#36385) 2023-03-24 15:53:47 +01:00
Alec Scott
6a119b911c perl-sub-quote: add v2.006008 (#36386) 2023-03-24 15:53:32 +01:00
Alec Scott
5e1cfeaad0 perl-svg: add v2.87 (#36387) 2023-03-24 15:53:16 +01:00
Alec Scott
d199c1a7cf perl-test-deep: add v1.204 (#36388) 2023-03-24 15:52:57 +01:00
Alec Scott
795ee106f0 perl-test-differences: add v0.69 (#36389) 2023-03-24 15:43:43 +01:00
Alec Scott
00f4021e6a perl-test-fatal: add v0.017 (#36390) 2023-03-24 15:42:54 +01:00
Alec Scott
d367fded81 perl-test-most: add v0.38 (#36391) 2023-03-24 15:41:40 +01:00
Alec Scott
56c086ea17 perl-test-needs: add v0.002010 (#36392) 2023-03-24 15:41:21 +01:00
Alec Scott
4dcca72e89 perl-test-requires: add v0.11 (#36393) 2023-03-24 15:41:03 +01:00
Alec Scott
8326ef0772 perl-test-warnings: add v0.031 (#36394) 2023-03-24 15:14:59 +01:00
Alec Scott
27456f53aa perl-text-csv: add v2.02 (#36395) 2023-03-24 15:13:06 +01:00
Alec Scott
326442b169 perl-text-format: add v0.62 (#36396) 2023-03-24 15:12:43 +01:00
Alec Scott
ef2b31f7d1 perl-text-simpletable: add v2.07 (#36397) 2023-03-24 15:12:27 +01:00
Alec Scott
f2abf90bfc gh: add v2.25.1 (#36364) 2023-03-24 14:46:37 +01:00
Xavier Delaruelle
906151075d modules tcl: simplify env modification block in template (#36334)
Simplify environment modification block in modulefile Tcl template by
always setting a path delimiter to the prepend-path, append-path and
remove-path commands.

Remove --delim option to the setenv command as this command does not
allow such option.

Update test_prepend_path_separator test to explicitly check the 6
path-like commands that should be present in generated modulefile.
2023-03-24 10:28:10 +01:00
Massimiliano Culpo
d0d5526110 Add a pre-check job to bootstrap the environment on Python 3.6 (#36358)
* Add a pre-check job that just bootstrap the environment on Python 3.6
* py-typing-extension: restore information on Python 3.6 installation
* Fix job name, try to run quick test on installed python packages
2023-03-24 04:08:42 +00:00
Wouter Deconinck
729b8113cc git: new version 2.40.0 (#36354)
Release notes: https://github.com/git/git/blob/v2.40.0/Documentation/RelNotes/2.40.0.txt (nothing worrisome there).

Commit history with recent changes to installation procedure: https://github.com/git/git/commits/master/INSTALL (nothing worrisome there).

This builds fine on my system,
```
==> git: Successfully installed git-2.40.0-sb7gmy64ivwstfwwjyff7y5mbbc7vtos
```
2023-03-24 00:08:27 -04:00
John W. Parent
c59bebbff9 zstd package: add Cmake build (#35104)
* This enables building zstd on Windows
* CMake is now the default for all systems
2023-03-23 16:58:12 -07:00
Harmen Stoppels
118d8e4f57 unit tests: don't hard-code arch in compiler config (#36360)
This breaks when testing on non-x86_64 machines outside CI
2023-03-23 23:22:45 +01:00
Dr. Christian Tacke
2d9c913eb1 faircmakemodules: Add new package (#36345)
Co-authored-by: Dennis Klein <d.klein@gsi.de>
2023-03-23 17:48:24 -04:00
Massimiliano Culpo
b0e54bc0ac Fix regression on compiler constraint (#36342)
fixes #36339

We were missing a rule that enforced a match between
the `node_compiler` and the compiler used to satisfy
a requirement.

Fix compiler with custom, made up version too
2023-03-23 20:43:13 +01:00
Adam J. Stewart
d20fee0c42 Update various Jupyter packages (#36332)
* Update various Jupyter packages
* Fix missing versions
2023-03-23 10:55:06 -07:00
Dr. Christian Tacke
fdd94d1ee9 fairlogger: 1.9 and older are incompatible with fmt 9+ (#36336)
Co-authored-by: Dennis Klein <d.klein@gsi.de>
2023-03-23 10:50:18 -07:00
Sergey Kosukhin
fa37ff51e7 libzip: add version 1.3.2 (#36337)
* libzip: add property 'headers'
* libzip: add version 1.3.2
2023-03-23 10:48:14 -07:00
Matthieu Dorier
2853051e48 [mochi-margo] margo version 0.13.1 added (#36344) 2023-03-23 10:08:55 -07:00
Matthew Thompson
862e9a59c4 gcc: fix for apple-clang conflicts (#36165)
* gcc: fix for apple-clang conflict

* Update var/spack/repos/builtin/packages/gcc/package.py

Use variant by @adamjstewart

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-23 13:03:09 -04:00
Harmen Stoppels
4dc9d9f60e Revert "Bugfix: package requirements with git commits (#35057)" (#36341)
This reverts commit 3d597e29be.
2023-03-23 12:10:46 +01:00
Peter Scheibel
3d597e29be Bugfix: package requirements with git commits (#35057)
* Specs that define 'new' versions in the require: section need to generate
  associated facts to indicate that those versions are valid.

* add test to verify success with unknown versions.
2023-03-23 01:58:20 -07:00
Ted Stern
739a67eda8 Revert "wrf: fix patches for aarch64 config (#35984)" (#36333)
This reverts commit 99893a6475.
2023-03-23 07:50:56 +01:00
Xavier Delaruelle
47d710dc4d modules tcl: switch default all:autoload from none to direct (#36269)
Since environment-modules has support for autoloading since 4.2,
and Spack-builds of it enable it by default, use the same autoload
default for tcl as lmod.
2023-03-23 07:49:17 +01:00
Stan Tomov
101c5b51bb magma: add v2.7.1 (#35610) 2023-03-22 19:04:56 -04:00
Adam J. Stewart
f4e4d83a02 LLVM OpenMP: add v16.0.0 (#36330) 2023-03-22 16:25:02 -05:00
Adam J. Stewart
68979f8740 py-papermill: add new package (#36328) 2023-03-22 14:00:40 -07:00
Mathew Cleveland
37fbfcf7fe Add opppy-0_1_6 and opppy-0_1_7 releases to the spack recipes (#36326)
* add opppy-0_1_6 and opppy-0_1_7 releases to the spack recipes
* update urls
* remove sphinx from the dependency list
* cleanup OPPPY versions to capture OPPPY-0_1_1 tag descrepency
* one more attempt at fixing the url for opppy-0_1_1 (simpler fix)

---------

Co-authored-by: Cleveland <cleveland@lanl.gov>
Co-authored-by: clevelam <clevelam@users.noreply.github.com>
2023-03-22 16:57:49 -04:00
Leopold Talirz
311d3be18e docs: mention cuda multi-arch capability (#36321) 2023-03-22 16:52:53 -04:00
MatthewLieber
2393e456ee Osu/mv2 hwloc2 (#36325)
* Revert "Remove legacy yaml from buildcache fetch (#34347)"
  This reverts commit b58ec9e2b9.
* Revert "Revert "Remove legacy yaml from buildcache fetch (#34347)""
  This reverts commit f91ec2e8da.
* add variant for hwloc v2
* running black

---------

Co-authored-by: Matt Lieber <lieber.31@osu.edu>
2023-03-22 11:49:12 -07:00
Vincent Michaud-Rioux
e09caf2ab8 Add py-pennylane-lightning-kokkos package. (#36257)
* update python package

* change package inheritance

* small update

* enable cpp tests

* small update

* Add flaky package

* Restructure PennyLane deps and order

* Change Lightning defaults and add libomp support for MacOS

* Replace explicit git url with PyPI

* Add Flaky support

* Update PennyLane and PennyLane Lightning support

* fix format

* update packages versioning

* Add patching and default updates for lightning package

* Format

* fix patch version

* update py-flaky package

* update py-pennylane-lightning package

* update py-pennylane package

* remove explicity python dependence

* Remove redundant lines from patch-file

* Update SHA for new patch

* Initial commit for PLLKokkos.

* Comment verbose variant.

* Update develop commit version and restore verbose option.

* Add backends.

* Add mesa package dep (libxml2). Fix rocm install for py-pennylane-lightning-kokkos.

* Restore sycl backend.

* Revert mesa package.

* Make py-pe-li-kokkos into CudaPackage, ROCmPackage.

* Do not force kokkos+wrapper when +cuda

* Few mods following comments on py-pll.

* Update versions of py-pennylane*.

* Remove py-pennylane-lightning patch.

* Remove redundant preferred=True.

* Fix lint in py-pennylane-lightning-kokkos.

* Update var/spack/repos/builtin/packages/py-pennylane-lightning-kokkos/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Ninja and pip not required at runtime. Set lower bound on PL/PLL versions.

* Remove v0.29.0 from pennylane.

* Add AmintorDusko as maintainer.

---------

Co-authored-by: AmintorDusko <amintor_dusko@hotmail.com>
Co-authored-by: Lee J. O'Riordan <lee@xanadu.ai>
Co-authored-by: Amintor Dusko <87949283+AmintorDusko@users.noreply.github.com>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-22 10:06:05 -05:00
Adam J. Stewart
f15efd27bd py-lightning: fix dependencies (#36213) 2023-03-22 14:08:19 +01:00
Adam J. Stewart
668fb7f5dd grep: fix +pcre in 3.9 (#36169) 2023-03-22 09:49:41 +01:00
Alec Scott
e1a5228a16 perl-inline: add v0.86 (#36299) 2023-03-22 03:47:17 -05:00
Wouter Deconinck
8a48f9a479 xcb-util-*: new versions, migration to freedesktop.org (#36241)
The xcb-utils have been migrated to the gitlab.freedesktop.org, from the
previous separate location. That means that a URL change is needed to
pick up newer version
([ref](https://lists.freedesktop.org/archives/xcb/2022-October/011422.html)).

This replaces the `homepage` and `url` with the latest (to an `xz`
file), adds a `url_for_version` function to resolve past versions, and
add the latest versions. Because of the `url_for_version` I don't think
we can use the `xorg_mirror_path` approach here.

Co-authored-by: wdconinc <wdconinc@users.noreply.github.com>
2023-03-22 09:45:16 +01:00
Alec Scott
6551ad8711 perl-file-slurper: add v0.014 (#36305) 2023-03-22 03:38:17 -05:00
Alec Scott
a2479c13a6 perl-exception-class: add v1.45 (#36315) 2023-03-22 03:35:42 -05:00
snehring
59fecb353c Add missing deps for braker and bcftools (#36279) 2023-03-22 09:25:13 +01:00
Alec Scott
d0098876e0 perl-io-tty: add v1.17 (#36295) 2023-03-22 03:24:54 -05:00
snehring
8d2f08ae85 shapemapper: add new package (#36282) 2023-03-22 09:20:59 +01:00
Alec Scott
d71ee98bad perl-io-html: add v1.004 (#36296) 2023-03-22 03:20:32 -05:00
Alec Scott
ed989be8eb perl-file-which: add v1.27 (#36304) 2023-03-22 04:17:33 -04:00
Alec Scott
00d45d052d perl-error: add v0.17029 (#36316) 2023-03-22 03:14:33 -05:00
Alec Scott
f86f30ad71 perl-list-moreutils and moreutils-xs: add v0.430 (#36291) 2023-03-22 03:10:28 -05:00
Alec Scott
4f4c9f440e perl-graph-readwrite: add v2.10 (#36302) 2023-03-22 03:09:51 -05:00
Adam J. Stewart
848ab435a5 py-torch: OpenMP support doesn't work on Apple Silicon (#36287) 2023-03-22 09:06:42 +01:00
Adam J. Stewart
2418bf446d py-jupyter-client: add v8.1.0 (#36288) 2023-03-22 09:06:10 +01:00
Alec Scott
893bb8d7c7 perl-libwww-perl: add v6.68 (#36292) 2023-03-22 03:04:16 -05:00
Alec Scott
9e6d048af2 perl-mce: add v1.884 (#36289) 2023-03-22 08:57:52 +01:00
Alec Scott
d17321ffc0 perl-log-log4perl: add v1.49 (#36290) 2023-03-22 08:57:36 +01:00
Alec Scott
38912d17f7 perl-json: add v4.10 (#36293) 2023-03-22 08:54:21 +01:00
Alec Scott
3185bd81b1 perl-ipc-run: add v20220807.0 (#36294) 2023-03-22 02:53:24 -05:00
Alec Scott
25035a302e perl-io-compress: add v2.204 (#36297) 2023-03-22 08:51:14 +01:00
Alec Scott
85c1b16213 perl-inline-c: add v0.81 (#36298) 2023-03-22 08:50:43 +01:00
Alec Scott
e2bc51fcad perl-exporter-tiny: add v1.006000 (#36313) 2023-03-22 02:47:38 -05:00
Alec Scott
c3b56f789c perl-http-message: add v6.44 (#36300) 2023-03-22 08:41:37 +01:00
Alec Scott
492ec0e783 perl-http-cookies: add v6.10 (#36301) 2023-03-22 08:41:16 +01:00
Alec Scott
653057e93a perl-graph: add v0.20105 (#36303) 2023-03-22 08:40:21 +01:00
Alec Scott
87c1cfaf03 perl-file-sharedir-install: add v0.14 (#36306) 2023-03-22 08:38:20 +01:00
Alec Scott
647bb5124e perl-file-pushd: add v1.016 (#36307) 2023-03-22 08:38:00 +01:00
Alec Scott
7c646a5dbd perl-file-homedir: add v1.006 (#36308) 2023-03-22 08:37:41 +01:00
Alec Scott
692d624f45 perl-file-copy-recursive: add v0.45 (#36309) 2023-03-22 08:37:22 +01:00
Alec Scott
98adc0b3f9 gh: add v2.25.0 (#36319) 2023-03-22 02:37:03 -05:00
Alec Scott
628dbce6f6 perl-ffi-checklib: add v0.31 (#36310) 2023-03-22 08:30:40 +01:00
Alec Scott
49079d6f88 perl-extutils-makemaker: add v7.68 (#36311) 2023-03-22 08:29:52 +01:00
Alec Scott
ff23a2a2ee perl-extutils-depends: add v0.8001 (#36312) 2023-03-22 08:29:35 +01:00
Alec Scott
725389ff32 perl-exporter-lite: add v0.09 (#36314) 2023-03-22 08:28:05 +01:00
Alec Scott
781959603d perl-devel-stacktrace: add v2.04 (#36317) 2023-03-22 08:26:27 +01:00
Alec Scott
787fe3283f perl-devel-overloadinfo: add v0.007 (#36318) 2023-03-22 08:25:18 +01:00
Alec Scott
c9c2b5e6bb coreutils: add v9.2 (#36320) 2023-03-22 08:23:55 +01:00
John W. Parent
97bdf28b29 libxml2: enable build on Windows (#36261)
Add Nmake-based builder for Windows
2023-03-21 23:33:22 -04:00
Christian F. A. Negre
f49e9591b7 lcc: new package (#36100)
* lcc: new package
* update CMake version per `CMakeLists.txt`

---------

Co-authored-by: Todd Gamblin <tgamblin@llnl.gov>
2023-03-21 11:32:32 -07:00
Thomas Bouvier
a0bc32c319 nccl-tests: add version v2.13.6 (#36160) 2023-03-21 11:17:29 -07:00
Adam J. Stewart
52bcd0eda1 py-fiona: add v1.9.2 (#36278) 2023-03-21 12:39:55 -05:00
John W. Parent
2e9d0e146e netcdf-c[xx]: CMake/Windows build (#34935)
netcdf-cxx and netcdf-c now build with CMake rather than Autotools.
netcdf-c can still optionally build with Autotools (but defaults to
CMake). With some additional patches to the CMake files, netcdf-c
can use CMake to build on Windows.
2023-03-21 10:15:50 -07:00
downloadico
84ab72557a Update abinit version (#36264)
* abinit: add version 9.8.3
* require hdf5 up to 1.8 and libxc up to version 5
* abinit: constrained versions of libxc and hdf5
* fixed bad syntax for format
* fixed error looking for fftw in spec.
* Changed to look for fftw-api in spec.
* Update var/spack/repos/builtin/packages/abinit/package.py

---------

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2023-03-21 10:09:38 -07:00
Wouter Deconinck
1d62d9460d xrootd: new version 5.5.2, 5.5.3 (#36271)
Only bugfixes, no build system changes, https://github.com/xrootd/xrootd/compare/v5.5.1...v5.5.3
2023-03-21 11:32:58 -04:00
Mosè Giordano
b9f32b1e7a curl: Add version 8.0.1 (#36256)
r: restrict compatibility with curl
2023-03-21 12:25:39 +01:00
Adam J. Stewart
2b539129f0 py-pillow: add v9.3.0 and v9.4.0 (#36259) 2023-03-21 06:08:21 -04:00
Michael Kuhn
9288ece826 environment-modules: add main branch (#36268) 2023-03-21 03:13:27 -04:00
Matthieu Dorier
9b09d8bc49 valijson: add new package (#36250) 2023-03-21 03:13:03 -04:00
Ryan Marcellino
4d90f464e1 py-parsl: add v1.2.0 (#36266) 2023-03-21 02:38:03 -04:00
Thomas Madlener
6edc480736 podio: Add version 0.16.3 (#36253) 2023-03-21 02:27:58 -04:00
Ryan Marcellino
649e9ae0ad py-cryptography: add v3.3.2 (#36267) 2023-03-21 02:23:25 -04:00
Adam J. Stewart
98ece85e63 py-timm: does not yet support Python 3.11 (#36260) 2023-03-21 02:23:03 -04:00
Mosè Giordano
fa57e62744 julia: Relax compatibility with curl (#36262)
Curl version 8 has a compatible ABI/API with version 7.
2023-03-21 02:18:02 -04:00
Ken Raffenetti
880c819d97 mpich: add 4.1.1 release (#35901) 2023-03-21 00:03:57 -04:00
Eric Martin
5fedb10370 py-reportseff: add new package (#36113)
* py-reportseff: add new package

* Update var/spack/repos/builtin/packages/py-reportseff/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-reportseff/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* Update var/spack/repos/builtin/packages/py-reportseff/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Add py-importlib-metadata preqreq

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2023-03-20 22:17:01 -05:00
Jen Herting
9787253842 [srcml-identifier-getter-tool] New package (#35763)
* [srcml-identifier-getter-tool] New package
* [srcml-identifier-getter-tool] formatting
2023-03-20 18:08:35 -07:00
Alec Scott
3984a1e159 babl: add v0.1.102 (#35837)
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2023-03-20 17:33:10 -07:00
Carsten Uphoff
bfca1729fa Add double batched FFT library package (#36086)
* Add double batched FFT library package
* Fix style
* Add error when unsupported compiler is uesd

---------

Signed-off-by: Carsten Uphoff <carsten.uphoff@intel.com>
2023-03-20 16:25:37 -07:00
Sangu Mbekelu
8d8a008ef2 new mosesdecoder package (#36252)
* new mosesdecoder package
* [@spackbot] updating style on behalf of Sangu-Mbekelu

---------

Co-authored-by: Sangu Mbekelu <s.mbekelu9@gmail.com>
2023-03-20 16:04:04 -07:00
Erik Schnetter
b7505aa726 universal: New package (#36168)
* universal: New package
* universal: Update to version 3.68
2023-03-20 15:36:38 -07:00
Wouter Deconinck
2cecb4b00c Xorg apps: updated versions to current latest (#36242)
* Xorg apps: updated versions to current latest

This updates all xorg apps to the latest versions, adding updated
requirements where needed.

No major version increases in any packages.

Minor version increases in some packages (build changes, if any, are
indicated below):
- rgb
- xauth
- xcalc
- xclock
- xeyes: xi >= 1.7, x11-xcb xcb-present >= 1.9 xcb-xfixes xcb-damage
- xfontsel
- xfs: xfont2 >= 2.0.1
- xinit
- xpr
- xrdb

Bugfix version increases in many packages, with no expected impact on
dependencies or interfaces.

Summary of dependency changes:
- xeyes:
  - depends_on("libxi@1.7:", when="@1.2:")
  - depends_on("libxcb@1.9:", when="@1.2:")
- xfs:
  - depends_on("libxfont@1.4.5:", when="@:1.1")
  - depends_on("libxfont2@2.0.1:", when="@1.2:")

* setxkbmap: depends_on libxrandr when @1.3.3:

* constype: new version
2023-03-20 15:26:28 -07:00
John W. Parent
8695d96bd1 NASM package: fix build on Windows (#35100) 2023-03-20 14:45:00 -07:00
John W. Parent
fa0749bfb8 lz4: switch to CMake build (#35101)
Add support for building with CMake and make it the default build
system on all platforms. By doing this, lz4 can now be built on
Windows. The makefile-based build remains as an option.
2023-03-20 14:39:19 -07:00
Wouter Deconinck
b431c4dc06 wayland: new versions, new build system (meson) (#36217)
* wayland: new versions, new build system (meson)

* wayland-protocols: new version, new build system (meson)

* [@spackbot] updating style on behalf of wdconinc

* wayland-protocols: added maintainer

* wayland: added maintainer

* wayland-protocols: no need to import build systems, per flake8

* wayland: no need to import build system, per flake8

* Update var/spack/repos/builtin/packages/wayland/package.py

---------

Co-authored-by: wdconinc <wdconinc@users.noreply.github.com>
2023-03-20 12:31:45 -07:00
Peter Scheibel
c3e41153ac Package requirements: allow single specs in requirement lists (#36258)
If you have a "require:" section in your packages config, and you
use it to specify a list of requirements, the list elements can
now include strings (before this, each element in the list had to
be a `one_of` or `any_of` specification, which is awkward if you
wanted to apply just one spec with no alternatives).
2023-03-20 12:30:33 -07:00
Andrew-Dunning-NNL
e1752ca382 new package py-oracledb (#36191)
* new package py-oracledb

* py-oracledb use python3.6:
2023-03-20 14:14:05 -04:00
Erik Heeren
2bcd4e0ecd py-pint-xarray: new package (#36106)
* py-pint-xarray: new package

* py-pint-xarray: review remarks
2023-03-20 10:34:33 -05:00
Erik Heeren
550bda3096 py-pdf2image: new package (#36088)
* py-pdf2image: new package

* py-pdf2image: 1.16.3 source now available on pypi

* Update var/spack/repos/builtin/packages/py-pdf2image/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-20 10:33:59 -05:00
Adam J. Stewart
334bc69a64 Python: add several new versions (#36249) 2023-03-20 10:18:13 -05:00
Harmen Stoppels
88d78025a6 spack install: simplify behavior when inside environments (#35206)
Example one:

```
spack install --add x y z
```

is equivalent to

```
spack add x y z
spack concretize
spack install --only-concrete
```

where `--only-concrete` installs without modifying spack.yaml/spack.lock

Example two:

```
spack install
```

concretizes current spack.yaml if outdated and installs all specs.

Example three:

```
spack install x y z
```

concretizes current spack.yaml if outdated and installs *only* concrete
specs in the environment that match abstract specs `x`, `y`, or `z`.
2023-03-20 13:51:30 +01:00
Miroslav Stoyanov
7e981d83fd heffte: update versions and arch flags (#36095)
* update versions and arch flags
* style update
* more style issues
* fix hashes and testing problem
* return the old versions, but they are really bad
* fix style

---------

Co-authored-by: Gerald Ragghianti <gerald@ragghianti.com>
2023-03-20 08:13:13 -04:00
Adam J. Stewart
b28e9e651d libpng: add v1.6.39 (#36247) 2023-03-20 07:23:23 -04:00
Adam J. Stewart
5dc8ed2694 Remove unused ignore parameter of extends() directive (#35588)
The `ignore` parameter was only used for `spack activate/deactivate`, and it isn't used
by Spack Environments which have their own handling of file conflicts. We should remove it.

Everything that handles `ignore=` was removed in #29317 and included in 0.19, when we
removed `spack activate` and `spack deactivate` in favor of environments.  So all of these
usages removed here were already being ignored by Spack.
2023-03-20 07:22:59 -04:00
Jean-Baptiste Besnard
199f71ea48 LULESH: fix space in rpath for +visual (#36094) 2023-03-20 11:16:58 +01:00
Harmen Stoppels
b8e5fc061d ci.py: remove redundant wrapper around get (#36188) 2023-03-20 10:56:19 +01:00
Adam J. Stewart
b77a4331bc GEOS: add v3.11.2 (#36189) 2023-03-20 10:54:41 +01:00
Rob Falgout
adcdf4a7e2 hypre: add v2.28.0 (#36187) 2023-03-20 10:41:56 +01:00
Erik Schnetter
dfd63ccd73 lrzip: New version 0.651 (#36196) 2023-03-20 10:35:57 +01:00
Alec Scott
2bfcfd1f72 perl: add v5.37.9 (#36205) 2023-03-20 10:34:44 +01:00
Alec Scott
7518362706 perl-b-hooks-endofscope: add v0.26 (#36208) 2023-03-20 10:32:37 +01:00
Alec Scott
13d8bc47c8 perl-capture-tiny: add v0.48 (#36209) 2023-03-20 10:32:16 +01:00
Alec Scott
d5c0d1ce58 perl-class-inspector: add v1.36 (#36211) 2023-03-20 10:31:59 +01:00
Alec Scott
46bd481124 perl-alien-build: add v2.78 (#36206) 2023-03-20 10:31:10 +01:00
Alec Scott
e92b996db9 perl-app-cmd: add v0.335 (#36207) 2023-03-20 10:14:37 +01:00
Alec Scott
eb1723332e perl-cgi: add v4.56 (#36210) 2023-03-20 10:13:20 +01:00
Erik Schnetter
3afef0635f rclone: New version 1.62.2 (#36197) 2023-03-20 10:12:59 +01:00
Alec Scott
032385ae51 perl-dbi: add v1.643 (#36218) 2023-03-20 10:07:15 +01:00
Alec Scott
7a9578ce7d perl-dbd-sqlite: add v1.72 (#36219) 2023-03-20 10:06:55 +01:00
Alec Scott
e155df5ada perl-db-file: add v1.858 (#36221) 2023-03-20 10:06:11 +01:00
Alec Scott
005af3e755 perl-date-manip: add v6.91 (#36222) 2023-03-20 10:05:52 +01:00
Alec Scott
85e721c16c perl-data-optlist: add v0.113 (#36223) 2023-03-20 10:05:14 +01:00
Alec Scott
e61ae290a2 perl-cpan-meta-check: add v0.017 (#36224) 2023-03-20 10:04:58 +01:00
Alec Scott
782d3b889a perl-config-general: add v2.65 (#36225) 2023-03-20 10:04:11 +01:00
Alec Scott
3a7e5372d0 perl-compress-raw-zlib: add v2.204 (#36226) 2023-03-20 10:03:26 +01:00
Alec Scott
114e9b528f perl-compress-raw-bzip2: add v2.204 (#36227) 2023-03-20 10:02:59 +01:00
Alec Scott
8e3021cdb1 perl-clone: add v0.46 (#36228) 2023-03-20 10:02:19 +01:00
Alec Scott
9542d46395 perl-class-method-modifiers: add v2.15 (#36229) 2023-03-20 10:01:59 +01:00
Alec Scott
0825e9a95e perl-class-load: add v0.25 (#36230) 2023-03-20 10:01:45 +01:00
Alec Scott
b586c8cf1d lis: add v2.1.0 (#36231) 2023-03-20 10:01:11 +01:00
Alec Scott
eba3f5503b bazel: add v6.1.1 (#36234) 2023-03-20 10:00:48 +01:00
Harmen Stoppels
e30a89fb7c llvm: add v16 (#36239) 2023-03-20 09:54:31 +01:00
Alec Scott
0646c953e5 homer: add v4.11.1 (#36232) 2023-03-20 09:52:58 +01:00
Alec Scott
d6d68b892a perl-dbd-pg: add v3.16.1 (#36220) 2023-03-20 09:52:13 +01:00
Mark W. Krentel
8b1c5d910d intel-xed: add version 2022.10.11 (#36244) 2023-03-20 09:29:51 +01:00
Alec Scott
a800361344 pax-utils: add v1.3.3 (#36204) 2023-03-20 09:28:12 +01:00
Alec Scott
631a3d849f openldap: add v2.6.4 (#36202) 2023-03-20 09:27:40 +01:00
Alec Scott
af09297a76 gpgme: add v1.19.0 (#36201) 2023-03-20 09:27:20 +01:00
Alec Scott
1b27a2dda5 code-server: add v4.11.0 (#36200) 2023-03-20 09:26:58 +01:00
Alec Scott
3ebe5939e3 autodiff: add v1.0.1 (#36199) 2023-03-20 09:26:24 +01:00
Alec Scott
c9a4bf8d3f elfutils: add v0.189 (#35859) 2023-03-20 09:26:01 +01:00
Adam J. Stewart
973e37823c py-tensorboard-data-server: add v0.7.0 (#36248) 2023-03-20 09:25:33 +01:00
Xavier Delaruelle
41d7fe0a50 modules tcl: fix autoload mechanism in template (#36237)
Adapt tcl modulefile template to call "module load" on autoload
dependency without testing if this dependency is already loaded or not.

The is-loaded test is not necessary, as module commands know how to cope
with an already loaded module. With environment-modules 4.2+ (released
in 2018) it is also important to have this "module load" command even if
dependency is already loaded in order to record that the modulefile
declares such dependency. This is important if you want to keep a
consistent environment when a dependent module is unloaded.

The "Autoloading" verbose message is also removed as recent module
commands will report such information to the user (depending on the
verbosity configured for the module command).

Such change has been test successfully with Modules 3.2 (EL7), 4.5 (EL8)
and 5.2 (latest) and also with Lmod 7 and 8 (as it is mentionned in
Spack docs that Lmod can be used along with tcl modules). Dependencies
are correctly loaded or unloaded, whether they are loaded/unloaded or
not.

This change fixes Tcl quoting issue introduced in #32853.

Fixes #19155.
2023-03-20 09:23:40 +01:00
Adam J. Stewart
1af863a1e3 bash: add v5.2.15 (#36245) 2023-03-20 09:14:41 +01:00
Adam J. Stewart
75714d30f5 gawk: fix build on Apple Silicon (#36246) 2023-03-20 09:14:00 +01:00
Alec Scott
d5e30ac5f1 diffutils: add v3.9 (#35852) 2023-03-20 08:37:36 +01:00
Alec Scott
8c4265f033 harminv: add v1.4.2 and update URL to maintained git repository (#36062) 2023-03-20 08:36:25 +01:00
Angus Gibson
b8b6ae42a0 py-setuptools-git-versioning: new package (#36123)
* py-setuptools-git-versioning: new package

* Apply suggestions from code review

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-19 20:02:14 -04:00
Wouter Deconinck
5532350d4b qt-* (Qt6 pkgs): new version 6.4.3 (#36235) 2023-03-19 09:07:43 -05:00
Alec Scott
620effec1b bumpversion: add v0.6.0 and bump2version dependency (#36021)
* bumpversion: add v0.6.0

* Add bump2version dependency package
2023-03-18 21:51:06 -06:00
Xavier Delaruelle
df97827a7b Fix case spelling for Lmod and Tcl (#36215) 2023-03-19 01:42:50 +00:00
Wouter Deconinck
4ffdde94ef py-hepunits: new versions 2.2.0, 2.2.1, 2.3.0, 2.3.1 (#35545)
* py-hepunits: new versions 2.2.0, 2.2.1, 2.3.0, 2.3.1

Python 2 support dropped in 2.2 series.

Ref: https://github.com/scikit-hep/hepunits/compare/v2.1.1...v2.3.1

* py-hepunits: py-hatchling as of version 2.3

* [@spackbot] updating style on behalf of wdconinc

* py-hepunits: only depends_on toml through 2.1.1

---------

Co-authored-by: wdconinc <wdconinc@users.noreply.github.com>
2023-03-18 17:18:04 -05:00
Benjamin Meyers
5b04146f8a New package py-pyhull (#36107)
* New package py-pyhull

* [@spackbot] updating style on behalf of meyersbs
2023-03-18 17:02:31 -05:00
Benjamin Meyers
eddbbb867d New package py-seekpath (#36108)
* New package py-seekpath

* [@spackbot] updating style on behalf of meyersbs
2023-03-18 17:01:43 -05:00
Benjamin Meyers
32154e6fc7 New package py-pyisemail (#36112) 2023-03-18 17:00:46 -05:00
Adam J. Stewart
6618b0c830 py-scikit-image: add v0.20.0 (#36167)
* py-scikit-image: add v0.20.0

* [@spackbot] updating style on behalf of adamjstewart

---------

Co-authored-by: adamjstewart <adamjstewart@users.noreply.github.com>
2023-03-18 16:49:39 -05:00
Massimiliano Culpo
d84c6ad29e cmake build system: make "generator" a variant (#35552) 2023-03-18 16:39:04 +01:00
Massimiliano Culpo
2f07c64f2d Fix wrong computation of concrete specs due to a bug in intersects (#36194)
fixes #36190
2023-03-18 12:50:52 +01:00
Alec Scott
ca5cab8498 patchelf: add v0.17.2 (#36203) 2023-03-18 11:09:58 +01:00
Alec Scott
5f8ee20c7c ffmpeg: add v6.0 (#35857)
* ffmpeg: add v6.0

* Add limit to py-torchvision to prevent ffmpeg v6.0
2023-03-18 02:47:44 -04:00
Harmen Stoppels
fd70a2cc07 cython: force through env variable (#35995) 2023-03-17 19:54:24 -04:00
Alec Scott
31201f91bc libsigsegv: add v2.14 (#36070) 2023-03-17 18:39:26 -04:00
Ben Morgan
da0b76047d geant4: new version 11.0.4 (#36185) 2023-03-17 17:58:42 -04:00
Massimiliano Culpo
0478e5f684 Improve wording of audit message (#36180) 2023-03-17 17:43:35 -04:00
Alec Scott
4f7c147d50 libpciaccess: add v0.17 (#36076) 2023-03-17 17:33:44 -04:00
Amintor Dusko
73a887ee7c Update PennyLane and PennyLane Lightning (#35406) 2023-03-17 17:28:26 -04:00
John W. Parent
8195f27a66 Windows: properly handle symlink failures (#36003)
In the Windows filesystem logic for creating a symlink, we intend to
fall back to a copy when the symlink cannot be created (for some
configuration settings on Windows it is not possible for the user
to create a symlink). It turns out we were overly-broad in which
exceptions lead to this fallback, and the subsequent copy would
also fail: at least one case where this occurred is when we
attempted to create a symlink that already existed.

The updated logic expressly avoids falling back to a copy when the
file/symlink already exists.
2023-03-17 10:19:32 -07:00
Alec Scott
a60fa7ff7d libxdmcp: add v1.1.4 (#36074) 2023-03-17 13:11:10 -04:00
Adam J. Stewart
6272853030 Bazel: limit parallelism (#36002)
* Bazel: limit parallelism

* Patch packages that don't directly invoke bazel

* Style fixes

* flag comes after build, not bazel

* flag comes after build, not bazel

* command is only attribute if specific package
2023-03-17 11:13:27 -05:00
Seth R. Johnson
507b42c54f veccore: new version 0.8.1 (#36184) 2023-03-17 09:19:04 -04:00
Szilárd Páll
3897c1308e Switch GROMACS build type to Release (#36181)
The current default RelWithDebInfo gives significantly slower builds
so it should not be the default.
2023-03-17 07:17:06 -06:00
Valentin Volkl
b54d208aea boost: add patch for 1.81.0 (#35964) 2023-03-17 11:42:43 +01:00
Edoardo Aprà
612aa744f6 nwchem: add v7.2.0 (#36061) 2023-03-17 11:41:33 +01:00
Massimiliano Culpo
97193a25ce Mitigation for GitVersion bug when no =reference is given (#36159)
* ASP-based solver: use satisfies instead of intersects

They are semantically equivalent for concrete versions,
but the GitVersion.intersects implementation is buggy

* Mitigation for git version bug

fixes #36134

This commit works around the issue in #36134, by using
GitVersion.satisfies instead of GitVersion.intersects

There are still underlying issues when trying to infer the
"reference version" when no explicit one is given, but:

1. They are not reproducible with our synthetic repo
2. They occur only when the `git.<xxx>` form of Git version
   is used

Here we just work around the user facing issue and ensure
the tests are correct with our synthetic repository.
2023-03-17 11:36:29 +01:00
Vicente Bolea
5bf96561ee vtk-m: update to latest release (#35590)
* vtk-m: add v2.0.0
* Update var/spack/repos/builtin/packages/vtk-m/package.py

---------

Co-authored-by: Kenneth Moreland <morelandkd@ornl.gov>
2023-03-17 11:19:13 +01:00
Cameron Book
f2ba1d276b nccmp: add more constrain to dependencies, add configure args (#35539) 2023-03-17 11:10:36 +01:00
dependabot[bot]
4e060ba933 build(deps): bump actions/checkout from 3.3.0 to 3.4.0 (#36140)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3.3.0 to 3.4.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](ac59398561...24cb908017)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-17 10:58:57 +01:00
afzpatel
dd15c37021 hipcub and rocprim: enable testing (#35660) 2023-03-17 10:56:54 +01:00
Harmen Stoppels
141c154948 openssh: 9.2, 9.3 (#36162) 2023-03-17 10:31:39 +01:00
Alec Scott
e51447c2c0 nano: add v7.2 (#36148) 2023-03-17 10:16:27 +01:00
Adam J. Stewart
a84fb716a0 Update the PyTorch ecosystem (#36132)
* py-pytorch-lightning: add v2.0.0

* py-lightning-utilities: add v0.8.0

* Update all PyTorch packages

* Open-CE does not yet have patches for PyTorch 2 on ppc64le
2023-03-17 10:13:44 +01:00
M. Eric Irrgang
a11f06885f Fix --test behavior for gromacs package. (#35674)
For `spack install --test=all gromacs`
* remove the `test` target from the `check()` call and just use
  the `check` target, in accordance with usual GROMACS test protocol
* build the test binaries explicitly during the build phase

Additional minor updates are necessary. This change
updates the package structure to the newer format with a
separate Builder class so we can override `check()`.
However, note that additional modernization should be
undertaken with care.
2023-03-17 10:11:22 +01:00
Massimiliano Culpo
8517a74f37 ASP-based solver: tweak heuristic, modify compiler encoding (#35989)
This PR does 2 unrelated things:
1. It changes the encoding of the compilers
2. It tweaks the heuristic for the solves in a0d8817907

Both were initially motivated by trying to get a performance gain but, while 2 showed significant speed-ups[^1], 1 instead didn't. I kept it anyhow, since I think the code related to compilers is more consolidated with the new encoding and we might get some performance improvement out of it if we can base our errors on the `node_compiler(Package, CompilerID)` atoms instead of `attrs`.

[^1]: In general the changes in the heuristic brought a ~10% speed-up on the tests I did. I'll post detailed results below.

Add a warning about compilers.yaml that is triggered if there are multiple compilers with the same spec, os and
target (since they can't be selected by users with the spec syntax only).
2023-03-17 00:39:41 -07:00
Alec Scott
34ef01a5c8 libx11: add v1.8.4 (#36075) 2023-03-17 00:04:07 -04:00
Michael Kuhn
86e49a63ce lmod: add 8.7.20 (#36177) 2023-03-17 02:07:31 +01:00
John W. Parent
d76845e875 libpng package: build with CMake (#35105) 2023-03-16 16:44:53 -07:00
Matthew Thompson
97d6c741b0 Fix for ESMF post_install on macOS (#36087) 2023-03-16 16:32:54 -07:00
Bill Williams
09fd3e8e61 Add explicit configure args to fix instrumentation-time paths (#36089) 2023-03-16 16:30:48 -07:00
Stephen Sachs
e341dac014 [pmix] master branch uses git submodule config/oac (#36104)
* [pmix] master branch uses git submodule config/oac
* Add comment for future versions
2023-03-16 16:04:56 -07:00
Stephen Sachs
38383743e7 pmix, openmpi, and prrte need to use the same configure to find the same deps (#36105)
* [openmpi] 5.0.0.rc10 onwards needs munge

This is the error you will see when munge is missing from `PKG_CONFIG_PATH`:

```
configure:63942: checking for pmix pkg-config cflags
configure:63956: check_package_pkgconfig_run_results=Package munge was not found in the pkg-config search path.
Perhaps you should add the directory containing `munge.pc'
to the PKG_CONFIG_PATH environment variable
Package 'munge', required by 'pmix', not found
configure:63959: $? = 1
configure:63966: pkg-config output: Package munge was not found in the pkg-config search path.
Perhaps you should add the directory containing `munge.pc'
to the PKG_CONFIG_PATH environment variable
Package 'munge', required by 'pmix', not found
configure:63972: result: error
configure:63974: error: An error occurred retrieving pmix cppflags from pkg-config
```

* Use same PKG_CONFIG_PATH defaults for ompi+pmix+prrte

The issue I tried to fix in https://github.com/spack/spack/pull/36105 comes from
different default search paths in different `pkg-config` executables used in
`openmpi` and `pmix` package. As these tools (`openmpi`, `pmix`, and `prrte`)
all use the same mechanisms to detect dependencies, the `pkg-config` environment
they use should also be equal.
2023-03-16 16:02:02 -07:00
Rémi Lacroix
8b94cc4ec2 libaio: Add version 0.3.113 (#36101) 2023-03-16 14:27:50 -07:00
Wouter Deconinck
0a55b44092 autodiff: new version 1.0.0 (#36121)
No more https://0ver.org. No changes to build system since 0.6.12.
2023-03-16 14:20:43 -07:00
Erik Heeren
d97bb895e8 Ospray (#36128)
* ospray: denoiser and GLM variants
* ospray: denoiser defaults to True to preserve previous behaviour
2023-03-16 14:11:03 -07:00
Erik Schnetter
e8482d9e79 openssl: New version 3.1.0 (#36166) 2023-03-16 16:03:06 -04:00
Richard Berger
3f3565e890 LAMMPS: add new versions (#35592)
* LAMMPS: add new stable version 20220623.3
* LAMMPS: add new patch version 20230208
2023-03-16 12:52:48 -07:00
Michael Kuhn
3bb35fbaf6 meson: add 1.0.1 (#35987) 2023-03-16 15:28:09 -04:00
Dom Heinzeller
4572052c63 Modify info print of ESMF_CPP due to permission denied errors in spack on MSU Hercules (#35969)
* Skip info print of ESMF_CPP due to permission denied errors in spack on MSU Hercules
* Better version of patch
2023-03-16 12:22:57 -07:00
Harmen Stoppels
ba00da61e4 reduce spec.json.sig file size (#36157)
Since GPG clear-sign cannot deal with lines longer than 19995 characters
and doesn't even error but simply truncates those linese (don't ask me
why...), we have to be careful not to hit that line limit when reducing
the filesize.

So, instead this PR sets the indent level to 0 and drops the whitespace
after `: `, which still reduces file size by 50% or so.
2023-03-16 19:46:13 +01:00
John W. Parent
825599a510 Windows: target arch based on spec target arch (#35797)
Update packages to check Spec's target rather than the host platform.
2023-03-16 11:31:19 -07:00
renjithravindrankannath
4f6f1b620f Include rocm-openmp-extras header and omp library (#36142) 2023-03-16 11:21:55 -07:00
Rocco Meli
08dc2d4020 add rdkit for gninavis and remove mpi (#36117) 2023-03-16 11:03:26 -07:00
Pierre Jolivet
6af84c4574 slepc: add HPDDM wrappers (#36118) 2023-03-16 12:32:07 -05:00
Harmen Stoppels
50cc1d12f9 Revert "minify spec.json in buildcache (#36138)" (#36156)
This reverts commit 1a8eefe09b.
2023-03-16 10:30:52 +01:00
Alec Scott
c29168eff1 openfst: add v1.8.2 (#36143) 2023-03-16 09:23:21 +01:00
Alec Scott
5ed1efab40 openal-soft: add v1.23.0 (#36144) 2023-03-16 09:23:05 +01:00
Alec Scott
887d70410d octave: add v8.1.0 (#36145) 2023-03-16 09:22:50 +01:00
Alec Scott
a9936141ee nginx: add v1.23.3 (#36146) 2023-03-16 09:22:31 +01:00
Alec Scott
5744fc3637 netdata: add v1.38.1 (#36147) 2023-03-16 09:21:54 +01:00
Alec Scott
b13c201f46 mpdecimal: add v2.5.1 (#36149) 2023-03-16 09:20:15 +01:00
Alec Scott
e2ab46251b mpc: add v1.3.1 (#36150) 2023-03-16 09:19:56 +01:00
Alec Scott
193c927bd2 mosh: add v1.4.0 (#36151) 2023-03-16 09:18:20 +01:00
Alec Scott
9d195da8ee mkfontscale: add v1.2.2 (#36152) 2023-03-16 09:18:04 +01:00
Alec Scott
132b89178e erlang: add v25.3 (#36153) 2023-03-16 09:17:47 +01:00
Adam J. Stewart
6491e08f5d qt-base: add qmake attribute (#36114) 2023-03-15 20:53:59 -05:00
kwryankrattiger
bb73dfc02e Hotfix: CI: Add CI target for gpu-test stack (#36136) 2023-03-15 21:13:02 -04:00
Howard Pritchard
64fa902ba6 UCX: make version support level more realistic (#36127)
Per feedback from the UCX community, we rarely do update
releases to anything but the current and one previous main
release stream.

Update comments in the UCX spack file to reflect this.

Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2023-03-15 17:09:41 -04:00
Harmen Stoppels
1a8eefe09b minify spec.json in buildcache (#36138)
saves about 50% of data, which is significant
for hundreds of thousands of spec.json files
in our buildcaches.
2023-03-15 16:54:03 -04:00
Alec Scott
85d51bfd9a extrae: add v4.0.3 (#36059) 2023-03-15 15:24:38 -04:00
Alec Scott
e5d78e3780 libpipeline: add v1.5.7 (#36068) 2023-03-15 15:19:54 -04:00
Annop Wongwathanarat
99893a6475 wrf: fix patches for aarch64 config (#35984) 2023-03-15 12:40:00 +01:00
Annop Wongwathanarat
5f8f89b9c9 py-numpy: enable linking with armpl-gcc and acfl for BLAS and LAPACK (#35417)
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-15 12:38:14 +01:00
Mosè Giordano
028535030c julia: Some improvements to the package (#36054) 2023-03-15 11:10:50 +01:00
Robert Blake
0e295afb1c cardioid: fix homepage (#36099) 2023-03-15 09:19:34 +01:00
Mark W. Krentel
e58c84e63e hpctoolkit: add branch 2023.03.stable (#36096) 2023-03-15 09:18:18 +01:00
Howard Pritchard
37904c3342 UCX: add 1.14.0 (#36098)
Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2023-03-15 09:17:55 +01:00
Adam J. Stewart
9f116c7bb1 GDAL: add v3.6.3 (#36097) 2023-03-15 09:16:48 +01:00
Shahzeb Siddiqui
b5f3b5bf78 Remove leftover command from documentation (#36116)
The command refers to dotkit files, which are not supported since a long time.
2023-03-14 20:48:28 -04:00
Erik Heeren
93887edba8 py-pyshacl: patch dependency typo (#36084)
* py-pyshacl: patch dependency typo

* py-pyshacl: satisfy flake8

* Update var/spack/repos/builtin/packages/py-pyshacl/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-14 20:18:27 -04:00
John W. Parent
cd42fc5cc8 Libogg and libtheora: build on windows (#35099)
Adds builders appropriate for building these packages on Windows.
It is intended that builds on other platforms are unaffected (e.g.
they build with Autotools as before on Linux).
2023-03-14 16:46:49 -07:00
Sajid Ali
9a1254063a Fix HDF5+mpi~fortran (#35400)
* HDF5+mpi~fortran
* fix style
2023-03-14 19:04:34 -04:00
Alec Scott
32f8ee6d58 libxfont: add v1.5.4 (#36072) 2023-03-14 18:59:34 -04:00
Harmen Stoppels
25239924fa postgresql: fix typo (#36115) 2023-03-14 18:00:27 -04:00
Erik Heeren
7b27cd2f94 py-pint: new versions (#36102)
* py-pint: new versions

* Update var/spack/repos/builtin/packages/py-pint/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-pint/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-pint/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-14 18:00:01 -04:00
Gregory Lee
02e579d23d gobject-introspection 1.7.2 also requires libffi@:3.3 (#35606) 2023-03-14 14:05:40 -07:00
Matthias Wolf
6add885bb2 py-antspyx: new package (#30964)
* py-antspyx: new package

Also adds required dependencies.

Requires options to ITK to enable the right support libraries, and
patches to remove tune the setup and provide resources rather than
downloading libraries/"submodules" on the fly.

* Fix patch URL

* Style fixes.

* bump version and re-include `git clone ...` as resource
2023-03-14 16:51:38 -04:00
Harmen Stoppels
96b205ce6c environment.matching_spec: linear time traversal (#35534)
... and use colors in disambiguate message for clarity.

This commit avoids the loop:

```
for root in roots:
  for dep in deps(root):
    ...
```

instead it ensures each node is visited once and only once.

Also adds a small optimization when searching for concrete specs, since
we can assume uniqueness of dag hash, so it's fine to early exit.
2023-03-14 11:18:10 -07:00
Alec Scott
1711e186fe go: add v1.20.2 and v1.19.7 (#36065) 2023-03-14 18:28:57 +01:00
Rocco Meli
16f70ca78d pexsi: add v1.2 and v2.0 (#36049) 2023-03-14 16:02:11 +01:00
Alec Scott
2437a1d554 makedepend: add v1.0.8 (#36078) 2023-03-14 09:43:28 -04:00
Alec Scott
a6432bc770 armadillo: add v12.0.1 (#36051) 2023-03-14 09:43:04 -04:00
Alec Scott
ae6902b7ab looptools: add v2.16 (#36077) 2023-03-14 09:38:13 -04:00
Harmen Stoppels
40019dacd9 Use bfs in get_spec_filter_list (#36093) 2023-03-14 14:34:56 +01:00
Sangu Mbekelu
5c48304d07 new py-ultralytics package (#35890)
* new py-ultralytics package

* [@spackbot] updating style on behalf of Sangu-Mbekelu

* Update package.py

modified dependencies

---------

Co-authored-by: Sangu Mbekelu <s.mbekelu9@gmail.com>
2023-03-14 09:33:55 -04:00
Alec Scott
bab2f0a1b0 cbc: add v2.10.8 (#36055) 2023-03-14 09:23:43 -04:00
Alec Scott
ecc781fb3c libpcap: add v1.10.3 (#36067) 2023-03-14 09:19:49 -04:00
Harmen Stoppels
1691b7caac Fix typo affecting Gitlab CI (#36103)
Introduced in #35944
2023-03-14 14:18:05 +01:00
Seth R. Johnson
4f848f9200 vecgeom: new version 1.2.2 (#36085) 2023-03-14 08:48:18 -04:00
Alec Scott
08298b6766 mariadb-c-client: add v3.3.4 (#36079) 2023-03-14 08:37:58 -04:00
Alec Scott
11a509a40e man-db: add v2.11.2 (#36080) 2023-03-14 08:32:55 -04:00
Alec Scott
e3a7ad8112 libssh: add v0.8.9 (#36069) 2023-03-14 08:23:35 -04:00
Alec Scott
6efec2b2bd libxfont2: add v2.0.6 (#36073) 2023-03-14 08:16:00 -04:00
Alec Scott
ecd6fc00fd libtasn1: add v4.19.0 (#36071) 2023-03-14 08:07:12 -04:00
Alec Scott
87dc28a2f7 kmergenie: add v1.7051 (#36066) 2023-03-14 08:03:08 -04:00
Alec Scott
b2633e9057 fjcontrib: add v1.051 (#36060) 2023-03-14 08:02:46 -04:00
Alec Scott
116bc396c2 ccache: add v4.8 (#36056) 2023-03-14 08:02:23 -04:00
Alec Scott
39049e2bde hugo: add v0.111.3 (#36063) 2023-03-14 07:54:08 -04:00
Alec Scott
309969053e coinutils: add v2.11.6 (#36058) 2023-03-14 07:53:26 -04:00
Alec Scott
3fbd06023c cgl: add v0.60.6 (#36057) 2023-03-14 07:53:11 -04:00
Benjamin Meyers
853b964947 New packages: py-robocrys, py-matminer, py-pubchempy (#35941)
Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2023-03-14 07:27:51 -04:00
Harmen Stoppels
f7da7db9b2 use stage dir for buildcache create (#36091) 2023-03-14 09:35:47 +01:00
Michael Kuhn
5bae742826 concretizer: add mode to reuse dependencies only (#30990)
This adds a new mode for `concretizer:reuse` called `dependencies`,
which only reuses dependencies. Currently, `spack install foo` will
reuse older versions of `foo`, which might be surprising to users.
2023-03-14 09:22:20 +01:00
Rocco Meli
03636cd6ac Update MDAnalysis and addition of MDAnalysisTests (#36052)
* update mda dependencies

* apply black

* mdanalysis draft

* update

* small fixes

* Update var/spack/repos/builtin/packages/py-mdanalysis/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-mdanalysis/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-mdanalysis/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-mdanalysis/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-mdanalysis/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-13 15:01:24 -05:00
nkgh77
ee1ea1f430 octave: better specification of MKL and AMDFFTW libraries (#35935) 2023-03-13 10:06:42 +01:00
Alec Scott
ff019f868b libiberty: add v2.40 (#36042) 2023-03-13 09:30:44 +01:00
Adam J. Stewart
2bbc6390dc py-earthengine-api: add v0.1.344 (#36053) 2023-03-13 09:27:15 +01:00
Harmen Stoppels
2107b6bf00 Set build_jobs dynamically in CI to avoid oversubscription (#35996)
Co-authored-by: Zack Galbreath <zack.galbreath@kitware.com>
Co-authored-by: Ryan Krattiger <ryan.krattiger@kitware.com>
2023-03-13 08:29:58 +01:00
Alec Scott
31de7ea56c font-util: add v1.4.0 (#35860) 2023-03-12 21:24:01 +01:00
Jen Herting
55870efbcc New package: py-inflect (#35942)
Co-authored-by: Alex C Leute <aclrc@sporcsubmit.rc.rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2023-03-12 20:44:51 +01:00
Sangu Mbekelu
c38b463954 added a new verison of py-certifi (#35940)
Co-authored-by: Sangu Mbekelu <s.mbekelu9@gmail.com>
2023-03-12 10:52:17 -04:00
Michael Kuhn
5a4bc51bc0 cube: add 4.8 and 4.7.1 (#35959) 2023-03-12 11:38:32 +01:00
Massimiliano Culpo
528aca7c88 Revert "banner: add v3.5 (#36019)" (#36046)
This reverts commit 61af6b8f37.
2023-03-12 11:31:47 +01:00
Michael Kuhn
9fcfdf7a97 zstd: add v1.5.4 (#35438) 2023-03-12 05:42:20 -04:00
Greg Becker
66bf9bc7a6 cce compiler: bugfix for version regex to avoid conflation with apple-clang (#35974)
Currently apple-clang is detected as cce, and it should not be.
---------

Co-authored-by: becker33 <becker33@users.noreply.github.com>
2023-03-12 08:17:09 +00:00
Jonathon Anderson
dee5cb1aeb gloo: fix build on Linux >=6.0.3 (#35992) 2023-03-12 08:53:31 +01:00
Cameron Book
25666f9254 gsi-ncdiag: add new package (#35999) 2023-03-12 08:42:55 +01:00
Brian Van Essen
d78d112f18 aluminum, lbann: add new versions and deprecate old ones (#35954) 2023-03-12 08:40:13 +01:00
Alec Scott
1a97fddf5a at-spi2-core: add v2.47.90 (#36014) 2023-03-12 08:34:48 +01:00
Heiko Bauke
29d989a048 mpl: add v0.3.0 (#36015) 2023-03-12 08:33:27 +01:00
dependabot[bot]
79bba432df build(deps): bump docker/setup-buildx-action from 2.4.1 to 2.5.0 (#36008)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 2.4.1 to 2.5.0.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](f03ac48505...4b4e9c3e2d)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-12 08:32:17 +01:00
Alec Scott
ef4971d2e1 actsvg: add v0.4.30 (#36012) 2023-03-12 08:30:08 +01:00
Adam J. Stewart
1cc7ea651a py-torchmetrics: add v0.11.4 (#36016) 2023-03-12 08:29:41 +01:00
Alec Scott
16fd615fad autoconf-archive: add v2023.02.20 (#36017) 2023-03-12 08:29:02 +01:00
Alec Scott
61af6b8f37 banner: add v3.5 (#36019) 2023-03-12 08:28:17 +01:00
Alec Scott
7c3c6011de cni-plugins: add v1.2.0 (#36024) 2023-03-12 08:27:49 +01:00
Alec Scott
36d6660739 commons-lang3: add v3.12.0 (#36025) 2023-03-12 08:26:28 +01:00
Alec Scott
9199dabc0b cryptopp: add v8.7.0 (#36026) 2023-03-12 08:25:51 +01:00
Houjun Tang
9f6b2f8e96 HDF5-vol-async: add "memcpy" variant (#36013) 2023-03-12 08:25:11 +01:00
Alec Scott
ba1fd789e0 datamash: add v1.8 (#36027) 2023-03-12 08:24:16 +01:00
Alec Scott
013b2dec1e dbus: add v1.13.6 (#36028) 2023-03-12 08:23:42 +01:00
Alec Scott
d9cf959010 dbus-glib: add v0.112 (#36029) 2023-03-12 08:22:51 +01:00
Alec Scott
a76066ec42 gh: add v2.24.3 (#36032) 2023-03-12 08:21:58 +01:00
Alec Scott
8ce6a5355e ghostscript: add v10.0.0 (#36033) 2023-03-12 08:21:25 +01:00
Alec Scott
e61a1a6e74 hugo: add v0.111.2 (#36035) 2023-03-12 08:19:07 +01:00
Alec Scott
16d7270700 hydra: add v4.1.1 (#36036) 2023-03-12 08:18:34 +01:00
Alec Scott
e77e93b66a glab: add v1.26.0 (#36034) 2023-03-12 08:17:32 +01:00
Alec Scott
0c2a801ff2 libbson: add v1.23.2 (#36037) 2023-03-12 08:17:00 +01:00
Alec Scott
c84ce77969 libcap: add v2.67 (#36038) 2023-03-12 08:16:44 +01:00
Alec Scott
3464570b55 libdmx: add v1.1.4 (#36039) 2023-03-12 08:16:26 +01:00
Alec Scott
2a1428e5d4 libfontenc: add v1.1.7 (#36040) 2023-03-12 08:16:10 +01:00
Alec Scott
6f15cef281 libfs: add v1.0.9 (#36041) 2023-03-12 08:15:55 +01:00
Alec Scott
6fbda46c12 bazel: add v6.1.0 (#36020) 2023-03-12 08:14:25 +01:00
Adam J. Stewart
6c9d079cfb py-torch: NNPACK requires AVX2 (#35994) 2023-03-12 08:03:27 +01:00
Michael Kuhn
a741350e69 glib: add 2.74.6 (#35708) 2023-03-11 19:17:26 -05:00
Karen C. Tsai
fe5865da0d Add spackage for py-sphinx-rtd-dark-mode (#35946) 2023-03-11 14:27:23 -05:00
Mosè Giordano
1e9a654f17 curl: Allow compiling recent versions with MbedTLS 2 (#35947)
Curl 7.79 started supporting MbedTLS 3, but it did not drop support for v2.
2023-03-11 14:17:13 -05:00
Harmen Stoppels
844701b974 get --dev and drop set -x (#36010) 2023-03-10 22:59:57 -08:00
Alec Scott
1d081565db gmake: add v4.4.1 (#35872)
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2023-03-11 01:14:27 -05:00
eugeneswalker
39abe69c97 py-exarl: new package (#35828)
* py-exarl: new package

* fix style

* extend copyright to 2023

* add maintainer
2023-03-10 18:26:00 -08:00
Alec Scott
f5228cf59c go: refactor bootstrapping process (#35823)
* Refactor go bootstrapping to include binary or gcc bootstrap
2023-03-10 16:27:49 -08:00
Harmen Stoppels
08d7f47278 curl flag is not universally supported (#36009) 2023-03-10 16:20:32 -08:00
Alec Scott
92c6112991 gdk-pixbuf: add v2.42.10 (#35867) 2023-03-10 18:02:56 -05:00
Alec Scott
3605105cf1 editres: add v1.0.8 (#35854) 2023-03-10 18:02:36 -05:00
Harmen Stoppels
26fd1ac5b0 hotfix: fix double double quotes (#36005) 2023-03-10 13:41:01 -08:00
Zack Galbreath
e1301df60c ci: version bump for ghcr.io/spack/e4s-amazonlinux-2 (#35976)
* ci: version bump for ghcr.io/spack/e4s-amazonlinux-2

This new image comes with GnuPG v2.4.0

* py-cython: upperbounds for Python versions

* fix py-gevent nonsense

---------

Co-authored-by: Harmen Stoppels <me@harmenstoppels.nl>
2023-03-10 13:32:11 -08:00
kwryankrattiger
181bb54372 Hotfix: Fix CI unit test after CI refactor (#36004)
* Hotfix: Fix CI unit test after CI refactor
2023-03-10 13:31:40 -08:00
kwryankrattiger
f3595da600 CI boilerplate reduction (#34272)
* CI configuration boilerplate reduction and refactor

Configuration:
- New notation for list concatenation (prepend/append)
- New notation for string concatenation (prepend/append)
- Break out configuration files for: ci.yaml, cdash.yaml, view.yaml
- Spack CI section refactored to improve self-consistency and
composability
  - Scripts are now lists of lists and/or lists of strings
  - Job attributes are now listed under precedence ordered list that are
  composed/merged using Spack config merge rules.
  - "service-jobs" are identified explicitly rather than as a batch

CI:
- Consolidate common, platform, and architecture configurations for all CI stacks into composable configuration files
- Make padding consistent across all stacks (256)
- Merge all package -> runner mappings to be consistent across all
stacks

Unit Test:
- Refactor CI module unit-tests for refactor configuration

Docs:
- Add docs for new notations in configuration.rst
- Rewrite docs on CI pipelines to be consistent with refactored CI
workflow

* Script verbose environ, dev bootstrap

* Port #35409
2023-03-10 12:25:35 -07:00
Scott Wittenburg
16c67ff9b4 ci: Increase the amount of pruning possible for PR pipelines (#35944)
By setting the traversal depth to 1, only specs matching the changed
package and direct dependents of those (and of course all dependencies
of that set) are removed from pruning candidacy.
2023-03-10 11:19:52 -08:00
Alec Scott
ce7409bbf7 feh: add v3.9.1 (#35858) 2023-03-10 11:08:50 -08:00
kwryankrattiger
369914c3e1 Add packages OSPRay, rkcommon, Open VKL, and Open Image Denoise (#35530) 2023-03-10 19:35:46 +01:00
Matthew Thompson
64e0ca5a89 Update yaFyaml, pFlogger, and gFTL versions, add list_url (#35968)
* Update yaFyaml, pFlogger, and gFTL versions
* Add list_url
2023-03-10 09:57:15 -08:00
Erik Heeren
51a5377ceb py-deap: newer version can use newer setuptools (#35986)
* py-deap: newer version can use newer setuptools

* Update var/spack/repos/builtin/packages/py-deap/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-10 10:57:36 -05:00
H. Joe Lee
243627104e scons: add version 4.5.1. (#35990) 2023-03-10 10:47:52 -05:00
Adam J. Stewart
e817b0b9d0 py-scikit-learn: add v1.2.2 (#35982) 2023-03-10 06:38:49 -05:00
Valentin Volkl
eb59097576 rivet: remove tag (deleted by upstream developers) (#35971) 2023-03-10 04:58:16 -05:00
SXS Bot
73c1f3f893 spectre: add v2023.03.09 (#35972)
Co-authored-by: sxs-bot <sxs-bot@users.noreply.github.com>
2023-03-10 04:53:09 -05:00
nicolas le goff
566fb51d71 cgns: enable tools (#35713) 2023-03-10 08:59:23 +01:00
Paul R. C. Kent
617f44f9ed QMCPACK v3.16.0 (#35967) 2023-03-09 19:53:58 -05:00
Greg Becker
a51f4b77d9 reorder_flags: properly handle flags from concrete reused specs (#35951) 2023-03-09 16:46:47 -08:00
Michael Kuhn
9e6afc7dec scalasca: add 2.6.1 (#35970) 2023-03-09 15:13:53 -05:00
Matthieu Dorier
68874a72fb [liburing] Adds liburing package (#35762)
* [liburing] Adds liburing package
* Update var/spack/repos/builtin/packages/liburing/package.py
* [liburing] Added conflicts for darwin and windows platforms

---------

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2023-03-09 11:03:32 -08:00
Harshula Jayasuriya
e560beed19 concretizer.yaml: document valid values for granularity (#35961) 2023-03-09 19:51:11 +01:00
Vanessasaurus
de586bb66c Automated deployment to update package flux-core 2023-03-09 (#35956)
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
2023-03-09 10:25:57 -08:00
Michael Kuhn
846cd05c7e scorep: fix dependencies (#35966)
The overlapping dependency version ranges caused the concretizer to pick
version 7.1 even though version 8.0 is available:
```
==> Error: No version for 'cubelib' satisfies '@4.7.1' and '@4.8'
```

Moreover, Score-P 8.0 requires libbfd:
```
configure: error: bfd.h required
```
2023-03-09 10:12:37 -08:00
Alec Scott
1ef313b604 bdftopcf: add v1.1 (#35845) 2023-03-09 11:40:25 -05:00
Rocco Meli
73026f4f4b Deprecate elpa rc2 (#35953) 2023-03-09 09:28:14 -05:00
Alec Scott
08dd6d1a21 fontconfig: add v2.14.2 (#35861) 2023-03-09 09:13:07 -05:00
Mark W. Krentel
e9173a59fd hpctoolkit: adjust dependency and conflict for xz (#35950)
Hpctoolkit doesn't build cleanly with xz 5.2.7 and 5.2.8 due to a
misuse of the symver attribute.  This is now fixed in 5.2.9 and later.
2023-03-09 08:37:21 -05:00
Benjamin Meyers
7401c97037 New packages: py-fireworks, py-flask-paginate (#35939)
* New packages: py-fireworks, py-flask-paginate

* [@spackbot] updating style on behalf of meyersbs
2023-03-09 04:54:26 -05:00
Benjamin Meyers
15433cfaf1 New package py-custodian (#35938)
* New package py-custodian

* [@spackbot] updating style on behalf of meyersbs
2023-03-09 04:50:31 -05:00
Benjamin Meyers
99aa0ef0cd Update py-boltons (#35937) 2023-03-09 04:46:25 -05:00
Alec Scott
28934e5f77 gawk: add v5.2.1 (#35863) 2023-03-08 21:36:43 -05:00
Michael Kuhn
f08598427d git: add 2.39.2 (#35911) 2023-03-08 19:40:16 -05:00
Michael Kuhn
cc4f7c224a libuv-julia: fix mtime again (#35945)
On some systems touch runs out of order,
so set a equal mtimes to the relevant files
2023-03-08 19:02:38 -05:00
Maciej Wójcik
ee5b2936e4 gcc: Patch building of GCC 5.1-12.1 with glibc >= 2.36 (#35798) 2023-03-08 22:29:57 +01:00
Teo
f7a6446d3f Halide: Add 15.0.0 (#35924) 2023-03-08 16:22:16 -05:00
Tamara Dahlgren
624e28ee03 nek5000/nekcem: test_install -> check_install (#35925) 2023-03-08 16:05:29 -05:00
Auriane R
784e5f5789 Add pika 0.13.0 and pika-algorithms 0.1.2 (#35933)
* Add last release of pika-algorithms + version constraint

* Add pika release 0.13.0
2023-03-08 16:05:11 -05:00
Michael Kuhn
180618b25a p7zip: update checksum for 17.05 (#35923)
See https://github.com/p7zip-project/p7zip/issues/220
2023-03-08 16:04:57 -05:00
Emil Briggs
aefcce51fc rmgdft: add version 5.0.5 (#35922)
* Updated for version 5.0.5.
2023-03-08 15:59:09 -05:00
Weiqun Zhang
884a356b1e amrex: add v23.03 (#35765) 2023-03-08 15:45:16 -05:00
Jean-Baptiste Besnard
ee69f2d516 intel-mpi-benchmarks: variant and conflicts fixes (#35670) 2023-03-08 15:33:28 -05:00
renjithravindrankannath
bc5bb06f1f Provide openmp from rocm-open-extras when tensile uses openmp (#35767)
* Provide openmp from rocm-open-extras when tensile uses openmp
* Correcting audit check failure in rocm-openmp-extras dependency
* Fixing style check error
* rocm-openmp-extras required instead of llvm-amdgpu both varient
2023-03-08 09:57:35 -08:00
Peter Scheibel
1b8561f752 add logging to help users debug where external file searches are taking a long time (#35900) 2023-03-08 09:46:13 -08:00
nicolas le goff
7d54c24939 qwt: lift restrictions on qt version and added an opengl variant and VisIt use (#35734) 2023-03-08 18:38:33 +01:00
Robert Underwood
960923287d gdb: version 13.1 and debuginfod support (#35769)
* gdb: version 13.1 and debuginfod
* gdb: update to autotools helpers

---------

Co-authored-by: Robert Underwood <runderwood@anl.gov>
2023-03-08 08:54:47 -08:00
Scott Wittenburg
4a9ffdcfa2 gitlab ci: Provide a knob to control untouched spec pruning (#35274)
When untouched spec pruning is enabled, specs possibly affected
by a change cannot be pruned from a pipeline.

Previously spack looked at all specs matching changed package
names, and traversed dependents of each, all the way to the
environment root, to compute the set of environment specs
possibly affected by a change (and thus, not candidates for
pruning).

With this PR, when untouched spec pruning is enabled, a new
environment variable can control how far towards the root spack
traverses to compute the set of specs possibly affected by a
change.  SPACK_UNTOUCHED_PRUNING_DEPENDENT_DEPTH can be set
to any numeric value before the "spack ci generate" command
is called to control this traversal depth parameter.  Setting
it to "0" traverses only touched specs, setting it to "1"
traverses only touched specs and their direct dependents, and
so on.  Omitting the variable results in the previous behavior
of traversing all the way to the root.  Setting it to a negative
value means no traversal is done, and always yields an empty
set of possibly affected specs (which would result in the max
pruning possible).
2023-03-08 09:38:07 -07:00
Harmen Stoppels
22d4e79037 buildcache create: reproducible tarballs (#35623)
Currently `spack buildcache create` creates compressed tarballs that
differ between each invocation, thanks to:

1. The gzip header containing mtime set to time.time()
2. The generated buildinfo file which has a different mtime every time.

To avoid this, you have to explicitly construct GZipFile yourself, since
the Python API doesn't expose the mtime arg, and we have to manually
create the tarinfo object for the buildinfo metadata file.

Normalize mode: regular files & hardlinks executable by user, dirs, symlinks: set 0o755 permissions in tarfile; other files use 0o644
2023-03-08 15:51:55 +00:00
Sangu Mbekelu
2777ca83eb new py-thop package (#35889)
* "new py-thop package"

* [@spackbot] updating style on behalf of Sangu-Mbekelu

* Update package.py

modified the url and dependencies

---------

Co-authored-by: Sangu Mbekelu <s.mbekelu9@gmail.com>
2023-03-08 09:12:27 -06:00
Erik Heeren
a2423f5736 py-openmesh: new package (#35907)
* py-openmesh: new package

* Update var/spack/repos/builtin/packages/py-openmesh/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-08 09:11:34 -06:00
Aaron Black
81765e0278 mfem: add missing cublas for cuda support (#35608) 2023-03-08 09:14:46 -05:00
Erik Heeren
0d4f9b26b8 py-parse-type: new package (#35909) 2023-03-08 07:13:30 -05:00
Gerhard Theurich
87c21a58d1 parallelio: new version (#35553) 2023-03-08 07:13:13 -05:00
Alberto Invernizzi
5900378cff newly released 0.8.3 (#35910) 2023-03-08 07:05:13 -05:00
Massimiliano Culpo
d54611af2c Split satisfies(..., strict=True/False) into two functions (#35681)
This commit formalizes `satisfies(lhs, rhs, strict=True/False)`
and splits it into two functions: `satisfies(lhs, rhs)` and
`intersects(lhs, rhs)`.

- `satisfies(lhs, rhs)` means: all concrete specs matching the
   left hand side also match the right hand side
- `intersects(lhs, rhs)` means: there exist concrete specs
   matching both lhs and rhs.

`intersects` now has the property that it's commutative,
which previously was not guaranteed.

For abstract specs, `intersects(lhs, rhs)` implies that
`constrain(lhs, rhs)` works.

What's *not* done in this PR is ensuring that
`intersects(concrete, abstract)` returns false when the
abstract spec has additional properties not present in the
concrete spec, but `constrain(concrete, abstract)` will
raise an error.

To accomplish this, some semantics have changed, as well
as bugfixes to ArchSpec:
- GitVersion is now interpreted as a more constrained
  version
- Compiler flags are interpreted as strings since their
  order is important
- Abstract specs respect variant type (bool / multivalued)
2023-03-08 13:00:53 +01:00
Benjamin Meyers
39adb65dc7 New package: py-imbalanced-learn (#35895)
* New package: py-imbalanced-learn

* Fix typo

* [@spackbot] updating style on behalf of meyersbs

* Update var/spack/repos/builtin/packages/py-imbalanced-learn/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-08 07:00:09 -05:00
Rocco Meli
db15e1895f bump elpa (#35908) 2023-03-08 06:59:52 -05:00
Benjamin Meyers
7610926e5e Update and fix py-meldmd (#35783)
* Update/fix py-meldmd; update openmm

* Restrict filter_file based on openmm version

* Updates based on Adam's feedback

* [@spackbot] updating style on behalf of meyersbs

* Break up long filter_file

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-08 06:59:35 -05:00
Benjamin Meyers
703f687ca0 Update py-seaborn to @0.12.2 (#35896) 2023-03-08 06:54:17 -05:00
Annop Wongwathanarat
983a56e729 gromacs: add sve variant on aarch64 (#35614) 2023-03-08 10:25:36 +01:00
Brian Vanderwende
cbd0770497 ESMF should use Spack wrappers directly (#35749) 2023-03-08 10:21:51 +01:00
Tamara Dahlgren
b06648eb64 docs: added platform conflicts example, fix quotes (#35771) 2023-03-08 10:10:01 +01:00
QuellynSnead
80d784c401 singularity-eos: (#35625)
The Cray fortran compiler names fortran modules in uppercase by
default. Compile with the "-ef" flag to produce the lowercase
name that singularity-eos is expecting.
2023-03-08 09:58:34 +01:00
downloadico
5b3ad0adaa pgplot: made dependent packages set environment variables from pgplot (#35803) 2023-03-08 09:48:12 +01:00
Richard Berger
3feadc0a36 lammps: GPU/Kokkos package updates (#35885) 2023-03-08 09:46:05 +01:00
Alec Scott
8ec86e05c4 ico: add v1.0.6 (#35881) 2023-03-08 09:33:22 +01:00
Alec Scott
b34fd98915 ftxui: add v4.0.0 (#35868) 2023-03-08 09:33:08 +01:00
Tim Haines
a93d143f17 boost: add v1.81.0 (#34613) 2023-03-08 09:28:17 +01:00
Alec Scott
d0ced9da94 lucene: add v9.5.0 (#35917) 2023-03-08 09:12:51 +01:00
Harmen Stoppels
c37d6f97dc compiler wrapper: parse Wl and Xlinker properly (#35912)
Two fixes:

1. `-Wl,a,b,c,d` is a comma separated list of linker arguments, we
   incorrectly assume key/value pairs, which runs into issues with for
   example `-Wl,--enable-new-dtags,-rpath,/x`
2. `-Xlinker,xxx` is not a think, so it shouldn't be parsed.
2023-03-08 09:03:31 +01:00
Adam J. Stewart
ec73157a34 py-mypy: add v1.1.1 (#35926) 2023-03-08 08:16:01 +01:00
Alec Scott
e447c365ee help2man: add v1.49.3 (#35877) 2023-03-08 02:01:58 -05:00
Alec Scott
c5c67145d3 iso-codes: add v4.13.0 (#35915) 2023-03-08 01:18:10 -05:00
Alec Scott
a5bc83d635 httpie: add v3.2.1 (#35879)
* httpie: add v3.2.1

* Add additional 3.2.1 dependencies to httpie

* Add version condition to dependency

* Reorder dependencies for efficiency

* Update var/spack/repos/builtin/packages/httpie/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-08 01:05:44 -05:00
Alec Scott
1760553b70 lua-luaposix: add v36.1 (#35918) 2023-03-08 00:30:28 -05:00
Alec Scott
62d9bf5fef listres: add v1.0.5 (#35921) 2023-03-07 22:12:35 -05:00
Alec Scott
cb49da1b6f lndir: add v1.0.4 (#35920) 2023-03-07 21:54:19 -05:00
Alec Scott
c79d9ac5bd erlang: add v25.2 (#35856) 2023-03-07 20:29:52 -05:00
Alec Scott
871ca3e805 jchronoss: add v1.2.1 (#35916) 2023-03-07 19:58:21 -05:00
Harmen Stoppels
89176bd3f6 libxc: use gitlab release tarballs for v6.0.0 and greater (#35894)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-03-07 19:57:59 -05:00
Alec Scott
b29a607ceb isl: add v0.25 (#35884) 2023-03-07 18:03:01 -05:00
Alec Scott
0c06ecc711 iceauth: add v1.0.9 (#35880) 2023-03-07 18:02:45 -05:00
Alec Scott
73d1e36da5 imake: add v1.0.9 (#35882) 2023-03-07 18:02:29 -05:00
Erik Heeren
0d57c2ab24 py-numpy-stl: new package (#35892) 2023-03-07 18:02:13 -05:00
Alec Scott
272e69b2fd htslib: add v1.17 (#35883) 2023-03-07 18:01:58 -05:00
Alec Scott
8efde89c0e hivex: add v1.3.23 (#35878) 2023-03-07 18:01:43 -05:00
Alec Scott
c7ec47c658 graphviz: add v7.1.0 (#35876) 2023-03-07 17:56:08 -05:00
Alec Scott
013e82f74f grep: add v3.9 (#35875) 2023-03-07 17:55:46 -05:00
Alec Scott
fff7e6d626 gradle: add v8.0.2 (#35873) 2023-03-07 17:50:06 -05:00
Alec Scott
ac1fe8765a gprolog: add v1.5.0 (#35874) 2023-03-07 17:23:21 -05:00
Alec Scott
acbf46d786 glpk: add v5.0 (#35871) 2023-03-07 17:22:56 -05:00
Alec Scott
a753fa12fb gegl: add v0.4.42 (#35866) 2023-03-07 17:22:35 -05:00
Alec Scott
27b2dc1608 fonttosfnt: add v1.2.2 (#35862) 2023-03-07 17:16:43 -05:00
Alec Scott
d8f8b42bcb fslsfonts: add v1.0.6 (#35869) 2023-03-07 16:58:59 -05:00
Alec Scott
3995428ad2 gatk: add v4.3.0.0 (#35864) 2023-03-07 16:53:15 -05:00
Alec Scott
76d41b7f9f fstobdf: add v1.0.7 (#35870) 2023-03-07 16:36:08 -05:00
Samuel Li
a7501105b1 update SPERR package (#35810)
* update SPERR package
* remove blank line
* update SPERR package
* remove blank line
---------

Co-authored-by: Samuel Li <Sam@Navada>
2023-03-07 12:26:43 -08:00
Adam J. Stewart
da33334488 py-pytorch-lightning: add v1.9.4 (#35791) 2023-03-07 12:08:47 -08:00
Adam J. Stewart
68dfcd10e6 py-pytorch-lightning: torch~distributed not supported in 1.9.0 (#35809) 2023-03-07 12:05:39 -08:00
Alec Scott
4e6a8a40b7 cloog: add v0.18.4 (#35849) 2023-03-07 11:55:00 -08:00
Alec Scott
20f663d089 dnsmasq: add v2.89 (#35851) 2023-03-07 11:54:37 -08:00
Cody Balos
acf61daf99 sundials: add new version (#35796) 2023-03-07 11:52:05 -08:00
Alec Scott
a0233d2560 cmocka: add v1.1.7 (#35848) 2023-03-07 11:49:42 -08:00
Alec Scott
8c989e0aee apr: add v1.7.2, apr-util 1.6.3 (#35832)
* apr: add v1.7.2
* apr-util: add v1.6.3
2023-03-07 11:48:39 -08:00
Alec Scott
2f5e7fb38c awscli: add v1.27.84 (#35836)
* awscli: add v1.27.84

* Add botocore dependency to awscli

* Update var/spack/repos/builtin/packages/awscli/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Add py-botocore@1.29.84 dependency

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-07 13:38:17 -06:00
Alec Scott
b9bc911921 cget: add v0.2.0 (#35846) 2023-03-07 13:10:56 -05:00
Alec Scott
462df718ff bc: add v1.07.1 (#35844) 2023-03-07 13:10:33 -05:00
Alec Scott
b20271a8e8 code-server: add v4.10.1 (#35855) 2023-03-07 12:06:01 -05:00
Alec Scott
a62992b4b1 easybuild: add v4.7.0 (#35853)
* easybuild: add v4.7.0

* Add v0.4.7 to all easybuild dependencies

* Reorder versions newest to oldest

* Fix styling on easybuild dependency loop
2023-03-07 12:05:39 -05:00
Alec Scott
818459e6fc dash: add v0.5.12 (#35850) 2023-03-07 11:48:05 -05:00
Alec Scott
38bd499c09 colordiff: add v1.0.21 (#35847) 2023-03-07 11:47:43 -05:00
Alec Scott
f9de4c2da8 aspell: add v0.60.8 (#35834) 2023-03-07 11:47:21 -05:00
Rocco Meli
335ae31a59 Update biopython, gsd, and griddataformats (#35827)
* update mda dependencies

* apply black

* Update var/spack/repos/builtin/packages/py-gsd/package.py

* Update var/spack/repos/builtin/packages/py-griddataformats/package.py

* Update var/spack/repos/builtin/packages/py-griddataformats/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* remove numpy upper bound

* Update var/spack/repos/builtin/packages/py-griddataformats/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-gsd/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-07 11:47:04 -05:00
Alec Scott
c4e5ee8831 beforelight: add v1.0.6 (#35843) 2023-03-07 11:32:17 -05:00
Alec Scott
73c358819b busybox: add v1.36.0 (#35840) 2023-03-07 11:31:52 -05:00
Alec Scott
6f396aff99 bitmap: add v1.1.0 (#35839) 2023-03-07 11:20:26 -05:00
Alec Scott
047b99fab9 blktrace: add v1.3.0 (#35842) 2023-03-07 10:56:31 -05:00
Alec Scott
a12a290ee1 bmake: add v20230303 (#35841) 2023-03-07 10:56:05 -05:00
Alec Scott
bd6c9085f0 atk: add v2.38.0 (#35833) 2023-03-07 10:55:48 -05:00
Alec Scott
c0a0d60378 appres: add v1.0.6 (#35831) 2023-03-07 10:55:29 -05:00
Alec Scott
bc84ca126e ace: add v7.1.0 (#35829) 2023-03-07 10:55:08 -05:00
Alec Scott
3bb7570e02 alglib: add v3.20.0 (#35830) 2023-03-07 10:44:09 -05:00
Adam J. Stewart
a5b80662ae py-matplotlib: add v3.7.1 (#35822) 2023-03-06 19:02:20 -05:00
John W. Parent
0c5360e3fd Proj: to CMake (#35108)
* update proj

* re-add autotools support

* style

* Setup env in builders

* Drop direct windows conflict for older versions

* Default to CMake

Add new style class definiton

* Proj: setup_run_environment in package not builder

* Proj: move run env changes to pkg, rm cmake arg

* Set PROJ_LIB during build

* Style

* Rm redundant configure arg
2023-03-06 17:23:34 -05:00
Greg Becker
2ff337a2a5 compiler flags: fix multiple compilers with different flags (#35721)
Currently, if two compilers with the same spec differ on the flags, the concretizer will:

1. mix both sets of flags for the spec in the ASP program
2. error noting that the set of flags from the compiler (both of them) doesn't match the set from the lower priority compiler

This PR fixes both -- only flags from the highest priority compiler with a given spec are considered.
2023-03-06 10:29:48 -08:00
Erik Heeren
f3841774f7 py-elasticsearch: new versions (#35764)
* py-elasticsearch: new versions

Also add py-elastic-transport as a new dependency

* py-elasticsearch: py-urllib3 is no longer a dependency

* Update var/spack/repos/builtin/packages/py-elasticsearch/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-06 10:30:31 -06:00
Alec Scott
97c2dd3a5a Add Hugo v0.111.1 (#35824) 2023-03-05 18:33:23 +01:00
Alec Scott
3aae80ca07 curl: add v7.88.1 and deprecate previous versions due to CVEs (#35825)
* curl: add v7.88.1 and deprecate previous versions due to CVEs

* Add self as a maintainer to curl
2023-03-05 18:32:56 +01:00
Alec Scott
973bc92813 libarchive: add v3.6.2 and deprecate previous versions due to CVE-2022-36227 (#35826) 2023-03-05 18:22:41 +01:00
Todd Gamblin
42a02411b4 windows: use sys.platform == "win32" instead of is_windows (#35640)
`mypy` only understands `sys.platform == "win32"`, not indirect assignments of that
value to things like `is_windows`. If we don't use the accepted platform checks, `mypy`
registers many Windows-only symbols as not present on Linux, when it should skip the
checks for platform-specific code.
2023-03-05 07:58:05 -08:00
Erik Heeren
4561536403 py-simpervisor: correct pypi (#35785) 2023-03-04 10:44:03 -06:00
MicK7
6b694749d3 Update python linting packages (#35811)
* add 2.14.2 py-astroid version

* add py-pylint 2.26.2

* fix black

* fix py-dill depends_on

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* fix py-astroid minor versionning

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* modify typing_extensions depends_on

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-03 16:06:56 -06:00
MatthewLieber
c0f48b30cf Start using paths found in extra_rpaths in compilers.yaml when building (#35376)
* Start using paths found in extra_rpaths in compilers.yaml when building

* running black and changing maintainer list

* changing import order to pass isort

---------

Co-authored-by: Matthew Lieber <lieber.31@osu.edu>
2023-03-03 13:29:59 -08:00
Massimiliano Culpo
046416479a Polish spack.util.environment (#35812)
Update `spack.util.environment` to remove legacy idioms.
* Remove kwargs from method signature and use a class for traces
* Uppercase a few global variables
* spack.util.environment: add type-hints
* Improve docstrings
* Fixed most style issues reported by pylint
2023-03-03 16:17:27 -05:00
Lucas Frérot
b17113b63d snakemake: added versions 7.19.0-7.22.0 (#35535)
* snakemake: added versions 7.19.0-7.22.0

* snakemake: corrected +reports dependencies
2023-03-03 12:46:29 -06:00
Loïc Pottier
479f5a74a3 py-ipdb: updating versions (#35654)
* py-ipdb: updating versions

Signed-off-by: Loïc Pottier <pottier1@llnl.gov>

* py-ipdb: fixing versions problem and deleting 10.1 which is too old for Python > 3.6

Signed-off-by: Loïc Pottier <pottier1@llnl.gov>

* Update var/spack/repos/builtin/packages/py-ipdb/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* py-ipdb: removed useless dependencies

Signed-off-by: Loïc Pottier <pottier1@llnl.gov>

* Update var/spack/repos/builtin/packages/py-ipdb/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-ipdb/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* py-ipdb: missing @

Signed-off-by: Loïc Pottier <pottier1@llnl.gov>

* Update var/spack/repos/builtin/packages/py-ipdb/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Signed-off-by: Loïc Pottier <pottier1@llnl.gov>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-03 05:28:40 -05:00
kwryankrattiger
895886959f CI: Fix timeout for VisIt and ParaView (#35787)
ref. #35400
2023-03-03 09:13:14 +01:00
Jean Luca Bez
0bdb0b07fd update github URL (#35789) 2023-03-03 00:23:23 -05:00
Ishaan Desai
817b59900a Update pyprecice v2.5.0.2 (#35788)
* Update versions 2.5.0.0 and 2.5.0.1

* Applying review changes

* Updating incorrect checksum for v2.4.0.0

* Add for loop to define depends_on for preCICE versions and bindings versions

* Formatting

* Missing comma

* Add pyprecice v2.5.0.2
2023-03-03 00:19:17 -05:00
Erik Heeren
2ddd66ca48 py-jupyter-server-proxy: fix dependency condition (#35784)
Too much copypasta
2023-03-03 00:18:31 -05:00
H. Joe Lee
7ddd796f89 scons: add a new version (#35652)
* scons: add a new version

* scons: address @adamjstewart review
2023-03-02 15:14:59 -06:00
downloadico
1e2ef16b39 Add e3sm scorpio (#35794)
* e3sm-scorpio: add e3sm-scorpio package
   This is the Scorpio package from the e3sm.org site.
* fixed style errors
* removed unneeded dependency on cmake
2023-03-02 15:48:55 -05:00
Adam J. Stewart
77355fd348 py-nbstripout: add new package (#35786) 2023-03-02 10:47:48 -07:00
Adam J. Stewart
1facf99f51 py-rtoml: add new package (#35780) 2023-03-02 09:43:36 -08:00
Robert Underwood
07c8939679 julia: fix for libuv and Julia (#35776)
Use correct `shlib_symbol_version` for Julia 1.8, work around issue where libuv-julia's git checkout has arbitrary mtime, causing make to regenerate configure scripts, sometimes.
2023-03-02 16:36:55 +01:00
Erik Heeren
28f4b5729a py-chart-studio: new package (#35759)
* py-chart-studio: new package

* py-chart-studio: add missing six dependency
2023-03-02 08:40:37 -06:00
M. Eric Irrgang
dd7af323ed Add a py-gmxapi package. (#35738)
* Add a `py-gmxapi` package.

This package provides the Python package for the GROMACS
public API. The Python package is not strongly coupled to
a specific GROMACS _version_, but its compiled extension module
is strongly coupled to a specific GROMACS _installation_.

* Update conflict info.

In order to allow `^gromacs@2022.1` while rejecting `^gromacs@2022`,
we need to compare to `gromacs@2022.0`.

* Apply suggestions from code review

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Apply suggestions from code review.

* Simplify build system structure.
* Update dependencies for completeness.

* Update var/spack/repos/builtin/packages/py-gmxapi/package.py

Per code review, pretend gmxapi <0.4 doesn't exist, for simplicity.

* Update var/spack/repos/builtin/packages/py-gmxapi/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-gmxapi/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-02 08:37:17 -06:00
Axel Huebl
2ba1f700e6 WarpX: add v23.03 (#35775)
Update `warpx` & `py-warpx` to the latest release.
2023-03-02 04:19:08 -08:00
Adam J. Stewart
739ab89b65 py-kornia: add v0.6.10 (#35554) 2023-03-02 01:08:39 -08:00
Adam J. Stewart
7e5099627f py-pytorch-lightning: add v1.9.3 (#35629) 2023-03-02 00:23:34 -08:00
Brian Van Essen
eb29889f6e Detection of Cray's slingshot detection has relied on the presence of (#35779)
a shared library /lib64/libcxi.so, which seems to also appear on other
non-slingshot systems.  This patch also checks to make sure that there
is a Cray programming enviornment in /opt/cray/pe in addition to the
shared library.
2023-03-01 23:19:20 -08:00
Dmitriy
ae27df4113 Add py-mpi4py as a dependency for henson (#35743)
* Add py-mpi4py as a dependency

* Add maintainers per spackbot's request

* Add type=(build,run) per adamjstewart's suggestion
2023-03-01 22:43:31 -08:00
Adam J. Stewart
ae2c8c02a2 py-torchgeo: kornia backwards-incompatible change (#35570) 2023-03-01 22:13:23 -08:00
Adam J. Stewart
caff9e4292 py-scipy: add v1.10.1 (#35581) 2023-03-01 16:04:23 -08:00
Harmen Stoppels
beb3414b4d py-pygments 2.12; fix py-docutils, again (#35394)
* py-pygments 2.12; fix py-docutils, again

`2.12` is the latest for which our style hack works, beyond that we need
our own package to make a plugin.

Old docutils needs old setuptools

* py-setuptools is always a dep

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update the range

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-01 15:53:41 -08:00
Alex Richert
ed07cee852 Add capitalized symlinks for libesmf.{a,so} (#35774)
* Add capitalized symlinks for libesmf.{a,so}
* Add import of lib suffixes
2023-03-01 15:28:46 -08:00
Rémi Lacroix
7c1a164219 GitHub CLI: Add version 2.23.0 (#35761) 2023-03-01 13:59:28 -08:00
Howard Pritchard
18e0b893f2 papi: more fixes for Intel OneAPI compiler (#34048)
The Intel OneAPI's extreme pickiness continues to bring out
buggy/noncompliant code.

This patch fixes an error in the configure.in embedded 'c' test code
and also in a file with an initialized, but unused, variable.

Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2023-03-01 13:33:55 -08:00
Garth N. Wells
df5b25764b Update FEniCSx libraries to v0.6 (#35600)
* Updates to release 0.6.

* Dep updates

* Dep version fix

* Another version fix

* Fix typo

* UFL version fix

* Update var/spack/repos/builtin/packages/py-fenics-dolfinx/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-fenics-ffcx/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Some updates following review

* Update var/spack/repos/builtin/packages/py-fenics-dolfinx/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* More updates

* More updates

* build/run updates

* Small fix

* Fix version number.

* specify lower bounds for python dependencies

* address style issues

* address style issues

* address PR comments

* amend setuptools dependency to be of type build only

* amend setuptools dependency to be of type run and build for ffcx and ufl

* add build dependency to ensure import tests pass

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
Co-authored-by: Matthew Archer <ma595@cam.ac.uk>
2023-03-01 13:18:23 -08:00
Tiziano Müller
44705b0a6e cp2k: fix builds on macOS, workaround reported issue with __contains__ (#35584)
Co-authored-by: Robert Cohn <rscohn2@gmail.com>
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-03-01 12:01:00 -08:00
Erik Heeren
3bb03ea7d1 py-dbf: new versions and dependency (#35760) 2023-03-01 10:49:27 -08:00
luker
3c411bf135 Fix superlu-dist package for cray fortran (#35728)
The superlu-dist code developers modified the code such that the patch
is no longer needer for `@7.2.0:`  (the patch will actually fail)
2023-03-01 10:49:06 -08:00
Erik Heeren
f2363c1cb5 Py dask mpi (#35679)
* py-dask-mpi: new package with dependencies

* py-hatch-jupyter-builder is not needed after all

* skip_modules seems cleaner

* Update var/spack/repos/builtin/packages/py-jupyter-server-proxy/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-simpervisor/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-01 11:35:55 -06:00
Adam J. Stewart
7188eeb604 py-fiona: add upper bounds to Python versions (#35658)
* py-fiona: add upper bounds to Python versions

* Add error msg
2023-03-01 09:53:20 -06:00
Adam J. Stewart
583d89e95a Simplify spack help --spec output (#35626) 2023-03-01 16:26:59 +01:00
Mosè Giordano
4a24401ed0 wrf: Fix compilation with GCC 10+ (#35177)
Flags `-fallow-argument-mismatch -fallow-invalid-boz` set in `FFLAGS`/`FCFLAGS`
environment variables don't really have effect in older versions of WRF, we need
to force them in the compiler wrappers.

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2023-03-01 07:14:42 -08:00
Wouter Deconinck
2796794b19 py-particle: new versions 0.16.*, 0.20.*, 0.21.* (#35547)
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-03-01 14:49:37 +01:00
Wouter Deconinck
dd854e86d9 sartre: new package (#32713) 2023-03-01 14:36:16 +01:00
Valentin Volkl
1500246ab7 vc: improvements for testing (#28887) 2023-03-01 14:29:43 +01:00
MatthewLieber
206cd94c0b mvapich2-gdr/mvapich2x: add v2.3.7, update package config (#33066)
Co-authored-by: Nick Contini <contini.26@osu.edu>
2023-03-01 14:24:34 +01:00
Houjun Tang
ff1a425c8d hdf5-vol-async: add v1.5 (#35636) 2023-03-01 14:16:56 +01:00
Wouter Deconinck
ab999d5af9 dd4hep: depends_on root +webgui when +ddeve ^root @6.28: (#35624) 2023-03-01 14:13:50 +01:00
H. Joe Lee
513ff34e66 dpdk: add a new build system and version (#35647) 2023-03-01 14:08:41 +01:00
H. Joe Lee
b59c8e9a43 isa-l_crypto: add a new package (#35651) 2023-03-01 14:06:37 +01:00
H. Joe Lee
9483e34d15 isa-l: add a new package (#35650) 2023-03-01 14:06:22 +01:00
Alex Richert
7e02139cad upp: add v10.0.8 (#35667) 2023-03-01 14:00:27 +01:00
Alex Richert
a08d86c201 grib-util: fix dependency constraints (#35668) 2023-03-01 13:59:45 +01:00
Hans Fangohr
4e70532cd1 OOMMF: set preferred version (#35675)
With the last merge request for OOMMF [1], the intention was to have version
20b0_20220930 as the preferred version, and provide 20b0_20220930-vanilla as an
additional version for the unlikely case anybody needed that.

I made the (wrong) assumption that the `version` listed first in the `package.py` file
would be the preferred version. This merge request is to correct that by
explicitly tagging the preferred version with `preferred=True`.

[1] https://github.com/spack/spack/pull/33072/files
2023-03-01 13:53:59 +01:00
Glenn Johnson
2d2a1c82d4 docbook: resolve conflict in spack env view (#35682)
If the docbook packages
- docbook-xml
- docbook-xsl

are installed in a spack environment view the catalog files will be in
conflict in the view directory. This PR resolves that by adding an
appropriate prefix to each catalog name so that they are unique in the
view. The resulting XML_CATALOG_FILES environment variable will then be
able to point to both of them.
2023-03-01 04:17:46 -08:00
Wouter Deconinck
a47ebe5784 dd4hep: new versions 1.25, 1.25.1 (#35665) 2023-03-01 12:56:03 +01:00
acastanedam
4f97bb118f elk: add v8.3.22 and fix a few issues (#35678) 2023-03-01 12:55:02 +01:00
Harmen Stoppels
d71eca74a3 mbedtls: new versions and deprecations [CVE-2022-46392] (#35715)
* Add new versions and deprecations [CVE-2022-46392]
* remove maintainer, order versions by major no
2023-03-01 03:14:00 -08:00
Tamara Dahlgren
f88dec43df cbench: renamed test_blas_linkage to check_blas_linkage (#35690) 2023-03-01 12:03:23 +01:00
Wouter Deconinck
2e8306d324 py-uproot: new versions 4.3.*, 5.0.* (#35548) 2023-03-01 11:53:38 +01:00
Adam J. Stewart
d64d77e99e py-torchmetrics: add v0.11.2-3 (#35755) 2023-03-01 02:48:35 -08:00
Cyrus Harrison
d7b11af731 ascent: add v0.9.0 (#35211) 2023-03-01 11:48:15 +01:00
Annop Wongwathanarat
68372a4dfe hpcg: add arm compiler (#35710) 2023-03-01 11:46:12 +01:00
Bill Williams
54500a5fca scorep: more precise dependencies for v7/v8 (#35712) 2023-03-01 11:45:07 +01:00
Adam J. Stewart
146464e063 Docs: fix link to PythonPackage docs (#35725) 2023-03-01 11:14:05 +01:00
Massimiliano Culpo
07e251c887 Remove handling of deprecated target names (graviton) (#35537)
* Update target names for Gitlab pipelines

* Remove handling of deprecated names for graviton
2023-03-01 11:03:12 +01:00
Mosè Giordano
f9f51cb930 Add new versions of Julia dependencies (#35622) 2023-03-01 01:52:28 -08:00
nicolas le goff
ad3c22fae9 gts: add missing pkgconfig dependency (#35657) 2023-03-01 10:49:09 +01:00
AMD Toolchain Support
bedcc5449a quantum-espresso: fix building with aocc (#35612)
Co-authored-by: Tooley, Phil <phil.tooley@amd.com>
2023-03-01 10:47:42 +01:00
Henning Glawe
a1a54fa8b7 nfft: add v3.2.4 (#35757) 2023-03-01 01:42:23 -08:00
Edward Hartnett
2a97bcbd5a bacio: add v2.6.0, including handling of shared library builds (#35490) 2023-03-01 10:29:12 +01:00
Mark W. Krentel
99fb4c4a47 hpctoolkit: add version 2023.03.01, add python variant (#35662)
1. add version 2023.03.01
 2. add variant 'python' that supports unwinding python source
 3. clean up some things with the cray variant
 4. require the latest libmonitor
 5. fix sha256 checksum for url patch
 6. delete rocm 5.3 from older versions
2023-03-01 09:44:32 +01:00
Brian Vanderwende
5b52685216 NCO: add v5.1.4 and v5.1.0 (#35753) 2023-03-01 09:27:25 +01:00
Alex Richert
53a924c20f Fix bufr package typo (libufr->libbufr) (#35740) 2023-02-28 15:56:30 -08:00
Annop Wongwathanarat
09ad541e98 armcomputelibrary: add version 23.02 (#35723) 2023-02-28 23:51:05 +01:00
M. Eric Irrgang
b109e16fba Back-port a patch for filesystem logic in gmx executable. (#35672)
* Backport a patch for relocatable `gmx` executable.

* spack style fixes
2023-02-28 14:18:00 -07:00
Mark W. Krentel
043a80ff9e hpcviewer: add version 2023.02 (#35648) 2023-02-28 11:13:30 -08:00
Matthieu Dorier
b7f7af1713 c-raft: add new package (#35735)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-02-28 11:16:02 -07:00
Rémi Lacroix
e5bd319c19 git-lfs: Add version 3.3.0 (#35671) 2023-02-27 23:58:56 -05:00
Tim Haines
90ad65a6e7 Dyninst: add version 12.3.0 (#35630) 2023-02-27 16:13:47 -08:00
Luke Diorio-Toth
779e80b7c1 Package/py pysam macos (#33851)
* cleaned up style, linked to external htslib

* removed htslib/bcfrools/samtools deps, use bundled libs instead

the pysam package includes the necessary libs to link to, so it wasn't even using linked libs when building

* fixed style

* revert to using external htslib

currently uses bundled samtools and bcftools, and there is no way to use external versions for those dependencies

* added libs property to htslibs package

added support for lib64

* added htslib name
2023-02-27 16:25:21 -06:00
Annop Wongwathanarat
502e216ee2 onednn: add variant to use Arm Compute Library on aarch64 (#35643)
* onednn: add variant to use Arm Compute Library on aarch64

* Update cmake version

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Shorten macro definition

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update cpu/gpu_runtime variants

* Update acl variant when 1.7+

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* [@spackbot] updating style on behalf of annop-w

* Add dependencies for new runtimes

* Fix dependency package name to oneapi-level-zero

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-02-27 13:58:03 -06:00
Wouter Deconinck
d6ff426d48 py-awkward: new version 1.10.*, 2.0.* (#35549)
* py-awkward: new version 1.10.*, 2.0.*

Lots of changes in 2.0.*, see https://github.com/scikit-hep/awkward/releases. This will need some extra testing.

* py-awkward: hatchling

* Update var/spack/repos/builtin/packages/py-awkward/package.py

* Update var/spack/repos/builtin/packages/py-awkward/package.py

* py-scikit-build-core: new and improved py-scikit-build

* py-awkward-cpp: new package

* py-awkward: add depends_on py-awkward-cpp

* py-awkward: depends_on py-packaging

* py-awkward-cpp: new versions pinned by py-awkward

* py-scikit-build-core: additional depends_on

* py-awkward: branch master deprecated

* py-pytest-subprocess: new package

* py-pytest: new version 7.2.1

* py-scikit-build-core: add tests dependencies

* [@spackbot] updating style on behalf of wdconinc

* py-scikit-build-core: two more test dependencies

* py-pytest: depends_on py-exceptiongroup

* py-awkward: add pytest support

* py-pytest: suggestions from review

* py-scikit-build-core: suggestions from review

* Update var/spack/repos/builtin/packages/py-awkward-cpp/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* py-awkward: depends_on pyyaml when @:1, order old deps last

* [@spackbot] updating style on behalf of wdconinc

* py-awkward: move some opt deps to test, order test deps

* py-awkward: remove test dependencies

---------

Co-authored-by: wdconinc <wdconinc@users.noreply.github.com>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-02-27 13:51:13 -06:00
Michael Kuhn
c4311a250a pango: add 1.50.13 (#35709) 2023-02-27 09:38:17 -08:00
dlkuehn
ceaa304f5f osi: add version 0.108.7 (#35689)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-02-27 09:10:01 -07:00
dlkuehn
038efa4173 clp: add version 1.17.7 (#35688)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-02-27 07:23:00 -08:00
Harmen Stoppels
773fd5ad84 hpctoolkit: fix broken patches (#35711)
The patches don't have a stable checksum.
2023-02-27 10:50:48 +01:00
Seth R. Johnson
9b46e92e13 Celeritas: new versions 0.2.1 and 0.1.5 (#35704)
* celeritas: new versions 0.1.5 and 0.2.1

* celeritas: deprecate old versions
2023-02-27 09:36:28 +00:00
Howard Pritchard
f004311611 OpenMPI: add the 4.1.5 release (#35677)
Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2023-02-27 00:57:36 -08:00
Glenn Johnson
a4b949492b r-twosamplemr: add new package and dependencies (#35683) 2023-02-27 07:38:27 +01:00
Larry Knox
6ab792fb03 hdf5-vol-cache: add v1.1 (#35685) 2023-02-27 07:35:30 +01:00
Alex Richert
313c7386c4 go: set GOMAXPROCS to limit number of build processes (#35703) 2023-02-27 07:26:50 +01:00
Adam J. Stewart
b0b4a05d44 py-nbqa: add new package (#35707) 2023-02-27 07:22:48 +01:00
Alberto Invernizzi
4e13b5374f fix dump problem (#35673)
if dump file existed it was not truncating the file, resulting in
a file with unaltered filesize, with the new content at the beginning,
"padded" with the tail of the old content, since the new content was
not enough to overwrite it.
2023-02-24 21:32:33 -08:00
Vinícius
07897900eb ompss-2 dependencies (#35642) 2023-02-24 21:22:17 -08:00
Axel Huebl
d286146c64 WarpX 23.02 (#35633)
Update `warpx` & `py-warpx` to the latest release.
2023-02-23 17:09:28 -08:00
Todd Gamblin
6b27aebeb4 colify.py: get rid of **kwargs (#35641)
`colify` is an old module in Spack that still uses `**kwargs` liberally. 

We should be more explicit. Doing this eliminates the need for many 
checks (can't pass the wrong arg if it isn't allowed) and makes the 
function documentation more clear.
2023-02-23 11:18:54 -08:00
Mosè Giordano
5c7cccd052 p7zip: Add new versions from fork (#35627) 2023-02-23 13:10:28 +01:00
Rémi Lacroix
26c314f04f htop: Add version 3.2.2 (#35621) 2023-02-23 03:22:18 -08:00
Rémi Lacroix
9982d76bb1 ncdu: Add version 1.18.1 (#35620) 2023-02-23 03:21:56 -08:00
Harmen Stoppels
3d41b71664 buildcache push: ensure bool arguments for include_* (#35632)
Fixes a bug introduced in 44ed0de8c0
where the push method of binary_distribution now takes named args
include_root and include_depedencies, to avoid the **kwarg hole.

But the call site wasn't update and we passed a dict of keys/values instead
of arguments, which resulted in a call like this:

```
push(include_root={"include_root": True, "include_dependencies": False})
```

This commit fixes that, and adds a test to see if we push the correct packages.
2023-02-23 01:44:47 +01:00
Wouter Deconinck
e27d3c4f75 collier: new versions 1.2.6, 1.2.7 (#35580)
Additional functionality, per https://collier.hepforge.org/releasehist.html. No mention of build changes.
2023-02-22 13:18:11 -08:00
Adam J. Stewart
5545fd34c0 py-mpi4jax: add new package (#35551)
* py-mpi4jax: add new package
* [@spackbot] updating style on behalf of adamjstewart

---------

Co-authored-by: adamjstewart <adamjstewart@users.noreply.github.com>
2023-02-22 13:12:35 -08:00
luker
6ebf9f65c0 Add CCE support to hipfort (#35609)
* Add CCE support to hipfort
* Update package.py
2023-02-22 10:59:54 -08:00
Harmen Stoppels
3be9af8c13 copy_files_to_artifacts: error -> warning (#35613)
This error shows up a lot, typically it's harmless because an error
happened before the source build even started, in which case we don't
have build logs to copy. So, warn instead of error, cause it distracts
from the actual CI error.
2023-02-22 11:53:42 +00:00
Harmen Stoppels
6e477d547d add cdash arg to source build only (#35565) 2023-02-22 11:08:32 +01:00
Harmen Stoppels
9d6630e245 spack build-env: error when deps are not installed (#35533)
Currently we attempt to setup the build environment even when
dependencies are not installed, which typically results in error while
searching for libraries or executables in a dependency's prefix.

With this change, we get a more user friendly error:

```
$ spack build-env perl
==> Error: Not all dependencies of perl are installed, cannot setup build environment:
 -   qpj6dw5  perl@5.36.0%apple-clang@14.0.0+cpanm+open+shared+threads build_system=generic arch=darwin-ventura-m1
 -   jq2plbe      ^berkeley-db@18.1.40%apple-clang@14.0.0+cxx~docs+stl build_system=autotools patches=26090f4,b231fcc arch=darwin-ventura-m1
...
$ echo $?
1
```
2023-02-22 10:35:44 +01:00
psakievich
b8d15e816b Allow users to specify root env dir (#32836)
* Allow users to specify root env dir

Environments managed by spack have some advantages over anonymous Environments
but they are tucked away inside spack's directory tree. This PR gives
users the ability to specify where the environments should live.

See #32823

This is also taken as an opportunity to ensure that all references are to "managed environments",
rather than "named environments". Prior to this PR some references to the latter persisted.

Co-authored-by: Tom Scogland <scogland1@llnl.gov>
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
Co-authored-by: Gregory Becker <becker33@llnl.gov>
2023-02-22 00:37:14 +00:00
Cameron Rutherford
0a233ce83a ExaGO 1.5.1 release (#35595)
* Update exago w/ 1.5.1 and small updates to hiop.
* Fix styling.
* Add RAJA back to ExaGO package.
* Update RAJA requirement for ExaGO and HiOp.
* Update last RAJA requirement in HiOp.
2023-02-21 14:56:59 -08:00
G-Ragghianti
27ee08f5bb Package slate: Improved MPI launcher search for smoke tests (#35448)
* Improved MPI launcher search for smoke tests
* Improving mpi launcher search
* Removing redundant logic
2023-02-21 13:10:01 -08:00
Massimiliano Culpo
cb4c60c709 Revert "Disable module generation by default (#35564)" (#35603)
This reverts commit 5b8917188a.
2023-02-21 21:53:07 +01:00
Wouter Deconinck
8e84dcd7ef root: new version 6.28.00 (#35556)
* root: new version 6.28.00
  Full changelog: https://github.com/root-project/root/compare/v6-26-10...v6-28-00
  Based on the CMakeLists.txt file, no major build system changes. Upgraded requirements for cmake added.
* root: variant jemalloc deprecated
* root: rm define gsl_shared because unused
  "`gsl_shared` is unused" per https://github.com/root-project/root/pull/12203 (and has always been unused)
* [@spackbot] updating style on behalf of wdconinc

---------

Co-authored-by: wdconinc <wdconinc@users.noreply.github.com>
2023-02-21 12:20:46 -08:00
MicK7
447ad2a3e3 Add new sphinx rtd theme release 1.2.0 (#35579)
* Add new sphinx rtd theme release 1.2.0

The new release helps with supporting more recent version of docutils

* set docutils officially supported version

* add jquery dependency for sphinx-rtd-theme

* add conflict with jquery version

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* correct dependency

* fix version dependency

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* set sphinx version

* fix sha256

* add version for flit-core

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-02-21 11:53:21 -08:00
Adam J. Stewart
6f65ff4952 py-nbmake: add new versions (#35591) 2023-02-21 11:46:43 -08:00
Adam J. Stewart
16adda3db9 py-jax: add v0.4.3 (#35460)
* py-jax: add v0.4.3

* Minimum version is minimum

* py-jax no longer has cuda variant

* Enable CUDA by default

* Link to discussion of upper bound
2023-02-21 13:14:27 -06:00
Oliver Perks
cddef35ef8 cmake: changed the regex to search for externals (#31688) 2023-02-21 17:29:14 +01:00
Rocco Meli
1636c89aba Add pyedr and panedr (#35576)
* add pyedr

* black

* add panedr

* Update var/spack/repos/builtin/packages/py-pyedr/package.py

* Update var/spack/repos/builtin/packages/py-panedr/package.py

* Update var/spack/repos/builtin/packages/py-pyedr/package.py

* Update var/spack/repos/builtin/packages/py-pyedr/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-pyedr/package.py

* Update var/spack/repos/builtin/packages/py-panedr/package.py

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-02-21 09:55:19 -06:00
Alec Scott
9110f5dfb6 ant: add v1.10.13 and deprecate previous versions due to CVE (#35572) 2023-02-21 15:18:07 +01:00
Harmen Stoppels
bc24a8f290 Spec.satisfies should be commutative when strict=False (#35598)
The call:
```
x.satisfies(y[, strict=False])
```
is commutative, and tests non-empty intersection, whereas:
```
x.satsifies(y, strict=True)
```
is not commutative, and tests set-inclusion.

There are 2 fast paths. When strict=False both self and other need to 
be concrete, when strict=True we can optimize when other is concrete.
2023-02-21 14:30:47 +01:00
simon-Leary42
33bf1fd033 nonexistent module concise error message (#35502) 2023-02-21 04:50:56 -08:00
Harmen Stoppels
5b8917188a Disable module generation by default (#35564)
a) It's used by site administrators, so it's niche
b) If it's used by site administrators, they likely need to modify the config anyhow, so the default config only serves as an example to get started
c) it's too arbitrary to enable tcl, but disable lmod
2023-02-21 10:00:37 +01:00
luker
fbd5c5c2cd superlu-dist: extend when to apply a patch (#32985) 2023-02-21 07:41:59 +01:00
Massimiliano Culpo
55e3026152 ccls: add v0.20220729 (#35593) 2023-02-21 07:13:58 +01:00
Massimiliano Culpo
874f76e45e mvapich2: update checksum (#35587)
See #29340

Co-authored-by: Nat Shineman <shineman.5@buckeyemail.osu.edu>
2023-02-21 06:55:11 +01:00
Thomas Madlener
ebc24b7063 dd4hep: extend conflict on CMake (#27125) 2023-02-20 21:33:11 -08:00
Adam J. Stewart
ce9f8143cc Fix view support for optional Python extensions (#35489)
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2023-02-20 11:58:28 -08:00
Harmen Stoppels
c1ff7bbf04 environment views: better, earlier error on clash (#35541)
Spack generally ignores file-file projection clashes in environment
views, but would eventually error when linking the `.spack` directory
for two specs of the same package.

This leads to obscure errors where users have no clue what the issue is
and how to fix it. On top of that, the error comes very late, since it
happens when the .spack dir contents are linked (which happens after
everything else)

This PR improves that by doing a quick check ahead of time if clashes
are going to be anticipated (by simply checking for clashes in the
projection of each spec's .spack metadir). If there are clashes, a
human-readable error is thrown which shows two of the conflicting specs,
and tells users to user unify:true, view:false, or set up custom
projections.
2023-02-20 19:14:27 +01:00
Rocco Meli
aa708c8981 Add pytng (#35575)
* add pytng

* black

* add setuptools

* fix

* Update var/spack/repos/builtin/packages/py-pytng/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-pytng/package.py

* Update var/spack/repos/builtin/packages/py-pytng/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-02-20 11:15:19 -06:00
simonleary-umass-edu
712d358f7e apptainer use the --with-suid configure option (#35513) 2023-02-20 17:39:28 +01:00
Ben Wibking
e8238fe330 Patchel shutil.copystat to avoid PermissionError on Lustre (#27247) 2023-02-20 17:28:03 +01:00
Alec Scott
e8a19aa089 Add Alluxio v2.9.1 and deprecate previous versions due to CVE (#35574) 2023-02-20 07:54:45 -08:00
Alec Scott
4a844a971a httpd: add v2.4.55 and deprecate previous versions due to CVE-2022-31813 (#35571) 2023-02-20 07:35:16 -08:00
Harmen Stoppels
5e337d907b spack ci: remove 120s db timeout since 60s is the default now (#35566) 2023-02-20 14:41:26 +01:00
Harmen Stoppels
208c9585b8 Revert "lib/spack/spack/store.py: Fix #28170 for padding relocation (#33122)" (#35077)
This reverts commit c721aab006.
2023-02-20 13:56:11 +01:00
Alec Scott
1ae4ca611e Add restic v0.15.1 (#35563) 2023-02-20 12:53:10 +01:00
Alec Scott
54eddb2301 Add py-python-lsp-server v1.7.1 (#35561) 2023-02-20 12:52:55 +01:00
Alec Scott
01dafb8047 Add activemq v5.17.3 and deprecate previous version due to CVE (#35573) 2023-02-20 12:49:54 +01:00
Greg Becker
6ef2c33b0e scale mpi dependency is incorrect (#35385) 2023-02-20 02:49:38 -08:00
Paul Kuberry
beddf4dcc4 xyce: add patch for pymi parameter merge and add maintainer (#35421)
* xyce: add maintainer

* xyce: add patch for pymi parameter merge
2023-02-20 11:37:17 +01:00
Alec Scott
e143065448 Add go v1.20.1, 1.19.6 and un-deprecate previous versions without CVEs (#35560) 2023-02-20 11:33:07 +01:00
Patrick Bridges
9d9ea07424 Fix kokkos package.py to filter spack wrappers in launch compiler and cmake configs (#35494)
Kokkos when compiled by spack without +wrapper could potentially capture the spack compiler wrappers, resulting in cmake configs and kokkos_launch_compiler trying to run the spack compiler wrapper after installation.
2023-02-20 01:23:37 -08:00
elenimath
c769582709 Pass tests argument to solver method when concretizing together (#35290)
to make the workaround for #29447 work with `concretizer:unify:true` option
2023-02-20 10:21:24 +01:00
Sebastian Ehlert
1958c2f986 Update xtb 6.6.0 (#35436) 2023-02-20 10:17:32 +01:00
Rocco Meli
3016da79fe Add GNINA and related packages (#35439) 2023-02-20 10:14:00 +01:00
Adam J. Stewart
0500a3cec0 py-torchbenchmark: add new package (#35443) 2023-02-20 10:12:20 +01:00
Emil Briggs
313797e3d4 Update for v5.0.4 release. (#35511) 2023-02-20 09:52:38 +01:00
Wouter Deconinck
ae189cfab8 geant4: new version 11.1.1 (#35528)
Bugfix release only. No changes in build system.
2023-02-20 09:47:13 +01:00
Wouter Deconinck
7c09ab174b acts: new versions 23.1.0, 23.2.0, 23.2.1 (#35540)
* acts: new versions 23.1.0, 23.2.0, 23.2.1

- https://github.com/acts-project/acts/compare/v23.0.0...v23.1.0: no changes needed to package.py
- https://github.com/acts-project/acts/compare/v23.1.0...v23.2.0: no changes needed to package.py
- https://github.com/acts-project/acts/compare/v23.2.0...v23.2.1: no changes needed to package.py

* actsvg: new versions 0.4.27, 0.4.28 (and updated list_url)

* acts: depends_on actsvg@0.4.28: when acts@23.2: +svg

* autodiff: new version 0.6.5-0.6.12 (and list_url fix)

* vecmem: new versions 0.13.0-0.22.0 (and list_url fix)
2023-02-20 09:42:58 +01:00
Wouter Deconinck
c14b6b80cc clhep: new versions 2.4.6.2, 2.4.6.3, 2.4.6.4 (#35542)
Mostly minor changes in random and support for c++20. No build system changes needed.

Ref: https://gitlab.cern.ch/CLHEP/CLHEP/-/compare/CLHEP_2_4_6_2...CLHEP_2_4_6_4
2023-02-20 09:41:43 +01:00
Wouter Deconinck
899d2708a3 lhapdf: new versions 6.5.2, 6.5.3 (#35543)
https://gitlab.com/hepcedar/lhapdf/-/compare/lhapdf-6.5.3...lhapdf-6.5.1: bugfixes only
2023-02-20 09:41:26 +01:00
Wouter Deconinck
5ccc2e1a8e whizard: new version 3.1.0 (#35550)
https://gitlab.tp.nt.uni-siegen.de/whizard/public/-/compare/v3.0.3...v3.1.0, no changes to package.py needed.
2023-02-20 09:40:23 +01:00
Adam J. Stewart
7c01d3ba35 Fix broken links in docs (#35582) 2023-02-20 09:21:18 +01:00
Thomas Bouvier
81f11d5562 py-pyarrow: fix build environment (#35567)
* `py-pyarrow`: fix build environment

* Use `satisfies()` for specs
2023-02-19 12:48:14 -08:00
Adam J. Stewart
747f032ec2 pandoc: disable texlive variant by default (#35569) 2023-02-19 13:22:51 +01:00
Alec Scott
97ea182ee0 hugo: add v0.110.0, v0.108.0, v0.107.0 (#35562) 2023-02-19 00:19:11 +01:00
Harmen Stoppels
011c28a538 openblas: fix prereqs / make race (#35395)
Fix a race in the makefile where the shared lib was built before the
object files were available.

See https://github.com/xianyi/OpenBLAS/issues/3899
2023-02-18 12:27:34 -08:00
Harmen Stoppels
86320eb569 Improve error handling in buildcache downloads (#35568)
The checksum exception was not detailed enough and not reraised when using cache only, resulting in useless error messages.

Now it dumps the file path, expected
hash, computed hash, and the downloaded file summary.
2023-02-18 19:22:48 +01:00
Adam J. Stewart
c42a4ec1ec Ignore black reformat in git blame (#35544) 2023-02-18 01:03:50 -08:00
Harmen Stoppels
fb644de086 clang/apple-clang correct c/c++ standard flags (#35062) 2023-02-17 23:18:01 +01:00
Sinan
352d56d6b0 package_qgis_add_v328 (#35500)
* package_qgis_add_v328

* restore long term release

---------

Co-authored-by: sbulut <sbulut@3vgeomatics.com>
2023-02-17 14:58:47 -06:00
G-Ragghianti
b711d5a6a4 Moving official repo and download locations for slate, blaspp, and lapackpp (#35521) 2023-02-17 09:58:48 -08:00
Adam J. Stewart
983c68cc30 py-pyinstrument: add v4.4.0 (#35525) 2023-02-17 04:35:34 -08:00
Wouter Deconinck
7d8d538a71 gaudi: add v36.10 (#35527)
Bugfixes only, https://gitlab.cern.ch/gaudi/Gaudi/-/compare/v36r9...v36r10
2023-02-17 04:27:24 -08:00
Jim Edwards
fa3ced5242 add PIC flag in mpi-serial build (#35524) 2023-02-17 04:27:11 -08:00
Annop Wongwathanarat
73fcda19d2 armcomputelibrary: new package (#35515) 2023-02-17 04:14:23 -08:00
Sebastian Ehlert
65ee062bf6 Fix build for scine-xtb (#35386) 2023-02-17 04:14:08 -08:00
John W. Parent
573f7bf4cd Windows: enforce carriage return for .bat files (#35514)
Batch scripts in general will not function without carriage return line
endings on Windows. We rely on these scripts to support cmd, so we
should not allow these scripts to be converted to lf.

Note: Windows 11 supports lf line endings due to the use of Windows
Terminal. Once support for Windows 10 is dropped, this change can be
reverted.
2023-02-17 04:01:25 -08:00
H. Joe Lee
9f3f4b38e8 fio: add a new version (#35522)
The latest is 3.33.
2023-02-17 04:01:18 -08:00
Harmen Stoppels
476a29e1b6 Increase db timeout 3s -> 60s (#35517)
When running many concurrent spack install processes that need to write
to the db, Spack regularly times out. This is because writing to the DB
after another process has written to it requires deserialization of the
db, mutating it in memory, and serializing it again, which takes some
time. On top of that, I believe there's a 1 second retry when a write
lock cannot be obtained, so I think this means only 3 processes can
really write to the DB at the same time before timing out.
2023-02-17 08:42:41 +01:00
Adam J. Stewart
603569e321 Style: black 23, skip magic trailing comma (#35351)
* Style: black 23, skip magic trailing commas

* isort should use same line length as black

* Fix unused import

* Update version of black used in CI

* Update new packages

* Update new packages
2023-02-16 23:06:12 -06:00
Teo
b935809948 Halide: new variants and bug fixes (#35495)
* Update package.py

Initial new stuff

* Update package.py

* Update package.py

* Update package.py

* fix targets

* non-llvm backends

* ooops

* fix style

* Somehow that was not caught?

Somehow that was not caught?

* style

* Last fix

make capitalization consistent with Halide not LLVM...
2023-02-16 22:58:54 -06:00
Erik Heeren
b278a02406 py-pynrrd: new package (#35505) 2023-02-16 22:52:52 -06:00
Erik Heeren
9ff64b1627 py-cmake-format: new version, new variants (#35485)
* py-cmake-format: new version, new variants

* Update var/spack/repos/builtin/packages/py-cmake-format/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-02-16 22:51:40 -06:00
genric
5fc5ef8c58 py-luigi: add v3.2.0 (#35507) 2023-02-16 22:51:04 -06:00
Christopher Christofi
946816d787 py-cufflinks: new package version with 0.17.3 (#35427)
* py-cufflinks: new package version with 0.17.3

* Update var/spack/repos/builtin/packages/py-cufflinks/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-02-16 22:43:35 -06:00
Adam J. Stewart
03fb5c6aa9 py-fiona: python is a link dep (#35516) 2023-02-16 17:56:12 -08:00
AMD Toolchain Support
68f82357c8 added support zen4 support for gromacs (#35503)
Co-authored-by: Umashankar Sivakumar <Umashankar.Sivakumar@amd.com>
2023-02-16 16:38:58 -08:00
Andrew-Dunning-NNL
f073a9d589 dakota: run acceptance tests (#29654)
* dakota: run acceptance tests
* dakota: updated style guide
2023-02-16 16:28:21 -08:00
Massimiliano Culpo
d17cc42a48 fuse-overlayfs: add v1.10 (#35512) 2023-02-16 16:23:06 -08:00
Andrew-Dunning-NNL
0468205751 rdma-core: add static variant (#35308)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-02-16 16:01:19 -08:00
Harmen Stoppels
68b711c1ad view: fix issue with non-contributing specs (#34661)
Specs that did not contribute any files to an env view caused a problem
where zip(specs, files grouped by prefix) got "out of sync", causing the
wrong merge map to be passed to a package's `add_files_to_view`, which
specifically caused an issue where *sometimes* bin/python ended up as a
symlink instead of a copy.

One such example is kokkos + kokkos-nvcc-wrapper, as the latter package
only provides the file bin/nvcc_wrapper, which is also added to view by
kokkos, causing kokkos-nvcc-wrapper to contribute 0 files.

The test feels a bit contrived, but it captures the problem... pkg a is
added first and has 0 files to contribute, pkg b adds a single file, and
we check if pkg b receives a merge map (and a does not).
2023-02-16 10:36:22 -08:00
Alex Richert
69369429b6 esmf: use setup_build_environment instead of edit (#35249) 2023-02-16 19:01:34 +01:00
Erik Schnetter
f360ce7035 openssl: New version 1.1.1t (#35419)
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2023-02-16 09:48:28 -08:00
Harmen Stoppels
96ac4c7f98 simplify cdash filename (#35509) 2023-02-16 18:25:39 +01:00
Massimiliano Culpo
df72ba0d46 pfunit: add v4.6.3, clean up recipe (#35510)
* pfunit: add v4.6.3

* pfunit: use CMakePackage methods to define arguments

* pfunit: deprecate v3.X, make a variant conditional

* pfunit: simplify setting up environment variables

Reading the docs it seems only v3
needs F90_VENDOR to be set

* pfunit: fix option names

The names set before were unused

* pfunit: shared libraries seem not to be supported

See https://github.com/Goddard-Fortran-Ecosystem/pFUnit/issues/308#issuecomment-874725759
2023-02-16 18:10:16 +01:00
Mosè Giordano
b2e6da36ef openblas: Use more stable URL as source (#35428) 2023-02-16 18:02:59 +01:00
Carlos Bederián
832c435588 gromacs: add 2021.7, 2022.5, 2023, and some requirements (#35413) 2023-02-16 17:55:16 +01:00
Mosè Giordano
5079086019 cp2k: explicitly use C99 standard (#34957) 2023-02-16 17:45:06 +01:00
Erik Heeren
bfe06f694c Add py-mlflow and its dependencies (#34463)
* Add py-mlflow and its dependencies
* mlflow: fix syntax error in package.py
* py-mlflow: cleanup
  Process review remarks, add missing dependencies, add skinny variant
* Apply suggestions from code review
* Fix flake8 issues
* More formatting fixes
* Fix py-waitress dependency version
* py-mlflow: platform-specific dependency
* Update var/spack/repos/builtin/packages/py-mlflow/package.py
* Update var/spack/repos/builtin/packages/py-mlflow/package.py
* Process review remarks
* Fix typo in dependency version
* py-shap: fix dependencies
* py-arrow: fix dependencies
* py-slicer: remove py-setuptools explicit version
* py-pyarrow: dataset variant and pass options through environment
  It appears there are some issues when using `pip install` instead of
  `python setup.py` - this setup_build_environment should fix that.
* py-pyarrow: review remark
* Decouple setup_build_environment from install_options
* py-pyarrow: style
* Bump licenses to 2023

---------

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
Co-authored-by: Matthias Wolf <matthias.wolf@epfl.ch>
2023-02-16 08:40:56 -08:00
Joel Falcou
ae022e98d8 EVE 2023.02.15 update (#35493) 2023-02-16 08:26:17 -08:00
Phil Carns
3e1ba67e00 bump mochi-margo to 0.13 (#35499) 2023-02-16 08:21:45 -08:00
Thomas Bouvier
6eea171077 thrift: add v0.17.0 (#35210) 2023-02-16 16:57:25 +01:00
Richard Berger
1734127b7a lammps: refactor variants, add new versions (#34011) 2023-02-16 16:43:36 +01:00
Harmen Stoppels
44ed0de8c0 spack buildcache create: push all deps / cleanup (#34860) 2023-02-16 14:08:49 +00:00
Harmen Stoppels
09eb86e077 spack uninstall: follow run/link edges on --dependents (#34058)
`spack gc` removes build deps of explicitly installed specs, but somehow
if you take one of the specs that `spack gc` would remove, and feed it
to `spack uninstall /<hash>` by hash, it complains about all the
dependents that still rely on it.

This resolves the inconsistency by only following run/link type deps in
spack uninstall.

That way you can finally do `spack uninstall cmake` without having to
remove all packages built with cmake.
2023-02-16 14:26:30 +01:00
Massimiliano Culpo
50691ccdd9 Avoid verifying variants in default package requirements (#35037)
Default package requirements might contain
variants that are not defined in each package,
so we shouldn't verify them when emitting facts
for the ASP solver.

Account for group when enforcing requirements

packages:all : don't emit facts for requirement conditions
that can't apply to current spec
2023-02-16 11:57:26 +01:00
Harmen Stoppels
ce693ff304 buildcache create: avoid prefix copy (#35173) 2023-02-16 11:52:10 +01:00
Harmen Stoppels
18027d07d4 CHANGELOG.md: v0.19.1 (#35429) 2023-02-16 11:34:57 +01:00
Sergey Kosukhin
f31e8adc6b netcdf-c: add patch to enable '@4.9.0:~mpi+parallel-netcdf' (#35462) 2023-02-16 11:02:54 +01:00
rfbgo
a6731b732e Add support for star-ccm-plus v17 (#35056) 2023-02-16 10:53:52 +01:00
Rémi Lacroix
a00b92a69f cp2k: add v2023.1 (#35346) 2023-02-16 10:33:48 +01:00
Sreenivasa Murthy Kolam
90261029d8 ROCm packages: add v5.4.3 release (#35478) 2023-02-16 10:14:31 +01:00
Adam J. Stewart
85966a96b1 py-pytorch-lightning: add v1.9.2 2023-02-15 20:09:15 +01:00
John W. Parent
417d8ef547 XZ package: enable building on Windows (#35095)
* Convert XZ to multi build system
* Add MSBuild builder to XZ to support Windows compatibility
2023-02-15 09:17:32 -08:00
Adam J. Stewart
dd434ec413 Use the maintainers directive in all base classes (#35324)
* Use the `maintainers` directive in all base classes
* Update unit tests
2023-02-15 01:33:29 -08:00
Hector Martinez-Seara
1894b64851 Orca: Added required runtime libraries (#35481)
* Update package.py
  Several libraries are need to be present at run time so that the code can be run in parallel. 
  I have added them as dependencies and to LD_LIBRARY_PATH. Orca comes as a binary so the libraries cannot be added as RPATH at compilation time.
  Also, orca 5.0.3 was compiled against 4.1.1, not 4.1.2.
2023-02-14 16:17:37 -08:00
Dom Heinzeller
9551312e9d Add gsl-lite from JCSDA/NOAA-EMC spack fork (#35468)
* Add gsl-lite from JCSDA/NOAA-EMC spack fork
* Black-format var/spack/repos/builtin/packages/gsl-lite/package.py
* Update maintainers and remove redundant dependency in var/spack/repos/builtin/packages/gsl-lite/package.py
2023-02-14 12:05:39 -08:00
Adam J. Stewart
b282b66579 py-matplotlib: add v3.7.0 (#35471) 2023-02-14 11:47:57 -08:00
Mark W. Krentel
226a9b0e7f libmonitor: add version 2023.02.13 (#35474) 2023-02-14 11:17:20 -08:00
nkgh77
7aeee3339c fftw-api should be used for amdfftw and mkl (#35477)
fftw-api should be used instead of fftw because amdfftw and mkl can be linked.
2023-02-14 11:15:38 -08:00
Sergey Kosukhin
38512d18e9 Remove obsolete autotools patches (#35479)
* netcdf-fortran: remove obsolete Autotools patches
* openmpi: remove obsolete Autotools patches
* parallel-netcdf: remove obsolete Autotools patches
2023-02-14 10:54:37 -08:00
Philipp Edelmann
e75a07d155 fix intel-tbb build with rocmcc (#35472)
rocmcc is a clang compiler. Pass that information on to the TBB build
system.
2023-02-14 09:55:20 -05:00
luker
9b3c4e0696 Update cce.py (#35469)
* Update cce.py

adding c++17 flag for cce

* Update cce.py
2023-02-14 07:37:34 +00:00
Rocco Meli
54f783e656 Add fortls (#35455)
* fortls

* Update var/spack/repos/builtin/packages/py-fortls/package.py

* review

* Update var/spack/repos/builtin/packages/py-fortls/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* fixes

* review

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-02-13 23:27:29 -08:00
eugeneswalker
34441c9eaa ci: gpu test stack: turn off cuda@11.7 builds (#35467) 2023-02-13 21:54:01 -08:00
Adam J. Stewart
932a9dfc57 py-radiant-mlhub: add new versions (#35470) 2023-02-13 16:43:47 -08:00
Adam J. Stewart
3430c55b0a py-rasterio: add v1.3.6 (#35464) 2023-02-13 12:09:28 -08:00
Erik Schnetter
1a69d436e4 shtools: New version 4.10.1 (#35452) 2023-02-13 10:49:22 -08:00
Larry Knox
c5d7ea04d0 Add hdf5-vol-log version 1.4.0. (#35453) 2023-02-13 11:27:22 -06:00
Rocco Meli
1bc425ddad Add chemfiles and py-chemfiles (#35410) 2023-02-13 06:53:10 -07:00
Adam J. Stewart
471684add4 py-pip: add v23.0 (#35369) 2023-02-11 07:47:15 -08:00
Vanessasaurus
973d33a8f1 Automated deployment to update package flux-sched 2023-02-09 (#35415)
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
2023-02-10 22:34:06 -08:00
Adam J. Stewart
d0387cbbaf py-pytorch-lightning: add v1.9.1 (#35445)
* py-pytorch-lightning: add v1.9.1
* flake8
2023-02-10 18:37:42 -08:00
renjithravindrankannath
97d59c2efb Adding checksum for 5.3.3 of RVS (#35446)
Co-authored-by: sreenivasa murthy kolam <sreenivasamurthy.kolam@amd.com>
2023-02-10 18:12:56 -08:00
Chris Green
b69378c8cb Maintainer username update chissg -> greenc-FNAL (#35444) 2023-02-10 18:02:46 -08:00
H. Joe Lee
f1b004a0d3 pmdk: add the latest release 1.12.1 (#35440)
* pmdk: add the latest release 1.12.1
  Both master and 1.12.1 require CMake.
* pmdk: fix style
2023-02-10 14:44:22 -08:00
Sangu Mbekelu
1f7c59eb06 new py-amplpy package (#35359)
* new py-amplpy package
* [@spackbot] updating style on behalf of sm2939
* Update package.py
* Rename var/spack/repos/builtin/py-amplpy/package.py to var/spack/repos/builtin/packages/py-amplpy/package.py
* Edited file to change copyright year/dependencies and changed the directory of the file

---------

Co-authored-by: Sangu Mbekelu <s.mbekelu9@gmail.com>
2023-02-10 11:23:19 -08:00
John W. Parent
e1341d70ce MSBuilder/MSVC: correct toolchain ver (#35424)
#35098 added the correct extraction of toolset version for the MSVC
compiler. This updates the associated method in MSBuilder to retrieve
the (now correct) property.
2023-02-10 10:53:16 -08:00
SXS Bot
38c321abb3 spectre: add v2023.02.09 (#35426)
Co-authored-by: sxs-bot <sxs-bot@users.noreply.github.com>
2023-02-10 10:05:14 -08:00
Zack Galbreath
82041ac5a3 Restore our ability to submit build/test results to CDash from GitLab CI (#35328)
* Restore our ability to submit build/test results to CDash from GitLab CI

* Don't use CDash upload URL as report filename
2023-02-10 12:01:05 -06:00
Adam J. Stewart
ecf93c77ae py-fiona: add v1.9.1 (#35433) 2023-02-10 09:32:25 -08:00
Teo
34e42d5540 bug fix: halide -> Halide or something. (#35431) 2023-02-10 08:33:04 -08:00
Alex Richert
cdcbf7dc46 Add AlexanderRichert-NOAA as ESMF maintainer (#35430) 2023-02-10 08:23:06 -08:00
Richard Berger
e25501f76c singularity-eos: add v1.7.0, cleanup package (#35163)
* singularity-eos: add v1.7.0, cleanup package
* Update var/spack/repos/builtin/packages/singularity-eos/package.py
---------

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
Co-authored-by: rbberger <rbberger@users.noreply.github.com>
2023-02-10 07:58:08 -08:00
Vanessasaurus
7fec7cd013 Automated deployment to update package flux-core 2023-02-09 (#35414)
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
2023-02-10 02:03:50 -08:00
simonleary-umass-edu
3d881dbad7 meme add perl-xml-simple dependency (#35408)
Meme 4.5.0 has the first occurrence of the string
```
use XML::Simple
```
I found this by doing a binary search manually extracting tarballs until `grep` came up empty.
2023-02-10 01:21:40 -08:00
Sébastien Valat
c818e36d79 malt: new package (versions : 1.2.1) (#35272)
* malt: new package (versions : 1.2.1)
* malt: Fix remarks on new package (versions : 1.2.1)
* malt: Fix PR remarks by removing un-needed functions overriding
* malt: Fix NodeJs => NodeJS
* Use new maintainers syntax.
2023-02-09 19:58:28 -08:00
Sangu Mbekelu
4fbbb23933 new ampltools package (#35357)
* new ampltools package

* [@spackbot] updating style on behalf of sm2939

* Update and rename var/spack/repos/builtin/py-ampltools/package.py to var/spack/repos/builtin/packages/py-ampltools/package.py

Edited file to change copyright year/dependencies and edited directory

---------

Co-authored-by: Sangu Mbekelu <s.mbekelu9@gmail.com>
2023-02-09 19:57:42 -08:00
H. Joe Lee
b35af7d9e7 protobuf: add 3.21.12. (#35396)
* protobuf: add 3.21.12.
* protobuf: add maintainer and fix checksum
2023-02-09 16:11:24 -08:00
eugeneswalker
f7de22eb14 gpu test stack: add test w/ ^cuda@12 builds on A100 w/ newer driver (#35375)
* gpu test stack: test cuda@12 builds on A100 w/ newer driver

* get gpu info via nvidia-smi;

* kokkos+cuda^cuda@12 has genuine failure
2023-02-09 12:18:03 -07:00
Bill Williams
72f57ffede Score-P updates for version 8.0 (#35256)
* Add Score-P 8.0 and Cube 4.7/4.8 packages.
* Score-P 8.0 requires 4.8, not 4.7, Cube packages
* Add maintainer
* Add CUDA and HIP variants. Add version checks for CUDA (Score-P 8 requires CUDA 7), ROCm (variant only valid as of Score-P 8), and MPI (Score-P 7 requires at least version 2.2 of the MPI standard).
* Deprecate everything pre-7.0.
* Fix HIP dependencies and enable CUDA and HIP variants for configure.
* Deprecate OTF2 pre-2.3 and Cube pre-4.6
2023-02-09 10:50:50 -08:00
Loïc Pottier
12f43380b9 rabbitmq-c: fix bug when POLT < 1.14 compilation failed (POPT_ARG_ARGV undeclared) (#35403)
Signed-off-by: Loïc Pottier <pottier1@llnl.gov>
2023-02-09 10:24:48 -08:00
Frank Willmore
ffdc85e8ce Update package.py (#35402)
adding explicit dependency on X11 (needed when there is not a system install)
2023-02-09 10:04:15 -08:00
John W. Parent
259a32e5e4 Windows: MSMPI package fixes (#35112)
* Add "fake" mpi compiler wrappers to msmpi: msmpi doesn't actually
  provide wrappers, so this just assigns the wrappers to be whatever
  compiler that a dependent is using. Packages referencing the
  wrappers would otherwise break. This is assumed to be workable
  because build scripts will need to assemble appropriate information
  to pass to the compiler anyway
* Fix msmpi detection stanza ('executable' is not the correct name of
  the property)
* Fix compiler pkg dereference
2023-02-09 09:53:59 -08:00
Teo
8c0b8c785f tiramisu: new package (#35364)
* add initial package.

* Update package.py

* Update var/spack/repos/builtin/packages/tiramisu/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/tiramisu/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/tiramisu/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update package.py

* Hopefully this will be fine.

* Update package.py

* Update package.py

* Update package.py

* Update var/spack/repos/builtin/packages/tiramisu/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-02-09 09:09:30 -08:00
snehring
02d3bd782d py-netcdf4: adding version 1.6.2 (#35393)
* py-netcdf4: adding version 1.6.2

* py-netcdf4: updating setuptools dep.
2023-02-08 18:10:28 -08:00
Erik Heeren
b6906be846 cvise: new package (#35366)
* cvise: new package
* cvise: colordiff as optional dependency
* cvise: remove old versions and correctly name master version
* cvise: update license date
* cvise: use maintainers directive
* Remove @olupton as maintainer

After live discussion: it's been too long since he did anything with this package.
2023-02-08 16:13:32 -08:00
H. Joe Lee
a0ce6f7890 protobuf-c: add 1.4.1 version (#35397)
* protobuf-c: add 1.4.1 version
* protobuf-c: add maintainers
2023-02-08 15:49:59 -08:00
Rocco Meli
09cf265ff4 Add new versions of spglib (#35332)
* add spglib versions
* add maintainer
* fmt
* maintainer
* url
2023-02-08 15:37:47 -08:00
Adam J. Stewart
0d72b29193 wrf: fix v4.4.2 checksum (#35401) 2023-02-08 14:24:24 -08:00
Wouter Deconinck
7f1467e795 dd4hep: new version 1.24, depends_on podio@0.16: (#35384)
* dd4hep: new version 1.24, depends_on podio@0.16:
* Update var/spack/repos/builtin/packages/dd4hep/package.py

Co-authored-by: Valentin Volkl <valentin.volkl@cern.ch>
2023-02-08 10:51:22 -08:00
Mikael Simberg
f89cd29054 Add whip 0.2.0 (#35390) 2023-02-08 10:36:05 -08:00
Matthieu Dorier
89720583c3 [mochi-margo] Added version 0.12.1 (#35392) 2023-02-08 10:33:51 -08:00
Adam J. Stewart
7e78efcc44 spack help --spec: fix indentation (#35383) 2023-02-08 08:46:56 -08:00
Dan Lipsa
126accfce1 Fix external freetype that provides freetype-config.cmake (#35363)
* Fix external freetype that provides freetype-config.cmake

---------

Co-authored-by: Dan Lipsa <dan.lipsa@khq.kitware.com>
2023-02-08 10:00:14 -06:00
Massimiliano Culpo
27c2ff6c64 Ensure we print the correct branch number for tutorials (#35371) 2023-02-08 09:46:21 +01:00
Scott Wittenburg
9bde77199c bindist: use append as a method, not assignable attr (#35379) 2023-02-08 09:42:28 +01:00
Adam J. Stewart
f5ed18f6a3 py-installer: bootstrap without pip (#35341)
* py-installer: bootstrap without pip

* [@spackbot] updating style on behalf of adamjstewart

---------

Co-authored-by: adamjstewart <adamjstewart@users.noreply.github.com>
2023-02-07 22:30:06 -06:00
Christian Glusa
ccd11666c6 py-gmsh-interop: Fix PyPI link (#35381) 2023-02-07 20:23:41 -08:00
Christian Glusa
df80cffafa New package: PyNucleus & dependencies (#35327)
* Add py-scikit-sparse package

* Add py-gmsh-interop package

* Add py-modepy package

* Add py-pymbolic package

* Add py-meshpy package

* Add py-pynucleus package

* Add new version of py-pytools
2023-02-07 14:12:15 -08:00
Adam J. Stewart
b52d4b8abf py-symengine: setuptools 61+ not yet working (#35368)
* py-symengine: setuptools 61+ not yet working
* symengine still required for master
2023-02-07 11:49:07 -08:00
Teo
96624d1490 halide: new package (#35254)
* add halide package.

* some style changes.

* small fix

* Update var/spack/repos/builtin/packages/halide/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* Update var/spack/repos/builtin/packages/halide/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/halide/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update package.py

add comment to requirements.txt

* Update package.py

Fix version order.

* Update package.py

style

* Update package.py

Removed unneeded vars.

* Update var/spack/repos/builtin/packages/halide/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/halide/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update package.py

Fix some deps

* Update package.py

* Fix finding llvm cmake info

* Update package.py

---------

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-02-07 13:12:29 -06:00
Dan Lipsa
1648968514 Windows: Fix spack.bat handling of env commands (#35143)
This PR enables the successful execution of the spack binary cache
tutorial on Windows. It assumes gnupg and file are available (they
can be installed with choco).

* Fix handling of args with quotes in spack.bat
* `file` utility can be installed on Windows (e.g. with choco): update
  error message accordingly
2023-02-07 11:04:14 -08:00
Paul Kuberry
8358f430a4 xyce: change cmake cxx compiler variable (#35365) 2023-02-07 14:00:15 -05:00
Adam J. Stewart
ec045f993b py-fastrlock: add v0.8.1 (#35370) 2023-02-07 11:23:07 -07:00
Mosè Giordano
7fe2039b01 texinfo: Require ncurses (#35356)
I don't know if this is new in version 7.0, but to build `info`, which is a required executable at the end of the recipe, it is necessary to have a terminal library, otherwise you get
```
[...]
checking for tgetent in -ltinfo... no
checking for tgetent in -lncurses... no
checking for tgetent in -lcurses... no
checking for tgetent in -ltermlib... no
checking for tgetent in -ltermcap... no
checking for tgetent in -lterminfo... no
configure: WARNING: info needs a terminal library, one of: tinfo ncurses curses termlib termcap terminfo
[...]
configure: WARNING: Could not find a terminal library among tinfo ncurses curses termlib termcap terminfo
configure: WARNING: The programs from `info' directory will not be built.
```
then compilation runs, `info` is not built and installation fails according to Spack because the required executable is missing.
2023-02-07 05:27:21 -08:00
dependabot[bot]
25cb55ccd9 build(deps): bump docker/build-push-action from 3.3.0 to 4.0.0 (#35252)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3.3.0 to 4.0.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](37abcedcc1...3b5e8027fc)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-07 08:17:53 +01:00
dependabot[bot]
d4e075f667 build(deps): bump docker/setup-buildx-action from 2.2.1 to 2.4.1 (#35354)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 2.2.1 to 2.4.1.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](8c0edbc76e...f03ac48505)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-07 08:17:10 +01:00
Wouter Deconinck
ae98d2ba2f Support packages for using scitokens on OSG (#35334)
* Support packages for using scitokens on OSG

The Open Science Grid (OSG)  encourages scitokens to provide
certain services (e.g. writing to xrootd). Spack already
supports this through scitokens-cpp and xrootd +scitokens-cpp.

This adds py-htgettoken, a python utility to get a scitoken
from a vault through web authentication. To support htgettoken,
this also adds py-gssapi.

This also adds the OSG CA cert collection which is typically
at /etc/grid-security but pointed to in user installations by
the X509_CERTS_DIR variable.

This allows userspace through spack for functionality that
otherwise depends on installing the RPMs provided by OSG.

* fine, I'll fix style myself then

* fix maintainers

* py-gssapi: version before depends_on

* remove list_url

* add documentation on reason for git describe version numbers

* Apply suggestions from code review

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* better BEARER_TOKEN definition

* import os

* remove older version that don't build with setuptools

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-02-06 23:23:03 -06:00
snehring
8e49bf0c5b wps: adding version 4.4 (#35358) 2023-02-06 19:22:41 -08:00
Paul Kuberry
1bb119dbd7 xyce: add version 7.6.0 and RPATH patch for prior (#35360) 2023-02-06 19:17:31 -08:00
Matthias Wolf
a7f39da5db Fix path handling in prefix inspections (#35318)
At least with ZSH, prefix inspections containing `./bin` result in a
`$PREFIX/./bin` and result in strange `$PATH` handling.

I.e., `module load git` will prepend `/path/to/git/./bin`, `which git`
will find the right executable, but `git --version` will print the
system one. Normalize the relative path to avoid this behavior.

See also spack/spack#31867.
2023-02-06 19:12:30 -08:00
Rocco Meli
1d3a74d926 freesasa: add new package (#35192)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-02-06 18:52:45 -08:00
Rocco Meli
0448f18ab2 maeparser: add new package (#35191)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-02-06 18:52:23 -08:00
Daniele Colombo
2516ed181a relion: add patch to repair DoublePrec_CPU=OFF build (#35317)
* relion: add patch to repair DoublePrec_CPU=OFF build
* relion: added maintainer

Co-authored-by: Daniele Colombo <daniele.colombo@fht.org>
2023-02-06 15:32:06 -08:00
Sreenivasa Murthy Kolam
7740b37923 rocm llvm-amdgpu package - Build libcxx and libcxxabi thru LLVM_ENABLE_RUNTIMES flag. (#33610)
* changes to enable LLVM_ENABLE_RUNTIMES for libcxx and libcxxabi
* remove version update for 5.3.0 as it is done thru PR #33320 to enable
ci and reviews
2023-02-06 15:03:08 -08:00
Sreenivasa Murthy Kolam
358cc5ed1a Update the ROCm packages for ROCm-5.4.0 release. (#35071)
* initial commit for rocm-5.4.0 release
* update the versions for more packages for 5.4.0 release
* update the gallium patch for mesa for libllvm-15 for ROCm-5.4.0 release
* update rocm-openmp-extras and rocwmma recipes for 5.4.0 release
* fix build error for rocfft for 5.4.0
* address review comments for rocfft for 5.4.0 change
* undo the removal of the older patch file
* bump up the version for hipfft for 5.4.0
* fix the failure after the merge with develop
* add recipes updates for 5.4.0 for migraphx.miopen-hip,miopen-opencl
* address the review comments on the mesa patch.update the rdc package for
5.4.0 release
* fix style errors
2023-02-06 15:00:10 -08:00
Adam J. Stewart
30b8cfad98 py-mypy: add v1.0.0 (#35362) 2023-02-06 16:59:04 -06:00
Tamara Dahlgren
383a343412 GenericBuilder: facilitate post-install phase test callbacks (#35314) 2023-02-06 12:51:01 -08:00
Wouter Deconinck
3714d3443b acts: new versions 21.1.1, 22.0.1, 23.0.0 (#35227)
* acts: new versions 21.1.1, 22.0.1, 23.0.0

New versions:
- [major 23.0.0](https://github.com/acts-project/acts/compare/v22.0.0...v23.0.0):
  - new option `ACTS_BUILD_PLUGIN_GEANT4` -> enabled with existing variant `geant4`
  - new option `ACTS_BUILD_EXAMPLES_BINARIES`:
    - it is my understanding that the binaries for examples are deprecated (in favor of python examples); warnings to this effect have been printed for a few versions, and now the building of binaries is disabled by default,
    - rather than introducing a variant to enable deprecated behavior for only one or two versions, I propose that we just follow the default and keep this disabled. 
- [bugfix 22.0.1](https://github.com/acts-project/acts/compare/v22.0.0...v22.0.1) (no build system changes)
- [bugfix 21.1.1](https://github.com/acts-project/acts/compare/v21.1.0...v21.1.1) (no build system changes)

* acts: correct 23.0.0 sha

Co-authored-by: Hadrien G. <knights_of_ni@gmx.com>
2023-02-06 12:37:51 -08:00
Wouter Deconinck
42a452d54c estarlight, dpmjet: new packages (#32834)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-02-06 09:09:22 -07:00
Jim Galarowicz
a913ed229d Restore openspeedshop and openspeedshop-utils, update the cbtf components (#35052) 2023-02-06 16:10:41 +01:00
Vanessasaurus
7c122da48b flux-core: add missing dependency(#35312) 2023-02-06 06:29:30 -08:00
Glenn Johnson
fdaa54941d r-cvxr: add new package with dependencies (#35275) 2023-02-06 15:13:37 +01:00
Wouter Deconinck
135832650f qt: new version 5.15.8 (#35352)
No build system changes, just bug fixes.

https://github.com/qt/qtbase/compare/v5.15.7-lts-lgpl...v5.15.8-lts-lgpl

Builds fine on linux-ubuntu22.10-skylake.
2023-02-06 06:12:57 -08:00
Stephen Sachs
29d710fdec wrf: add optional netcdf_classic variant (#35261)
Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2023-02-06 15:12:32 +01:00
Mikael Simberg
13c4f92907 hpx: further constrain version for mimalloc patch (#35257) 2023-02-06 15:10:08 +01:00
Erik Schnetter
7a2c9601e8 reprimand: add v1.5 (#35245)
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2023-02-06 15:08:08 +01:00
Harmen Stoppels
31959b72b0 bump: nss + dep (#35294) 2023-02-06 15:06:16 +01:00
Erik Heeren
8109877424 amdlibflame: needs modern make (#35297)
See https://github.com/flame/libflame/issues/55
2023-02-06 15:05:16 +01:00
snehring
91243ecb5b tau: updating python version restriction (#35268)
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-02-06 14:58:04 +01:00
William Moses
1fc2bf846d enzyme: add v0.0.48 (#35304) 2023-02-06 14:56:46 +01:00
Vasileios Karakasis
848344d9a5 ReFrame: add versions up to v4.0.4 (#35330) 2023-02-06 14:39:47 +01:00
Cameron Smith
e08da4e2b6 pumi and zoltan: allow building when no fortran compiler is available (#35333) 2023-02-06 14:35:44 +01:00
Wouter Deconinck
75a72766ff assimp: new version 5.2.5 (#35335)
Bugfix release only. No build system changes.
2023-02-06 14:34:15 +01:00
Wileam Y. Phan
797e230498 intel-gtpin: add v3.2.2 (#35342) 2023-02-06 13:51:03 +01:00
Wouter Deconinck
1c6993145e libdrm: new versions 2.4.111-114 (#35343)
As of 2.4.113, the flag for man-pages is now a feature,
so true/false is now enabled/disabled. Other similarly
changed options are not used in the spack recipe (i.e.
experimental kms drivers).
2023-02-06 13:28:18 +01:00
Wouter Deconinck
00573d6ea2 sherpa: new version 2.2.14 (#35344)
"Version 2.2.14 contains a critical bug fix"
2023-02-06 13:12:19 +01:00
Luke Diorio-Toth
4c0116bd64 mash: added patch with limits header (#35209)
Co-authored-by: luke <luke@DESKTOP-E4JNTC1.attlocal.net>
2023-02-06 13:08:31 +01:00
Rémi Lacroix
f0d8355248 libxc 6.0.0: fix a bug affecting CP2K (#35347)
The patch fixes a missing comma at end of line in mgga_xc_b97mv.c.
2023-02-06 13:05:13 +01:00
Rémi Lacroix
01c21d0496 n2p2: add v2.2.0. (#35348) 2023-02-06 13:03:05 +01:00
Adam J. Stewart
43057e2edd py-numpy: add v1.24.2 (#35350) 2023-02-06 12:38:34 +01:00
Mikael Simberg
ba8d9f22ef Add pika 0.12.0 and pika-algorithms 0.1.1 (#35296) 2023-02-06 12:32:57 +01:00
Wouter Deconinck
07d7c32d79 qt: new versions 6.4.0, 6.4.1, 6.4.2 (#34698)
* qt: new versions 6.4.0, 6.4.1

- New libpsl vendored dependency in qt-base.
- New embree and tinyexr dependency in qt-quick3d.

We need to figure out a better way to deal with these vendored
dependencies in src/3rdparty. Removing them was a way to make sure
they are not used unintentionally. Many of these dependencies cannot
be overridden with a QT_FEATURE_system_* flag and are included directly
in cpp files. Many change versions from release to release, so even if
they use system (ie spack managed) versions we need to support this in
the depends_on lines.

What we can rely on?
- src/3rdparty is where vendored stuff is stored
- not much else...

Possible ways to deal with this:
- Change vendor_deps_to_keep to dict with versions, eg
```
vendor_deps_to_keep = {
    "xatlas": "@6:",
    "embree": "@6.4:",
    "tinyexr": "@6.4:",
}
```
- Similarly introduce system_deps_to_use:
```
system_deps_to_use = {
    "assimp@5.2:": "@6:",
}
```
and derive depends_on and QT_FEATURE_system_* from this dict.

* qt-*: new version 6.4.2, invert vendored pkgs logic

* qt-base: fix vendor_deps_to_avoid typo

* qt-*: move lots into QtPackage base layer
2023-02-05 22:38:05 -05:00
Massimiliano Culpo
017a15988c Don't use CDash upload URL as report filename (#35338)
fixes #35337
2023-02-05 12:58:45 +01:00
Cameron Rutherford
1ad290e5a2 Require 0.7.1 for ExaGO 1.5.0+. (#35331) 2023-02-03 22:10:14 -08:00
eugeneswalker
f6fa64f979 ci: add minimal gpu testing stack (#35251)
* ci: add minimal gpu testing stack

* kokkos +cuda requires +wrapper...

* require pass

* add raja+cuda
2023-02-03 18:33:34 -08:00
John W. Parent
1826a41cdd MSVC compiler: add platform toolset version (#35098) 2023-02-03 17:53:24 -08:00
Massimiliano Culpo
509a8ea5e2 py-packaging: add constrain on python version (#35325) 2023-02-03 19:00:23 +01:00
Erik Heeren
ca202ba11e py-igor: new package (#35229)
* py-igor: new package

* py-igor: review remarks
2023-02-03 09:02:43 -07:00
Erik Heeren
0b1d51e450 Add py netpyne, meautility, and lfpykit (#35262)
* py-netpyne: new package with dependencies

* py-netpyne, py-meautility, py-lfpykit: license update

* py-netpyne: review remarks

* py-netpyne: style

* py-netpyne: don't limit python version
2023-02-03 09:29:30 -06:00
Manuela Kuhn
2936573fc6 py-glmsingle: add 1.1 (#35311) 2023-02-03 09:28:16 -06:00
Rémi Lacroix
5d4c250354 CMake: Add version 3.25.2 (#35196) 2023-02-02 20:27:56 -08:00
Adam J. Stewart
b0913b1bf8 py-torchmetrics: add v0.11.1 (#35260) 2023-02-02 18:32:46 -08:00
John W. Parent
c49e2e5620 NMake builder: fix incorrect variable reference (#34937) 2023-02-02 16:34:35 -08:00
Adam J. Stewart
60624265f8 py-black: add v23.1.0 (#35279)
* py-black: add v23.1.0
* py-packaging: add v23.1.0
2023-02-02 14:32:37 -08:00
Larry Knox
79aa9e9c87 Update to latest version. (#35309)
Update hdf5-vol-external-passthrough to latest version compatible with HDF5 1.14
2023-02-02 16:16:56 -06:00
Wouter Deconinck
f2b0c1deab py-minkowskiengine: new package (sparse tensor autodiff by Nvidia) (#35302)
* py-minkowskiengine: new package (sparse tensor autodiff by Nvidia)

This python package (with cuda support) provides torch support for sparse
tensors. The `pybind11` headers are not found without the patch to `setup.py`.

* [@spackbot] updating style on behalf of wdconinc

* py-minkowskiengine: depends_on numpy, pybind11 type=link; no patch

* [@spackbot] updating style on behalf of wdconinc

---------

Co-authored-by: wdconinc <wdconinc@users.noreply.github.com>
2023-02-02 16:03:01 -06:00
John W. Parent
7d50680d9c zlib package: fix build on Windows (#35103) 2023-02-02 13:53:16 -08:00
snehring
defa4a2340 py-getorganelle: rename to getorganelle and add version 1.7.7.0 (#35270)
* py-getorganelle: rename to getorganelle and add version 1.7.7.0

* py-getorganelle: deprecating package
2023-02-02 13:13:32 -06:00
Manuela Kuhn
1e1d1ec43b py-nilearn: add 0.10.0 (#35303) 2023-02-02 13:02:19 -06:00
Rémi Lacroix
0e41788812 LAMMPS: Package KIM requires CURL after version 20190329 (#35182) 2023-02-02 06:12:27 -08:00
Massimiliano Culpo
ddecf07045 Use the maintainers directive in all packages (#35201) 2023-02-01 21:07:25 -08:00
Weiqun Zhang
9865a42b20 amrex: add v23.02 (#35286) 2023-02-01 15:32:38 -08:00
Jordan Galby
2432be5911 glib: 2.74: needs pcre2@10.34: (#35283) 2023-02-01 12:53:03 -08:00
Timothy Brown
002bd8d20b [WRF] Adding new versions (#35244)
* [WRF] Adding new versions.
* Style fixes.
2023-02-01 12:29:35 -08:00
Glenn Johnson
eac04af0e7 fastqc: Use the spack built perl (#35276)
The fastqc script was using the system perl. This PR sets the script to
use the spack built/provided perl. This PR also removes the code that
adds the java path. That should be handled by module loading as far as I
know.
2023-02-01 09:47:10 -08:00
Larry Knox
448bd31c87 Add hdf5 versions 1.14.0, develop-1.14 and update develop version from develop-1.13 to develop-1.15 (#34734)
* Add HDF5 version 1.13.3.

* Remove maintainers no longer with The HDFGroup.

* Add version hdf5-vol-async@1.4

* Add HDF5 version 1.14.0, develop-1.14, develop-1.15.
Add missing conflicts for api version and develop versions.

* Add conflicts statement to hdf5/package.py to avoid building hdf5 with
MPICH 4.0.x versions with bug that causes testphdf5 test to fail.

* Add patch to call find_package(MPI) for dependent packages not finding
it, not having called it themselves.

* Remove language components from find_package(MPI) in
hdf5_1_14_0_config_find_mpi.patch.

* Add HDF5 version 1.14.0, develop-1.14, develop-1.15.
Add missing conflicts for api version and develop versions.

* Add conflicts statement to hdf5/package.py to avoid building hdf5 with
MPICH 4.0.x versions with bug that causes testphdf5 test to fail.

* Add patch to call find_package(MPI) for dependent packages not finding
it, not having called it themselves.

* Remove language components from find_package(MPI) in
hdf5_1_14_0_config_find_mpi.patch.

* Don't guard ParaView patch on HDF5 variant

ParaView always needsd  HDF5 and ignores the variant.

* py-h5py: Newer versions of HDF5 introduce breaking API changes

---------

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
Co-authored-by: Ryan Krattiger <ryan.krattiger@kitware.com>
2023-02-01 09:17:17 -06:00
Massimiliano Culpo
46466302a9 Pin black to 22.12.0 to avoid spurious style changes (#35282)
We need to sync changes on major versions with
spackbot, to avoid the bot saying everything is
allright and have CI failing nonetheless.
2023-02-01 15:45:12 +01:00
Erik Heeren
5e39acea16 py-equation: new package (#35198)
* py-equation: new package

* py-equation: add variants for extra dependencies
2023-02-01 00:02:11 -06:00
Thomas Bouvier
cfdf0b6987 nccl: v2.15.5-1, v2.16.2-1 (#35248)
* `nccl`: v2.15.5-1, v2.16.2-1
* Fix wrong sha256
* Revert checksums (after GitHub has algorithm change reverted)
2023-01-31 19:17:20 -08:00
Erik Schnetter
6be6935671 libffi: New version 3.4.4 (#35087) 2023-01-31 16:46:41 -08:00
eugeneswalker
68233db9f6 Revert "flex%oneapi@2023.0.0: -Wno-error=implicit-function-declaration (#34900)" (#35181)
This reverts commit 62f83dfb6d.
2023-01-31 16:37:10 -08:00
renjithravindrankannath
aea2c73b04 Adding rocm-opencl prefix lib path to LD_LIBRARY_PATH for run_environment (#35011) 2023-01-31 16:26:42 -08:00
Harmen Stoppels
5dc5db6679 Fix awscli and deps (#35158)
* py-docutils/py-pyyaml specify python 3.11 compat

* bump awscli / py-botocore

* fix botocore again

* review fixes

* .
2023-01-31 13:32:53 -08:00
Alan Williams
51702a725b Add trilinos-solvers variant to nalu-wind package. (#35267)
* Add trilinos-solvers variant to nalu-wind package.
   This allows nalu-wind to be built against a trilinos installation
   which doesn't have amesos2, belos, ifpack2, or muelu enabled, if
   the nalu-wind user provides the spec 'nalu-wind@master~trilinos-solvers'
   Support for these solver-packages remains on by default.
* Fixed a style issue reported by CI.
* Incorporate change in wording suggested from review comments.
   ... to clarify that at least one, or both, of hypre and/or
   trilinos-solvers must be enabled. The error condition is if
   both are disabled.
* That style checker is picky...
* It really did want a trailing comma...
2023-01-31 12:42:43 -08:00
Erik Heeren
931c0edaf4 py-munkres: new package (#35259) 2023-01-31 13:41:23 -06:00
eugeneswalker
689bdd6f36 strumpack +rocm: set CMAKE_CXX_COMPILER to hipcc (#35153)
* strumpack +rocm: set CMAKE_CXX_COMPILER to hipcc

* strumpack@7.0.1+rocm^mpich: patch in upstream commit
2023-01-31 10:51:02 -08:00
Erik Heeren
a426db06e7 py-matplotlibscalebar: new package (#35242)
* py-matplotlibscalebar: new package

* py-matplotlibscalebar: style

* py-matplotlib-scalebar: review remarks
2023-01-31 08:27:16 -08:00
Erik Heeren
4b12d015e1 py-jinja2-cli: new package (#35238)
* py-jinja2-cli: new package

* Update var/spack/repos/builtin/packages/py-jinja2-cli/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-01-31 08:17:17 -08:00
Jen Herting
ecd4eac184 [py-protoc-gen-swagger] new package (#35241)
* [py-protoc-gen-swagger] new package

* [@spackbot] updating style on behalf of qwertos

---------

Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2023-01-30 15:20:51 -08:00
Jean-Baptiste Skutnik
4d502c8ff7 Update py-docker package (#35217)
* Add py-docker@5:

* [@spackbot] updating style on behalf of spoutn1k

* Ignore `tls` variant

* Update var/spack/repos/builtin/packages/py-docker/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* `py-docker`: `py-paramiko` version fix

---------

Co-authored-by: spoutn1k <spoutn1k@users.noreply.github.com>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-01-30 15:20:04 -08:00
kent-cheung-arm
227c6061e5 arm-forge: add 22.1.3 (#35200) 2023-01-30 12:36:39 -08:00
Adam J. Stewart
3453f59ba3 py-fiona: add v1.9.0 (#35247) 2023-01-30 13:56:25 -06:00
Alex Richert
3201b4e2a1 HDF5 static (#34577)
* Add HDF5 static support for netcdf-c
* Update var/spack/repos/builtin/packages/hdf5/package.py
   Apply pkgconfig fix for all libraries, not just lz

Co-authored-by: Sergey Kosukhin <skosukhin@gmail.com>

* Update package.py
   Fix pkg config templates
* remove subprocess+2 lines
* Try netcdf-c changes only

Co-authored-by: Sergey Kosukhin <skosukhin@gmail.com>
2023-01-30 11:51:07 -08:00
Adam J. Stewart
80d26168b5 py-torchgeo: add v0.4.0 (#35155)
* py-torchgeo: add v0.4.0
* Add missing java dep
2023-01-30 11:47:10 -08:00
Adam J. Stewart
67040e79c5 py-protobuf: various updates (#35188) 2023-01-30 13:17:31 -06:00
Adam J. Stewart
a116775ff3 py-shapely: add v2.0.1 (#35246) 2023-01-30 11:08:08 -08:00
Erik Heeren
de2aaeb26f py-mariadb: new package (#35240)
* py-mariadb: new package

* py-mariadb: style
2023-01-30 13:07:15 -06:00
Erik Heeren
830e3211e5 py-hjson: fix typo in latest version (#35234) 2023-01-30 12:49:07 -06:00
Tamara Dahlgren
6b3b7f8b7f Bugfix: Update Petsc Python dependency (#35216)
* Bugfix: Update Petsc python dependency for at least 3.18:
* Update var/spack/repos/builtin/packages/petsc/package.py

Co-authored-by: Satish Balay <balay@mcs.anl.gov>
2023-01-30 10:21:50 -08:00
eugeneswalker
99f3716346 e4s: add and prefer boost +python +filesystem +iostreams +system (#35180) 2023-01-30 07:37:35 -08:00
Cory Bloor
4f6ef3b698 rocblas: remove unnecessary conflicts (#35232)
The gfx906:xnack- and gfx908:xnack- targets were introduced in ROCm 4.1
and replaced gfx906 and gfx908 as default build targets, but the library
can still be built for gfx906 and gfx908 if requested.
2023-01-30 16:08:36 +01:00
Ken Raffenetti
2dc020af31 mpich: add 4.0.3 and 4.1 releases (#35218) 2023-01-30 14:01:13 +01:00
snehring
17f2d66285 montage: fixing compilation issues for newer gcc versions (#35220) 2023-01-30 13:57:41 +01:00
simonleary-umass-edu
32f480936a apptainer: update constraint on go dependency (#35230) 2023-01-30 13:56:52 +01:00
Satish Balay
481b598963 hypre: Update URL using citation instructions from https://github.com/hypre-space/hypre/wiki/Citing-hypre (#35225) 2023-01-30 11:29:06 +01:00
John W. Parent
4b186df5b4 adios2: allow building on Windows (#35102) 2023-01-30 11:15:54 +01:00
aleixrocks
f4dac7cd4c OmpSs: add v2022.11 (#35228) 2023-01-30 11:11:36 +01:00
eugeneswalker
48a63719b2 e4s oneapi: use oneapi@2023.0.0 (#34634) 2023-01-29 13:22:14 -08:00
Alec Scott
f576b4b6c5 gmake: Fix too many levels of symbolic links error (#35224)
* gedit: Fix too many levels of symlinks error

* Fix package formatting with black
2023-01-29 15:00:35 -06:00
eugeneswalker
9f5d9266e6 e4s: add power stack (#32710)
* e4s: restore builds builds

* gitlab ci: allow UO to build protected binaries for signing

* use newer image; comment out failing builds

* gitlab-ci: Some tweaks for e4s power builds

- fix tags (no longer require generate jobs to run on aws)
- fix resource requests for generation jobs resource requests
- remove SPACK_SIGNING_KEY from protected power build jobs
- update UO signing key path
- change the CDash build group to reflect stack name
- retry pipeline generation jobs *always*

* correct double packages: section

* gitlab-ci:script: modernize

* remove new gnu make, not for ppc64le

---------

Co-authored-by: Scott Wittenburg <scott.wittenburg@kitware.com>
2023-01-29 10:53:02 -06:00
John W. Parent
28c4809a8f freetype: add CMake support (#35107) 2023-01-28 10:32:17 -08:00
Michael Kuhn
57d6b70226 xz: add 5.4.1 and 5.2.10 (#35172) 2023-01-28 08:32:19 -08:00
Ben Cowan
508fcd8240 Added newer versions of PyAMG and added dependencies for 4.2 and later. (#35185)
* Added newer versions of PyAMG and added dependencies for 4.2 and later.

* Fixed dependencies.
2023-01-27 13:11:21 -08:00
Sebastian Grimberg
bec79d9ee1 New Spack package: Palace (#35189) 2023-01-27 12:47:18 -08:00
Jean-Baptiste Skutnik
27775163ca Added e4s-cl package (#35117)
* Added e4s-cl package

* Version order change

* Added e4s-cl dependencies

* Added python-sotools dependency

* [@spackbot] updating style on behalf of spoutn1k

* Add missing versions to py- packages

* Fix style

* [@spackbot] updating style on behalf of spoutn1k

* Update var/spack/repos/builtin/packages/e4s-cl/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/e4s-cl/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-python-sotools/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Add docker removing patch for e4s-cl

Co-authored-by: spoutn1k <spoutn1k@users.noreply.github.com>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-01-27 10:02:39 -08:00
Erik Heeren
b1cf512d78 py-nexusforge: add with dependencies (#35208)
* py-nexusforge: add with dependencies

* py-pyshacl, py-sseclient: more style

* py-hjson, py-nexus-sdk, py-nexusforge, py-puremagic: more style

* py-pyshacl: license update

* py-nexusforge, py-prettytable, py-pyshacl: review remarks

* py-nexusforge: make the variant mean something

Too hasty to commit...
2023-01-27 09:12:31 -08:00
Erik Heeren
0bfd06d0b6 Py ipyparallel (#35178)
* py-ipyparallel: add 8.4.1, which builds with py-hatchling

* py-ipyparallel: copyright and redundant py-setuptools dependency

* py-ipyparallel: py-packaging was dropped after 8.0.0
2023-01-27 08:52:23 -08:00
Jose E. Roman
367bd4d670 New patch release SLEPc 3.18.2 (#35176) 2023-01-27 07:44:19 -07:00
Mosè Giordano
8f359df2d3 libblastrampoline: Add v5.3.0 and v5.4.0 (#35194) 2023-01-27 09:51:18 +01:00
Massimiliano Culpo
cc2ae9f270 Add a maintainers directive (#35083)
fixes #34879

This commit adds a new maintainer directive,
which by default extend the list of maintainers
for a given package.

The directive is backward compatible with the current
practice of having a "maintainers" list declared at
the class level.
2023-01-27 07:51:24 +01:00
Erik Heeren
75f1077b4b py-nptyping, py-typish: add package (#35126)
* py-typish: add package

* py-typish: style fix

* py-nptyping: new package

* py-nptyping, py-typish: review remarks

* py-nptying: style

* py-nptyping: generic url, avoid pypi for now
2023-01-26 10:21:38 -06:00
Erik Heeren
b1e6507060 py-deap: add 1.3.3 (#35175) 2023-01-26 10:19:03 -06:00
Adam J. Stewart
2981b4e5ee py-rasterio: add v1.3.5 (#35167) 2023-01-26 15:41:05 +01:00
Harmen Stoppels
6847d73504 Cleanup of binary text relocation (#34188)
Move the relocation of binary text in its own class

Drop threaded text replacement, since the current bottleneck 
is decompression. It would be better to parallellize over packages,
instead of over files per package.

A small improvement with separate classes for text replacement is that we
now compile the regex in the constructor; previously it was compiled per
binary to be relocated.
2023-01-26 12:18:53 +01:00
Mosè Giordano
eeba92e788 wrf: Fix patching of config file when using GCC for v3.9.1.1 (#35140)
The regex doesn't actually work because dollar signs and parentheses have to be
escaped.  Also, compiling with OpenMPI requires defining the macro
`MPI2SUPPORT`.
2023-01-26 11:59:54 +01:00
Massimiliano Culpo
84917cfa79 Extract functions to read spec files from different format (#35094)
This commit makes explicit the format version of the spec file
we are reading from.

Before there were different functions capable of reading some
part of the spec file at multiple format versions. The decision
was implicit, since checks were based on the structure of the
JSON without ever checking a format version number.

The refactor makes also explicit which spec file format is used
by which database and lockfile format, since the information is
stored in global mappings.

To ensure we don't change the hash of old specs, JSON representations
of specs have been added as data. A unit tests checks that we read
the correct hash in, and that the hash stays the same when we
re-serialize the spec using the most recent format version.

Co-authored-by: Harmen Stoppels <me@harmenstoppels.nl>
2023-01-26 10:40:46 +01:00
Wouter Deconinck
14e327be23 opencascade: add v7.7.0 (#35039) 2023-01-26 10:36:49 +01:00
Harmen Stoppels
c329f7de33 binutils: v2.30, 2.39, 2.40 (#35128)
- Add `binutils +pgo`
- Add dejagnu build dep and fix its deps
- Default to -O3 -g0 when using gcc/clang to make binutils faster and
  smaller
2023-01-26 10:28:26 +01:00
Sebastian Ehlert
f686a90779 Add package for serenity and its scine wrapper (#35072) 2023-01-26 02:00:34 -07:00
Harmen Stoppels
918bb63c3a test/config.py: fix import issues (#35076) 2023-01-26 09:53:44 +01:00
renjithravindrankannath
8d0cbb9812 Setting LIBDIR to lib in rocm-smi-lib across all platform (#34805) 2023-01-26 09:38:35 +01:00
mtaylo12
95a76de7d5 py-poetry-core GIT_DIR fix (#35139) 2023-01-26 09:26:53 +01:00
Richard Berger
0b388ff930 ports-of-call: add v1.4.1, deprecate old versions (#35151) 2023-01-26 08:18:55 +01:00
Filippo Spiga
d25ac66a5d NVIDIA HPC SDK: add v23.1 (#35169) 2023-01-25 22:47:38 -08:00
Seth R. Johnson
682ffd30ac p5-h5py: restrict python version based on import bugs (#35166)
```
  File ".../spack/var/spack/environments/scale-mpi/.spack-env/._view/4yiorsdd4pefrnwgrwlwt3yzo5i235il/lib/python3.10/site-packages/h5py/_hl/base.py", line 19, in <module>
     from collections import (Mapping, MutableMapping, KeysView,
ImportError: cannot import name 'Mapping' from 'collections' (.../spack/var/spack/environments/scale-mpi/.spack-env/._view/4yiorsdd4pefrnwgrwlwt3yzo5i235il/lib/python3.10/collections/__init__.py)
```

Fixed in https://github.com/h5py/h5py/pull/1069 which was first merged
in v2.9.
2023-01-26 07:28:39 +01:00
Matthew Thompson
af3dba8db6 Update gftl, gftl-shared, fargparse, pfunit, yafyaml, pflogger (#35119) 2023-01-26 07:06:05 +01:00
eugeneswalker
08a24b5e03 trilinos@14: conflicts with cxxstd=14 (#35164) 2023-01-25 20:33:44 -08:00
Adam J. Stewart
65fbc5a461 py-sphobjinv: add v2.3.1 (#35044) 2023-01-25 14:09:00 -08:00
Adam J. Stewart
80f3888cc8 py-pytorch-lightning: add +extra variant (#35121)
* py-pytorch-lightning: add +extra variant

* Update dependencies

* py-fsspec: add v2023.1.0
2023-01-25 15:58:26 -06:00
Christopher Christofi
5845750a10 perl-math-symbolic: add 0.612 (#35145) 2023-01-25 13:25:49 -08:00
Michael Kuhn
c529a0fddf qperf: add verbs support (#35147) 2023-01-25 13:20:55 -08:00
Adam J. Stewart
d7265d7ddc py-cligj: add v0.7.2 (#35149) 2023-01-25 13:17:20 -08:00
Adam J. Stewart
df0be87ada py-pycocotools: add v2.0.6 (#35150) 2023-01-25 13:14:21 -08:00
Adam J. Stewart
af2aeb275f py-scikit-learn: add v1.2.1 (#35152) 2023-01-25 13:10:57 -08:00
Richard Berger
4fef0bac20 spiner: add v1.6.0 (#35154) 2023-01-25 13:08:16 -08:00
Loïc Pottier
b32a07bbe1 amqp-cpp: added RabbitMQ C++ API (#35156)
Signed-off-by: Loïc Pottier <pottier1@llnl.gov>
2023-01-25 13:05:32 -08:00
Sebastian Ehlert
8709dbc232 Add Orca version 5.0.3-f.1 (#35157) 2023-01-25 12:18:46 -08:00
Christopher Christofi
54b9e3ce07 py-colorlover: new package with version 0.3.0 (#35144) 2023-01-25 11:36:43 -06:00
Sebastian Ehlert
d35c24a3ed Add packages for scine modules (#34969)
* Add packages for scine modules

- lbfgspp (dependency for scine-utilities)
- scine-core
- scine-utilities and py-scine-utilities (virtual)
- scine-readuct and py-scine-readuct (virtual)
- scine-sparrow and py-scine-sparrow (virtual)
- scine-database and py-scine-database (virtual)
- scine-molassembler and py-scine-molassembler (virtual)
- scine-xtb and py-scine-xtb (virtual)
- py-scine-chemoton
- py-scine-puffin

* Fix line-length for flake8

* Remove virtual dependencies

* Update detection of boost, minor fixes in packages / dependencies

* Correctly declare build-only dependencies, add git versions

* Add sparrow dummy packages, fix dependencies

* Rename latest version from develop to master

* Restore original sparrow package

* Also rename latest version for chemoton and puffin
2023-01-25 11:33:37 -06:00
Matthias Wolf
d4d200952e py-flatten-dict: require poetry to build. (#35122)
* py-flatten-dict: require poetry to build.

The sources seem to contain a bundled, auto-generated `setup.py`.
Building with `pip` insist on using Poetry as mentioned in
`pyproject.toml`, so require it as a build dependency.

* Update var/spack/repos/builtin/packages/py-flatten-dict/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-flatten-dict/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-01-25 11:33:04 -06:00
Erik Heeren
902a40bf72 py-lazy: add 1.4 and 1.5 (#35124)
* py-lazy: add 1.4 and 1.5

* py-lazy: add url_for_version
2023-01-25 11:24:50 -06:00
Thomas Bouvier
a2d51cd4db Add package py-continuum (#35082)
* Add package `py-continuum`

* `py-continuum`: missing `py-pytest-mock` dependency

* `py-continuum`: add missing python dependency

* [@spackbot] updating style on behalf of thomas-bouvier

* Patch to remove useless `prospector` package

* Link to original PR

Co-authored-by: thomas-bouvier <thomas-bouvier@users.noreply.github.com>
2023-01-25 11:23:35 -06:00
Erik Heeren
f8e433689a py-pyspark: new versions (#35129)
* py-pyspark: new versions

* py-py4j: new versions

* py-py4j: more style

* py-py4j: even more style

* py-spark, py4j: review remarks
2023-01-25 11:22:43 -06:00
Harmen Stoppels
5f8c09fd33 Print file summary on checksum validation failure (#35161)
Currently we print "sha256 checksum failed for [file]. Expected X but
got Y".

This PR extends that message with file size and contents info:

"... but got Y. File size = 123456 bytes. Contents = b'abc...def'"

That way we can immediately see if the file was downloaded only
partially, or if we downloaded a text page instead of a binary, etc.

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-01-25 15:02:41 +00:00
Harmen Stoppels
8eb4807615 libxc: 6.1.0 (#35159)
Currently 6.0.0 fails on develop about incorrect shasum, but I can't
reproduce; maybe the download was temporarily unavailable.
2023-01-25 14:12:59 +01:00
Rocco Meli
047a481e48 Update COSTA package (#35137) 2023-01-25 12:01:46 +01:00
Gilles Gouaillardet
051abfb894 py-scipy: do not build 1.6 and older with python < 3.10.1 (#35120)
py-scipy 1.6 and older come with pre cython-ized files that
use the _PyGen_Send symbol that was removed from python 3.10.0.161,
so do not build these old versions with python 3.10.1 and later
2023-01-24 18:32:21 -08:00
eugeneswalker
0447ba1213 loki%gcc@11: -std=c++14 to avoid issue #32122 (#35148) 2023-01-24 17:42:33 -08:00
Rémi Lacroix
ff3dbe9394 LAMMPS: Add package ml-hdnnp. (#35133)
First added as user-hdnnp in version 20210527.
2023-01-24 17:15:23 -08:00
Thomas Bouvier
90d00f8a59 Add package py-nvidia-dali (#35058)
* Add package `py-nvidia-dali`

* Add linux check

* Add missing deps
2023-01-24 18:26:04 -06:00
Taillefumier Mathieu
fdc6bd3f1c Fix dbcsr checksums (#35134) 2023-01-24 22:33:12 +01:00
Cory Bloor
d17aaf8729 hip: add cuda variant (#33872) 2023-01-24 22:30:58 +01:00
Jen Herting
ef6699b874 New package: srcml (#35097)
* Initial srcml
* [srcml]
  - Fixed dependencies likely will need some more rework
  - Disabling packaging cmake file (for now)
  - Added patch to fix issue with source code library import
* [srcml] updated copyright
* [srcml] requires antlr complied with -fPIC
* [srcml] cleaned up dependencies
* [srcml] flake8
* [srcml] limiting boost versions

Co-authored-by: Benjamin Meyers <bsmits@rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2023-01-24 13:13:56 -08:00
Adam J. Stewart
f5418ac344 py-planetary-computer: add new package (#35089) 2023-01-24 10:25:29 -08:00
Mikael Simberg
909a5b1d83 Add whip 0.1.0 and use in pika (#35073)
* Add whip 0.1.0
* Make pika depend on whip@0.1.0

Co-authored-by: msimberg <msimberg@users.noreply.github.com>
2023-01-24 10:20:10 -08:00
Emil Briggs
9a0884bfed rmgdft: Update for version 5.0.1 (#35047)
* Updated for RMG version 5.0.1
* Update var/spack/repos/builtin/packages/rmgdft/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2023-01-24 10:18:05 -08:00
Seth R. Johnson
a9d5db572c ForTrilinos: new version 2.2.0 (#35138) 2023-01-24 09:52:45 -08:00
Harmen Stoppels
16dbbb9b26 libgcrypt: make sure flags go through env (#35135)
Parts of libgcrypt should not be optimized with -O1/2/3, so it's best to
let the build system do that; the build system cannot know the compiler
wrapper would inject optimization flags
2023-01-24 09:47:33 -08:00
John W. Parent
3695200a3c hdf5: remove direct dependency on msmpi on Windows (#35111) 2023-01-24 07:57:40 -08:00
Matthieu Dorier
a1b2ba412b mochi-margo: add v0.12 (#35132) 2023-01-24 16:46:27 +01:00
John W. Parent
c81f1235a9 Windows: conflict with Apple-GL (#35114) 2023-01-24 16:41:30 +01:00
Taillefumier Mathieu
eaa16338de Update dbcsr version (#35131) 2023-01-24 15:38:49 +01:00
Massimiliano Culpo
115b6b2a51 Avoid creating help.sh and test.sh in cwd (#35123)
When running unit-test the test/ci.py module is leaving
garbage (help.sh, test.sh files) in the current working
directory.

This commit changes the current working directory to a
temporary path before those files are created.
2023-01-24 03:42:15 -08:00
kwryankrattiger
cd2d6a6397 ParaView/VTK: Patch xdmf2 for HDF5 1.13 (#33930)
* ParaView/VTK: Patch xdmf2 for HDF5 1.13

* Meson: update meson build system for 0.64

* ParaView: Change HDF5 1.13 patch to 1.13.1/2 patchs

* Mesa: Remove legacy mesa option from meson_args

* Use append to assemble meson args
2023-01-23 19:22:21 -08:00
Erik Schnetter
c5086a5d0e curl: New version 7.87.0 (#35088) 2023-01-23 19:02:31 -08:00
downloadico
b5fc217dc2 actually add samtools 1.16.1 and fix Copyright dates on samtools, bcftools, and htslib (#35118)
* samtools: add version 1.16.1 (for real this time!)
also, fix Copyright date

* bcftools and htslib: fix Copyright date
2023-01-23 17:37:40 -08:00
Richarda Butler
a4b8753456 Update: spack help --spec (#35115)
* Update variant & compiler propagation
* Add the info for non boolean variants
* Add example for multi variants
2023-01-24 00:42:08 +00:00
Jean-Luc Fattebert
f3e7669400 Update qmd-progress package.py (#34841) 2023-01-23 14:20:19 -08:00
HELICS-bot
042d305ed0 helics: Add version 3.4.0 (#35096)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-01-23 13:56:19 -08:00
Rémi Lacroix
aca4be1fff n2p2: Allow building shared libraries (#35080) 2023-01-23 13:46:19 -08:00
Alex Richert
beba33b2d8 Update parallelio from NOAA-EMC fork (#34837) 2023-01-23 22:29:06 +01:00
Wouter Deconinck
0f2e0a01a9 freeimage: fails to compile with c++17, use c++14 (#35067)
* freeimage: fails to compile with c++17, use c++14
  Only `opencascade` when a (non-default) variant depends on `freeimage`, which seems to have gone unmaintained. There are c++17 standard violations [[1]]( https://en.cppreference.com/w/cpp/language/except_spec) in the code, so we can at most expect c++14. Since some compilers default to c++17 (gcc-12) we need to be explicit.
* freeimage: install directly in prefix
* freeimage: fix inverted patch
2023-01-23 12:14:19 -08:00
downloadico
c2d68975bc update Samtools, bcftools, and htslib versions (#35043)
* samtools: add version 1.6.1
* htslib: update version to 1.6
* bcftools: update version to 1.6
2023-01-23 12:13:05 -08:00
Christopher Christofi
b9e196e40c perl-test-leaktrace: add 0.17 (#35063) 2023-01-23 10:58:08 -08:00
Jen Herting
a7fbe60660 [antlr] added pic variant (#35091)
* [antlr] modernize config arg processing
* [antlr] added pic variant
* [antlr] flake8
2023-01-23 10:52:23 -08:00
Mark W. Krentel
64b373e156 hpcviewer: add version 2023.01 (#35036) 2023-01-23 10:26:54 -08:00
Harmen Stoppels
13739e0783 environments: don't replace relative view path with absolute path on concretize/install (#34958)
* environments: don't rewrite relative view path, expand path on cli ahead of time

Currently if you have a spack.yaml that specifies a view by relative
path, Spack expands it to an absolute path on `spack -e . install` and
persists that to disk.

This is rather annoying when you have a `spack.yaml` file inside a git
repo, cause you want to use relative paths to make it relocatable, but
you constantly have to undo the changes made to spack.yaml by Spack.

So, as an alternative:

1. Always stick to paths as they are provided in spack.yaml, never
   replace them with a canonicalized version
2. Turn relative paths on the command line into absolute paths before
   storing to spack.yaml. This way you can do `spack env create --dir
   ./env --with-view ./view` and both `./env` and `./view` are resolved
   to the current working dir, as expected (not `./env/view`). This
   corresponds to the old behavior of `spack env create`.

* create --with-view always takes a value
2023-01-23 10:03:54 -08:00
Massimiliano Culpo
b8684008d0 apptainer: add v1.1.5 (#35075) 2023-01-23 09:53:10 -08:00
eugeneswalker
a82fe2010f e4s: add cusz +cuda (#35004) 2023-01-23 09:15:39 -08:00
Thomas Bouvier
3bd0d9a3d2 py-pytest-mock: add v3.10.0 (#35074) 2023-01-23 09:33:11 -06:00
Thomas Bouvier
fbc24d7bab py-datasets: add v2.8.0 (#35069)
* `py-datasets`: add v2.8.0

* Add missing +http variant + fix wrong dependency versions
2023-01-22 17:08:40 -06:00
eugeneswalker
4b91a40bdf axom: need to specify +rocm as part of dependency constraints (#35066)
* axom: need to specify +cuda, +rocm as part of dependency constraints

* remove lines 120, 128

* fix line length, spack style issue
2023-01-22 11:23:39 -08:00
Thomas Bouvier
b7a68938c2 arrow: don't use when as a keyword argument to filter_file() (#35065)
Co-authored-by: thomas-bouvier <thomas-bouvier@users.noreply.github.com>
2023-01-22 09:05:37 +01:00
Alex Richert
ce8727cece Add --exclude option to 'spack external find' (#35013)
* Add --exclude option to 'spack external find' to ignore user-specified external packages
* Update bash completion arg order for external find

Co-authored-by: Todd Gamblin <tgamblin@llnl.gov>
2023-01-21 15:43:20 -08:00
Thomas Bouvier
da1165ffa3 py-wandb: add v0.13.9 (#35059)
* `py-wandb`: add v0.13.9

* `py-wandb`: mark v0.10.1 as deprecated

* Fixes suggested by @adamjstewart

* No platform-specific requirements
2023-01-21 17:21:41 -06:00
Dylan Simon
f593309b4e py-numba: fix py-numpy version dependencies (#35054)
as per #34362 comments
2023-01-21 07:17:53 -08:00
Harmen Stoppels
a15448eae8 gmake: bootstrap without make (#35050) 2023-01-21 02:27:56 -08:00
Matthew Thompson
cc01e33d53 fms: add 32bit variant, add protections (#35010)
The GEOS Earth System Model currently requires the 32-bit variant of FMS. This PR adds that variant.
2023-01-21 10:27:13 +01:00
markus-ferrell
c3e3c392a6 Windows/testing: enable tests for "spack find" (#33588) 2023-01-20 17:54:06 -08:00
John W. Parent
a424f7f173 Identify Windows support with tags (#35027)
All packages with explicit Windows support can be found with
`spack list --tags=windows`.

This also removes the documentation which explicitly lists
supported packages on Windows (which is currently out of date and
is now unnecessary with the added tags).

Note that if a package does not appear in this list, it *may*
still build on Windows, but it likely means that no explicit
attempt has been made to support it.
2023-01-20 13:32:28 -08:00
QuellynSnead
d192dab5a1 netlib-lapack: Fix Fortran detection for XL (#35048)
* PR 30738 introduced changes in how we access compiler info. Looks like the XL case
got missed.
2023-01-20 13:13:39 -08:00
Harmen Stoppels
aa91358cc2 libbsd: bump (#35029) 2023-01-20 11:48:57 -08:00
Thomas Bouvier
bdc0b73b7a Add package py-imagehash (#35015)
* Add package `py-imagehash`

* Use virtual package for `py-pillow`
2023-01-20 10:28:04 -08:00
eugeneswalker
62f83dfb6d flex%oneapi@2023.0.0: -Wno-error=implicit-function-declaration (#34900) 2023-01-20 10:18:13 -08:00
Zack Galbreath
91fd6d5a84 Allocate more memory for generate jobs in all stacks (#35040)
* Allocate more memory for generate jobs in all stacks
* Add a 60 minute timeout on generate jobs
2023-01-20 11:06:49 -07:00
Harmen Stoppels
a14b5de43c ca-certificates-mozilla: 2023-01-10 (#35018) 2023-01-20 09:52:47 -08:00
Harmen Stoppels
5fde84d0cb libiconv: bump (#35035) 2023-01-20 08:37:48 -08:00
Harmen Stoppels
434a3d02ac ncurses: bump (#35033) 2023-01-20 08:07:43 -08:00
Harmen Stoppels
cb213ae9af sqlite: bump (#35032) 2023-01-20 06:52:40 -08:00
eugeneswalker
3e2721ac7f hypre: add option for sycl variant (#34987)
* hypre: add option for sycl variant

* hypre +sycl conflicts with @:2.23

* hypre +sycl: raise InstallError for unsupported compiler
2023-01-20 05:43:05 -08:00
Marco De La Pierre
f2f3d03d00 Add nf-core-tools, and three remainder deps (#34466)
* nextflow recipe: added latest stable version

* tower-cli recipe: added latest release

* recipes tower-agent and tower-cli renamed to nf-tower-agent and nf-tower-cli

* recipes nf-tower-agent and nf-tower-cli: small fix

* nf-core-tools recipe: added most py- dependencies

* nf-core-tools: recipe without galaxy-tool-util (for testing)

* fixed typos in py-yacman recipe

* fixed typos in py-pytest-workflow recipe

* fixed typo in nf-core-tools recipe

* fixed typos in py-yacman recipe

* fixes in recipes for py-questionary and py-url-normalize

* fixes to py-yacman recipe

* style fixes to py- packages that are dependencies to nf-core-tools

* fix in py-requests-cache recipe

* added missing dep in py-requests-cache recipe

* nf-core-tools deps: removed redundant python dep for py packages oyaml and piper

* nf-core-tools recipe: final, incl dep on py-galaxy-tool-util

* nf-core-tools: new version with extra dependency

* added py-galaxy-util, draft: added some required dep versions, still have to add 40+ deps

* nextflow and nf-core-tools packages: added my self as maintainer

* style fixes

* style fix for nf-core-tools recipe

* added license to py-logmuse recipe

* audit fixes

* style fix after audit fix

* py-galaxy-tool-util: added deps 1st bunch

* audit/style fixes, including adding missing dep package

* more audit/style fixes

* more more audit/style fixes

* moooore audit fixes

* py-galaxy-tool-util: dependencies 2nd chunk

* silly audit fix

* py-galaxy-util deps: 3rd bunch - first 20 done

* fixes

* style fix

* py-galaxy-tool-util: 4th bunch of deps

* stashing dep recipe backbones for py-galaxy-tool-util

* nf-core-tools: using pre-built wheel for dependency py-galaxy-tool-util

* nf-core-tools: adding also py-galaxy-util, as wheel

* fix

* nextflow: added latest bugfix version

* Update var/spack/repos/builtin/packages/nf-core-tools/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/nf-core-tools/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* nf-core-tools pr: 1st bunch of review edits

* nf-core-tools: 2nd bunch of review edits

* adding back tower-agent and tower-cli as deprecated

* nf-core-tools: 3rd bunch of review edits

* small style fix

* prepping py-galaxy-tool-util for further work

* nf-core-tools: last bunch of deps, except for galaxy-tool-util and pulsar

* audit fixes

* updates to py-galaxy-tool-util and its deps, still 2 to work on

* one style fix

* updated recipe for py-galaxy-util

* updated recipe for py-pulsar-galaxy-lib

* typo fix

* shasum fixes

* updated py-sqlalchemy from develop

* added newest versions (today) for nf-tower-agent and nf-tower-cli

* Update var/spack/repos/builtin/packages/py-requests-cache/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-requests-cache/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* adding 2nd bunch of nf-core deps from update/nextflow-tools

* adding 3rd bunch of nf-core deps from update/nextflow-tools

* 4th chunk of nf-core deps from update/nextflow-tools

* Update var/spack/repos/builtin/packages/py-dnspython/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-dnspython/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-dnspython/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-fastapi-utils/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-pastedeploy/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-pebble/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-fastapi/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-fastapi/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-gunicorn/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-starlette/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-starlette/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-starlette/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-parsley/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-paste/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-paste/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* py-gxformat2: added comment

* py-lagom: now using github tarballs

* fix for py-lagom

* adding missing deps to py-fastapi-utils

* another fix to py-lagom

* Update var/spack/repos/builtin/packages/py-dnspython/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-fastapi-utils/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-fastapi-utils/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-fastapi-utils/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-lagom/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-supervisor/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-social-auth-core/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* fixes from PR review

* adding missing deps, from PR review

* py-galaxy2cwl from github tarball, as per PR review

* fix to py-tuswsgi, as per PR review

* nf-tools: edits from PR review

* adding 3x more galaxy deps

* fix

* fixing circular dep of py-poetry-plugin-export with py-poetry

* added newest nf-core-tools version

* Update var/spack/repos/builtin/packages/py-galaxy-util/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* fix in py-poetry-plugin-export

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-01-20 04:05:26 -08:00
Harmen Stoppels
2a55a9ef80 file: zstd support (#35041) 2023-01-20 09:54:19 +01:00
Massimiliano Culpo
8f8394a829 Add type hints to DependencySpec (#35021)
* DependencySpec: add type hints

* DependencySpec: make deptypes a keyword only argument
2023-01-20 09:53:57 +01:00
Harmen Stoppels
fb7c8d1768 libidn2: bump (#35034) 2023-01-20 00:28:45 -08:00
Harmen Stoppels
6a6181f07a libffi: bump (#35030) 2023-01-19 22:58:39 -08:00
Tal Ben-Nun
c6b98cea07 Fix string append in OpenCV package (#35008)
* Fix string append in OpenCV package

* style
2023-01-19 18:36:09 -08:00
Annop Wongwathanarat
a1b0213fcb qmcpack: enable linking with armpl-gcc and acfl for BLAS and FFT (#34496) 2023-01-19 18:09:12 -08:00
eugeneswalker
6713f7feda e4s: ecp-data-vis-sdk +rocm: remove redundant amdgpu_target specification (#35022) 2023-01-20 00:18:41 +00:00
Harmen Stoppels
cdd2010a76 libunistring: bump to 1.1 (#35031) 2023-01-19 14:38:03 -08:00
Adam J. Stewart
a15b77bdf6 py-pandas: add v1.5.3 (#35025) 2023-01-19 13:45:45 -08:00
David Zmick
b40e96b006 nmap: don't depend on py2 (ndiff and zenmap); add 7.93 (#34851)
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2023-01-19 19:50:53 +01:00
Harmen Stoppels
c97f5ecfee file: bump (#35028) 2023-01-19 11:29:15 -07:00
Matthew Thompson
d35a91f776 pfunit: fix max_array_rank variant (#34952)f 2023-01-19 18:49:42 +01:00
Brian Van Essen
939b749726 HDF5: supports external detection (#34940) 2023-01-19 08:44:00 -08:00
Harmen Stoppels
80db7a8a52 buildcache create: make "file exists" less verbose (#35019)
Currently we print 3 lines of "file exist" warning per tarball, this is
a bit excessive. Instead, it can be a simple single-line tty.warn
message.
2023-01-19 15:35:24 +00:00
Todd Gamblin
d0c1b7a14e python: remove CPATH from setup_run_environment (#34727)
Currently, the `python` package tries to set `CPATH` in `setup_run_environment()`.

We no longer set `CPATH` and other destructive environment variables (like
`LD_LIBRARY_PATH`) in modules, so we shouldn't do something special for Python.

Also, the way `python` sets `CPATH` causes issues. Because it does a header search to
find directories containing headers, if you bootstrap `mypy` or other style tools on a
fresh Ubuntu image with *no* python devel headers installed, you'll get an error like
this when trying to load the thing you just installed:

```console
[root@980de539843d /]# spack -b load py-mypy
==> Error: Unable to locate python headers in any of these locations:
/usr/include/python3.6m
/usr/include/3.6
/usr/Headers
```

The headers and includes aren't needed to get `mypy` in the path or for `mypy` to work,
so we're failing unnecessarily here.

- [x] remove `setup_run_environment()` from `python/package.py`
2023-01-19 07:08:39 -08:00
Stephen Sachs
45ea7c19e5 [py-numpy, py-scipy] Enable MKL & ARMpl (#34979) 2023-01-19 08:01:31 -07:00
Harmen Stoppels
a357a39963 depfile: --make-target-prefix -> --make-prefix (#35009)
Since SPACK_PACKAGE_IDS is now also "namespaced" with <prefix>, it makes
more sense to call the flag `--make-prefix` and alias the old flag
`--make-target-prefix` to it.
2023-01-19 14:58:34 +01:00
Harmen Stoppels
a7613407df git: bump. CVE-2022-41903 / CVE-2022-23521 (#35014)
Co-Authored-By: Alec Scott <scott112@llnl.gov>

Co-authored-by: Alec Scott <scott112@llnl.gov>
2023-01-19 14:57:28 +01:00
Mark W. Krentel
0cdb7ccdd3 hpctoolkit: update cray support (#34995)
1. add variant cray-static, older crays build hpcprof-mpi static,
   newer ones build dynamic.

2. move URL patches from github to gitlab.

3. add workaround for a bug where a file is mistakenly overwritten.

4. add conflict for hpcprof-mpi at 2022.10.01.

* [@spackbot] updating style on behalf of mwkrentel

Co-authored-by: mwkrentel <mwkrentel@users.noreply.github.com>
2023-01-18 23:23:09 -08:00
eugeneswalker
fed4eb2526 e4s ci: clean up unnecessary constraints (#35006) 2023-01-18 21:23:15 -08:00
eugeneswalker
1bf1c7de76 e4s: add sz3 (#35007) 2023-01-18 22:21:30 -06:00
eugeneswalker
ae5408de9a e4s ci: add veloc (#35003) 2023-01-18 16:48:23 -08:00
Adam J. Stewart
d0f5a62a7d VTK: fix 9.1–9.2 builds (#34589)
* VTK: add missing dependencies

* Deal with missing verdict dep

* http -> https

* Add patch to fix failing cmake

* Update netcdf-cxx usage in build recipe

* netcdf-cxx4 doesn't work
2023-01-18 17:29:29 -06:00
Greg Becker
08101639cd Bugfix: External Python Extensions (#34202)
Normally when using external packages in concretization, Spack ignores
all dependencies of the external. #33777 updated this logic to attach
a Python Spec to external Python extensions (most py-* packages), but
as implemented there were a couple issues:

* this did not account for concretization groups and could generate
  multiple different python specs for a single DAG
* in some cases this created a fake Python spec with insufficient
  details to be usable (concretization/installation of the
  extension would fail)

This PR addresses both of these issues: 

* For environment specs that are concretized together, external python
  extensions in those specs will all be assigned the same Python spec
* If Spack needs to "invent" a Python spec, then it will have all the
  needed details (e.g. compiler/architecture)
2023-01-18 15:17:28 -08:00
Harmen Stoppels
fce95e2efb license year bump (#34921)
* license bump year
* fix black issues of modified files
* mypy
* fix 2021 -> 2023
2023-01-18 14:30:17 -08:00
eugeneswalker
e391edf2f5 hdf5@1.8.21 %oneapi@2023.0.0: -Wno-error=int-conversion (#34983) 2023-01-18 12:23:00 -08:00
Todd Gamblin
c9e85ada15 npm: Add latest version, update build (#34947)
* npm: Add latest version, update build

The `npm` package had gotten a bit long in the tooth and only suported the last version
for which running `configure` / `make` / `make install` actually worked.

- [x] Update the package to support npm@9, in which `npm install .` works properly and
  installation is easier.

- [x] Update the package so that `npm@6:8` also install successfullly. The incantation
  that is *supposed* to work on these versions is `node bin/npm-cli.js install $(node
  bin/npm-cli.js pack . | tail -1)`, but depending on the version one of `npm install`
  or `npm pack` will fail when run straight from the install directory. So now we just
  manually copies things over.

This seems to make the `npm` install much more reliable for all of `npm@6:9` (at least
for me).

udpates the `npm` build to support versions 6-9 and fixes the install for all of
them on macos.

* update for review
2023-01-18 14:18:33 -06:00
eugeneswalker
8eb803ab4c e4s: add py-h5py ~mpi variant (#34998) 2023-01-18 19:28:47 +00:00
Annop Wongwathanarat
ee3529fc10 lammps: enable linking with armpl-gcc FFT (#34980) 2023-01-18 11:25:41 -08:00
Harmen Stoppels
f050b1cf78 depfile: variable with all identifiers (#34678)
With the new variable [prefix/]SPACK_PACKAGE_IDS you can conveniently execute
things after each successful install.

For example push just-built packages to a buildcache

```
SPACK ?= spack
export SPACK_COLOR = always
MAKEFLAGS += -Orecurse
MY_BUILDCACHE := $(CURDIR)/cache

.PHONY: all clean

all: push

ifeq (,$(filter clean,$(MAKECMDGOALS)))
include env.mk
endif

# the relevant part: push has *all* example/push/<pkg identifier> as prereqs
push: $(addprefix example/push/,$(example/SPACK_PACKAGE_IDS))
	$(SPACK) -e . buildcache update-index --directory $(MY_BUILDCACHE)
	$(info Pushed everything, yay!)

# and each example/push/<pkg identifier> has the install target as prereq,
# and the body can use target local $(HASH) and $(SPEC) variables to do
# things, such as pushing to a build cache
example/push/%: example/install/%
	@mkdir -p $(dir $@)
	$(SPACK) -e . buildcache create --allow-root --only=package --unsigned --directory $(MY_BUILDCACHE) /$(HASH) # push $(SPEC)
	@touch $@

spack.lock: spack.yaml
	$(SPACK) -e . concretize -f

env.mk: spack.lock
	$(SPACK) -e . env depfile -o $@ --make-target-prefix example

clean:
	rm -rf spack.lock env.mk example/
``
2023-01-18 19:19:46 +01:00
Stephen Sachs
6cf32110b9 [armpl-gcc] Make pkg-config files available (#34978)
* [armpl-gcc] Make pkg-config files available
  ARMpl pkgconfig files are located in a non-default location and do not have the
  .pc extension. Changing those both helps pkgconfig pick them up correctly, e.g.
  in the meson build of `py-scipy`.
* Address @annop-w comments
* symlink instead of cp.

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2023-01-18 07:57:55 -08:00
Annop Wongwathanarat
d841542b9c acfl: update hash for 22.1 on RHEL-7 (#34997) 2023-01-18 15:55:29 +01:00
Harmen Stoppels
3bc943ae51 Remove verbose warning message from _try_install_from_binary_cache (#34994)
In the past we checked remote binary mirrors for existence of a spec
before attempting to download it. That changed to only checking local
copies of index.jsons (if available) to prioritize certain mirrors where
we expect to find a tarball. That was faster for CI since fetching
index.json and loading it just to order mirrors takes more time than
just attempting to fetch tarballs -- and also if we have a direct hit
there's no point to look at other mirrors.

Long story short: the info message only makes sense in the old version
of Spack, so it's better to remove it.
2023-01-18 08:25:48 -06:00
Dom Heinzeller
548aa21b18 Bug fix for duplicate rpath errors on macOS when creating build caches (#34375) 2023-01-18 13:32:16 +01:00
Adam J. Stewart
c9775df0a4 py-pytorch-lightning: add v1.9.0 (#34996) 2023-01-18 13:06:19 +01:00
Nate deVelder
6f11efe576 Add tiny profile cmake support (#34993) 2023-01-18 13:01:23 +01:00
Harmen Stoppels
fef0f47d65 spack mirror create takes local paths only (#34992)
spack mirror create cannot work with urls, so it shouldn't promote local
paths to file urls.
2023-01-18 11:45:58 +01:00
Adam J. Stewart
20575ca96a Subclass PythonExtension instead of custom test method (#34985) 2023-01-17 19:47:16 -08:00
Glenn Johnson
13121b4c28 py-itk: add version 5.3.0 (#34968)
* py-itk: add version 5.3.0

* Remove wheels for unsupported python versions

* Fill out the version specs

* Drop th 'm' from the cp37 version strings
2023-01-17 17:42:17 -07:00
eugeneswalker
ef8214682c py-h5py %oneapi@2023.0.0: -Wno-error=incompatible-function-pointer-types,pointer-types-discards-qualifiers (#34984) 2023-01-17 15:38:20 -08:00
Todd Gamblin
aca7dd6c2b py-sphinx-immaterial: new package (#34948)
* py-sphinx-immaterial: new package

This is a new-ish theme for Sphinx that's based on MkDocs's `immaterial` theme. More on
the theme here: https://jbms.github.io/sphinx-immaterial/, but it seems to be very clear
and readable.  We *might* consider switching to it for Spack's docs.

* Update var/spack/repos/builtin/packages/py-sphinx-immaterial/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-sphinx-immaterial/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-sphinx-immaterial/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-sphinx-immaterial/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* add note about node.js requirements

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-01-17 16:49:38 -06:00
eugeneswalker
c6d715c188 rempi: patch rempi_message_manager.h: include string (#34982) 2023-01-17 13:33:10 -08:00
Massimiliano Culpo
b148a43f08 CDashReporter: remove unused argument (#34869)
* CDashReporter: remove unused argument
* Removed extract_ctest_test_data
2023-01-17 11:09:38 -08:00
Massimiliano Culpo
74901a3d0d Forward lookup of "test_log_file" and "test_failures" (#34882)
* Forward lookup of "test_log_file" and "test_failures"
  refers #34531
  closes #34487
  fixes #34440
* Add unit test
* py-libensemble: fix tests
* Support stand-alone tests with cached files as install-time tests

Co-authored-by: Tamara Dahlgren <dahlgren1@llnl.gov>
2023-01-17 10:59:48 -08:00
Annop Wongwathanarat
10d5f14c85 cp2k: enable linking with armpl-gcc for BLAS and FFT (#34981) 2023-01-17 09:34:43 -08:00
Harmen Stoppels
c0389ab3d0 python: 3.11.1, use -flto=thin when clang (#34951) 2023-01-17 17:26:38 +01:00
Harmen Stoppels
2fdd72094a Bump gnupg & libksba, (CVE) (#34976)
* gnupg: 2.4.0

* libksba: 1.6.3 (CVE-2022-47629)
2023-01-17 14:27:12 +01:00
roottreej
7659912dc4 Reduce verbosity in mirrors.yaml (#34210)
Ensure `spack mirror add <name> <url/path>` without further arguments translates to `<name>: <url>` key value pairs in mirrors.yaml. If --s3-* flags are provided, only store the provided ones. 

Co-authored-by: Harmen Stoppels <me@harmenstoppels.nl>
2023-01-17 13:19:13 +00:00
Loïc Pottier
ff4cccbf6c faiss: fixed error when importing faiss python package (#34672)
This is only a work-around for the actual problem that Python is used to install libraries instead of CMake, so we end up with BUILD_RPATH not INSTALL_RPATHs.

Signed-off-by: Loïc Pottier <pottier1@llnl.gov>
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2023-01-17 13:43:35 +01:00
Harmen Stoppels
5074e72be8 bubblewrap: 0.7.0 (#34975) 2023-01-17 02:47:24 -08:00
Christopher Christofi
3d7674225f perl-file-temp: add 0.2311 (#34866) 2023-01-17 01:47:28 -08:00
Glenn Johnson
873871bc62 libcroco: Get the doc variant working (#34735) 2023-01-17 10:43:12 +01:00
MatthewLieber
35d0dc8bb5 mvapich: add new package in preparation for v3.0 (#34276)
* Add new file for MVAPICH 3.0a release

Creating this as a new package since it requires some new configuration
options and because we are moving to the name "MVAPICH" and droping the
2 (following a similar move by MPICH).

Co-authored-by: Nat Shineman <shineman.5@osu.edu>
Co-authored-by: Matthew Lieber <lieber.31@osu.edu>
2023-01-17 10:42:17 +01:00
Ashwin Kumar
331e3cd4e1 flexiblas: add versions up to v3.3.0 (#34874) 2023-01-17 10:36:27 +01:00
Marie Houillon
100134a2b1 New version for openCARP packages, v12.0 (#34710)
Co-authored-by: openCARP consortium <info@opencarp.org>
2023-01-17 10:31:15 +01:00
Axel Huebl
39ffef8363 Doc: config.yaml mention $env (#34905)
Add one more note on the $env variable in `config.yaml`.
2023-01-17 10:06:00 +01:00
dependabot[bot]
f0672bbaf8 build(deps): bump actions/checkout from 3.2.0 to 3.3.0 (#34829)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3.2.0 to 3.3.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](755da8c3cf...ac59398561)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-17 10:02:31 +01:00
Cameron Smith
4fa0c1d11c mfem: support pumi w/zoltan and parmetis (#34864) 2023-01-17 09:47:59 +01:00
Dom Heinzeller
9e845635ce crtm: overhaul package, add crtm-fix (#34715)
Update crtm from JCSDA-EMC spack fork, add crtm-fix
2023-01-17 09:47:14 +01:00
dependabot[bot]
184a75ec54 build(deps): bump docker/build-push-action from 3.2.0 to 3.3.0 (#34972)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3.2.0 to 3.3.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](c56af95754...37abcedcc1)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-17 09:44:00 +01:00
Dom Heinzeller
dbd425f0f8 ncview: bypass compiler check against netcdf-c compiler (#34580) 2023-01-17 09:30:52 +01:00
iarspider
3161784e9a OpenCV: checksum for 4.5.5, make contrib optional (#34313)
* OpenCV: checksum for 4.5.5, make contrib optional

* [@spackbot] updating style on behalf of iarspider

* Add conflicts for contrib modules

* Fix typo

* Implement changes from review

* Update var/spack/repos/builtin/packages/opencv/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: iarspider <iarspider@users.noreply.github.com>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-01-17 00:22:00 -08:00
Glenn Johnson
a72a3fb2e0 gcc: add patch for noexcept declarations (#34964)
There are some declarations that need to be declared noexcept for
valarray. This affects gcc 9.5:11.2.
2023-01-17 08:58:45 +01:00
Marco De La Pierre
e253184886 Re adding 4th chunk of nf-tools deps (#34974)
* Revert "Revert "4th chunk of nf-core deps from update/nextflow-tools (#34564)" (#34960)"

This reverts commit 891a63cae6.

* fix to py-python-multipart, as per PR review
2023-01-16 23:12:00 -08:00
Glenn Johnson
d276a5f8e4 py-macs2: add version 2.2.7.1 and support python@3.10: (#34970)
* py-macs2: add version 2.2.7.1 and support python@3.10:

The tarball from PyPi includes the Cythonized C files. The tarball from
github does not. Remove the Cythonized C files from the source so that
they are rebuilt with the Spack Python/Cython combination. This is
necessary for python-3.10 but make sense for other combinations as well.

* Edits based on review

- set python version constraint on version 2.2.4
- removed all python-2 versions and related constraints.
2023-01-17 00:00:41 -06:00
Glenn Johnson
3ed219578b py-xxhash: fix xxhash dependency (#34971)
* py-xxhash: fix xxhash dependency

The dependency should be xxhash@0.8.0:.

* Add version 3.2.0
2023-01-16 23:58:10 -06:00
Loïc Pottier
0040236cc6 rabbitmq-c: added RabbitMQ C interface (#34892)
Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2023-01-16 19:02:42 -08:00
Glenn Johnson
0629c8e5fa itk: add version 5.3.0 (#34967)
* Add depends_on("mpi") to fix missing <mpi.h>
Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2023-01-17 03:52:10 +01:00
Glenn Johnson
6f19eb5e67 hisat2: add version 2.2.1 and sra variant (#34966)
- add python dependency
- add perl dependency
- set python and perl interpreters in scripts
2023-01-17 03:31:00 +01:00
Glenn Johnson
b7e416046f sra-tools: add version 3.0.3 and fix build (#34965) 2023-01-17 03:29:52 +01:00
Glenn Johnson
b2cc36109f stringtie: add version 2.2.1 and fix build (#34973)
- stringtie uses internal samtools so remove dependency on samtools
- add dependency for zlib
- use make release target to get correct flags
2023-01-17 02:55:06 +01:00
Sergey Kosukhin
1262dcfb9f intel-oneapi-mpi: fix setup_dependent_build_environment (#34956) 2023-01-16 23:11:43 +01:00
Benjamin Meyers
c3dc7a8349 py-fastfold add py-numpy upper bound (#34962) 2023-01-16 14:07:36 -08:00
iarspider
84d2c8a693 Add checksum for hwloc 2.9.0 (#34919) 2023-01-16 13:12:38 -08:00
Sebastian Ehlert
37b1bc9c26 Add package file for xtb and py-xtb (#34857)
* Add package file for xtb and py-xtb

* Retain maintainers from PythonPackage

* Update package files

- use extends("python") instead of tampering with PYTHONPATH
- use PyPI for downloading sdist of py-xtb
- add simple-dftd3 0.7.0
- add dftd4 3.5.0
- remove --wrap-mode=nodownload from toml-f

* Remove logic for download URL
2023-01-16 13:07:21 -08:00
Harmen Stoppels
3489cc0a9b Refer to mirrors by name, path, or url (#34891)
With this change we get the invariant that `mirror.fetch_url` and
`mirror.push_url` return valid URLs, even when the backing config
file is actually using (relative) paths with potentially `$spack` and
`$env` like variables.

Secondly it avoids expanding mirror path / URLs too early,
so if I say `spack mirror add name ./path`, it stays `./path` in my
config. When it's retrieved through MirrorCollection() we
exand it to say `file://<env dir>/path` if `./path` was set in an
environment scope.

Thirdly, the interface is simplified for the relevant buildcache
commands, so it's more like `git push`:

```
spack buildcache create [mirror] [specs...]
```

`mirror` is either a mirror name, a path, or a URL.

Resolving the relevant mirror goes as follows:
    
- If it contains either / or \ it is used as an anonymous mirror with
   path or url.
- Otherwise, it's interpreted as a named mirror, which must exist.

This helps to guard against typos, e.g. typing `my-mirror` when there
is no such named mirror now errors with:

```
$ spack -e . buildcache create my-mirror
==> Error: no mirror named "my-mirror". Did you mean ./my-mirror?
```

instead of creating a directory in the current working directory. I
think this is reasonable, as the alternative (requiring that a local dir
exists) feels a bit pendantic in the general case -- spack is happy to
create the build cache dir when needed, saving a `mkdir`.

The old (now deprecated) format will still be available in Spack 0.20,
but is scheduled to be removed in 0.21:

```
spack buildcache create (--directory | --mirror-url | --mirror-name) [specs...]
```

This PR also touches `tmp_scope` in tests, because it didn't really
work for me, since spack fixes the possible --scope values once and
for all across tests, so tests failed when run out of order.
2023-01-16 10:14:41 -08:00
Auriane R
9a25e21da8 Add target propagation for pika package (#34924) 2023-01-16 17:57:50 +01:00
Alec Scott
d156e2ee91 Add py-python-lsp-server v1.7.0 (#34946) 2023-01-16 10:54:19 -06:00
Harmen Stoppels
891a63cae6 Revert "4th chunk of nf-core deps from update/nextflow-tools (#34564)" (#34960)
This reverts commit 4e63d92bc9.
2023-01-16 17:00:33 +01:00
eugeneswalker
886ea7c490 e4s: add py-h5py (#34914) 2023-01-16 15:52:24 +00:00
Glenn Johnson
fcf9c639ee Make docbook-xml work across all entity versions (#34733)
Packages that use docbook-xml may specify a specific entity version.
When this is specified as a version constraint in the package recipe it
will cause problems when using `unify = True` in a Spack environment, as
there could be multiple versions of docbook-xml in the spec. In
practice, any entity version should work with any other version and
everything should work with the latest version. This PR maps all Spack
docbook-xml entity versions to the docbook-xml version in the spec.
Ideally, the version in the spec would be the latest version. With this
PR, even if a package specifies an older entity version, it will map
to the entity version (latest) in the spec. This means that there can be one
docbook-xml version in a Spack environment spec and packages requesting
older entity versions will still work.

To help facilitate this, docbook-xml version constraints for packages
that have them have been removed. Those packages are dbus and gtk-doc.
2023-01-16 16:03:03 +01:00
Marco De La Pierre
4e63d92bc9 4th chunk of nf-core deps from update/nextflow-tools (#34564) 2023-01-16 08:01:24 -07:00
Gilles Gouaillardet
17a67b9a56 fix libtool filter for Fujitsu compilers (#34916)
Since legit regular expressions are matched, do not pass string=True
to the filter

Refs #34897
2023-01-16 15:56:13 +01:00
Wouter Deconinck
904eefc930 harfbuzz: new version 5.3.1, 6.0.0 (fixes aarch64) (#34908)
A few new versions of harbuzz, but just jumping to the last non-6 version as preferred.

No build system changes:
- within 5 series: https://github.com/harfbuzz/harfbuzz/compare/5.1.0...5.3.1
- from 5 to 6: https://github.com/harfbuzz/harfbuzz/compare/5.3.1...6.0.0

The 5 series fixes a build issue for aarch64, https://github.com/harfbuzz/harfbuzz/issues/3768.
2023-01-16 15:55:03 +01:00
Jack Morrison
add8022490 Fix incorrect configuration file name in docs (#34925) 2023-01-16 14:52:08 +01:00
Glenn Johnson
645faad379 cp2k: add v2022.2, update CUDA settings (#34757) 2023-01-16 14:13:40 +01:00
Adam J. Stewart
d0866e4d02 Qt: patch additional config file (#34682) 2023-01-16 07:42:01 -05:00
Dan Bonachea
1095958cac GASNet 2022.9.2 package update (#34942)
This allows client packages like UPC++ to display more precise version
information when their GASNet dependency was fetched from git.
2023-01-16 12:48:22 +01:00
Alec Scott
911e9edf07 Add Go v1.19.5, v1.18.10, and remove deprecated versions (#34594) 2023-01-16 12:46:20 +01:00
AMD Toolchain Support
b9048dbee9 AMD Optimized CPU Libraries: add v4.0 (#34681)
What's in AOCL 4.0:
1. amdblis
        LPGEMM variants with post-ops support
        AMD "Zen4" support for BLIS

2. amdlibflame
        Upgrade to LAPACK 3.10.1 specification
        Improvements in a few more variants of SVD and Eigen Value routines
        Multithread support enabled for selected APIs

3. amdfftw
        AVX-512 enablement of DFT kernels
        AVX-512 optimization of copy and transpose routines

5. amdlibm
        Black & Scholes support (logf, expf, erff, both scalar and vector)
        AVX-512 variants of vector functions

6. aocl-sparse
        New Iterative Solver APIs
        AVX-512 support for SPMV API

7. amdscalapack
        Upgrade to Netlib ScaLAPACK 2.2.0

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2023-01-16 12:05:31 +01:00
Cory Bloor
55f71e41d5 rocsolver: expand version compatibility with fmt (#34941) 2023-01-16 11:14:13 +01:00
Alec Scott
07ee8e99ca restic: add v0.15.0 (#34945) 2023-01-16 11:03:07 +01:00
Alec Scott
307a8f8565 rclone: add v1.61.1 and deprecate old versions due to CVE-2020-28924 (#34944) 2023-01-16 10:59:04 +01:00
Alec Scott
1ca7da4831 Add v0.109.0 and deprecate versions < v0.79.1 due to a CVE (#34943) 2023-01-16 10:57:55 +01:00
eugeneswalker
b9a16a599a e4s ci: py-libensemble: activate variants (#34915) 2023-01-16 10:57:28 +01:00
Jonathan R. Madsen
590adf57d2 omnitrace: add new versions (#34955)
- v1.5.0
- v1.6.0
- v1.7.0
- v1.7.1
- v1.7.2
- v1.7.3
- v1.7.4
2023-01-16 10:47:10 +01:00
dependabot[bot]
d45c228401 build(deps): bump actions/setup-python from 4.4.0 to 4.5.0 (#34939)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](5ccb29d877...d27e3f3d7c)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-16 10:33:12 +01:00
Adam J. Stewart
d0cb5efa3b py-segmentation-models-pytorch: add v0.3.2 (#34853) 2023-01-16 10:10:40 +01:00
Adam J. Stewart
5f4b736006 Drop Python 3.6 again (#34442) 2023-01-16 10:09:40 +01:00
Auriane R
c7d1746064 Fix version number for fmt dependency of pika package (#34922) 2023-01-16 01:07:08 -08:00
SXS Bot
a1889440d7 spectre: add v2023.01.13 (#34929)
Co-authored-by: sxs-bot <sxs-bot@users.noreply.github.com>
2023-01-14 23:21:59 -08:00
Christopher Christofi
f521c31657 py-annoy: new package with version 1.17.1 (#34911)
* py-annoy: add 1.17.1

* add version specifier on dependency package
2023-01-14 17:21:56 -08:00
Todd Gamblin
d4e714bb2e spack list: add --count option (#34950)
Sometimes I just want to know how many packages of a certain type there are.

- [x] add `--count` option to `spack list` that output the number of packages that
      *would* be listed.

```console
> spack list --count
6864
> spack list --count py-
2040
> spack list --count r-
1162
```
2023-01-14 16:08:40 -08:00
John W. Parent
ff38ff25cb Support windows paths in a spec (#34405)
Refactor Spack's spec syntax parsing to handle Windows style paths
Amend unit tests to reflect this updated behavior.
2023-01-14 07:52:37 +01:00
Dominik Thoennes
6e95417c98 trilinos: enable mumps solver in amesos2 if variant is set (#34927)
* enable mumps solver in amesos2 if variant is set for trilinos
* fix formatting
2023-01-13 21:08:22 -08:00
Cyrus Harrison
4727a9b976 add conduit 0.8.6 release (#34894) 2023-01-13 20:53:21 -08:00
John W. Parent
44c69cadf4 Proper scons executable on Windows (#34934) 2023-01-13 19:28:29 -08:00
Dr. Christian Tacke
1034b23320 slurm: Add Version 22-05-7-1 (#34902) 2023-01-13 19:23:26 -08:00
Paul R. C. Kent
ef9049feac Add 15.0.7 (#34912) 2023-01-13 19:18:24 -08:00
Sam Grayson
f6006445da Add parsl-monitoring (#34769)
* Add packages

* Style

* Respond to comments

* Change conflct dep type

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-01-13 17:07:39 -06:00
eugeneswalker
2c87f59d36 py-gevent%oneapi@2023.0.0: -Wno-error=incompatible-function-pointer-types (#34901) 2023-01-13 17:06:16 -06:00
kwryankrattiger
229ee7cad9 Paraview rocm (#34790)
* paraview: add `rocm` variant

This conflicts with CUDA and requires at least ParaView 5.11.0. More
dependencies are also needed.

* E4S: Add ParaView for ROCm and CUDA stacks

* DAV SDK: Update ParaView version and GPU variants

* Verify using hipcc vs amdclang++ for newer hip

Co-authored-by: Ben Boeckel <ben.boeckel@kitware.com>
2023-01-13 12:41:57 -06:00
Marco De La Pierre
85e2fb0c4d Adding py-strawberryfields from Xanadu, and its deps (#34849)
* adding 1st version of py-strawberryfields

* py-strawberryfields: minor edit

* added backbone for 4x new SF dependencies

* edits to SF and its 4x new deps

* added all deps for SF

* added one version to py-lark-parser

* py-quantum-xir with tarball from github

* Update var/spack/repos/builtin/packages/py-strawberryfields/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* updated version for py-quantum-xir : pypy fixed

* py-pennylane: added pythonpackage.maintainers, too

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2023-01-13 10:39:29 -08:00
Todd Gamblin
88a604e7f4 config: make path replacements lazy (#34758)
Currently, all of the replacements in `spack.util.path.replacements()` get evaluated for
each replacement. This makes it easy to get bootstrap issues, because config is used
very early on in Spack.

Right now, if I run `test_autotools_gnuconfig_replacement_no_gnuconfig` on my M1 mac, I
get the circular reference error below. This fixes the issue by making all of the path
replacements lazy lambdas.

As a bonus, this cleans up the way we do substitution for `$env` -- it's consistent with
other substitutions now.

- [x] make all path `replacements()` lazy
- [x] clean up handling of `$env`

```console
> spack unit-test -k test_autotools_gnuconfig_replacement_no_gnuconfig

...

==> [2022-12-31-15:44:21.771459] Error: AttributeError:

The 'autotools-config-replacement' package cannot find an attribute while trying to build from sources. This might be due to a change in Spack's package format to support multiple build-systems for a single package. You can fix this by updating the build recipe, and you can also report the issue as a bug. More information at https://spack.readthedocs.io/en/latest/packaging_guide.html#installation-procedure

/Users/gamblin2/src/spack/lib/spack/spack/package_base.py:1332, in prefix:
       1330    @property
       1331    def prefix(self):
  >>   1332        """Get the prefix into which this package should be installed."""
       1333        return self.spec.prefix

Traceback (most recent call last):
  File "/Users/gamblin2/src/spack/lib/spack/spack/build_environment.py", line 1030, in _setup_pkg_and_run
    kwargs["env_modifications"] = setup_package(
                                  ^^^^^^^^^^^^^^
  File "/Users/gamblin2/src/spack/lib/spack/spack/build_environment.py", line 757, in setup_package
    set_module_variables_for_package(pkg)
  File "/Users/gamblin2/src/spack/lib/spack/spack/build_environment.py", line 596, in set_module_variables_for_package
    m.std_cmake_args = spack.build_systems.cmake.CMakeBuilder.std_args(pkg)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/gamblin2/src/spack/lib/spack/spack/build_systems/cmake.py", line 241, in std_args
    define("CMAKE_INSTALL_PREFIX", pkg.prefix),
                                   ^^^^^^^^^^
  File "/Users/gamblin2/src/spack/lib/spack/spack/package_base.py", line 1333, in prefix
    return self.spec.prefix
           ^^^^^^^^^^^^^^^^
  File "/Users/gamblin2/src/spack/lib/spack/spack/spec.py", line 1710, in prefix
    self.prefix = spack.store.layout.path_for_spec(self)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/gamblin2/src/spack/lib/spack/spack/directory_layout.py", line 336, in path_for_spec
    path = self.relative_path_for_spec(spec)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/gamblin2/src/spack/lib/spack/spack/directory_layout.py", line 106, in relative_path_for_spec
    projection = spack.projections.get_projection(self.projections, spec)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/gamblin2/src/spack/lib/spack/spack/projections.py", line 13, in get_projection
    if spec.satisfies(spec_like, strict=True):
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/gamblin2/src/spack/lib/spack/spack/spec.py", line 3642, in satisfies
    if not self.virtual and other.virtual:
           ^^^^^^^^^^^^
  File "/Users/gamblin2/src/spack/lib/spack/spack/spec.py", line 1622, in virtual
    return spack.repo.path.is_virtual(self.name)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/gamblin2/src/spack/lib/spack/spack/repo.py", line 890, in is_virtual
    return have_name and pkg_name in self.provider_index
                                     ^^^^^^^^^^^^^^^^^^^
  File "/Users/gamblin2/src/spack/lib/spack/spack/repo.py", line 770, in provider_index
    self._provider_index.merge(repo.provider_index)
                               ^^^^^^^^^^^^^^^^^^^
  File "/Users/gamblin2/src/spack/lib/spack/spack/repo.py", line 1096, in provider_index
    return self.index["providers"]
           ~~~~~~~~~~^^^^^^^^^^^^^
  File "/Users/gamblin2/src/spack/lib/spack/spack/repo.py", line 592, in __getitem__
    self._build_all_indexes()
  File "/Users/gamblin2/src/spack/lib/spack/spack/repo.py", line 607, in _build_all_indexes
    self.indexes[name] = self._build_index(name, indexer)
                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/gamblin2/src/spack/lib/spack/spack/repo.py", line 616, in _build_index
    index_mtime = self.cache.mtime(cache_filename)
                  ^^^^^^^^^^^^^^^^
  File "/Users/gamblin2/src/spack/lib/spack/llnl/util/lang.py", line 826, in __getattr__
    return getattr(self.instance, name)
                   ^^^^^^^^^^^^^
  File "/Users/gamblin2/src/spack/lib/spack/llnl/util/lang.py", line 825, in __getattr__
    raise AttributeError()
AttributeError
```
2023-01-13 10:27:07 -08:00
Seth R. Johnson
33859d3d5f Celeritas: new versions 0.1.4 and 0.2.0 (#34883) 2023-01-13 09:44:29 -08:00
Brian Van Essen
68ce49a57b libfabric can now find external installation (#33796)
* Added support for libfabric to find an external installation and
identify variants supported.

* Change the fabrics definition to only include CXI when on a cray
system with a libfabric-based slingshot network.

* Added a conflict when trying to build the CXI fabric value since it is
only available as closed source at this time.
2023-01-12 23:53:33 -08:00
John W. Parent
92b7f63365 Ninja package: resolve circular dependency (#34887)
#33128 Introduces a dependency on re2c into the Ninja build recipe.
This is problematic on Windows as we use CMake to build re2c, and
Ninja to drive the CMake build. This PR resolves this issue by
adding a variant to toggle the use of re2c with ninja.
2023-01-12 17:31:58 -08:00
Adam J. Stewart
a1930e36e7 py-matplotlib: add v3.6.3 (#34903) 2023-01-12 16:23:20 -08:00
Jeremy L Thompson
897f812a70 ratel - add version 0.2.1 (#34895)
* ratel - add version 0.2.0
* ratel - use patch release 0.2.1 b/c tet test bug
2023-01-12 14:01:37 -08:00
Derek Ryan Strong
b7f41638fd Add fpart package (#34896)
* Add fpart package
* Use default autoreconf implementation
* Switch copyright year
2023-01-12 12:52:57 -08:00
Brian Van Essen
e804671fc0 bugfix rmda-core external find library (#34484)
* Added a more robust check for an external version of the library.
Included a guard to identify when the library gives no discernible
version information and then to substitute with "unknown_ver"
identifier.
2023-01-12 11:41:17 -08:00
Tamara Dahlgren
c0b458e38a Documentation: Add installation policy to packaging guide (#34878) 2023-01-12 11:01:35 -08:00
eugeneswalker
deef4177f7 sed %oneapi@2023.0.0: -Wno-error=incompatible-function-pointer-types (#34898) 2023-01-12 10:53:00 -08:00
John W. Parent
a1c840b3e8 cURL package: add support for building on Windows (#30169) 2023-01-12 10:23:57 -08:00
Mosè Giordano
57e9e77475 gmp: Add cxx variant, and require it in libint package (#34881) 2023-01-12 10:22:56 -08:00
Benjamin Meyers
d260fa59c9 New package: py-fastfold (#34354)
* New package: py-fastfold

* Fix dependencies for py-fastfold

* [py-fastfold] fix types

* [py-fastfold] relax strict versions

* Fix spack style manually

* [py-fastfold] relax python and py-requests upper bounds

* [py-fastfold] remove bad/unecessary depends_on
2023-01-12 12:20:49 -06:00
Wouter Deconinck
0da69a45e3 edm4hep: depends_on nlohmann-json (#34888)
We may pick this up transitively through `root`, but it makes sense to be explicit too.
2023-01-12 09:38:18 -08:00
eugeneswalker
153b79c2ed loki%oneapi@2023.0.0: -Wno-error=dynamic-exception-spec (#34899) 2023-01-12 09:06:38 -08:00
Harmen Stoppels
ffae0db115 Add dummy perl+open variant, use it in external find, require it in libxcrypt (#34867) 2023-01-12 16:41:31 +01:00
Benjamin S. Kirk
37c8ebcafd updating checksummed versions for podman (#34788)
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2023-01-12 06:42:27 -08:00
snehring
03fc502da5 r-ncdf4: adding new version 1.21 (#34890) 2023-01-11 16:47:44 -08:00
Wouter Deconinck
b73884d541 gaudi: new versions 36.8, 36.9 (#34822)
* gaudi: new versions 36.8, 36.9
  As of 36.8, the tests use catch2 ([commit](https://gitlab.cern.ch/gaudi/Gaudi/-  /commit/f2cafb5c9d04c9d497d49182258aa3a0440622c0)).
* gaudi: still depends_on fmt@:8
2023-01-11 13:05:00 -08:00
Sam Reeve
43f337d993 Add version 1.1 for ExaCA (#34833) 2023-01-11 12:47:15 -08:00
Christopher Christofi
a8188a9f14 perl-pathtools: add 3.75 (#34787) 2023-01-11 11:51:05 -08:00
Cameron Stanavige
c19638bb0d unifyfs: new release v1.0.1 (#34876)
* unifyfs: new release v1.0.1
  Add 1.0.1 release
  Add new variant for new configure time option

Co-authored-by: CamStan <CamStan@users.noreply.github.com>
2023-01-11 11:33:04 -08:00
Massimiliano Culpo
ccb9969b64 Fix issue when generating compiler hierarchy (#34873)
- [x] Fix bug affecting generation of Lmod modules
2023-01-11 10:09:02 -08:00
Manuela Kuhn
fa93b5219c py-virtualenv: add 20.17.1 (#34859) 2023-01-11 10:08:02 -08:00
Christopher Christofi
42a0cf9b96 py-fasteners: add 0.15 (#34865) 2023-01-11 11:50:00 -06:00
Sreenivasa Murthy Kolam
4b67153613 Update ROCm recipes for 5.3.3 release. (#34862)
* initial commit for 5.3.3 release
* update rocm-openmp-extras for rocm-5.3.3 release
* address review comments and failures
2023-01-11 09:47:27 -08:00
vucoda
c65c944853 Update py-libconf package to newer major version (#34836) 2023-01-11 09:43:06 -08:00
Mike VanDenburgh
ea6608edde Bump memory requests for e4s/ml generate jobs (#34648) 2023-01-11 10:41:42 -07:00
Harmen Stoppels
07499f2355 fix: python tix detection blocks reuse (#34768)
Now that the `tix` variant is conditional, it should also be detected
condititionally, otherwise the spec is invalid and cannot be used during
concretization.
2023-01-11 10:04:20 -07:00
Wileam Y. Phan
781c4823e6 Add fpm 0.7.0 (#34871) 2023-01-11 07:32:39 -08:00
QuellynSnead
71a609b2f4 trilinos: Limit application of "-fuse-ld=gold" for %cce builds (#34875) 2023-01-11 05:47:35 -08:00
Alex Hedges
74595de359 shellcheck: add comments about installing binary (#34877)
ShellCheck is installed with a downloaded binary instead of being
compiled from source, and there should be comments to point out this
unorthodox approach.
2023-01-11 01:17:25 -08:00
eugeneswalker
9d70f6e6c7 protected runner jobs at uo: trust e4s-uo signing key (#34828) 2023-01-10 18:18:38 -07:00
John W. Parent
7365d138fb Build systems: add MSBuild and update NMake (#34659)
Add/update build systems used to build packages on Windows.
2023-01-10 17:03:15 -08:00
Glenn Johnson
b94030cc5d plink: add new version (#34741)
The distribution of this has jumped around a bit. I left the previous
versions as-is.
2023-01-10 16:55:45 -08:00
Harmen Stoppels
4414161787 numactl: remove bash from numactl (#34798)
It doesn't require bash on any registered version, and the file is executable and has a /bin/sh shebang.
2023-01-10 16:22:52 -08:00
Erik Schnetter
881a0d4462 runc: New version 1.1.4 (#34815) 2023-01-10 16:07:56 -08:00
Alex Hedges
8d83af732a shellcheck: add new package (#34831) 2023-01-10 15:31:20 -08:00
Benjamin S. Kirk
a5a2918202 autoconf: fix for long perl shebangs with autoconf@2.70+ (#34331)
autoconf 2.70 uses use warnings instead of -w so that PERL=/usr/bin/env perl can be passed, but we want to fix absolute paths anyhow through sbang upon install. So, we stick to patching the one perl script that's used during the build.
2023-01-10 14:27:29 -08:00
David Zmick
8dc3a09104 ruby-gist: add new package (#34852) 2023-01-10 14:14:49 -08:00
Scott Wittenburg
8f6f77ac9f gitlab ci: fix tags for pipeline generation jobs (#34789)
Gitlab does not merge lists when a job extends two other definitions
that include the same list (e.g. tags).  Also, it merges dictionaries
as long as the keys are distinct, but just takes the last mentioned
value when there are key collisions.

This change makes sure that when different tags are needed by a
pipeline, the ones we want are actually provided.  It also changes
the example stack to better follow this pattern so we do not lead
developers astray in the future.
2023-01-10 10:06:26 -07:00
Wouter Deconinck
d0bd8f74cf root: conflicts +ipo (#34842)
ROOT does not build successfully with `+ipo`, with symptoms as in https://github.com/root-project/root/issues/10777, and discussed most recently in https://github.com/root-project/root/issues/11135. As indicated there, LTO is not a supported build configuration. As of 6.26.10 there is no estimate for a fix since upstream is still broken.
2023-01-10 17:09:10 +01:00
Massimiliano Culpo
9d00e7d15d Remove **kwargs from function signatures in llnl.util.filesystem (#34804)
Since we dropped support for Python 2.7, we can embrace using keyword only arguments 
for many functions in Spack that use **kwargs in the function signature. Here this is done 
for the llnl.util.filesystem module.

There were a couple of bugs lurking in the code related to typo-like errors when retrieving
from kwargs. Those have been fixed as well.
2023-01-10 14:23:42 +01:00
Alex Richert
cc333b600c Add variants for overriding ESMF_OS and ESMF_COMM for ESMF package (#34808)
* Add variants for overriding ESMF_OS and ESMF_COMM for ESMF package

* Add doco for esmf_os/esmf_comm variants
2023-01-10 14:04:16 +01:00
Pranav Sivaraman
006969a8cd xsbench: update version and add cuda support (#34597)
* Update xsbench to version 20

XSBench version 20 has implementations for new
architectures and accelerators.

* Added CUDA support for XSBench

* Fixed style issues
2023-01-10 13:59:30 +01:00
Axel Huebl
d2618cd640 WarpX 23.01 (#34793)
Update `warpx` & `py-warpx` to the latest release.
2023-01-10 04:47:25 -08:00
Jonathon Anderson
807b87068a style: Run mypy last (#34687) 2023-01-10 04:37:41 -08:00
Jonathon Anderson
6879c35d1c FileCache: Delete the new cache file on exception (#34623)
The code in FileCache for write_transaction attempts to delete the temporary file when an exception occurs under the context by calling shutil.rmtree. However, rmtree only operates on directories while the rest of FileCache uses normal files. This causes an empty file to be written to the cache key when unneeded.

Use os.remove instead which operates on normal files.

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2023-01-10 13:36:12 +01:00
Alberto Invernizzi
f1b8bc97f0 neovim: version 0.8.2 (#34777)
* add version 0.8.2

* conflict for newer libvterm versions for older neovim releases

Co-authored-by: Tom Scogland <scogland1@llnl.gov>
2023-01-10 13:29:43 +01:00
Wouter Deconinck
6fefb92413 cernlib: depends_on freetype, libnsl, libxcrypt, openssl; and patch (#34702)
* cernlib: depends_on freetype, libnsl, libxcrypt, openssl; and patch

In addition to #34448, cernlib depends on these additional packages.
This also applies a patch to the current release in which crypto is
specified wbere libcrypt (in libxcrypt) is actually needed. Because
the upstream git repository is behind a CERN login, we cannot patch
by gitlab URL link.

* [@spackbot] updating style on behalf of wdconinc

Co-authored-by: wdconinc <wdconinc@users.noreply.github.com>
2023-01-10 13:25:57 +01:00
Bryce Allen
03a2feef88 pfunit: fix max_array_rank for 4+, line len (#34713)
* pfunit: fix max_array_rank for 4+, line len

* pfunit: only use fortran flags when necessary

* pfunit: fix, version ranges are inclusive
2023-01-10 13:24:02 +01:00
Wouter Deconinck
416615f30b spdlog: new version 1.11.0 depends_on fmt@9: when +fmt_external (#34731)
This adds a new version of spdlog,
https://github.com/gabime/spdlog/releases/tag/v1.11.0

While the release notes are ambiguous, I think that this PR,
https://github.com/gabime/spdlog/issues/2485, indicates that
spdlog from that point on uses features of fmt@9:.
2023-01-10 13:20:32 +01:00
Adam J. Stewart
b62c4276c9 py-pydocstyle: add v6.2 (#34785) 2023-01-10 13:17:00 +01:00
Carson Woods
b9861f7bbb Add new versions of Reframe (#34801) 2023-01-10 13:09:18 +01:00
Erik Schnetter
856fe5941a libcap: 2.66 & GOLANG=no (#34813)
Co-authored-by: Harmen Stoppels <me@harmenstoppels.nl>
2023-01-10 13:02:32 +01:00
Wileam Y. Phan
0f7f600d1f Add CUDA 12.0 (#34664) 2023-01-10 11:51:23 +01:00
eugeneswalker
9283a94ee4 e4s ci: use 2023-01-01 runner image (#34827) 2023-01-10 10:47:28 +00:00
Adam J. Stewart
726dee9e2d py-scipy: add v1.10.0 (#34799)
* py-scipy: add v1.10.0

* Update GCC/LAPACK version requirements

* Fix msvc version check
2023-01-10 11:43:55 +01:00
Stephen Sachs
b5a5af8c05 [adios2] Older versions of ifx (oneapi) fail compilation (#34819)
See https://community.intel.com/t5/Intel-Fortran-Compiler/version-node-not-found-for-symbol/m-p/1443784/thread-id/164290

Fixes https://github.com/spack/spack/issues/31817

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2023-01-10 11:39:42 +01:00
Sebastian Ehlert
289d6df911 Update mongo-cxx-driver (#34843) 2023-01-10 11:38:23 +01:00
dependabot[bot]
6158e4d8aa build(deps): bump actions/upload-artifact from 3.1.1 to 3.1.2 (#34848)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 3.1.1 to 3.1.2.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](83fd05a356...0b7f8abb15)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-10 11:23:13 +01:00
Mosè Giordano
8c3c8a4e4d libxsmm: Add build dependency on binutils (#34863) 2023-01-10 11:22:01 +01:00
Erik Schnetter
954e241174 pgplot: Correct building shared libraries (#34846) 2023-01-10 11:20:30 +01:00
Erik Schnetter
ae3a1618a2 simulationio: Explicitly enable/disable support for dependent packages (#34803)
* simulationio: Explicitly enable/disable support for dependent packages

* simulationio: Remove unused local variable
2023-01-10 11:18:39 +01:00
Sreenivasa Murthy Kolam
0d96b0b311 rocm packages: Update the version for 5.3.0 release (#33405)
* update the version for 5.3.0 release
* update the rocwmma for 5.3.0 release
* fix the +hip variant
* update the version for rocm-openmp-extras package for 5.3.0 release
* update the hipsolver and hipfft as per review comments
* address review comments
* revert changes to mivisionx with regard to change added for clangrt
* fix for the petsc failure
2023-01-09 18:50:00 -08:00
Erik Schnetter
f96f8a99e8 mpiwrapper: New version 2.10.1 (#34850) 2023-01-09 18:02:45 -08:00
Adam J. Stewart
94cff84df1 py-black: add v22.12.0 (#34429) 2023-01-09 19:31:47 -06:00
Rémi Lacroix
582ee111f6 MAFFT: Add latest version 7.505 (#34855) 2023-01-09 16:09:13 -08:00
Rémi Lacroix
c55de3f5e0 pv: Add version 1.6.20 (#34854) 2023-01-09 15:07:36 -08:00
renjithravindrankannath
0bdd4c10cf RVS 5.1.0 and later works with googletest shared variant (#34802) 2023-01-09 14:41:40 -08:00
John Parent
521cc41db0 Remove Spack external find from startup
Spack was running an external detection of Python during each invocation
of the setup script for Windows CMD/PWSH, which has dramatic performance
implications each time the script is invoked, and is completely
unneccesary. Remove this operation.
2023-01-09 09:14:17 -08:00
John Parent
c0eb2cf9e6 Update haspywin
Inform user Spack is installing pyWin32 module behind the scenes.
This is neccesary for Windows support.
2023-01-09 09:14:17 -08:00
John Parent
9f0bb4301f Support ASCI control
Windows CMD prompt does not automatically support ASCI color control
characters on the console from Python. Enable this behavior by
accessing the current console and allowing the interpreation of ASCI
control characters from Python via the win32 API.
2023-01-09 09:14:17 -08:00
Stephen Sachs
288e728144 openfoam: OneAPI is only supported from 2106 onwards (#34797)
Also, adios2 fortran bindings are not necessary. This circumvents
https://github.com/spack/spack/issues/31817

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2023-01-09 12:19:23 +01:00
Harmen Stoppels
47011f594f Revert "Allow spec.json files to be clearsigned, use transparent compression for *.json (#34490)" (#34856)
This reverts commit 8a1b817978.
2023-01-09 10:52:07 +01:00
Marco De La Pierre
a00f692f20 adding 3rd bunch of nf-core deps from update/nextflow-tools (#34563)
* adding 2nd bunch of nf-core deps from update/nextflow-tools

* adding 3rd bunch of nf-core deps from update/nextflow-tools

* Update var/spack/repos/builtin/packages/py-dnspython/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-dnspython/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-dnspython/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-fastapi-utils/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-pastedeploy/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-pebble/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-fastapi/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-fastapi/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-gunicorn/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-starlette/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-starlette/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-starlette/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-parsley/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-paste/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-paste/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* py-gxformat2: added comment

* py-lagom: now using github tarballs

* fix for py-lagom

* adding missing deps to py-fastapi-utils

* another fix to py-lagom

* Update var/spack/repos/builtin/packages/py-dnspython/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-fastapi-utils/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-fastapi-utils/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-fastapi-utils/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-lagom/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-supervisor/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-01-08 20:06:59 -08:00
Adam J. Stewart
68bffd4689 GDAL: add v3.6.2 (#34823) 2023-01-07 13:57:18 +01:00
Wouter Deconinck
5acb20f145 acts: new version 22.0.0 (#34826)
No build system changes.
2023-01-07 13:56:37 +01:00
Harmen Stoppels
8a1b817978 Allow spec.json files to be clearsigned, use transparent compression for *.json (#34490)
This commit allows (remote) spec.json files to be clearsigned and gzipped.

The idea is to reduce the number of requests and number of bytes transferred
2023-01-07 12:22:40 +01:00
Marco De La Pierre
86e346e906 Adding recipes for py-qutip and py-qutip-qip (#34835)
* added recipes for py-qutip and py-qutip-qip

* small fix

* updated qutip 2x versions

* py-qutip-qip: tarball url from github

* style fix in py-qutip-qip

* Update var/spack/repos/builtin/packages/py-qutip-qip/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-qutip-qip/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-qutip-qip/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-qutip/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-qutip/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-01-06 17:22:03 -08:00
Marco De La Pierre
a5ef522f98 Adding py-pennylane from Xanadu (#34838)
* draft for py-pennylane recipe

* first draft for py-strawberryfields recipe

* minimal fix

* small fixes

* accounting for circular dep in py-pennylane and py-pennylane-lightning

* removing py-strawberryfields from this branch

* updated versions for py-pennylane 2x

* needs cmake

* py-pennylane-lightning using github tarball

* Update var/spack/repos/builtin/packages/py-autoray/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-pennylane-lightning/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-01-06 16:02:06 -08:00
Verinder Rana
800ac7b53d kripke: add cuda and rocm support (#34257) 2023-01-06 15:57:00 -08:00
Luke Diorio-Toth
691e8c69c4 py-instrain and py-drep: new version and added maintainer (#34581) 2023-01-06 13:26:19 -06:00
QuellynSnead
ea970c8ab8 Fix PrgEnv detection (#34845)
* Fix PrgEnv detection for Cray compiler link paths
2023-01-06 18:11:43 +00:00
Erik Schnetter
c05827e794 mpiwrapper: New version 2.10.0 (#34795) 2023-01-06 15:46:04 +01:00
Erik Schnetter
910b13000f cni-plugins: New version 1.1.1 (#34809) 2023-01-06 15:45:25 +01:00
Erik Schnetter
9474fdf910 conmon: New version 2.1.5 (#34810) 2023-01-06 15:44:55 +01:00
Erik Schnetter
2cdac9392f go-md2man: New version 2.0.2 (#34811) 2023-01-06 15:44:35 +01:00
Erik Schnetter
6775c10e82 go: New version 1.19.4 (#34812) 2023-01-06 15:44:12 +01:00
Erik Schnetter
ea5d5517ce libseccomp: New version 2.5.4 (#34814) 2023-01-06 15:43:48 +01:00
Erik Schnetter
8780c718ea slirp4netns: New version 1.2.0 (#34816) 2023-01-06 15:07:22 +01:00
Erik Schnetter
9687491568 podman: New version 4.3.1 (#34817) 2023-01-06 15:06:36 +01:00
Erik Schnetter
9c56b97aa9 mpitrampoline: New version 5.2.0 (#34796) 2023-01-06 15:04:59 +01:00
Auriane R
df10e711f7 Fix the version number for the fmt dep of pika package (#34839)
* Fix the version number for the fmt dep of pika package

* Add version constraint for fmt standard specification
2023-01-06 14:59:23 +01:00
Harmen Stoppels
6fdb5dfa0a cabana: version ranges (#34794)
Co-authored-by: Sam Reeve <6740307+streeve@users.noreply.github.com>
2023-01-05 19:21:57 +01:00
Stephen Sachs
ada174afbd cmake fails with icpc warning (#34774)
The Intel compiler isn't able to deal with noinline member functions of template classses defined in headers. As such it outputs
```
warning #2196: routine is both "inline" and "noinline"
```
cmake bootstrap will fail due to the word 'warning'.

See spack/var/spack/repos/builtin/packages/protobuf/intel-v2.patch for reference.

The issue does not appear with intel@2021.7.0 or later:

```
$~: compiler=/shared/spack/opt/spack/linux-amzn2-x86_64_v3/gcc-12.2.0/intel-oneapi-compilers-2022.2.0-uqvb2553zy5toeapvoopacndd27x6p5m/compiler/2022.2.0/linux/bin/intel64/icpc
$~: $compiler unique.c
icpc: remark #10441: The Intel(R) C++ Compiler Classic (ICC) is deprecated and will be removed from product release in the second half of 2023. The Intel(R) oneAPI DPC++/C++ Compiler (ICX) is the recommended compiler moving forward. Please transition to use this compiler. Use '-diag-disable=10441' to disable this message.
```

This is a clean version of https://github.com/spack/spack/pull/34167

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2023-01-05 18:13:26 +01:00
Massimiliano Culpo
eace2ebb08 spack.dependency: add type hints (#34807) 2023-01-05 17:48:29 +01:00
Brent Huisman
441c0a4fee Typo in arbor/package.py: incorrect version (#34820) 2023-01-05 13:55:31 +01:00
Sinan
0a7b0c68cf package/libproxy: fix py3 install (#34431)
* package/libproxy: fix py3 install

* improve readability

* fix bug

* also add extend

* make flake happy

* [@spackbot] updating style on behalf of Sinan81

* Update var/spack/repos/builtin/packages/libproxy/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* python dependency implied by extends const.

* disable python variant by default

* add run_env, add py conflict

* Update var/spack/repos/builtin/packages/libproxy/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* set env for macos as well

* generalize lib dir detection

Co-authored-by: sbulut <sbulut@3vgeomatics.com>
Co-authored-by: Sinan81 <Sinan81@users.noreply.github.com>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-01-04 15:01:13 -06:00
Massimiliano Culpo
6a44a146af Fix building docs 2023-01-04 09:43:04 -08:00
Massimiliano Culpo
033cb86fd6 Add vendored packages back 2023-01-04 09:43:04 -08:00
Massimiliano Culpo
5175189412 Delete outdated externals 2023-01-04 09:43:04 -08:00
Massimiliano Culpo
86378502f9 Use "vendoring" to manage 3rd party dependencies 2023-01-04 09:43:04 -08:00
Sinan
2530c7828b add_new_package: py-file-magic (#34486)
* add_new_package: py-file-magic

* re-order depends...

* Update var/spack/repos/builtin/packages/py-file-magic/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* [@spackbot] updating style on behalf of Sinan81

Co-authored-by: sbulut <sbulut@3vgeomatics.com>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
Co-authored-by: Sinan81 <Sinan81@users.noreply.github.com>
2023-01-04 11:08:58 -06:00
Erik Heeren
ab2f842424 Add py-svgpath and py-trimesh (#34471)
* Add py-svgpath and dependency

* Update copyright expiration

* [@spackbot] updating style on behalf of heerener

* Process review remarks

* Update var/spack/repos/builtin/packages/py-trimesh/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Fix style issue

* py-trimesh: cleanup and optional dependencies

* Fix formatting issue

* py-trimesh: complete dependency list for easy variant

Two new packages: py-mapbox-earcut and py-pycollada

* Some more missing dependencies

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-01-04 11:00:00 -06:00
Harmen Stoppels
b9f48da560 e4s: move default values for rocm/cuda arch into packags:all:variants (#34772) 2023-01-04 16:09:14 +01:00
Harmen Stoppels
e21c1c5770 set PREFIX in make() for some packages (#34773) 2023-01-04 15:08:15 +01:00
Massimiliano Culpo
310b6b9466 Remove dead code that was needed for the old parser (#34792)
The old to token definitions and spec_id_re regular
expression are not used anymore
2023-01-04 05:47:21 -08:00
Alberto Invernizzi
a869cfd95d Fix libvterm and libtermkey packages (#34776)
* fix PREFIX for both libvterm and libtermkey

* minor: use libtool from dependency

* switch to command-line prefix instead of replacing it in Makefile
2023-01-04 10:27:21 +01:00
Glenn Johnson
ddab6c4ac3 new package: py-kb-python + dependencies (#34737)
* new package: py-kb-python + dependencies

- py-loompy
- py-ngs-tools
- py-numpy-groupies

* Update var/spack/repos/builtin/packages/py-kb-python/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-01-03 16:35:43 -06:00
Glenn Johnson
25cff6be14 py-shortuuid: add version 1.0.11 (#34739)
* py-shortuuid: add version 1.0.11

* Update var/spack/repos/builtin/packages/py-shortuuid/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-01-03 16:35:13 -06:00
kwryankrattiger
5fe1281b14 LLVM: Update HWLOC dep version (#34780) 2023-01-03 12:42:49 -08:00
Sebastian Grabowski
43cf60814d jube: Add versions 2.5.0 and 2.5.1 (#34783)
* jube: Add 2.5.0 and 2.5.1

* jube: Depend on py-pyyaml
2023-01-03 12:17:32 -08:00
John W. Parent
582f165871 Windows: package defaults and MPI detection (#34614)
* Update packages config to indicate that MSVC is the preferred compiler
* Update packages config to indicate that msmpi is the preferred MPI provider
* Fix msmpi external detection
2023-01-03 08:32:18 -08:00
Harmen Stoppels
bf76f1e774 scr: require spath+mpi (#34775)
It includes `spath_mpi.h` explicitly, and in some concretizations
results in a build failure. (Don't ask me why the concretizer picks
`spath~mpi`).
2023-01-03 09:53:48 -06:00
Harmen Stoppels
9cdb862856 gmake: 4.4, remove alpha release (#34709) 2023-01-02 14:07:24 -08:00
Harmen Stoppels
2e8d165120 environment view use new traversal (#34662) 2023-01-02 19:04:55 +01:00
Christoph Junghans
6984ee291a votca: add v2022.1 (#34650) 2023-01-02 19:02:59 +01:00
Wouter Deconinck
10d506d61b pixman: new versions 0.42.0, 0.42.2 (#34723)
This fixes, [among other things](https://lists.freedesktop.org/archives/pixman/2022-October/004993.html),
a [bug](https://issuetracker.google.com/issues/249834910) in 0.40.0 that
prevents building with oneapi.
2023-01-02 18:58:41 +01:00
Adam J. Stewart
4549312c5e py-sphinx: add v6.0.0 (#34724) 2023-01-02 18:57:49 +01:00
Glenn Johnson
80761bdc9d libxau: add libs property (#34288) 2023-01-02 18:47:18 +01:00
Glenn Johnson
4eb853856a r-affyio: add zlib dependency (#34743) 2023-01-02 18:33:27 +01:00
Glenn Johnson
790929c832 r-cairo: add needed dependency on libxt (#34744) 2023-01-02 18:33:15 +01:00
Glenn Johnson
769378c959 r-hdf5array: add needed dependency on zlib (#34745) 2023-01-02 18:32:59 +01:00
Glenn Johnson
a18e2f98b3 r-rhdf5: add needed zlib dependency (#34746) 2023-01-02 18:32:44 +01:00
Glenn Johnson
8f3bdf29dc r-rhdf5filters: add needed zlib dependency (#34747) 2023-01-02 18:32:31 +01:00
Glenn Johnson
a28bb90b93 r-rhdf5lib: add needed zlib dependency (#34748) 2023-01-02 18:32:17 +01:00
Glenn Johnson
5c9b591439 r-rjava: add needed zlib dependency (#34749) 2023-01-02 18:31:56 +01:00
Glenn Johnson
778325db42 r-rtracklayer: add zlib and openssl dependencies (#34750) 2023-01-02 18:31:37 +01:00
Glenn Johnson
f65bb62de4 r-signac: added needed zlib dependency (#34751) 2023-01-02 18:31:22 +01:00
Glenn Johnson
e4881d5465 bcftools: add version 1.15.1 (#34752) 2023-01-02 18:31:08 +01:00
Glenn Johnson
31cccdf52b genrich: add needed zlib dependency (#34753) 2023-01-02 18:29:23 +01:00
Glenn Johnson
2c1523debe mumax: Set NVCC_CCBIN to spack compiler wrapper (#34754) 2023-01-02 18:28:45 +01:00
Glenn Johnson
c07881c843 openscenegraph: add dependency on fontconfig (#34755) 2023-01-02 18:28:28 +01:00
Glenn Johnson
cb807594b8 rsl: add needed dependency on rpc (#34756) 2023-01-02 18:28:10 +01:00
Michael Kuhn
0227c0a98a miniconda3: add 22.11.1 (#34761) 2023-01-02 18:22:45 +01:00
Michael Kuhn
20a1cdd95e anaconda3: add 2022.10 (#34762) 2023-01-02 18:21:23 +01:00
Wouter Deconinck
2a779c1234 mesa: new versions up to v22.3.2 (#34760)
disable gallium-xvmc when @:22.2
2023-01-02 18:11:03 +01:00
Weiqun Zhang
3f6109404d amrex: add v23.01 and v22.12 (#34764)
Since amrex@22.12, CUDA >= 11 is needed for C++17 support.  Since
amrex@23.01 oneAPI >= 2023 is needed for SYCL 2020.
2023-01-02 18:07:41 +01:00
Wouter Deconinck
f83d47442d dd4hep: depends_on root +x +opengl when +utilityapps (#34765)
UtilityApps builds teveDisplay and fails when ROOT has no ROOT::Gui and ROOT::Eve targets.
2023-01-02 17:56:34 +01:00
Wouter Deconinck
08aafe180b singularity: bugfix add space between prefix and other options (#34766)
This fixes two issues introduced in #34474: prefix got the next
option appended, and property was not resolved without the self.
2023-01-02 17:55:30 +01:00
Peter Brady
9cbbe64cf7 emacs: json variant & cleanup (#34665)
Co-authored-by: Harmen Stoppels <me@harmenstoppels.nl>
2023-01-02 07:17:04 -08:00
Cyrus Harrison
2b006bb6ec add conduit 0.8.5 release and caliper variant (#34669) 2023-01-02 16:00:44 +01:00
Alex Richert
5509392151 libpng static (#34578) 2023-01-02 15:12:41 +01:00
lorddavidiii
2001be99b3 doxygen: use tarballs instead of git checkouts and add 1.9.5 (#34654)
* doxygen: use tarballs instead of git checkouts and add 1.9.5

* Doxygen: add 1.9.6
2023-01-02 08:44:34 -05:00
Rocco Meli
dd4409b62c libxc: add v6.0.0 (#34621) 2023-01-02 04:26:54 -08:00
Todd Gamblin
ca265ea0c2 style: fix spurious mypy errors from numpy (#34732)
Spack imports `pytest`, which *can* import `numpy`. Recent versions of `numpy` require
Python 3.8 or higher, and they use 3.8 type annotations in their type stubs (`.pyi`
files). At the same time, we tell `mypy` to target Python 3.7, as we still support older
versions of Python.

What all this means is that if you run `mypy` on `spack`, `mypy` will follow all the
static import statements, and it ends up giving you this error when it finds numpy stuff
that is newer than the target Python version:

```
==> Running mypy checks
src/spack/var/spack/environments/default/.spack-env/._view/4g7jd4ibkg4gopv4rosq3kn2vsxrxm2f/lib/python3.11/site-packages/numpy/__init__.pyi:638: error: Positional-only parameters are only supported in Python 3.8 and greater  [syntax]
Found 1 error in 1 file (errors prevented further checking)
  mypy found errors
```

We can fix this by telling `mypy` to skip all imports of `numpy` in `pyproject.toml`:

```toml
   [[tool.mypy.overrides]]
   module = 'numpy'
   follow_imports = 'skip'
   follow_imports_for_stubs = true
```

- [x] don't follow imports from `numpy` in `mypy`
- [x] get rid of old rule not to follow `jinja2` imports, as we now require Python 3
2023-01-01 01:05:17 +00:00
Glenn Johnson
7a92579480 py-fisher: add version 0.1.10 (#34738) 2022-12-31 12:48:21 -06:00
Glenn Johnson
190dfd0269 py-youtube-dl: add version 2021.12.17 (#34740) 2022-12-31 12:42:58 -06:00
Massimiliano Culpo
b549548f69 Simplify creation of test and install reports (#34712)
The code in Spack to generate install and test reports currently suffers from unneeded complexity. For
instance, we have classes in Spack core packages, like `spack.reporters.CDash`, that need an
`argparse.Namespace` to be initialized and have "hard-coded" string literals on which they branch to
change their behavior:

```python
if do_fn.__name__ == "do_test" and skip_externals:
    package["result"] = "skipped"
else:
    package["result"] = "success"
package["stdout"] = fetch_log(pkg, do_fn, self.dir)
package["installed_from_binary_cache"] = pkg.installed_from_binary_cache
if do_fn.__name__ == "_install_task" and installed_already:
    return
```
This PR attempt to polish the major issues encountered in both `spack.report` and `spack.reporters`.

Details:
- [x] `spack.reporters` is now a package that contains both the base class `Reporter` and all 
      the derived classes (`JUnit` and `CDash`)
- [x] Classes derived from `spack.reporters.Reporter` don't take an `argparse.Namespace` anymore
       as argument to `__init__`. The rationale is that code for commands should be built upon Spack
       core classes, not vice-versa.
- [x] An `argparse.Action` has been coded to create the correct `Reporter` object based on command
       line arguments
- [x] The context managers to generate reports from either `spack install` or from `spack test` have
       been greatly simplified, and have been made less "dynamic" in nature. In particular, the `collect_info`
       class has been deleted in favor of two more specific context managers. This allows for a simpler
       structure of the code, and less knowledge required to client code (in particular on which method to patch)
- [x] The `InfoCollector` class has been turned into a simple hierarchy, so to avoid conditional statements
       within methods that assume a knowledge of the context in which the method is called.
2022-12-30 10:15:38 -08:00
Heiko Bauke
79268cedd2 mpl: add v0.2.1, v0.2.0 (#34716) 2022-12-30 09:21:58 -08:00
Satish Balay
2004171b7e petsc, py-petsc4py: add v3.18.3 (#34725) 2022-12-30 10:49:21 +01:00
Todd Gamblin
06312ddf18 bugfix: setgid tests fail when primary group is unknown (#34729)
On systems with remote groups, the primary user group may be remote and may not exist on
the local system (i.e., it might just be a number). On the CLI, it looks like this:

```console
> touch foo
> l foo
-rw-r--r-- 1 gamblin2 57095 0 Dec 29 22:24 foo
> chmod 2000 foo
chmod: changing permissions of 'foo': Operation not permitted
```

Here, the local machine doesn't know about per-user groups, so they appear as gids in
`ls` output. `57095` is also `gamblin2`'s uid, but the local machine doesn't know that
`gamblin2` is in the `57095` group.

Unfortunately, it seems that Python's `os.chmod()` just fails silently, setting
permissions to `0o0000` instead of `0o2000`. We can avoid this by ensuring that the file
has a group the user is known to be a member of.

- [x] Add `ensure_known_group()` in the permissions tests.
- [x] Call `ensure_known_group()` on tempfile in `test_chmod_real_entries_ignores_suid_sgid`.
2022-12-30 10:24:35 +01:00
Todd Gamblin
3a0db729c7 docs: avoid errors by using type hints instead of doc types (#34707)
There are a number of places in our docstrings where we write "list of X" as the type, even though napoleon doesn't actually support this. It ends up causing warnings when generating docs.

Now that we require Python 3, we don't have to rely on type hints in docs -- we can just use Python type hints and omit the types of args and return values from docstrings.

We should probably do this for all types in docstrings eventually, but this PR focuses on the ones that generate warnings during doc builds.

Some `mypy` annoyances we should consider in the future:
1. Adding some of these type annotations gets you:
    ```
    note: By default the bodies of untyped functions are not checked, consider using --check-untyped-defs  [annotation-unchecked]
    ```
   because they are in unannotated functions (like constructors where we don't really need any annotations).
   You can silence these with `disable_error_code = "annotation-unchecked"` in `pyproject.toml`
2. Right now we support running `mypy` in Python `3.6`.  That means we have to support `mypy` `.971`, which does not support `disable_error_code = "annotation-unchecked"`, so I just filter `[annotation-unchecked]` lines out in `spack style`.
3. I would rather just turn on `check_untyped_defs` and get more `mypy` coverage everywhere, but that will require about 1,000 fixes.  We should probably do that eventually.
4. We could also consider only running `mypy` on newer python versions.  This is not easy to do while supporting `3.6`, because you have to use `if TYPE_CHECKING` for a lot of things to ensure that 3.6 still parses correctly.  If we only supported `3.7` and above we could use [`from __future__ import annotations`](https://mypy.readthedocs.io/en/stable/runtime_troubles.html#future-annotations-import-pep-563), but we have to support 3.6 for now. Sigh.

- [x] Convert a number of docstring types to Python type hints
- [x] Get rid of "list of" wherever it appears
2022-12-29 16:45:09 -08:00
dependabot[bot]
9759331f43 build(deps): bump actions/setup-python from 4.3.1 to 4.4.0 (#34667)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.3.1 to 4.4.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](2c3dd9e7e2...5ccb29d877)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-29 14:57:58 +01:00
downloadico
ceca97518a trinity: add version 2.15.0-FULL (#34666) 2022-12-29 11:13:47 +01:00
Brent Huisman
1929d5e3de arbor: add v0.8.1 (#34660) 2022-12-29 11:07:17 +01:00
Lucas Frérot
238e9c3613 tamaas: added v2.6.0 (#34676) 2022-12-29 11:04:33 +01:00
Jim Galarowicz
d43e7cb5cd survey: add v1.0.7 (#34679) 2022-12-29 11:00:45 +01:00
Christopher Christofi
51a037d52a perl-archive-zip: add 1.68 (#34684) 2022-12-29 10:57:32 +01:00
Tim Haines
c91f8c2f14 boost: apply 'intel-oneapi-linux-jam.patch' to all versions since 1.76 (#34670) 2022-12-29 10:56:45 +01:00
Christopher Christofi
04ad42e5ee perl-appconfig: add v1.71 (#34685) 2022-12-29 10:55:41 +01:00
Alex Hedges
d02c71e443 git-filter-repo: add new package (#34690) 2022-12-29 10:53:19 +01:00
David Zmick
ca6e178890 jq: set -D_REENTRANT for builds on darwin (#34691) 2022-12-29 10:49:09 +01:00
Jed Brown
b145085fff libceed: add v0.11.0 (#34694) 2022-12-29 10:31:25 +01:00
AMD Toolchain Support
3a4b96e61c AOCC: add v4.0.0 (#33833) 2022-12-29 10:30:35 +01:00
Adam J. Stewart
36d87a4783 py-numpy: add v1.24.1 (#34697) 2022-12-29 10:23:20 +01:00
Wouter Deconinck
6d2645f73b libpsl: new versions through 0.21.2 (#34699)
This adds the final bugfix versions through the 0.21.2 just released.

With 0.21.1 the tag name pattern was changed, hence url_for_version.
2022-12-29 10:22:27 +01:00
Wouter Deconinck
44f7363fbe cernlib: depends_on libxaw libxt (#34448)
Based on the following lines in the top level `CMakeLists.txt` (I can't deep link since gitlab.cern.ch not public), `cernlib` needs an explicit dependency on `libxaw` and `libxt`:
```cmake
find_package(X11  REQUIRED)
message(STATUS "CERNLIB: X11_Xt_LIB=${X11_Xt_LIB} X11_Xaw_LIB=${X11_Xaw_LIB} X11_LIBRARIES=${X11_LIBRARIES}")
```
2022-12-29 09:25:07 +01:00
Wouter Deconinck
9d936a2a75 singularity, apptainer: --without-conmon into @property config_options (#34474)
Per https://github.com/spack/spack/issues/34192, apptainer does not support `--without-conmon`, so we introduce a base class `config_options` property that can be overridden in the `apptainer` package.
2022-12-29 09:24:41 +01:00
Wouter Deconinck
18438c395d dd4hep: depends_on virtual tbb instead of intel-tbb (#34704)
Recent changes to dd4hep remove the explicit dependency
on an older version of intel-tbb. This makes this explicit
in the spack package.
2022-12-29 09:13:28 +01:00
wspear
28a30bcea6 veloc: add v1.6 and dependencies (#34706) 2022-12-29 09:12:51 +01:00
Alex Richert
536c7709c2 Change regex in bacio patch to avoid python re bug (#34668) 2022-12-29 08:50:27 +01:00
Todd Gamblin
e28738a01e bugfix: make texinfo build properly with gettext (#34312)
`texinfo` depends on `gettext`, and it builds a perl module that uses gettext via XS
module FFI. Unfortunately, the XS modules build asks perl to tell it what compiler to
use instead of respecting the one passed to configure.

Without this change, the build fails with this error:

```
parsetexi/api.c:33:10: fatal error: 'libintl.h' file not found
         ^~~~~~~~~~~
```

We need the gettext dependency and the spack wrappers to ensure XS builds properly.

- [x] Add needed `gettext` dependency to `texinfo`
- [x] Override XS compiler with `PERL_EXT_CC`

Co-authored-by: Paul Kuberry <pakuber@sandia.gov>
2022-12-28 15:20:53 -08:00
Todd Gamblin
5f8c706128 Consolidate how Spack uses git (#34700)
Local `git` tests will fail with `fatal: transport 'file' not allowed` when using git 2.38.1 or higher, due to a fix for `CVE-2022-39253`.

This was fixed in CI in #33429, but that doesn't help the issue for anyone's local environment. Instead of fixing this with git config in CI, we should ensure that the tests run anywhere.

- [x] Introduce `spack.util.git`.
- [x] Use `spack.util.git.get_git()` to get a git executable, instead of `which("git")` everywhere.
- [x] Make all `git` tests use a `git` fixture that goes through `spack.util.git.get_git()`.
- [x] Add `-c protocol.file.allow=always` to all `git` invocations under `pytest`.
- [x] Revert changes from #33429, which are no longer needed.
2022-12-28 00:44:11 -08:00
Rémi Lacroix
558695793f CPMD: Remove now unused "import" 2022-12-27 13:06:08 -08:00
Rémi Lacroix
b43a27674b CPMD: Update for open-source release
CPMD has been open-sourced on GitHub so manual download is no longer needed. The patches have been included in the new 4.3 release.
2022-12-27 13:06:08 -08:00
Massimiliano Culpo
3d961b9a1f spack graph: rework to use Jinja templates and builders (#34637)
`spack graph` has been reworked to use:

- Jinja templates
- builder objects to construct the template context when DOT graphs are requested. 

This allowed to add a new colored output for DOT graphs that highlights both
the dependency types and the nodes that are needed at runtime for a given spec.
2022-12-27 15:25:53 +01:00
Todd Gamblin
d100ac8923 types: fix type annotations and remove novm annootations for llnl module
Apparently I forgot to do this in #34305.
2022-12-26 22:28:44 +01:00
Harmen Stoppels
e8fa8c5f01 timer: pick a single unit based on max duration. 2022-12-26 22:28:44 +01:00
Todd Gamblin
be6bb413df spack solve: use consistent units for time
`spack solve` is supposed to show you times you can compare. setup, ground, solve, etc.
all in a list. You're also supposed to be able to compare easily across runs. With
`pretty_seconds()` (introduced in #33900), it's easy to miss the units, e.g., spot the
bottleneck here:

```console
> spack solve --timers tcl
    setup        22.125ms
    load         16.083ms
    ground        8.298ms
    solve       848.055us
    total        58.615ms
```

It's easier to see what matters if these are all in the same units, e.g.:

```
> spack solve --timers tcl
    setup         0.0147s
    load          0.0130s
    ground        0.0078s
    solve         0.0008s
    total         0.0463s
```

And the units won't fluctuate from run to run as you make changes.

-[x] make `spack solve` timings consistent like before
2022-12-26 22:28:44 +01:00
Adam J. Stewart
d23c302ca2 qt-base: ~network by default (#34688) 2022-12-26 10:19:03 -06:00
Rohit Goswami
ed0c1cea91 py-pytest-datadir: Init at 1.4.1 (#34692)
* py-pytest-datadir: Init at 1.4.1

* py-pytest-data-dir: Fix missing dep

Co-authored-by: "Adam J. Stewart" <ajstewart426@gmail.com>

Co-authored-by: "Adam J. Stewart" <ajstewart426@gmail.com>
2022-12-24 11:42:05 -07:00
Lucas Frérot
ffc42e287d py-uvw: added v0.5.0 (#34677) 2022-12-24 11:12:44 -06:00
Ralf Gommers
ba0d182e10 Update py-meson-python (0.11.0, 0.12.0) and meson (0.64.1, 1.0.0) (#34675)
* Update py-meson-python versions (0.11.0, 0.12.0)

* Update `meson` to version 0.64.1

* Add Meson 1.0.0

* Apply code review suggestions
2022-12-23 19:22:19 -07:00
David Zmick
8d8104de2c tmux: add 3.3a (#34671) 2022-12-24 01:52:32 +01:00
Adam J. Stewart
7975e0afbc QMakeBuilder: fix bug introduced during multi-bs refactor (#34683) 2022-12-23 13:57:44 -06:00
Adam J. Stewart
4a43522763 py-kornia: add v0.6.9 (#34652) 2022-12-22 15:13:52 -07:00
Adam J. Stewart
30343d65ba libelf: fix build on macOS x86_64 (#34646) 2022-12-22 14:58:32 -07:00
Alex Richert
38c1639c9c bacio: fix typo in patch method (#34663) 2022-12-22 18:59:32 +01:00
Wouter Deconinck
be5033c869 sherpa: add v2.2.13 (#34628) 2022-12-22 10:58:21 -07:00
Adam J. Stewart
eb67497020 ML CI: Linux x86_64 (#34299)
* ML CI: Linux x86_64

* Update comments

* Rename again

* Rename comments

* Update to match other arches

* No compiler

* Compiler was wrong anyway

* Faster TF
2022-12-22 11:31:40 -06:00
Loïc Pottier
371268a9aa added py-dynim package (#34651)
Signed-off-by: Loïc Pottier <48072795+lpottier@users.noreply.github.com>

Signed-off-by: Loïc Pottier <48072795+lpottier@users.noreply.github.com>
2022-12-22 09:55:18 -06:00
Andrew Wood
344e8d142a Restrict a patch of rhash to versions >=1.3.6 (#34310) 2022-12-22 08:02:15 -07:00
Harmen Stoppels
161fbfadf4 Fix combine_phase_logs text encoding issues (#34657)
Avoid text decoding and encoding when combining log files, instead
combine in binary mode.

Also do a buffered copy which is sometimes faster for large log files.
2022-12-22 15:32:48 +01:00
Wladimir Arturo Garces Carrillo
3304312b26 neve: add new package (#34596)
Co-authored-by: WladIMirG <WladIMirG@users.noreply.github.com>
2022-12-22 07:27:07 -07:00
Alec Scott
3279ee7068 Add --fresh to docs to actually upgrade spack environments (#34433) 2022-12-22 11:19:24 +00:00
Todd Gamblin
8f3f838763 docs: show module documentation before submodules (#34258)
Currently, the Spack docs show documentation for submodules *before* documentation for
submodules on package doc pages. This means that if you put docs in `__init__.py` in
some package, the docs in there will be shown *after* the docs for all submodules of the
package instead of at the top as an intro to the package. See, e.g.,
[the lockfile docs](https://spack.readthedocs.io/en/latest/spack.environment.html#module-spack.environment),
which should be at the
[top of that page](https://spack.readthedocs.io/en/latest/spack.environment.html).

- [x] add the `--module-first` option to sphinx so that it generates module docs at top of page.
2022-12-22 11:50:48 +01:00
Todd Gamblin
09864d00c5 docs: remove monitors and analyzers (#34358)
These experimental features were removed in #31130, but the docs were not.

- [x] remove the `spack monitor` and `spack analyze` docs
2022-12-22 11:47:13 +01:00
Benjamin S. Kirk
0f7fa27327 librsvg: add 2.40.21, which does not require rust (#34585)
* librsvg: add 2.40.21, which does not require rust and has some security backports

https://download.gnome.org/sources/librsvg/2.40/librsvg-2.40.21.news

* librsvg: prevent finding broken gtkdoc binaries when ~doc is selected.

On my CentOS7 hosts, ./configure finds e.g. /bin/gtkdoc-rebase even when
~doc is selected.  These tools use Python2, and fail with an error:
"ImportError: No module named site"

So prevent ./configure from finding these broken tools when not building
the +doc variant.
2022-12-22 11:28:30 +01:00
Rocco Meli
a27139c081 openbabel: add 3.1.0 and 3.1.1 (#34631) 2022-12-22 03:17:50 -07:00
Vasileios Karakasis
4d4338db16 reframe: rework recipe, add v4.0.0-dev4 (#34584) 2022-12-22 09:53:42 +01:00
Annop Wongwathanarat
6d64ffdd1a quantum-espresso: enable linking with armpl-gcc and acfl for BLAS and FFT (#34416) 2022-12-22 09:50:51 +01:00
Harmen Stoppels
e9ea9e2316 index.json.hash, no fatal error if key cannot be fetched (#34643) 2022-12-22 09:48:05 +01:00
Benjamin Fovet
2a5509ea90 kokkos: add v3.7.01 (#34645)
Co-authored-by: Benjamin Fovet <benjamin.fovet@cea.fr>
2022-12-22 09:45:13 +01:00
Adam J. Stewart
b9d027f0cc py-pytorch-lightning: add v1.8.6 (#34647) 2022-12-22 09:43:57 +01:00
Christopher Christofi
6d54dc2a44 perl-config-simple: add 4.58 (#34649) 2022-12-22 09:43:41 +01:00
renjithravindrankannath
6cd9cbf578 Using corresponding commit ids of hiprand for each releases (#34545) 2022-12-22 09:36:14 +01:00
Alex Richert
72e81796d1 bacio: patch for v2.4.1 (#34575) 2022-12-22 09:12:29 +01:00
Andre Merzky
f116e6762a add py-psij-python and py-pystache packages (#34357)
* add psij package and deps

* update hashes, URLs

* linting

* Update var/spack/repos/builtin/packages/py-psij-python/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-pystache/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-pystache/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* Update package.py

apply suggested change

* Update package.py

apply suggested change

* Update package.py

ensure maintainer inheritance

* add psij to exaworks meta-package

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-12-21 20:07:35 -07:00
Howard Pritchard
c74bbc6723 paraview: patch catalyst etc. to build with oneapi (#33562)
without this patch, build of paraview has a meltdown when reaching 3rd party catalyst and other packages
with these types of errors:

   335    /tmp/foo/spack-stage/spack-stage-paraview-5.10.1-gscoqxhhakjyyfirdefuhmi2bzw4scho/spack-src/VTK/ThirdParty/fmt/vtkfmt/vtkfmt/format.h:1732:11: error: cannot capture a bi
            t-field by reference
   336          if (sign) *it++ = static_cast<Char>(data::signs[sign]);
   337              ^

Signed-off-by: Howard Pritchard <howardp@lanl.gov>

Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2022-12-21 17:07:24 -07:00
Harmen Stoppels
492a603d5e json: remove python 2 only code (#34615) 2022-12-21 14:18:12 -07:00
Adam J. Stewart
dab68687bd py-cartopy: older versions don't support Python 3.10 (#34626) 2022-12-21 21:23:22 +01:00
Thomas Madlener
1a32cea114 podio: add v0.16.2 (#34606) 2022-12-21 12:52:47 -07:00
Hector Martinez-Seara
aaec76652b relion: add v4.0.0 (#34600) 2022-12-21 20:41:13 +01:00
Michael Kuhn
f748911ea0 glib: add 2.74.3 (#34603) 2022-12-21 20:40:04 +01:00
Cory Bloor
e60e74694f rocm: make amdgpu_target sticky (#34591)
The sticky property will prevent clingo from changing the amdgpu_target
to work around conflicts. This is the same behaviour as was adopted for
cuda_arch in 055c9d125d.
2022-12-21 20:21:20 +01:00
Sergey Kosukhin
2ef026b8c6 eckit: skip broken test (#34610) 2022-12-21 20:20:05 +01:00
Mark W. Krentel
a6c2569b18 hpctoolkit: replace filter_file with upstream patch (#34604)
Replace the filter_file for older configure with rocm 5.3 with an
upstream patch.  Further, the patch is no longer needed for develop or
later releases.
2022-12-21 20:18:58 +01:00
shanedsnyder
5483b5ff99 dashan-runtime,darshan-util,py-darshan: update package versions for darshan-3.4.2 (#34583) 2022-12-21 20:18:27 +01:00
louisespellacy-arm
2b78a7099d arm-forge: add 22.1.2 (#34569) 2022-12-21 20:09:42 +01:00
lpoirel
34cdc6f52b starpu: add conflict for ~blocking +simgrid (#34616)
see 1f5a911d43
2022-12-21 20:09:23 +01:00
Adam J. Stewart
3aafdb06c9 py-pyproj: add new versions (#34633) 2022-12-21 20:00:53 +01:00
Harmen Stoppels
4a22c1c699 urlopen: handle timeout in opener (#34639) 2022-12-21 19:40:26 +01:00
Andrey Perestoronin
f021479ef0 feat: 🎸 Add new 2023.0.0 oneVPL package (#34642) 2022-12-21 11:07:41 -07:00
Manuela Kuhn
3f374fb62f py-vcrpy: add 4.2.1 (#34636) 2022-12-21 11:02:55 -07:00
Niclas Jansson
949be42f32 neko: add v0.5.0 (#34640) 2022-12-21 11:02:37 -07:00
Rob Falgout
e5abd5abc1 hypre: add v2.27.0 (#34625) 2022-12-21 11:02:23 -07:00
Harmen Stoppels
4473d5d811 etags for index.json invalidation, test coverage (#34641)
Implement an alternative strategy to do index.json invalidation.

The current approach of pairs of index.json / index.json.hash is
problematic because it leads to races.

The standard solution for cache invalidation is etags, which are
supported by both http and s3 protocols, which allows one to do
conditional fetches.

This PR implements that for the http/https schemes. It should also work
for s3 schemes, but that requires other prs to be merged.

Also it improves unit tests for index.json fetches.
2022-12-21 18:41:59 +01:00
Mikael Simberg
c3e61664cf Add patch for pika on macOS (#34619) 2022-12-21 13:41:49 +01:00
Manuela Kuhn
c3217775c3 py-scikit-image: add 0.19.3 (#34618)
* py-scikit-image: add 0.19.3

* Update var/spack/repos/builtin/packages/py-scikit-image/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-12-20 12:59:48 -06:00
kwryankrattiger
58a7e11db9 DAV: VTK-m needs to install examples for smoke test (#34611)
SDK deployment targets being able to validate and run VTK-m via spack
deployments, so examples should be installed.
2022-12-20 09:56:50 -08:00
Andrey Perestoronin
ac570bb5c4 2023.0.0 oneAPI release promotion (#34617) 2022-12-20 08:47:08 -07:00
Massimiliano Culpo
b2c806f6fc archspec: add support for zen4 (#34609)
Also add:
- Upper bound for Xeon Phi compiler support
- Better detection for a64fx
2022-12-20 11:22:50 +01:00
Nicholas Knoblauch
bd613b3124 Remove dep on jupyter meta-package (#34573) 2022-12-19 17:22:34 -06:00
Manuela Kuhn
f1b85bc653 py-nipype: add 1.8.5 and py-looseversion: add new package (#34608) 2022-12-19 13:25:22 -06:00
Hector Martinez-Seara
e1fab4dd51 Gromacs: added version 2022.4 (#34599) 2022-12-19 15:30:20 +01:00
Anton Kozhevnikov
a924079f66 [ELPA] add sha256 for elpa-2022.11.001.rc2.tar.gz (#33439) 2022-12-19 04:12:02 -07:00
Adam J. Stewart
c5aff1d412 py-horovod: patch no longer applies (#34593) 2022-12-19 11:49:02 +01:00
Adam J. Stewart
6c9602ee64 aws-sdk-cpp: add v1.10.32 (#34592) 2022-12-19 11:48:31 +01:00
Adam J. Stewart
64327bfef0 py-pyvista: add v0.37.0 (#34590) 2022-12-19 11:48:01 +01:00
Adam J. Stewart
05c3cb7cc9 netcdf-cxx: add patch to fix macOS build (#34588) 2022-12-19 11:46:33 +01:00
Adam J. Stewart
c87b251639 XNNPACK: fix build on macOS, update deps (#34555) 2022-12-19 11:44:56 +01:00
Adam J. Stewart
f2332a17d3 Node.js: new versions, newer Python support, macOS fixes (#34478) 2022-12-19 11:40:31 +01:00
Adam J. Stewart
c7f24a132e py-numpy: add v1.24.0 (#34602) 2022-12-18 17:17:06 -07:00
Alec Scott
96a7af1dd2 Add py-docstring-to-markdown v0.11 (#34595) 2022-12-18 14:59:47 -06:00
eugeneswalker
db1caa9e92 intel-oneapi-dpl: add v2022.0.0 (#34601) 2022-12-18 13:44:23 -05:00
iarspider
237d26460d LLVM: replace libelf dependency with elf (#34265)
* LLVM: replace libelf dependency with elf

I didn't test this extensively, but in CMS LLVM builds just fine with elfutils.

* [@spackbot] updating style on behalf of iarspider

Co-authored-by: iarspider <iarspider@users.noreply.github.com>
2022-12-17 14:44:27 -08:00
Harmen Stoppels
1020b65297 fix != -> == typo (#34568) 2022-12-17 20:15:15 +01:00
Adam J. Stewart
dceb4c9d65 Update PyTorch ecosystem (#34582) 2022-12-17 11:51:59 -07:00
Alex Richert
50570ea334 Add static-only option for ESMF (#34576) 2022-12-17 04:27:22 -07:00
eugeneswalker
7e836b925d e4s: disable mac stack due to binary relocation issue#32571 (#34560) 2022-12-17 10:53:15 +00:00
Benjamin S. Kirk
cec3da61d2 Add gimp & dependent packages (#34558)
* exiv2: add new versions

* babl: new package required to build GIMP

* gegl: new package required to build GIMP

* gexiv2: new package required to build GIMP

* libmypaint: new package required to build GIMP

* mypaint-brushes: new package required to build GIMP

* vala: new package required to build GIMP

* GIMP: new package definition for building GIMP-2.10 from source

* libjxl: update for 0.7.0

* libwmf: a library for reading vector images in Windows Metafile Format (WMF)

* libde265: an open source implementation of the h.265 video codec

* libwebp: add new versions

* GIMP: additional variants for building GIMP-2.10 from source

* libde265: remove boilerplate

* fixes for style precheck

* updates based on feedback

* fixes for style precheck
2022-12-17 03:52:56 -07:00
Mikhail Titov
7ed53cf083 Update package versions: RADICAL-Cybertools (RE, RG, RP, RS, RU) (#34572)
* rct: update packages (RE, RG, RP, RS, RU) with new versions

* re: fixed radical-pilot requirement for radical-entk
2022-12-16 22:24:00 -07:00
eugeneswalker
bdc3ab5b54 intel-oneapi-compilers: add v2023.0.0 (#34571) 2022-12-16 21:38:51 -07:00
Jack Morrison
5a985e33ea Add --enable-orterun-prefix-by-default configure option for OpenMPI (#34469) 2022-12-16 17:59:24 -07:00
Bernhard Kaindl
9817593c1c Automake requires Thread::Queue, but it is only provided with in perl+threads. (#34076)
Update the depends_on("perl") to depends_on("perl+threads").

This and #34074 is needed to properly handle e.g. the perl-Thread-Queue
rpm package:

It may not be installed on RedHat-based hosts, which can lead to automake
build failures when `spack external find perl` or `spack external find --all`
was used to use the system-provided perl install.
2022-12-16 16:11:11 -08:00
Rémi Lacroix
1cc78dac38 octopus: Ensure MPI is used consistently (#33969)
Some variants have MPI dependencies, make sure they can be used only when the `mpi` variable is enabled.
2022-12-16 15:17:37 -08:00
Marco De La Pierre
e2c5fe4aa3 adding 2nd bunch of nf-core deps from update/nextflow-tools (#34562)
* adding 2nd bunch of nf-core deps from update/nextflow-tools

* Update var/spack/repos/builtin/packages/py-a2wsgi/package.py

* Update var/spack/repos/builtin/packages/py-apispec/package.py

* Update var/spack/repos/builtin/packages/py-bagit-profile/package.py

* Update var/spack/repos/builtin/packages/py-bagit-profile/package.py

* Update var/spack/repos/builtin/packages/py-bagit-profile/package.py

* Update var/spack/repos/builtin/packages/py-bdbag/package.py

* Update var/spack/repos/builtin/packages/py-schema-salad/package.py

* Update var/spack/repos/builtin/packages/py-schema-salad/package.py

* Update var/spack/repos/builtin/packages/py-tuspy/package.py

* Update var/spack/repos/builtin/packages/py-schema-salad/package.py

* Update var/spack/repos/builtin/packages/py-schema-salad/package.py

* Update var/spack/repos/builtin/packages/py-bdbag/package.py

* Update var/spack/repos/builtin/packages/py-bdbag/package.py

* Update var/spack/repos/builtin/packages/py-bioblend/package.py

* Update var/spack/repos/builtin/packages/py-circus/package.py

* Update var/spack/repos/builtin/packages/py-circus/package.py

* Update var/spack/repos/builtin/packages/py-cloudbridge/package.py

* Update var/spack/repos/builtin/packages/py-cloudbridge/package.py

* Apply suggestions from code review

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-12-16 15:18:49 -07:00
Marco De La Pierre
1bf87dbb5d Adding first bunch of recipes for dependencies of nf-core-tools (#34537)
* nextflow recipe: added latest stable version

* tower-cli recipe: added latest release

* recipes tower-agent and tower-cli renamed to nf-tower-agent and nf-tower-cli

* recipes nf-tower-agent and nf-tower-cli: small fix

* nf-core-tools recipe: added most py- dependencies

* nf-core-tools: recipe without galaxy-tool-util (for testing)

* fixed typos in py-yacman recipe

* fixed typos in py-pytest-workflow recipe

* fixed typo in nf-core-tools recipe

* fixed typos in py-yacman recipe

* fixes in recipes for py-questionary and py-url-normalize

* fixes to py-yacman recipe

* style fixes to py- packages that are dependencies to nf-core-tools

* fix in py-requests-cache recipe

* added missing dep in py-requests-cache recipe

* nf-core-tools deps: removed redundant python dep for py packages oyaml and piper

* nf-core-tools recipe: final, incl dep on py-galaxy-tool-util

* nf-core-tools: new version with extra dependency

* commit to merge packages on focus from update/nextflow-tools

* nf-core: commenting galaxy dep for this pr

* Update var/spack/repos/builtin/packages/py-requests-cache/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-requests-cache/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* removed nf-core-tools from this branch, will be back at the end

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-12-16 14:28:51 -07:00
Sam Reeve
ffe527b141 Add HACCabana proxy app (#34567) 2022-12-16 14:03:08 -07:00
John W. Parent
642c5b876b Compiler detection: avoid false recognition of MSVC (#34574)
Interim fix for #34559

Spack's MSVC compiler definition uses ifx as the Fortran compiler.
Prior to #33385, the Spack MSVC compiler definition required the
executable to be called "ifx.exe"; #33385 replaced this with just
"ifx", which inadvertently led to ifx falsely indicating the
presence of MSVC on non-Windows systems (which leads to future
errors when attempting to query/use those compiler objects).

This commit applies a short-term fix by updating MSVC Fortran
version detection to always indicate a failure on non-Windows.
2022-12-16 19:22:04 +00:00
Brian Spilner
8b7bd6dc74 new release cdo-2.1.1 (#34548) 2022-12-16 11:16:32 -08:00
Adam J. Stewart
2f97dc7aa6 py-pytorch-lightning: add v1.8.5 (#34557) 2022-12-16 11:10:19 -08:00
Adam J. Stewart
958d542f81 GDAL: add v3.6.1 (#34556) 2022-12-16 10:32:54 -08:00
Vicente Bolea
b1aae1c2ed vtk-m: add v2.0.0-rc1 (#34561) 2022-12-16 10:31:10 -08:00
SXS Bot
690f9d69fe spectre: add v2022.12.16 (#34570)
* spectre: add v2022.12.16
* [@spackbot] updating style on behalf of sxs-bot

Co-authored-by: sxs-bot <sxs-bot@users.noreply.github.com>
2022-12-16 11:27:56 -07:00
Marc Joos
a78c16a609 add version 3.6.4 to wi4mpi (#34565) 2022-12-16 10:26:46 -08:00
snehring
7bb2d3cca3 nwchem: restricting current versions to python@3.9 at latest (#34506) 2022-12-16 17:20:19 +01:00
Paul Kuberry
7216050dd3 libzmq: make location of libsodium explicit (#34553) 2022-12-15 16:17:15 -07:00
eugeneswalker
2f26e422d6 nco: add v5.0.6 (#34512) 2022-12-15 15:42:13 -07:00
Brian Van Essen
3477d578a3 roctracer: fixed a bug in how the external is identified (#33517)
Make the package a proper ROCm package.
2022-12-15 23:29:36 +01:00
Zack Galbreath
aa8e1ba606 gitlab ci: more resources for slow builds (#34505) 2022-12-15 14:35:54 -07:00
Manuela Kuhn
08e007e9a6 py-traits: add 6.4.1 (#34550) 2022-12-15 13:10:16 -06:00
eugeneswalker
d6fb65ebc6 eckit: add v1.19.0 (#34510) 2022-12-15 10:38:24 -08:00
eugeneswalker
2b5be919dd odc: add v1.4.5 (#34513) 2022-12-15 10:38:06 -08:00
Sebastian Grimberg
cc2dff48a8 arpack-ng: add variant for ISO C binding support (#34529)
Co-authored-by: Sebastian Grimberg <sjg@amazon.com>
2022-12-15 10:56:13 -07:00
Massimiliano Culpo
22922bf74c Propagate exceptions from Spack python console (#34547)
fixes #34489

Customize sys.excepthook to raise SystemExit when
any unhandled exception reaches the hook.
2022-12-15 18:08:53 +01:00
Sean Koyama
8a02463d7d IntelOneApiPackage: add envmods variant to toggle environment modifications by oneapi packages (#34253)
Co-authored-by: Sean Koyama <skoyama@anl.gov>
Co-authored-by: Robert Cohn <robert.s.cohn@intel.com>
2022-12-15 17:52:09 +01:00
Harmen Stoppels
c6465bd9bd Add a proper deprecation warning for update-index -d (#34520) 2022-12-15 17:45:32 +01:00
Harmen Stoppels
9025caed6e Remove warning in download_tarball (#34549) 2022-12-15 14:03:30 +00:00
Massimiliano Culpo
7056a4bffd Forward lookup of the "run_tests" attribute (#34531)
fixes #34518

Fix an issue due to the MRO chain of the package wrapper
during build. Before this PR we were always returning
False when the builder object was created before the
run_tests method was monkey patched.
2022-12-15 09:35:33 +01:00
snehring
d2aa8466eb metabat: adding missing build dependency (#34530) 2022-12-15 09:23:59 +01:00
Loïc Pottier
6e4684fbca talass: fixed URLs so the package is reachable (#34387)
Signed-off-by: Loïc Pottier <pottier1@llnl.gov>
2022-12-15 09:23:05 +01:00
Brian Vanderwende
fcbf617d38 ncl: add RPC lib with ncl+hdf4 (#34451) 2022-12-15 09:22:00 +01:00
downloadico
1f8b55a021 Add G'MIC package with only the "cli" target available (#34533) 2022-12-15 09:19:50 +01:00
David Gardner
b5f8ed07fb sundials: fix typo in smoke tests (#34539) 2022-12-15 09:07:54 +01:00
Thomas Madlener
65bd9b9ac5 podio, edm4hep: add v0.7.2 and v0.16.1 respectively (#34526)
Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2022-12-15 09:02:16 +01:00
Adam J. Stewart
6250d84b41 cpuinfo: new versions, shared libs (#34544) 2022-12-15 09:00:51 +01:00
Wouter Deconinck
99056e03bd acts: new versions 19.11.0, 21.0.0, 21.1.0 (#34540)
* acts: new versions 19.11.0, 21.0.0, 21.1.0

https://github.com/acts-project/acts/compare/v19.10.0...v19.11.0:
- python 3.8 required if ACTS_BUILD_EXAMPLES_PYTHON_BINDINGS

https://github.com/acts-project/acts/compare/v20.3.0...v21.0.0:
- python 3.8 required if ACTS_BUILD_EXAMPLES_PYTHON_BINDINGS

https://github.com/acts-project/acts/compare/v21.0.0...v21.1.0:
- no build system changes

* acts: depends_on python@3.8: when sometimes
2022-12-15 08:56:32 +01:00
Fabien Bruneval
1db849ee5f libcint: Fix +coulomb_erf and add +pypzpx (#34524) 2022-12-15 05:31:58 +01:00
Thomas Madlener
2f82b213df lcio: add latest version (#34527) 2022-12-15 05:06:59 +01:00
Axel Huebl
2a5f0158bc ParaView: Add openPMD Support (#33821)
openPMD, a metadata standard on top of backends like ADIOS2 and HDF5,
is implemented in ParaView 5.9+ via a Python3 module.

Simplify Conflicts & Variant

Add to ECP Data Vis SDK
2022-12-14 20:45:27 -07:00
Manuela Kuhn
21a1f7dd97 py-traitlets: add w5.7.1 (#34525) 2022-12-14 21:34:51 -06:00
David Boehme
4b5ed94af4 caliper: add version 2.9.0 (#34538) 2022-12-15 03:52:53 +01:00
snehring
06788019a4 apptainer: add new version 1.1.4 (#34536) 2022-12-15 02:06:22 +01:00
Sam Grayson
cab8f795a7 Patch dill._dill._is_builtin_module (#34534)
* Patch dill._dill._is_builtin_module

* Fix style

* Add test
2022-12-14 16:03:03 -07:00
finkandreas
2db38bfa38 py-archspec: replace removed .build_directory with .stage.source_path (#34521) 2022-12-15 00:00:21 +01:00
Harmen Stoppels
ea029442e6 Revert "Revert "Use urllib handler for s3:// and gs://, improve url_exists through HEAD requests (#34324)"" (#34498)
This reverts commit 8035eeb36d.

And also removes logic around an additional HEAD request to prevent
a more expensive GET request on wrong content-type. Since large files
are typically an attachment and only downloaded when reading the
stream, it's not an optimization that helps much, and in fact the logic
was broken since the GET request was done unconditionally.
2022-12-14 23:47:11 +01:00
Axel Huebl
43e38d0d12 WarpX 22.11, 22.12 & PICMI-Standard (#34517)
* PICMI: 0.0.22

* WarpX: 22.11, 22.12
2022-12-14 13:59:16 -08:00
Marco De La Pierre
2522c8b754 edits to 8x existing recipes, mostly new versions, plus two dependency fixes (#34516) 2022-12-14 12:28:33 -07:00
Marco De La Pierre
f64cb29aea Nextflow, Tower Agent, Tower CLI: updates (#34515)
* renamed tower-agent and tower-cli with prefif nf-

* new nextflow package version

* added newest versions (today) for nf-tower-agent and nf-tower-cli
2022-12-14 11:44:22 -07:00
Erik Heeren
80e30222e1 New neuroscience packages: py-bmtk, py-neurotools (#34464)
* Add py-bmtk and py-neurotools

* py-bmtk: version bump

* [@spackbot] updating style on behalf of heerener

* Maybe the copyright needs to be extended to 2022 for the check to pass

* Process review remarks

* Update var/spack/repos/builtin/packages/py-neurotools/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-12-14 12:00:26 -06:00
eugeneswalker
55356e9edb bufr: add v11.6, 11.7, 11.7.1 (#34509) 2022-12-14 06:24:26 -07:00
eugeneswalker
eec09f791d fms: add v2019.01.03 (#34511) 2022-12-14 04:50:00 -07:00
Harmen Stoppels
9032179b34 Use update-index --mirror-url <url> instead of -d <url> (#34519) 2022-12-14 10:03:18 +01:00
Alberto Sartori
45b40115fb justbuild: add v1.0.0 (#34467) 2022-12-14 01:17:42 -07:00
snehring
e030833129 r-rgdal: adding new version 1.6-2 (#34502) 2022-12-13 20:06:31 -07:00
Harmen Stoppels
e055dc0e64 Use file paths/urls correctly (#34452)
The main issue that's fixed is that Spack passes paths (as strings) to
functions that require urls. That wasn't an issue on unix, since there
you can simply concatenate `file://` and `path` and all is good, but on
Windows that gives invalid file urls. Also on Unix, Spack would not deal with uri encoding like x%20y for file paths. 

It also removes Spack's custom url.parse function, which had its own incorrect interpretation of file urls, taking file://x/y to mean the relative path x/y instead of hostname=x and path=/y. Also it automatically interpolated variables, which is surprising for a function that parses URLs.

Instead of all sorts of ad-hoc `if windows: fix_broken_file_url` this PR
adds two helper functions around Python's own path2url and reverse.

Also fixes a bug where some `spack buildcache` commands
used `-d` as a flag to mean `--mirror-url` requiring a URL, and others
`--directory`, requiring a path. It is now the latter consistently.
2022-12-13 23:44:13 +01:00
Matthias Wolf
c45729cba1 py-submitit: add 1.4.5 (#34460) 2022-12-13 16:11:14 -06:00
Manuela Kuhn
b02b2f0f00 py-tifffile: add 2022.10.10 (#34499) 2022-12-13 16:09:01 -06:00
Manuela Kuhn
3ded50cc8c py-sphinxcontrib-qthelp: add 1.0.3 (#34495) 2022-12-13 16:08:06 -06:00
Manuela Kuhn
a7280cd5bb py-sqlalchemy: add 1.4.45 (#34497) 2022-12-13 16:07:34 -06:00
Paul Kuberry
2837b47ea5 trilinos: extend range of Teuchos patch (#34504) 2022-12-13 14:49:20 -07:00
Matthew Thompson
ea2c61c683 Update pFunit, add gFTL, gFTL-Shared, fArgParse, pFlogger, yaFyaml (#34476)
* Add GFE packages, Update pFUnit
* Remove citibeth as maintainer per her request
* Version 3.3.0 is an odd duck. Needs a v

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-12-13 22:40:33 +01:00
Bernhard Kaindl
217b34825a py-tensorboard-data-server: build needs rust+rustfmt (#34465) 2022-12-13 10:56:31 -07:00
Mosè Giordano
17d90f4cbc pcre2: add new versions and update URL (#34477) 2022-12-13 10:48:27 -07:00
Annop Wongwathanarat
7a5bd8cac4 gromacs: enable linking with acfl FFT (#34494) 2022-12-13 09:32:42 -08:00
Harmen Stoppels
333da47dc7 Don't fetch to order mirrors (#34359)
When installing binary tarballs, Spack has to download from its
binary mirrors.

Sometimes Spack has cache available for these mirrors.

That cache helps to order mirrors to increase the likelihood of
getting a direct hit.

However, currently, when Spack can't find a spec in any local cache
of mirrors, it's very dumb:

- A while ago it used to query each mirror to see if it had a spec,
  and use that information to order the mirror again, only to go
  about and do exactly a part of what it just did: fetch the spec
  from that mirror confused
- Recently, it was changed to download a full index.json, which
  can be multiple dozens of MBs of data and may take a minute to
  process thanks to the blazing fast performance you get with
  Python.

In a typical use case of concretizing with reuse, the full index.json
is already available, and it likely that the local cache gives a perfect
mirror ordering on install. (There's typically no need to update any
caches).

However, in the use case of Gitlab CI, the build jobs don't have cache,
and it would be smart to just do direct fetches instead of all the
redundant work of (1) and/or (2).

Also, direct fetches from mirrors will soon be fast enough to
prefer these direct fetches over the excruciating slowness of
index.json files.
2022-12-13 17:07:11 +01:00
dependabot[bot]
8b68b4ae72 build(deps): bump actions/checkout from 3.1.0 to 3.2.0 (#34480)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](93ea575cb5...755da8c3cf)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-13 09:05:50 -07:00
Adam J. Stewart
40a3fdefa8 py-cartopy: add v0.21.1 (#34482) 2022-12-13 07:12:24 -07:00
Adam J. Stewart
a61474f2c1 libicd: macOS now supported (#34483) 2022-12-13 07:12:00 -07:00
Aidan Heerdegen
b95a75779b Fix markdown links in rst files (#34488) 2022-12-13 14:11:38 +00:00
Harmen Stoppels
0ff6a1bd1c spack/package.py: improve editor support for some +/- static props (#34319) 2022-12-13 13:55:32 +01:00
Massimiliano Culpo
f9cfc2f57e scons: fix signature for install_args (#34481) 2022-12-13 12:21:44 +01:00
Adam J. Stewart
f4fb20e27e py-shapely: add v2.0.0 (#34475) 2022-12-13 09:59:23 +01:00
Massimiliano Culpo
3ff5d49102 Be strict on the markers used in unit tests (#33884) 2022-12-13 09:21:57 +01:00
Erik Heeren
238d4f72f5 py-pyld: add with dependency (#34472)
* py-pyld: add with dependency

* py-pyld and py-frozendict: update copyright expiration

* [@spackbot] updating style on behalf of heerener
2022-12-12 20:15:43 -07:00
Matthias Wolf
c5bc469eeb py-sh: new versions (#34458)
* py-sh: new versions

* style
2022-12-12 20:15:28 -07:00
Sam Grayson
b01e7dca9d Update packages for running azure (#34403)
* Update packages for running azure

* Update py-msal-extensions

* Respond to comments
2022-12-12 21:10:50 -06:00
Jean Luca Bez
c62906f781 New python package: Drishti (#33316)
* include Drishti

* fix syntax

* Update var/spack/repos/builtin/packages/drishti/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update package.py

* Update var/spack/repos/builtin/packages/drishti/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-12-12 19:33:50 -07:00
Sam Grayson
94bac8d6dd Add new package: micromamba (#34195)
* Add new packages

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* style

* wip

* Respond to comments

* Respond to comments

* Spack style

* Remove linkage=full_static to pass package audit

* Spack style

* Moved tl-expected version
2022-12-12 14:00:41 -06:00
Manuela Kuhn
cd9c9b47e8 py-sphinxcontrib-devhelp: add 1.0.2 (#34462)
* py-sphinxcontrib-devhelp: add 1.0.2

* Update var/spack/repos/builtin/packages/py-sphinxcontrib-devhelp/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-12-12 13:57:06 -06:00
Manuela Kuhn
8560295529 py-sphinxcontrib-applehelp: add 1.0.2 (#34461)
* py-sphinxcontrib-applehelp: add 1.0.2

* Update var/spack/repos/builtin/packages/py-sphinxcontrib-applehelp/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-12-12 13:56:48 -06:00
Adam J. Stewart
fd248ad0b8 GEOS: add v3.10-3.11 (#34473) 2022-12-12 11:50:03 -08:00
renjithravindrankannath
0578ccc0e6 ROCm 5.3.0 updates (#33320)
* ROCm 5.3.0 updates
* New patches for 5.3.0 on hip and hsakmt
* Adding additional build arguments in hip and llvm
* RVS updates for 5.3.0 release
* New patches and rocm-tensile, rocprofiler-dev, roctracer-dev recipe updates for 5.3.0
* Reverting OPENMP fix from rocm-tensile
* Removing the patch to compile without git and adding witout it
* Install library in to lib directory instead of lib64 across all platform
* Setting lib install directory to lib
* Disable gallivm coroutine for libllvm15
* Update llvm-amdgpu prefix path in hip-config.cmake.in
  Removing libllvm15 from Mesa dependency removing
* hip-config.cmake.in update required from 5.2
* hip-config.cmake.in update required from 5.2 and above
* hip-config.cmake.in update required for all 5.2 release above
* Style check correction in hip update
* ginkgo: add missing include
* Patching hsa include path for rocm 5.3
* Restricting patch for llvm-15
* Style check error correction
* PIC flag required for the new test applications
* Passing -DCMAKE_POSITION_INDEPENDENT_CODE=ON in the cmake_args instead of setting -fPIC in CFLAGS

Co-authored-by: Cordell Bloor <Cordell.Bloor@amd.com>
2022-12-12 13:46:20 -06:00
Glenn Johnson
fcc2ab8b4b julia: have recipe explicitly use Spack compiler wrapper (#34365) 2022-12-12 19:53:26 +01:00
Vanessasaurus
76511ac039 Automated deployment to update package flux-core 2022-12-12 (#34456) 2022-12-12 11:47:36 -07:00
Jim Edwards
e4547982b3 allow esmf to use parallelio without mpi (#34182)
* allow esmf to use parallelio without mpi
* add hash for 8.4.0
* spack no longer sets arch to cray
2022-12-12 09:50:41 -08:00
Manuela Kuhn
80722fbaa3 py-snowballstemmer: add 2.2.0 (#34459) 2022-12-12 10:23:55 -06:00
Wouter Deconinck
c2fa444344 geant4: rm preference for 10.7.3 now that 11.1.0 is out (#34445) 2022-12-12 09:05:47 -07:00
Stephen Sachs
088ece1219 [texinfo] @7.0: needs c-11 syntax (#34261)
gnulib/lib/malloca.c uses single value `static_assert()` only available in c-11
syntax. `gcc` seems to be fine, but `icc` needs extra flag.

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-12-12 16:52:26 +01:00
Veselin Dobrev
fcdd275564 MFEM: fix issue with cxxflags (#34435) 2022-12-12 16:52:00 +01:00
Mikael Simberg
b6d6a1ab2c Build tests for fmt conditionally (#34424) 2022-12-12 16:49:05 +01:00
Robert Blake
7efcb5ae73 Fixes to the silo packages for 4.11. (#34275) 2022-12-12 07:39:24 -07:00
Mikael Simberg
06e6389258 stdexec: skip build phase (#34425)
Since it's a header-only library there's nothing to build. However, the
default targets include tests and examples and there's no option to turn
them off during configuration time.
2022-12-12 07:16:40 -07:00
Simon Flood
b7f0f7879d foam-extend: add v4.1 (released Oct 2019) (#34398) 2022-12-12 07:16:17 -07:00
Bernhard Kaindl
f7cfbe2702 hdf5: "hdf5@1.13:" needs a depends_on "cmake@3.18:" for build. (#34447) 2022-12-12 15:12:55 +01:00
Wouter Deconinck
1466f8d602 geant4-data: depends_on g4emlow@7.9.1 when @10.6 (#34444)
Per https://geant4.web.cern.ch/node/1837 the correct dependency for 10.6 is on `g4emlow@7.9.1`, not on both `g4emlow@7.9` and `g4emlow@7.9.1`.

This is a minor cosmetic fix. The concretization for 10.6 works just fine here. But this removes the duplicate entry.
2022-12-12 07:11:42 -07:00
Glenn Johnson
9fdb36585f Fix openblas build with intel compiler (#34432)
This PR patches the f_check script to detect the ifort compiler and
ensure that F_COMPILER is iset to INTEL. This problem was introduced with
openblas-0.3.21. Without this patch, the value of F_COMPILER falls back
to G77 and icc rather than ifort is used for the linking stage. That
results in the openblas library missing libifcore, which in turn means
many Fotran programs can not be compiled with ifort.
2022-12-12 14:27:54 +01:00
Filippo Spiga
1f0a9fdc11 Adding NVIDIA HPC SDK 22.11 (#33954) 2022-12-12 14:26:39 +01:00
Jen Herting
0baba62900 arrow: dependency fixes (#33666)
+python needs more dependencies
don't look for dependency spec when it's not there
2022-12-12 14:26:02 +01:00
iarspider
4a0e34eda8 Add checksum for py-prometheus-client 0.14.1 (#34259) 2022-12-12 13:32:02 +01:00
Luke Diorio-Toth
88f2f59d92 Added ARM/aarch64 conflict to Eddy/Rivas lab tools (#34190) 2022-12-12 13:26:57 +01:00
Bernhard Kaindl
c1d11975f5 intel-parallel-studio: package is only available for x86_64 (#34392) 2022-12-12 12:09:29 +01:00
Glenn Johnson
cca56291c6 libgit2: add pcre dependency for @0.99: (#34289) 2022-12-12 11:55:49 +01:00
dependabot[bot]
ef155c16f0 build(deps): bump actions/setup-python from 4.3.0 to 4.3.1 (#34413)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.3.0 to 4.3.1.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](13ae5bb136...2c3dd9e7e2)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-12 11:37:06 +01:00
Adam J. Stewart
0952d314bd py-pytorch-lightning: add v1.8.4 (#34426) 2022-12-12 11:35:20 +01:00
Wileam Y. Phan
f29ac34558 nvhpc: add v22.11 (#34410) 2022-12-12 11:35:00 +01:00
snehring
47628521b9 delly2: add v1.1.6 (#34411) 2022-12-12 11:31:26 +01:00
Todd Gamblin
62da76cb5d directives: depends_on should not admit anonymous specs (#34368)
Writing a long dependency like:

```python
     depends_on(
         "llvm"
         "targets=amdgpu,bpf,nvptx,webassembly"
         "version_suffix=jl +link_llvm_dylib ~internal_unwind"
     )
```

when it should be formatted like this:

```python
     depends_on(
         "llvm"
         " targets=amdgpu,bpf,nvptx,webassembly"
         " version_suffix=jl +link_llvm_dylib ~internal_unwind"
     )
```

can cause really subtle errors. Specifically, you'll get something like this in
the package sanity tests:

```
    AttributeError: 'NoneType' object has no attribute 'rpartition'
```

because Spack happily constructs a class that has a dependency with name `None`.

We can catch this earlier by banning anonymous dependency specs directly in
`depends_on()`.  This causes the package itself to fail to parse, and emits
a much better error message:

```
==> Error: Invalid dependency specification in package 'julia':
    llvmtargets=amdgpu,bpf,nvptx,webassemblyversion_suffix=jl +link_llvm_dylib ~internal_unwind
```
2022-12-12 11:24:28 +01:00
Brian Vanderwende
65c914fff7 netcdf-c: add libxml2 when +dap (#34178) 2022-12-12 11:04:38 +01:00
Mikael Simberg
dd7b2deb47 Only restrict CMake version in Umpire when examples and rocm are enabled (#32025)
* Only restrict CMake version in umpire when examples and rocm are enabled

* Add CMAKE_HIP_ARCHITECTURES to Umpire and lift cmake version restriction

Co-authored-by: Tom Scogland <scogland1@llnl.gov>
2022-12-12 10:55:37 +01:00
Adam J. Stewart
7d72aeb4fe py-tensorboard-data-server: add Linux aarch64 support (#34437) 2022-12-12 10:40:48 +01:00
John W. Parent
43d97afd8b Bump CMake version to 3.25.1 (#34336) 2022-12-12 10:35:27 +01:00
Robert Cohn
39f13853ba intel-oneapi-* conflicts for non linux, x86 (#34441) 2022-12-12 09:23:14 +01:00
Sebastian Pipping
d65b9c559a expat: Add latest release 2.5.0 with security fixes (#34453) 2022-12-12 00:08:44 -07:00
Stephen Sachs
bde5720a81 glib: Add list_url+list_depth to list versions (#33904)
Co-authored-by: Bernhard Kaindl <contact@bernhard.kaindl.dev>
2022-12-12 06:51:09 +01:00
Harmen Stoppels
2371ec7497 openblas: fix bound :7.3 to :7.3.0 (#34443)
This patch:

https://gcc.gnu.org/legacy-ml/gcc-patches/2018-01/msg01962.html

is actually in Amazon Linux GCC 7.3.1, which we use in CI.

So we should not hold openblas back because of it.

Old versions of OpenBLAS fail to detect the host arch of some of the
AVX512 cpus of build nodes, causing build failures.

Of course we should try to set ARCH properly in OpenBLAS to avoid that
it looks up the build arch, but that's quite some work.
2022-12-11 19:02:07 +01:00
Todd Gamblin
aa3b6e598f pkg grep: use capfd instead of executable for tests 2022-12-10 16:43:44 -08:00
Todd Gamblin
8035eeb36d Revert "Use urllib handler for s3:// and gs://, improve url_exists through HEAD requests (#34324)"
This reverts commit db8f115013.
2022-12-10 16:43:44 -08:00
Michael Kuhn
57383a2294 py-scipy: print error message if no Fortran compiler is available (#34439) 2022-12-10 20:19:50 +01:00
Adam J. Stewart
9517dab409 py-scikit-learn: add v1.2.0 (#34408) 2022-12-10 11:10:31 -06:00
Manuela Kuhn
84fa4e6c4c py-setuptools-scm-git-archive: add 1.4 (#34422) 2022-12-10 09:58:39 -06:00
Harmen Stoppels
f33507961d py-{boto3,botocore,jmespath,s3transfer} bump (#34423) 2022-12-10 09:07:58 -06:00
Adam J. Stewart
46010ef1e1 valgrind: add v3.20.0, mark macOS conflict (#34436) 2022-12-10 12:19:42 +01:00
Abhik Sarkar
f9d9d43b63 Support for building Pmix with Debian/Ubuntu external dependencies (#32690)
* Debian like distros use multiarch implementation spec
https://wiki.ubuntu.com/MultiarchSpec
Instead of being limited to /usr/lib64, architecture based
lib directories are used. For instance, under ubuntu a library package
on x86_64 installs binaries under /usr/lib/x86_64-linux-gnu.
Building pmix with external dependencies like hwloc or libevent
fail as with prefix set to /usr, that prefix works for
headers and binaries but does not work for libraries. The default
location for library /usr/lib64 does not hold installed binaries.
Pmix build options --with-libevent and --with-libhwloc allow us to
specify dependent library locations. This commit is an effort to
highlight and resolve such an issue when a users want to use Debian like
distro library packages and use spack to build pmix.
There maybe other packages that might be impacted in a similar way.

* Adding libs property to hwloc and libevent and some cleanups to pmix patch

* Fixing style and adding comment on Pmix' 32-bit hwloc version detection issue
2022-12-09 18:30:45 -08:00
Harmen Stoppels
db8f115013 Use urllib handler for s3:// and gs://, improve url_exists through HEAD requests (#34324)
* `url_exists` improvements (take 2)

Make `url_exists` do HEAD request for http/https/s3 protocols

Rework the opener: construct it once and only once, dynamically dispatch
to the right one based on config.
2022-12-10 00:20:29 +01:00
Manuela Kuhn
09b5476049 py-simplejson: add 3.18.0 (#34430) 2022-12-09 13:11:30 -07:00
Sinan
14c4896ec2 package/qt-base: add conflict for older gcc (#34420) 2022-12-09 12:47:29 -07:00
Ben Morgan
b5ef5c2eb5 geant4: version bumps for Geant4 11.1.0 release (#34428)
* geant4: version bumps for Geant4 11.1.0

- Version bumps for new data libraries
  - g4ndl 4.7
  - g4emlow 8.2
- Add geant4-data@11.1.0
- Checksum new Geant4 11.1.0 release
  - Limit +python variant to maximum of :11.0 due to removal of
    Geant4Py in 11.1
  - Update CLHEP dependency to at least 2.4.6.0 for this release
  - Update VecGeom dependency to at least 1.2.0 for this release,
    closing version ranges for older releases to prevent multiple
    versions satisfying requirement

* geant4: correct max version for python support
2022-12-09 12:26:22 -07:00
Scott Wittenburg
675afd884d gitlab ci: more resources for paraview and py-torch (#34412) 2022-12-09 11:58:37 -07:00
shanedsnyder
0f5482dc9a [darshan-runtime, darshan-util, py-darshan]: darshan 3.4.1 release updates (#34294) 2022-12-09 19:56:53 +01:00
Jen Herting
069e5f874c New package: py-torchdiffeq (#34409)
* [py-torchdiffeq] new package

* [@spackbot] updating style on behalf of qwertos

Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-12-09 12:38:14 -06:00
Manuela Kuhn
cad01a03cb py-nbformat: add 5.7.0 and new package py-hatch-nodejs-version (#34361) 2022-12-09 12:32:41 -06:00
Manuela Kuhn
f10f8ed013 py-setupmeta: add 3.3.2 (#34421) 2022-12-09 12:32:19 -06:00
Todd Gamblin
d991ec90e3 new command: spack pkg grep to search package files (#34388)
It's very common for us to tell users to grep through the existing Spack packages to
find examples of what they want, and it's also very common for package developers to do
it. Now, searching packages is even easier.

`spack pkg grep` runs grep on all `package.py` files in repos known to Spack. It has no
special options other than the search string; all options passed to it are forwarded
along to `grep`.

```console
> spack pkg grep --help
usage: spack pkg grep [--help] ...

positional arguments:
  grep_args  arguments for grep

options:
  --help     show this help message and exit
```

```console
> spack pkg grep CMakePackage | head -3
/Users/gamblin2/src/spack/var/spack/repos/builtin/packages/3dtk/package.py:class _3dtk(CMakePackage):
/Users/gamblin2/src/spack/var/spack/repos/builtin/packages/abseil-cpp/package.py:class AbseilCpp(CMakePackage):
/Users/gamblin2/src/spack/var/spack/repos/builtin/packages/accfft/package.py:class Accfft(CMakePackage, CudaPackage):
```

```console
> spack pkg grep -Eho '(\S*)\(PythonPackage\)' | head -3
AwsParallelcluster(PythonPackage)
Awscli(PythonPackage)
Bueno(PythonPackage)
```

## Return Value

This retains the return value semantics of `grep`:
* 0  for found,
* 1  for not found
* >1 for error

## Choosing a `grep`

You can set the ``SPACK_GREP`` environment variable to choose the ``grep``
executable this command should use.
2022-12-09 10:07:54 -08:00
snehring
8353d1539f py-torchvision: fix typo in version restriction for ffmpeg (#34415) 2022-12-09 11:05:43 -07:00
iarspider
bf3d18bf06 Add checksum for py-packaging11 0.12.3 (#34402) 2022-12-09 06:43:44 -07:00
John W. Parent
0e69710f41 Windows: reenable unit tests (#33385)
Unit tests on Windows are supposed to pass for any PR to pass CI.
However, the return code for the unit test command was not being
checked, which meant this check was always passing (effectively
disabled). This PR

* Properly checks the result of the unit tests and fails if the
  unit tests fail
* Fixes (or disables on Windows) a number of tests which have
  "drifted" out of support on Windows since this check was
  effectively disabled
2022-12-09 13:27:46 +00:00
Harmen Stoppels
ec62150ed7 binary distribution: warn about issues (#34152) 2022-12-09 13:25:32 +01:00
Massimiliano Culpo
d37dc37504 btop++: add new package (#34399) 2022-12-09 12:59:46 +01:00
iarspider
38d37897d4 Add checksum for py-onnxmltools 1.11.1 (#34400) 2022-12-09 04:04:20 -07:00
Todd Gamblin
606eef43bd bugfix: spack load shell test can fail on macos (#34419)
At some point the `a` mock package became an `AutotoolsPackage`, and that means it
depends on `gnuconfig` on macOS. This was causing one of our shell tests to fail on
macOS because it was testing for `{a.prefix.bin}:{b.prefix.bin}` in `PATH`, but
`gnuconfig` shows up between them.

- [x] simplify the test to check `spack load --sh a` and `spack load --sh b` separately
2022-12-09 10:36:54 +00:00
Mikael Simberg
02a30f8d95 Add pika-algorithms package and pika 0.11.0 (#34397)
* Add 20 as a valid option for cxxstd to fmt

* Add pika 0.11.0

* Fix version constraint for p2300 variant in pika package

* Add pika-algorithms package
2022-12-09 11:26:48 +01:00
Harmen Stoppels
7e054cb7fc s3: cache client instance (#34372) 2022-12-09 08:50:32 +01:00
Manuela Kuhn
d29cb87ecc py-reportlab: add 3.6.12 (#34396)
* py-reportlab: add 3.6.12

* Update var/spack/repos/builtin/packages/py-reportlab/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-12-08 20:08:00 -06:00
Bernhard Kaindl
f8c0d9728d intel-mkl: It is only available for x86_64 (#34391) 2022-12-08 18:10:00 -07:00
Bernhard Kaindl
f5bff16745 bcache: Fix check for libintl to work correctly (#34383) 2022-12-08 17:37:10 -07:00
Adam J. Stewart
2d1cb6d64a bash: add v5.2, readline patches (#34301) 2022-12-08 13:46:21 -07:00
Peter Scheibel
c6e35da2c7 Cray manifest: automatically convert 'cray' platform to 'linux' (#34177)
* Automatically convert 'cray' platform to 'linux'
2022-12-08 11:28:06 -08:00
Manuela Kuhn
f1cd327186 py-rdflib: add 6.2.0 (#34394) 2022-12-08 13:07:26 -06:00
Victor Lopez Herrero
391ad8cec4 dlb: new package (#34211) 2022-12-08 05:57:48 -07:00
Larry Knox
2c668f4bfd Update hdf5 vol async version (#34376)
* Add version hdf5-vol-async@1.4
2022-12-08 05:37:34 -07:00
Glenn Johnson
52fdae83f0 pixman: add libs property (#34281) 2022-12-08 06:34:49 +01:00
Michael Kuhn
0ea81affd1 py-torch: fix build with gcc@12: (#34352) 2022-12-08 06:31:00 +01:00
Brian Van Essen
ddc6e233c7 libxcrypt: building @:4.4.17 requires automake@1.14: 2022-12-08 03:17:28 +01:00
Jon Rood
7ee4499f2b Add texinfo dependency for binutils through version 2.38. (#34173) 2022-12-08 03:08:37 +01:00
Marco De La Pierre
641adae961 Add recipe for singularity-hpc, py-spython (#34234)
* adding recipe for singularity-hpc - 1st go

* typo in singularity-hpc recipe

* singularity-hpc, spython recipes: added platform variant

* singularity-hpc, spython recipes: platform variant renamed to runtime

* style fix

* another style fix

* yet another style fix (why are they not reported altogether)

* singularity-hpc recipe: added Vanessa as maintainer

* singularity-hpc recipe: add podman variant

* singularity-hpc recipe: added variant for module system

* shpc recipe: add version for py-semver dependency

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* py-spython recipe: no need to specify generic python dep for a python pkg

* py-spython: py-requests not needed

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-12-07 20:07:30 -06:00
John W. Parent
aed77efb9a Windows: Prevent SameFileError when rpathing (#34332) 2022-12-07 16:58:44 -08:00
Massimiliano Culpo
ab6499ce1e parser: refactor with coarser token granularity (#34151)
## Motivation

Our parser grew to be quite complex, with a 2-state lexer and logic in the parser
that has up to 5 levels of nested conditionals. In the future, to turn compilers into
proper dependencies, we'll have to increase the complexity further as we foresee
the need to add:
1. Edge attributes
2. Spec nesting

to the spec syntax (see https://github.com/spack/seps/pull/5 for an initial discussion of
those changes).  The main attempt here is thus to _simplify the existing code_ before
we start extending it later. We try to do that by adopting a different token granularity,
and by using more complex regexes for tokenization. This allow us to a have a "flatter"
encoding for the parser. i.e., it has fewer nested conditionals and a near-trivial lexer.

There are places, namely in `VERSION`, where we have to use negative lookahead judiciously
to avoid ambiguity.  Specifically, this parse is ambiguous without `(?!\s*=)` in `VERSION_RANGE`
and an extra final `\b` in `VERSION`:

```
@ 1.2.3     :        develop  # This is a version range 1.2.3:develop
@ 1.2.3     :        develop=foo  # This is a version range 1.2.3: followed by a key-value pair
```

## Differences with the previous parser

~There are currently 2 known differences with the previous parser, which have been added on purpose:~

- ~No spaces allowed after a sigil (e.g. `foo @ 1.2.3` is invalid while `foo @1.2.3` is valid)~
- ~`/<hash> @1.2.3` can be parsed as a concrete spec followed by an anonymous spec (before was invalid)~

~We can recover the previous behavior on both ones but, especially for the second one, it seems the current behavior in the PR is more consistent.~

The parser is currently 100% backward compatible.

## Error handling

Being based on more complex regexes, we can possibly improve error
handling by adding regexes for common issues and hint users on that.
I'll leave that for a following PR, but there's a stub for this approach in the PR.

## Performance

To be sure we don't add any performance penalty with this new encoding, I measured:
```console
$ spack python -m timeit -s "import spack.spec" -c "spack.spec.Spec(<spec>)"
```
for different specs on my machine:

* **Spack:** 0.20.0.dev0 (c9db4e50ba045f5697816187accaf2451cb1aae7)
* **Python:** 3.8.10
* **Platform:** linux-ubuntu20.04-icelake
* **Concretizer:** clingo

results are:

| Spec          | develop       | this PR |
| ------------- | ------------- | ------- |
| `trilinos`  |  28.9 usec | 13.1 usec |
| `trilinos @1.2.10:1.4.20,2.0.1`  | 131 usec  | 120 usec |
| `trilinos %gcc`  | 44.9 usec  | 20.9 usec |
| `trilinos +foo`  | 44.1 usec  | 21.3 usec |
| `trilinos foo=bar`  | 59.5 usec  | 25.6 usec |
| `trilinos foo=bar ^ mpich foo=baz`  | 120 usec  | 82.1 usec |

so this new parser seems to be consistently faster than the previous one.

## Modifications

In this PR we just substituted the Spec parser, which means:
- [x] Deleted in `spec.py` the `SpecParser` and `SpecLexer` classes. deleted `spack/parse.py`
- [x] Added a new parser in `spack/parser.py`
- [x] Hooked the new parser in all the places the previous one was used
- [x] Adapted unit tests in `test/spec_syntax.py`


## Possible future improvements

Random thoughts while working on the PR:
- Currently we transform hashes and files into specs during parsing. I think
we might want to introduce an additional step and parse special objects like
a `FileSpec` etc. in-between parsing and concretization.
2022-12-07 14:56:53 -08:00
Houjun Tang
412bec45aa SW4: new package (#34252)
* sw4
* use h5z-zfp develop
* update for macos
* Update package.py

Co-authored-by: Houjun Tang <tang@Houjuns-MacBook-Pro.local>
2022-12-07 14:26:05 -07:00
Manuela Kuhn
c3dcd94ebc py-numba: add 0.56.4 (#34362) 2022-12-07 14:18:45 -07:00
Hanqi Guo
cb8f642297 ftk: add 0.0.7.1 (#34146) 2022-12-07 22:13:46 +01:00
Manuela Kuhn
92f19c8491 py-pywavelets: add 1.4.1 (#34369)
* py-pywavelets: add 1.4.1

* Update var/spack/repos/builtin/packages/py-pywavelets/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-pywavelets/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-12-07 13:40:10 -07:00
iarspider
f3f8b31be5 XRootD: add checksum + patch for 5.5.1 (#34209)
* Update package.py
* Add full_index to patch URL
* Update var/spack/repos/builtin/packages/xrootd/package.py
* Restore list_url

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-12-07 12:06:38 -08:00
MatthewLieber
63cadf04ea osu-micro-benchmarks: add v7.0.1 (#34221)
Co-authored-by: Matt Lieber <lieber.31@osu.edu>
2022-12-07 21:02:43 +01:00
eugeneswalker
541e75350f libnrm: allow mpi other than mpich (#34232) 2022-12-07 11:57:13 -08:00
Stephen Sachs
8806e74419 [quantum-espresso] Parallel make fails for 6.{6,7} (#34238)
* [quantum-espresso] Parallel make fails for 6.{6,7}
  I run into a race condition in `make` with Intel compiler on icelake when building QE 6.6 and 6.7.
* Fix comment

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-12-07 11:52:12 -08:00
Sam Gillingham
381f8161b1 update kealib to 1.5.0 (#34237) 2022-12-07 11:49:41 -08:00
shanedsnyder
884123b7ce darshan-util: fix location of input for darshan-util tests (#34245)
* fix location of input for darshan-util tests
  Darshan log file used for test input was removed from the Darshan
  repo after the 3.4.0 release. This commit adds logic to use a
  different log file as test input for later Darshan versions.
2022-12-07 11:48:55 -08:00
Eric Müller
35aa875762 meep: add new versions and additional variants incl. dependencies (#34242)
* libctl: add new version
  Change-Id: I16f91cfab198c66b60407ab5bb2cb3ebeac6bc19
* New package: libgdsii
  Change-Id: I34b52260ab68ecc857ddf8cc63b124adc2689a51
* New package: mpb
  Change-Id: I6fdf5321c33d6bdbcaa1569026139a8483a3bcf8
* meep: add new version and variants
  Change-Id: I0b60a9a4d9a329f7bde9027514467e17376e6a39
* meep: use with_or_without
  Change-Id: I05584cb13df8ee153ed385e77d367cb34e39777e
2022-12-07 11:44:26 -08:00
Sam Grayson
9b0e79fcab Fix Apptainer (#34329)
* Fix Apptainer
* Add comments
2022-12-07 11:05:22 -08:00
kwryankrattiger
8ba0faa9ee Paraview catalyst updates (#34364)
* LibCatalyst: Fix version of pre-release develop version
* ParaView: Requires libcatalyst@2:
* ParaView: Apply adios2 module no kit patch to 5.11

This patch is still pending in VTK and didn't make it into 5.11 as anticipated.
2022-12-07 10:27:47 -08:00
Bernhard Kaindl
d464185bba bcache: support external gettext when libintl is in glibc (#34114)
* bcache: support external gettext when `libintl` is in glibc

Many glibc-based Linux systems don't have gettext's libintl because
libintl is included in the standard system's glibc (libc) itself.

When using `spack external find gettext` on those, packages like
`bcache` which unconditionally to link using `-lintl` fail to link
with -lintl.

Description of the fix:

The libs property of spack's gettext recipe returns the list of libs,
so when gettext provides libintl, use it. When not, there is no
separate liblint library and the libintl API is provided by glibc.

Tested with `spack external find gettext` on glibc-based Linux and
in musl-based Alpine Linux to make sure that when -lintl is really
needed, it is really used and nothing breaks.
2022-12-07 11:39:02 -05:00
G-Ragghianti
7f4d71252b Package magma: cleaned up cmake config (#33766) 2022-12-07 16:30:20 +01:00
Matthias Wolf
7950311767 likwid: add a permission fixing script a la singularity (#33503) 2022-12-07 15:51:02 +01:00
Greg Becker
194f9a9ca9 compiler flags: fix mixed flags from cli and yaml (#34218) 2022-12-06 16:32:08 -08:00
Cameron Rutherford
a72021fd63 Fix dependency specification for CuSolver variant in HiOp. (#34138)
Co-authored-by: pelesh <peless@ornl.gov>
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-12-06 21:57:57 +01:00
Massimiliano Culpo
d910b3725b Add back depends_on directives needed to bootstrap on Python 3.6 (#34355)
This partially reverts commit 95b5d54129.
2022-12-06 20:08:26 +01:00
David Zmick
99f209019e htop: new version 3.2.1 (#34346) 2022-12-06 12:03:46 -07:00
Manuela Kuhn
c11a4e0ad3 py-nbclient: add 0.7.2 and py-jupyter-core: add 5.1.0 (#34348) 2022-12-06 10:43:28 -07:00
Nicholas Sly
4a429ec315 mercurial/py-pybind11: print_string no longer exists (#34340)
* Fix mercurial print_str failure.

* Perform same fix on py-pybind11 for print_string missing method.

Co-authored-by: Nicholas Cameron Sly <sly1@llnl.gov>
2022-12-06 09:28:00 -08:00
eugeneswalker
eadccfe332 trilinos: +teko conflicts with ~ml (#34339) 2022-12-06 09:19:25 -07:00
Harmen Stoppels
dfab5b5ceb Stop checking for {s3://path}/index.html (#34325) 2022-12-06 09:19:04 -07:00
lorddavidiii
862029215c cfitsio: add v4.2.0 (#34316) 2022-12-06 09:18:51 -07:00
Hadrien G
559c3de213 ROOT: new versions and associated dependency constraints (#34185)
* Add new root versions and associated dependency constraints

* Please style guide

* Avoid conflicts where possible

* Untested prototype of macOS version detection

* Fixes for macOS version prototype

* More logical ordering

* More correctness and style fixes

* Try to use spack's macos_version

* Add some forgotten @s

* Actually, Spack can't build Python 3.6 anymore, and thus no older PyROOT

Co-authored-by: Seth R. Johnson <johnsonsr@ornl.gov>
2022-12-06 08:25:52 -07:00
Harmen Stoppels
e3bf7358d7 Avoid stat call in llnl.util.symlink on non-windows (#34321) 2022-12-06 15:17:15 +00:00
Harmen Stoppels
b58ec9e2b9 Remove legacy yaml from buildcache fetch (#34347) 2022-12-06 16:12:20 +01:00
Adam J. Stewart
95b5d54129 pip/wheel/setuptools: extend PythonExtension (#34137)
* pip/wheel/setuptools: extend PythonExtension

* Base class still required
2022-12-06 08:58:05 -06:00
Houjun Tang
bcce9c3e9c Fix compile errors with latest HDF5 1.13.3 (#34337)
* Fix compile errors with latest HDF5 1.13.3

* format

* Update var/spack/repos/builtin/packages/hdf5-vol-async/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-12-06 08:15:52 -06:00
Massimiliano Culpo
4c05fe569c Bootstrap most of Spack dependencies using environments (#34029)
This commit reworks the bootstrapping procedure to use Spack environments 
as much as possible.

The `spack.bootstrap` module has also been reorganized into a Python package. 
A distinction is made among "core" Spack dependencies (clingo, GnuPG, patchelf)
and other dependencies. For a number of reasons, explained in the `spack.bootstrap.core`
module docstring, "core" dependencies are bootstrapped with the current ad-hoc
method. 

All the other dependencies are instead bootstrapped using a Spack environment
that lives in a directory specific to the interpreter and the architecture being used.
2022-12-06 11:54:02 +01:00
Sam Grayson
e550665df7 Update packages (#34344) 2022-12-05 23:52:05 -06:00
Glenn Johnson
d92d34b162 graphite2: add dependency on freetype (#34292) 2022-12-05 14:38:52 -08:00
Miguel Dias Costa
f27be808a4 berkeleygw: add back python dependencies and tweak testsuite (#34125)
* slightly raise tolerance of some tests
2022-12-05 23:37:19 +01:00
Seth R. Johnson
855d3519b6 SWIG: new version 4.1.0 (#34250) 2022-12-05 23:30:14 +01:00
downloadico
37f232e319 psrcat: fixed typo/undefined variable problem (#34334)
replaced the reference to the undefined "bindir" variable with prefix.bin
2022-12-05 15:19:54 -07:00
Luke Diorio-Toth
ac1c29eac0 pharokka and py-phanotate: new packages (#34333)
* pharokka and py-phanotate: new packages

* move libxcrypt edit

I don't need libxcrypt when not building dev infernal. Moving to a different PR
2022-12-05 16:16:59 -06:00
Bernhard Kaindl
56072172f5 jellyfish: add variants for python and ruby bindings (#33832)
Co-authored-by: teachers-uk-net <stuart.morrison@kcl.ac.uk>
2022-12-05 14:10:57 -07:00
Peter Scheibel
64d957dece cray-mpich: fix dependencies for externals from manifest (#34231)
The cray manifest shows dependency information for cray-mpich, which we never previously cared about
because it can only be used as an external. This updates Spack's dependency information to make cray-mpich
specs read in from the cray external manifest usable.
2022-12-05 12:11:56 -08:00
Loïc Pottier
3edc85ec21 redis: newer version and added TLS support (#34230)
Signed-off-by: Loïc Pottier <pottier1@llnl.gov>
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-12-05 12:44:13 -07:00
Manuela Kuhn
d8006a9495 py-nodeenv: add 1.7.0 (#34314) 2022-12-05 12:32:30 -07:00
Manuela Kuhn
a2cfc07412 py-num2words: add 0.5.12 (#34315) 2022-12-05 12:25:01 -07:00
Sreenivasa Murthy Kolam
1295ea5d40 Drop support for older rocm releases - 4.5.0 till 5.0.2 (#34264)
* initial changes for rocm recipes
* drop support for older releases
* drop support for older rocm releases - add more recipes
* drop support for older releases
* address style issues
* address style error
* fix errors
* address review comments
2022-12-05 10:47:45 -08:00
Hector Martinez-Seara
4664b3cd1e Added plumed version 2.8.1 including gromacs compatibility (#34268)
* Added plumed version 2.8.1 including gromacs compatibility
* Corrected ~mpi and +mpi variants in new depends
* Fixed regression logic plumed+gromacs@2020.6 support
2022-12-05 10:43:08 -08:00
Richard Berger
dc7e0e3ef6 LAMMPS: Add new versions (#32522)
* LAMMPS: Add version 20220803 and 20220623.1

* LAMMPS: Add 20220915, 20221103, and 20220623.2
2022-12-05 12:52:10 -05:00
H. Joe Lee
9aa615aa98 feat(Hermes)!: add yaml-cpp dependency (#34330)
The 0.9.0-beta requires yaml-cpp for parsing the configuration file format in YAML.

P.S. I'm using https://www.conventionalcommits.org/en/v1.0.0/#specification for this commit message.
2022-12-05 09:49:45 -08:00
downloadico
85b6bf99a4 Add packages related to the LWA software stack (#34112)
* epsic: add epsic package to spack

* psrcat: add psrcat to spack

* psrchive: add psarchive to spack

* tempo: add tempo package to spack
2022-12-05 09:48:04 -08:00
Todd Gamblin
78ec3d5662 clingo: add version 5.6.2 (#34317)
See release notes at https://github.com/potassco/clingo/releases/tag/v5.6.2
2022-12-05 10:39:30 -07:00
andriish
a7b5f2ef39 Add the very first version of cernlib package (#33911)
* Add the very first version of cernlib
* Update package.py
* Update package.py

Co-authored-by: Andrii Verbytskyi <andriish@pcatlas18.mpp.mpg.de>
2022-12-05 09:31:15 -08:00
Manuela Kuhn
f71701f39d py-nbclassic: add 0.4.8 and new package py-notebook-shim (#34320)
* py-nbclassic: add 0.4.8 and new package py-notebook-shim

* Add missing dependencies
2022-12-05 09:51:28 -07:00
Todd Gamblin
54008a2342 vermin: remove all novm comments from code (#34308)
All the vermin annotations we were using were for optional features introduced in early
Python 3 versions. We no longer need any of them, as we only support Python 3.6+. If we
start optionally using features from newer Pythons than 3.6, we will need more vermin
annotations.

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2022-12-05 08:59:27 -07:00
Manuela Kuhn
1670c325c6 py-llvmlite: add 0.39.1 (#34318) 2022-12-05 09:22:05 -06:00
SXS Bot
534a994b4c spectre: add v2022.12.02 (#34277)
Co-authored-by: sxs-bot <sxs-bot@users.noreply.github.com>
2022-12-05 12:45:04 +01:00
Jean-Luc Fattebert
359efca201 Thermo4PFM: new package (#34287) 2022-12-05 12:03:44 +01:00
Glenn Johnson
65809140f3 gurobi: add v10.0.0, v9.5.2 (#34291) 2022-12-05 11:58:09 +01:00
Glenn Johnson
3f1622f9e7 freeglut: add dependency on libxxf86vm (#34293) 2022-12-05 11:57:27 +01:00
Glenn Johnson
8332a59194 wannier90: gfortran-10 support and libs property (#34278) 2022-12-05 11:43:23 +01:00
HELICS-bot
05abea3a3a helics: add v3.3.2 (#34297)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-12-05 11:42:03 +01:00
Luke Diorio-Toth
e7fc9ea243 mmseqs2: new package (#34189) 2022-12-05 11:38:56 +01:00
Adam J. Stewart
eea3ea7675 py-torch: fix patching on ppc64le (#34283) 2022-12-05 11:37:31 +01:00
Auriane R
895ac2626d Add conflicts between gcc@12.2.0 and rocblas@5.2.1:5.2.3 (#34217)
* Add conflicts with gcc@12.2.0

* Add more links for reference
2022-12-05 11:13:22 +01:00
Todd Gamblin
94dc86e163 web: remove checks for SSL verification support (#34307)
We no longer support Python <3.6, so we don't need to check whether Python supports SSL
verification in `spack.util.web`.

- [x] Remove a bunch of logic we needed to appease Python 2
2022-12-05 08:46:27 +01:00
Manuela Kuhn
729b1c9fa6 py-mne: add 1.2.2, 1.2.3 and dependency packages (#34295)
* py-mne: add 1.2.2 and depencendy packages

* py-mne: add 1.2.3

* Remove unnecessary when statement
2022-12-05 00:02:27 -06:00
Todd Gamblin
82b7fe649f typing: move from comment annotations to Python 3.6 annotations (#34305)
We've stopped supporting Python 2, and contributors are noticing that our CI no longer
allows Python 2.7 comment type hints. They end up having to adapt them, but this adds
extra unrelated work to PRs.

- [x] Move to 3.6 type hints across the entire code base
2022-12-04 21:41:12 -08:00
Adam J. Stewart
76417d6ac6 py-torchmetrics: add v0.11.0 (#34220) 2022-12-04 15:32:02 -07:00
Glenn Johnson
fe995542ab py-tensorflow: patch for cuBLAS error (#34279) 2022-12-03 09:17:12 -07:00
wspear
8f5209063d Use correct method for selecting compiler names. (#34175) 2022-12-02 15:02:24 -08:00
Enrico Usai
241a8f6be6 aws-parallelcluster: Add v2.11.9 (#34270) 2022-12-02 15:57:18 -07:00
Seth R. Johnson
a8a0a6916a doxygen: add build-tools tag (#34249)
* doxygen: add build-tool tag
   This allows it to be included automatically as an external. No one links against doxygen so this should be ok.
* doxygen: add self as maintainer
2022-12-02 15:56:57 -07:00
Ben Morgan
8d10dce651 vecgeom: add new 1.2.1 version (#34240)
* vecgeom: add new 1.2.1 version
* vecgeom: introduce conflict between gcc/cuda

Recent tests of vecgeom in Spack environments have shown that the build
with +cuda fails with GCC >= 11.3 and CUDA < 11.7 with error

...lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/serializeintrin.h(41):
error: identifier "__builtin_ia32_serialize" is undefined

1 error detected in the compilation of
".../VecGeom/source/BVHManager.cu".

Other GCC/CUDA combinations appear o.k.

Avoid this error in spack, and document it for users, with a conflict
directive to express the restriction.
2022-12-02 15:56:43 -07:00
Phil Carns
a2938c9348 add mochi-margo 0.11.1 point release (#34271) 2022-12-02 15:56:29 -07:00
snehring
8017f4b55b libvips: adding version 8.13.3 (#34228) 2022-12-02 15:32:22 -07:00
Andrew W Elble
588d2e295f py-alphafold: update to 2.2.4, update dependencies (#33876)
* py-alphafold: update to 2.2.4, update dependencies

* style
2022-12-02 22:12:06 +00:00
Manuela Kuhn
c10b84f08d py-nilearn: fix dependency version (#34284) 2022-12-02 15:04:46 -07:00
Greg Becker
99044bedd7 patch command: add concretizer args (#34282)
* patch command: add concretizer args
* tab completion
2022-12-02 14:02:20 -08:00
Seth R. Johnson
3afe6f1adc ROOT: add math/gsl conflict and change version-dependent features to conditional variants (#34244)
* ROOT: add GSL/math dependency
* ROOT: use conditional variants instead of conflicts
2022-12-02 12:05:43 -07:00
Manuela Kuhn
fcd9038225 py-neurokit2: add 0.2.2 (#34267) 2022-12-02 11:41:43 -07:00
H. Joe Lee
9d82024f1a feat(Hermes): update version to 0.9.0-beta. (#34243)
* feat(Hermes): update version to 0.9.0-beta.
   This is the latest release.
* feat(Hermes): fix checksum.
  Credit: @tldahlgren
2022-12-02 11:31:09 -07:00
Tamara Dahlgren
bcefe6a73e Docs: Minor change 'several'->'over a dozen' (#34274) 2022-12-02 10:27:37 -08:00
Todd Gamblin
87562042df concretizer: use only attr() for Spec attributes (#31202)
All Spec attributes are now represented as `attr(attribute_name, ... args ...)`, e.g.
`attr(node, "hdf5")` instead of `node("hdf5")`, as we *have* to maintain the `attr()`
form anyway, and it simplifies the encoding to just maintain one form of the Spec
information.

Background
----------

In #20644, we unified the way conditionals are done in the concretizer, but this
introduced a nasty aspect to the encoding: we have to maintain everything we want in
general conditions in two forms: `predicate(...)` and `attr("predicate", ...)`. For
example, here's the start of the table of spec attributes we had to maintain:

```prolog
node(Package)                      :- attr("node", Package).
virtual_node(Virtual)              :- attr("virtual_node", Virtual).
hash(Package, Hash)                :- attr("hash", Package, Hash).
version(Package, Version)          :- attr("version", Package, Version).
...
```

```prolog
attr("node", Package)              :- node(Package).
attr("virtual_node", Virtual)      :- virtual_node(Virtual).
attr("hash", Package, Hash)        :- hash(Package, Hash).
attr("version", Package, Version)  :- version(Package, Version).
...
```

This adds cognitive load to understanding how the concretizer works, as you have to
understand the equivalence between the two forms of spec attributes. It also makes the
general condition logic in #20644 hard to explain, and it's easy to forget to add a new
equivalence to this list when adding new spec attributes (at least two people have been
bitten by this).

Solution
--------

- [x] remove the equivalence list from `concretize.lp`
- [x] simplify `spec_clauses()`, `condition()`, and other functions in `asp.py` that need
      to deal with `Spec` attributes.
- [x] Convert all old-form spec attributes in `concretize.lp` to the `attr()` form
- [x] Simplify `display.lp`, where we also had to maintain a list of spec attributes. Now
      we only need to show `attr/2`, `attr/3`, and `attr/4`.
- [x] Simplify model extraction logic in `asp.py`.

Performance
-----------

This seems to result in a smaller grounded problem (as there are no longer duplicated
`attr("foo", ...)` / `foo(...)` predicates in the program), but it also adds a slight
performance overhead vs. develop. Ultimately, simplifying the encoding will be a win,
particularly for improving error messages.

Notes
-----

This will simplify future node refactors in `concretize.lp` (e.g., not identifying nodes
by package name, which we need for separate build dependencies).

I'm still not entirely used to reading `attr()` notation, but I thnk it's ultimately
clearer than what we did before. We need more uniform naming, and it's now clear what is
part of a solution. We should probably continue making the encoding of `concretize.lp`
simpler and more self-explanatory. It may make sense to rename `attr` to something like
`node_attr` and to simplify the names of node attributes. It also might make sense to do
something similar for other types of predicates in `concretize.lp`.
2022-12-02 18:56:18 +01:00
Manuela Kuhn
10d10b612a py-keyrings-alt: add 4.2.0 (#34262)
* py-keyrings-alt: add 4.2.0

* Add missing py-jaraco-classes dependency
2022-12-02 09:08:53 -07:00
iarspider
69dd742dc9 Add checksum for py-hatchling 1.8.1 (#34260) 2022-12-02 09:29:38 -06:00
Tamara Dahlgren
18efd817b1 Bugfix: Fetch should not force use of curl to check url existence (#34225)
* Bugfix: Fetch should not force use of curl to check url existence

* Switch type hints from comments to actual hints
2022-12-02 04:50:23 -07:00
Manuela Kuhn
65a5369d6a py-flask: add 2.2.2 and fix dependencies for py-werkzeug and py-markupsafe (#32849)
* py-flask: add 2.2.2, py-werkzeug: add 2.2.2, py-markupsafe: add 2.1.1

* Remove py-dataclasses dependency
2022-12-01 22:56:18 -07:00
iarspider
f66ec00fa9 Herwig3: make njet, vbfnlo dependencies optional... (#33941)
* Herwig3: make njet, vbfnlo dependencies optional...
  also drop openloops dependency when building on PowerPC
* Update package.py
2022-12-01 17:19:46 -08:00
Manuela Kuhn
f63fb2f521 py-twine: add 4.0.1, py-readme-renderer: add 37.3 (#34203)
* py-twine: add 4.0.1

* Remove py-setuptools as run dependency
2022-12-01 12:29:10 -06:00
Annop Wongwathanarat
dfa00f5a8d acfl: add post-installation check by running examples (#34172) 2022-12-01 09:47:59 -07:00
Alec Scott
6602780657 Add py-python-lsp-server and dependencies (#34149)
* Add py-python-lsp-server and dependencies

* Update var/spack/repos/builtin/packages/py-python-lsp-server/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Relax version range constraints on py-python-lsp-jsonrpc and add missing dep

* Add runtime dependency flag to setuptools dependencies

* Remove unused python@3.6: dependency and move setuptools-scm to build dep only

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-12-01 09:34:49 -07:00
iarspider
8420c610fa gnuplot: make readline optional (#34179)
* gnuplot: make readline optional
* Update package.py

Co-authored-by: iarspider <iarspider@users.noreply.github.com>
2022-12-01 09:11:14 -07:00
Greg Becker
b139cab687 conditional variant values: allow boolean (#33939) 2022-12-01 08:25:57 +01:00
Adam J. Stewart
99fcc57607 py-scipy: hardcode to use blis.pc (#34171) 2022-11-30 12:29:20 -08:00
Larry Knox
5a394d37b7 Add HDF5 version 1.13.3. (#34165)
* Add HDF5 version 1.13.3.
* Remove maintainers no longer with The HDFGroup.
* Fix indentation.
2022-11-30 11:23:38 -08:00
Loïc Pottier
472074cb7c redis-plus-plus: newer version and added TLS support (#34197)
Signed-off-by: Loïc Pottier <pottier1@llnl.gov>
2022-11-30 11:18:47 -08:00
Adam J. Stewart
45c8d7f457 py-segmentation-models-pytorch: add v0.3.1 (#34214) 2022-11-30 10:58:27 -08:00
Edward Hartnett
dce1f01f1a new w3emc version (#34219)
* updated version of w3emc package
* fixed sha
2022-11-30 10:54:45 -08:00
Sam Grayson
03cc83bc67 Add py-yt 4.x versions (#30418)
* Add py-yt 4.x versions

* Fix spelling

* Add yt dependencies

* Refine cython dependency

* Tweak depends_on for py-yt 4.x

* Apply suggestions from code review

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Fix comments from code review

* Fix formatting

* Fix stuff

* Fix constraints

* Update py-yt to 4.1.2

* Updated packages

* Fix py-tomli checksum

* Remove `expand` from `py-tomli/package.py`

* Respond to Adam's comments

* Update checksums

* Update checksusm

* Respond to comments

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-11-30 12:03:26 -06:00
eugeneswalker
f452741e3d e4s ci: use 2022-12-01 runner images (#34212) 2022-11-30 09:52:30 -08:00
eugeneswalker
99b68e646d e4s ci: hpx: set max_cpu_count=512 (#33977) 2022-11-30 09:16:57 -08:00
iarspider
f78c8265f4 Add checksum for py-kiwisolver 1.4.4 (#34121) 2022-11-30 09:18:18 -06:00
iarspider
5d3efbba14 Fix recipe for py-onnx-runtime (#34130)
* Fix recipe

* Update package.py

* Update recipe following review

* Update var/spack/repos/builtin/packages/py-onnx-runtime/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* remove unused imports

* Update package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-11-30 09:17:22 -06:00
Sajid Ali
7423f52cd3 PMIx: enable python bindings (#34107) 2022-11-30 15:55:24 +01:00
Massimiliano Culpo
43d93f7773 Deduplicate code to propagate module changes across MRO (#34157) 2022-11-30 11:10:42 +01:00
Harmen Stoppels
f8dec3e87f Single pass text replacement (#34180) 2022-11-30 10:21:51 +01:00
Manuela Kuhn
ef06b9db5b py-bidscoin, py-multiecho: add new packages (#34168) 2022-11-29 17:37:50 -07:00
Todd Gamblin
c64c9649be debug: move "nonexistent config path" message to much higher verbosity level (#34201)
We currently report that searched config paths don't exist at debug level 1, which
clutters the output quite a bit:

```console
> spack -d solve --fresh --show asp hdf5 > hdf5.lp
==> [2022-11-29-14:18:21.035133] Skipping nonexistent config path /Users/gamblin2/src/spack/etc/spack/darwin/concretizer.yaml
==> [2022-11-29-14:18:21.035151] Skipping nonexistent config path /Users/gamblin2/.spack/concretizer.yaml
==> [2022-11-29-14:18:21.035169] Skipping nonexistent config path /Users/gamblin2/.spack/darwin/concretizer.yaml
==> [2022-11-29-14:18:21.035238] Reading config from file /Users/gamblin2/src/spack/etc/spack/defaults/repos.yaml
==> [2022-11-29-14:18:21.035996] Skipping nonexistent config path /Users/gamblin2/src/spack/etc/spack/defaults/darwin/repos.yaml
==> [2022-11-29-14:18:21.036021] Skipping nonexistent config path /etc/spack/repos.yaml
==> [2022-11-29-14:18:21.036039] Skipping nonexistent config path /etc/spack/darwin/repos.yaml
==> [2022-11-29-14:18:21.036057] Skipping nonexistent config path /Users/gamblin2/src/spack/etc/spack/repos.yaml
==> [2022-11-29-14:18:21.036072] Skipping nonexistent config path /Users/gamblin2/src/spack/etc/spack/darwin/repos.yaml
==> [2022-11-29-14:18:21.036088] Skipping nonexistent config path /Users/gamblin2/.spack/repos.yaml
==> [2022-11-29-14:18:21.036105] Skipping nonexistent config path /Users/gamblin2/.spack/darwin/repos.yaml
==> [2022-11-29-14:18:21.071828] Reading config from file /Users/gamblin2/src/spack/etc/spack/defaults/config.yaml
==> [2022-11-29-14:18:21.081628] Skipping nonexistent config path /Users/gamblin2/src/spack/etc/spack/defaults/darwin/config.yaml
==> [2022-11-29-14:18:21.081669] Skipping nonexistent config path /etc/spack/config.yaml
==> [2022-11-29-14:18:21.081692] Skipping nonexistent config path /etc/spack/darwin/config.yaml
==> [2022-11-29-14:18:21.081712] Skipping nonexistent config path /Users/gamblin2/src/spack/etc/spack/config.yaml
==> [2022-11-29-14:18:21.081731] Skipping nonexistent config path /Users/gamblin2/src/spack/etc/spack/darwin/config.yaml
==> [2022-11-29-14:18:21.081748] Skipping nonexistent config path /Users/gamblin2/.spack/config.yaml
==> [2022-11-29-14:18:21.081764] Skipping nonexistent config path /Users/gamblin2/.spack/darwin/config.yaml
==> [2022-11-29-14:18:21.134909] Reading config from file /Users/gamblin2/src/spack/etc/spack/defaults/packages.yaml
==> [2022-11-29-14:18:21.148695] Reading config from file /Users/gamblin2/src/spack/etc/spack/defaults/darwin/packages.yaml
==> [2022-11-29-14:18:21.152555] Skipping nonexistent config path /etc/spack/packages.yaml
==> [2022-11-29-14:18:21.152582] Skipping nonexistent config path /etc/spack/darwin/packages.yaml
==> [2022-11-29-14:18:21.152601] Skipping nonexistent config path /Users/gamblin2/src/spack/etc/spack/packages.yaml
==> [2022-11-29-14:18:21.152620] Skipping nonexistent config path /Users/gamblin2/src/spack/etc/spack/darwin/packages.yaml
==> [2022-11-29-14:18:21.152637] Skipping nonexistent config path /Users/gamblin2/.spack/packages.yaml
==> [2022-11-29-14:18:21.152654] Skipping nonexistent config path /Users/gamblin2/.spack/darwin/packages.yaml
==> [2022-11-29-14:18:21.853915] Skipping nonexistent config path /Users/gamblin2/src/spack/etc/spack/defaults/compilers.yaml
==> [2022-11-29-14:18:21.853962] Skipping nonexistent config path /Users/gamblin2/src/spack/etc/spack/defaults/darwin/compilers.yaml
==> [2022-11-29-14:18:21.853987] Skipping nonexistent config path /etc/spack/compilers.yaml
==> [2022-11-29-14:18:21.854007] Skipping nonexistent config path /etc/spack/darwin/compilers.yaml
==> [2022-11-29-14:18:21.854025] Skipping nonexistent config path /Users/gamblin2/src/spack/etc/spack/compilers.yaml
==> [2022-11-29-14:18:21.854043] Skipping nonexistent config path /Users/gamblin2/src/spack/etc/spack/darwin/compilers.yaml
==> [2022-11-29-14:18:21.854060] Skipping nonexistent config path /Users/gamblin2/.spack/compilers.yaml
==> [2022-11-29-14:18:21.854093] Reading config from file /Users/gamblin2/.spack/darwin/compilers.yaml
```

It is very rare that I want to know this much information about config search, so I've
moved this to level 3. Now at level 1, we can see much more clearly what configs were
actually found:

```console
> spack -d solve --fresh --show asp hdf5 > hdf5.lp
==> [2022-11-29-14:19:04.035457] Imported solve from built-in commands
==> [2022-11-29-14:19:04.035818] Imported solve from built-in commands
==> [2022-11-29-14:19:04.037626] Reading config from file /Users/gamblin2/src/spack/etc/spack/defaults/concretizer.yaml
==> [2022-11-29-14:19:04.040033] Reading config from file /Users/gamblin2/src/spack/etc/spack/defaults/repos.yaml
==> [2022-11-29-14:19:04.080852] Reading config from file /Users/gamblin2/src/spack/etc/spack/defaults/config.yaml
==> [2022-11-29-14:19:04.133241] Reading config from file /Users/gamblin2/src/spack/etc/spack/defaults/packages.yaml
==> [2022-11-29-14:19:04.147175] Reading config from file /Users/gamblin2/src/spack/etc/spack/defaults/darwin/packages.yaml
==> [2022-11-29-14:19:05.157896] Reading config from file /Users/gamblin2/.spack/darwin/compilers.yaml
```

You can still get the old messages with `spack -ddd` (to activate debug level 3).
2022-11-29 16:17:13 -08:00
Paul R. C. Kent
2c6b52f137 add 15.0.5, 15.0.6 (#34194) 2022-11-29 15:26:13 -08:00
kwryankrattiger
33422acef0 CI: Update Data and Vis SDK Stack (#34009)
* CI: Update Data and Vis SDK Stack

* Update image to match target deployments (E4S)
* Enable all packages
* Test supported variants of ParaView and VisIt

* Sensei: Update Python hint for newer cmake

* Sensei: add Python3 hint
2022-11-29 14:49:55 -07:00
Stephen Sachs
428f635142 icc@2021.6.0 does not support gcc@12 headers (#34191)
Error message:
```
/shared/spack/opt/spack/linux-amzn2-x86_64_v3/gcc-7.3.1/gcc-12.2.0-4tairupdxg2tg2yhvjdlbs7xbd7wudl3/bin/../include/c++/12.2.0/bits/random.h(104): error: expected a declaration
{ extension using type = unsigned __int128; };
^
```

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-11-29 14:36:48 -05:00
kwryankrattiger
c6c74e98ff Dav sdk catalyst (#34010)
* SDK: Add Catalyst 1 and 2 support to the SDK

* LibCatalyst: Remove unused python3 variant from package
2022-11-29 11:28:32 -06:00
Valentin Volkl
d9b438ec76 evtgen: add v02.02.00 (#34187)
* evtgen: add v02.02.00
* format
2022-11-29 09:54:14 -07:00
Cristian Le
c6ee30497c Fix libxc cflag (#34000)
Using standard c99 should not be specific to intel compilers.
2022-11-29 13:45:28 +01:00
Loïc Pottier
1270ae1526 hiredis: updated package definition to use CMake (#33949) 2022-11-29 13:44:50 +01:00
psakievich
d15fead30c Add maintainer to Exawind stack and Trilinos (#34174)
* Add maintainer to Nalu-Wind and Trilinos

* Add to trilinos

* Exawind too

* amr-wind too
2022-11-28 17:23:17 -08:00
Valentin Volkl
23aaaf2d28 genfit: add v02-00-01 (#34159) 2022-11-28 17:09:47 -08:00
Hans Fangohr
56f9c76394 fix typo in path for sanity check (#34117)
- typo breaks install
2022-11-28 16:49:57 -07:00
Sam Grayson
49cda811fc Add new version of snakemake (#34041)
* Add new version of snakemake

* Add myself as a maintainer

* py-retry -> py-reretry

* Added snakemake variants for storage systems

* Updated comments

* Responded to Adam's comments

* Fixed spack style

* Add build/run dependency types
2022-11-28 15:10:10 -07:00
Benjamin Meyers
a97312535a New package: py-statmorph (#34158)
* New package py-statmorph w/ dependecies. Add py-astropy@5.1

* [@spackbot] updating style on behalf of meyersbs

* [py-statmorph,py-astropy,py-pyerfa] minor fixes
2022-11-28 15:46:10 -06:00
Benjamin Meyers
a0180ef741 New package: py-stui (#34156)
* New package py-stui

* [py-stui] add maintainer

* [@spackbot] updating style on behalf of meyersbs

* [py-stui] fix deps
2022-11-28 15:45:40 -06:00
iarspider
d640a573a8 Add checksum for py-rsa 4.9 (#34115)
* Add checksum for py-rsa 4.9

* Update package.py

* Update var/spack/repos/builtin/packages/py-rsa/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-11-28 14:10:21 -07:00
Cameron Smith
b3679406d0 omegah: new scorec version, fix cuda flags (#34169) 2022-11-28 13:03:27 -08:00
eugeneswalker
587488882a e4s ci: add hdf5-vol-async; remove expired comments (#34110) 2022-11-28 19:35:42 +00:00
Satish Balay
a17844a367 petsc, py-petsc4py: add 3.18.2 (#34161) 2022-11-28 10:51:48 -08:00
Manuela Kuhn
093a37750c py-bidskit: new package and dcm2niix: add 1.0.20220720 (#34162)
* py-bidskit: new package and dcm2niix: add 1.0.20220720

* Remove list_url
2022-11-28 11:05:49 -07:00
iarspider
173cc7e973 Add checksum for py-traitlets 5.3.0 (#34127) 2022-11-28 11:05:35 -07:00
Greg Becker
451e3ff50b warn about removal of deprecated format strings (#34101)
* warn about removal of deprecated format strings

Co-authored-by: becker33 <becker33@users.noreply.github.com>
2022-11-28 10:03:49 -08:00
Manuela Kuhn
523c4c2b63 py-dcm2bids: add new package (#34163) 2022-11-28 10:46:04 -07:00
Thomas-Ulrich
35e5a916bc easi: update package, rework impalajit (#34032) 2022-11-28 15:54:21 +01:00
Annop Wongwathanarat
1374577659 acfl: provides blas, lapack, and fftw-api@3 (#34154) 2022-11-28 14:25:32 +01:00
Hector Martinez-Seara
4c017403db texinfo: add v7.0 (#34150) 2022-11-28 06:22:13 -07:00
Massimiliano Culpo
fdfda72371 Use a module-like object to propagate changes in the MRO, when setting build env (#34059)
This fixes an issue introduced in #32340, which changed the semantics of the "module"
object passed to the "setup_dependent_package" callback.
2022-11-28 14:18:26 +01:00
Harmen Stoppels
efa1dba9e4 Revert "Revert "gitlab: Add shared PR mirror to places pipelines look for binaries. (#33746)" (#34087)" (#34153)
This reverts commit 63e4406514.
2022-11-28 06:06:03 -07:00
Annop Wongwathanarat
2a7ae2a700 armpl-gcc: add post-installation check by running examples (#34086) 2022-11-28 13:55:51 +01:00
Adam J. Stewart
a1b4e1bccd Add type hints to Prefix class (#34135) 2022-11-28 13:49:57 +01:00
Alec Scott
066ec31604 Add restic v0.14.0 (#34148) 2022-11-28 08:39:37 +01:00
Alec Scott
bb1888dbd4 direnv: add v2.32.2 (#34147) 2022-11-27 22:09:53 +01:00
Michael Kuhn
bc17b6cefb rust: add 1.65.0 (#34124) 2022-11-27 16:03:46 +01:00
Umashankar Sivakumar
46a0cd8e55 SingularityCE: Add conmon+squashfs as dependencies (#33891) 2022-11-27 13:05:49 +01:00
fpruvost
b2ceb23165 pastix: add new version 6.2.2 (#34066) 2022-11-27 00:33:05 +01:00
Harmen Stoppels
2fad966139 neovim: fix deptypes (#34060) 2022-11-27 00:23:24 +01:00
Luke Diorio-Toth
0b01c8c950 py-fastpath: new package (#34142)
* py-fastpath: new package

* Update var/spack/repos/builtin/packages/py-fastpath/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-11-26 15:57:45 -07:00
Eric Berquist
613d0b7e8e emacs: add variant treesitter for Emacs 29+ (#34134) 2022-11-26 23:45:00 +01:00
Wouter Deconinck
21c29ee375 prmon: Add missing depends_on py-numpy, py-pandas when +plot (#34123) 2022-11-26 23:43:25 +01:00
Luke Diorio-Toth
e236339e5a aragorn: add newer versions and URL (#34140) 2022-11-26 23:34:59 +01:00
Luke Diorio-Toth
7a03525c35 minced: add v0.4.2 (#34141) 2022-11-26 23:30:56 +01:00
Hans Fangohr
17ca86a309 Octopus: branch for Octopus development is now "main" (#34128)
Historically, development of the Octopus code was done on the "develop" branch
on https://gitlab.com/octopus-code/octopus but now development takes place on
"main" (since Q3 2022).

The suggestion in this PR to solve the issue is to keep the spack label
`octopus@develop` as this better indicates this is the development branch on git
than `octopus@main`, but of course to use the `main` branch (there is no choice
here - the `develop` branch is not touched anymore). Sticking to
`octopus@develop` as the version label also keeps backwards compatibility.
2022-11-26 15:29:49 -07:00
marcost2
ce71a38703 nvtop: Add 2.0.3, 2.0.4, 3.0.0 and 3.0.1 (#34145)
* And add the option to compile support for Intel GPU's
2022-11-26 21:04:48 +01:00
Satish Balay
12c23f2724 Revert "url_exists related improvements (#34095)" (#34144)
This reverts commit d06fd26c9a.

The problem is that Bitbucket's API forwards download requests to an S3 bucket using a temporary URL. This URL includes a signature for the request, which embeds the HTTP verb. That means only GET requests are allowed, and HEAD requests would fail verification, leading to 403 erros. The same is observed when using `curl -LI ...`
2022-11-26 17:56:36 +00:00
Carlos Bederián
b8ae0fbbf4 amdblis: symlink libblis-mt to libblis (#32819) 2022-11-26 00:33:29 +01:00
Sebastian Ehlert
6b5c86e0be toml-f: add 0.2.4 and 0.3.1 (#34025) 2022-11-25 16:29:58 -07:00
Victoria Cherkas
1ed1b49c9b metkit, fdb: Add latest versions (#33289) 2022-11-25 23:54:51 +01:00
petertea
4265d5e111 Update TotalView versions and website (#33418)
Co-authored-by: Peter Thompson <thompson81@llnl.gov>
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-11-25 23:42:56 +01:00
snehring
8c0fb91d4e ffmpeg: adding version 5.1.2 (#33758)
* ffmpeg: add version 5.1.2 and switch to conditional variants

Also: py-torchvision: restrict ffmpeg dependency
2022-11-25 23:37:17 +01:00
Thomas Madlener
567532b9e5 lcio: Add new version and restrictions on c++ standard (#33997) 2022-11-25 23:08:23 +01:00
Adam J. Stewart
47d59e571e py-pandas: add v1.5.2 (#34091) 2022-11-25 23:03:16 +01:00
Adam J. Stewart
93ff19c9b7 py-pytorch-lightning: add v1.8.3 (#34096) 2022-11-25 22:59:39 +01:00
Harmen Stoppels
2167cbf72c Track locks by (dev, ino); close file handlers between tests (#34122) 2022-11-25 10:57:33 +01:00
Sergey Kosukhin
7a5e527cab zlib: fix shared libraries when '%nvhpc' (#34039) 2022-11-24 20:10:18 +01:00
iarspider
a25868594c Add checksum for py-uncertainties 3.1.7 (#34116) 2022-11-24 12:11:58 -06:00
Brent Huisman
dd5263694b Arbor: Yank v0.5 (#34094)
v0.5 does not build due to a change in setting `arch` introduced in v0.5.2, compatibility with which was not kept in `arbor/package.py`. Since v0.5.2 is compatible with `arbor/package.py`, and is API compatible with v0.5, any users relying on v0.5 can rely on v0.5.2.
2022-11-24 11:19:32 +01:00
Thomas-Ulrich
5fca1c9aff hipsycl: add v0.9.3 (#34052) 2022-11-23 23:14:01 -07:00
Tim Haines
1d7393c281 dyninst: add checksums for all supported versions (#34051) 2022-11-24 03:45:56 +01:00
Jen Herting
f0bc551718 New package: py-kt-legacy (#34104)
* first build of keras-tuner with dataset kt-legacy

* [py-kt-legacy] fixed homepage

* [py-kt-legacy] depends on setuptools

* [py-kt-legacy] fixed import

* [@spackbot] updating style on behalf of qwertos

Co-authored-by: Sid Pendelberry <sid@rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-11-23 19:26:21 -07:00
Adam J. Stewart
46b9a09843 py-cartopy: older versions don't support newer matplotlib (#34109) 2022-11-24 02:44:20 +01:00
Stephen Sachs
c0898565b9 openfoam: Fix openfoam@2012_220610 %intel (add #include <array>) (#34088) 2022-11-24 02:34:40 +01:00
Benjamin Meyers
3018e7f63d Add py-urwid@2.1.2 (#34103)
* Add py-urwid@2.1.2

* [@spackbot] updating style on behalf of meyersbs
2022-11-23 19:25:02 -06:00
Satish Balay
dfa1a42420 petsc, slepc: enable parallel builds (#34024) 2022-11-24 02:16:20 +01:00
Adam J. Stewart
2c8ab85e6a gnuplot: fix build with Apple Clang (#34092) 2022-11-24 01:33:33 +01:00
Nicolas Cornu
b2505aed5c HighFive: bump to 2.6.2 (#34090) 2022-11-24 00:20:36 +01:00
Valentin Volkl
7847d4332e docs: update info on XCode requirements (#34097) 2022-11-24 00:20:09 +01:00
Massimiliano Culpo
70bcbba5eb ecflow: polish recipe (#34043) 2022-11-23 21:38:37 +01:00
Tom Scogland
0182603609 Control Werror by converting to Wno-error (#30882)
Using `-Werror` is good practice for development and testing, but causes us a great
deal of heartburn supporting multiple compiler versions, especially as newer compiler
versions add warnings for released packages.  This PR adds support for suppressing
`-Werror` through spack's compiler wrappers.  There are currently three modes for
the `flags:keep_werror` setting:

* `none`: (default) cancel all `-Werror`, `-Werror=*` and `-Werror-*` flags by
  converting them to `-Wno-error[=]*` flags
* `specific`: preserve explicitly selected warnings as errors, such as
  `-Werror=format-truncation`, but reverse the blanket `-Werror`
* `all`: keeps all `-Werror` flags

These can be set globally in config.yaml, through the config command-line flags, or
overridden by a particular package (some packages use Werror as a proxy for determining
support for other compiler features).  We chose to use this approach because:

1. removing `-Werror` flags entirely broke *many* build systems, especially autoconf
   based ones, because of things like checking `-Werror=feature` and making the
   assumption that if that did not error other flags related to that feature would also work
2. Attempting to preserve `-Werror` in some phases but not others caused similar issues
3. The per-package setting came about because some packages, even with all these
   protections, still use `-Werror` unsafely.  Currently there are roughly 3 such packages
   known.
2022-11-23 12:29:17 -08:00
Jen Herting
bf1b846f26 [py-antlr4-python3-runtime] Added versions 4.9.3 and 4.10 (#34102)
* Working updates to py-antlr4-python3-runtime and py-omegaconf

* [py-antlr4-python3-runtime] added version 4.9.3

* [@spackbot] updating style on behalf of qwertos

Co-authored-by: Benjamin Meyers <bsmits@rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-11-23 12:30:11 -07:00
Harmen Stoppels
d06fd26c9a url_exists related improvements (#34095)
For reasons beyond me Python thinks it's a great idea to upgrade HEAD
requests to GET requests when following redirects. So, this PR adds a
better `HTTPRedirectHandler`, and also moves some ad-hoc logic around
for dealing with disabling SSL certs verification.

Also, I'm stumped by the fact that Spack's `url_exists` does not use
HEAD requests at all, so in certain cases Spack awkwardly downloads
something first to see if it can download it, and then downloads it
again because it knows it can download it. So, this PR ensures that both
urllib and botocore use HEAD requests.

Finally, it also removes some things that were there to support currently
unsupported Python versions.

Notice that the HTTP spec [section 10.3.2](https://datatracker.ietf.org/doc/html/rfc2616.html#section-10.3.2) just talks about how to deal
with POST request on redirect (whether to follow or not):

>   If the 301 status code is received in response to a request other
>   than GET or HEAD, the user agent MUST NOT automatically redirect the
>   request unless it can be confirmed by the user, since this might
>   change the conditions under which the request was issued.

>   Note: When automatically redirecting a POST request after
>   receiving a 301 status code, some existing HTTP/1.0 user agents
>   will erroneously change it into a GET request.

Python has a comment about this, they choose to go with the "erroneous change".
But they then mess up the HEAD request while following the redirect, probably
because they were too busy discussing how to deal with POST.

See https://github.com/python/cpython/pull/99731
2022-11-23 19:26:24 +00:00
kwryankrattiger
5d2c9636ff E4S: Conservatively add ecp-data-vis-sdk (#33621)
* E4S: Conservatively add ecp-data-vis-sdk

* Remove ascent from CUDA SDK stack to stop hanging on Dray

* Adios2: Newer FindPython uses Python_EXECUTABLE
2022-11-23 11:01:30 -08:00
Harmen Stoppels
63e4406514 Revert "gitlab: Add shared PR mirror to places pipelines look for binaries. (#33746)" (#34087)
This reverts commit 5c4137baf1.
2022-11-23 10:41:52 -08:00
Jen Herting
d56380fc07 New package: py-imagecodecs (#34098)
* [libjpeg-turbo] Added version 2.1.3

* [imagecodecs] Added jpeg deependency commented outconglicting libraries

* [WIP]

* [py-imagecodecs] modifying setup.py to work with spack install locations

* [py-imagecodecs] Removed comments and unneeded dependencies

* [py-imagecodecs] removed some comments and fixed up some flake8 complaints

* [py-imagecodecs] flake8

* [py-imagecodecs] fixed import

* [@spackbot] updating style on behalf of qwertos

Co-authored-by: James A Zilberman <jazrc@rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-11-23 10:39:45 -07:00
Adam J. Stewart
f89cc96b0c libelf: fix build on macOS arm64 (#34036) 2022-11-23 09:27:44 -07:00
iarspider
cf952d41d8 Add checksum for py-cffi 1.15.1 (#34081) 2022-11-23 08:52:21 -07:00
iarspider
5f737c5a71 Add checksum for py-parsimonious 0.10.0 (#34079) 2022-11-23 08:59:30 -06:00
Bernhard Kaindl
a845b1f984 openloops: add check for added Fortran compiler (#34014) 2022-11-23 07:59:13 -07:00
Henning Glawe
b8d059e8f4 berkelygw: use mpi variant for scalapack (#33948)
The package.py assumed "+mpi" in many places, without checking for the variant.
This problem went undetected, as a hard dependency on scalapack pulled an mpi
implementation into the dependency chain (this is also fixed).

Also, the +mpi variant is used select between serial and parallel mode:

It has to enable MPI and ScaLAPACK: They are inter-dependent. Compile
fails because of checks for the other if the other is not enabled.

Co-authored-by: Bernhard Kaindl <contact@bernhard.kaindl.dev>
2022-11-23 07:42:03 -07:00
Cory Bloor
1006c77374 rocm: add minimum versions for amdgpu_targets (#34030) 2022-11-23 14:23:38 +01:00
Alec Scott
38d4fd7711 Add conflicts statements to flux-core to limit builds to linux based platforms (#34068) 2022-11-23 06:08:46 -07:00
Harmen Stoppels
643ce586de libxcrypt: add v4.33 (#34069) 2022-11-23 05:36:47 -07:00
Adam J. Stewart
5b3b0130f2 Build System docs: consistent headers (#34047) 2022-11-23 13:35:55 +01:00
Harmen Stoppels
55c77d659e make/ninja: use the right number of jobs (#34057) 2022-11-23 12:35:15 +01:00
Alexander Knieps
fe1c105161 capnproto: update to v0.10.2 (#34063)
Co-authored-by: Alexander Knieps <a.knieps@fz-juelich.de>
2022-11-23 12:32:10 +01:00
Bernhard Kaindl
09f2b6f5f5 boost: At least with older Xcode, boost can't build with lzma (#34075)
Reference: https://lists.boost.org/Archives/boost/2019/11/247380.php
As reported at the end of #33998 and this link, liblzma on older Xcode on
MacOSX 10 misses _lzma_cputhreads, so boost's can't use liblzma on those.
2022-11-23 03:36:22 -07:00
Matthieu Dorier
73fe21ba41 [mochi-margo] fixed dependency to Argobots (#34082) 2022-11-23 03:36:05 -07:00
Jen Herting
81fb87cedf New package: py-rasterstats (#34070)
* Fixed dependencies for rasterstats

* Fixed flake8 errors

* Fix flake8 error

* Cleans up package desc., adds build dependency on setuptools.

* Fixes flake8 error

Co-authored-by: Bailey Brown <bobits@rit.edu>
2022-11-23 02:55:14 -07:00
Tim Haines
7de39c44b1 dyninst: add v12.2.1 (#34050) 2022-11-23 10:13:00 +01:00
Keita Iwabuchi
c902e27e52 Metall package: add v0.22, v0.23, and v0.23.1 (#34073) 2022-11-23 09:57:32 +01:00
Takahiro Ueda
65b991a4c5 form: new version 4.3.0 (#34078) 2022-11-23 09:51:55 +01:00
Mosè Giordano
65520311a6 ccache: add new versions (#34067) 2022-11-23 01:42:44 -07:00
Umar Arshad
def79731d0 span-lite: Add new versions (#34072) 2022-11-23 02:21:58 +01:00
Michael Kuhn
0fd3c9f451 cmd/checksum: allow adding new versions to package (#24532)
This adds super-lazy maintainer mode to `spack checksum`: Instead of
only printing the new checksums to the terminal, `-a` and
`--add-to-package` will add the new checksums to the `package.py` file
and open it in the editor afterwards for final checks.
2022-11-22 16:30:49 -08:00
Adam J. Stewart
c5883fffd7 Python: drop EOL versions (#33898)
This PR removes [end of life](https://endoflife.date/python) versions of Python from Spack. Specifically, this includes all versions of Python older than 3.7.

See https://github.com/spack/spack/discussions/31824 for rationale. Deprecated in #32615. And #28003.

For anyone using software that relies on Python 2, you have a few options:

* Upgrade the software to support Python 3. The `3to2` tool may get you most of the way there, although more complex libraries may need manual tweaking.
* Add Python 2 as an [external package](https://spack.readthedocs.io/en/latest/build_settings.html#external-packages). Many Python libraries do not support Python 2, but you may be able to add older versions that did once upon a time.
* Use Spack 0.19. Spack 0.19 is the last release to officially support Python 3.6 and older
* Create and maintain your own [custom repository](https://spack.readthedocs.io/en/latest/repositories.html). Basically, you would need a package for Python 2 and any other Python 2-specific libraries you need.
2022-11-22 15:02:30 -08:00
Harmen Stoppels
4bf964e6b3 spack uninstall: use topo order (#34053) 2022-11-22 07:22:07 -07:00
Bernhard Kaindl
bcc0fda4e2 berkeleygw: fix build (no change to attribute spec.compiler_flags) (#34019) 2022-11-22 07:13:56 -07:00
iarspider
69987fd323 cpu-features: Fix appending -DBUILD_SHARED_LIBS (#34055)
Also:
* Use the release tarball for v0.7.0 to fix spack warning

Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2022-11-22 06:10:34 -07:00
Dominic Hofer
9a16234ed4 eckit: add v1.20.2, v1.16.3 (#33200)
Co-authored-by: Bernhard Kaindl <contact@bernhard.kaindl.dev>
2022-11-22 05:45:17 -07:00
Massimiliano Culpo
bd198312c9 Revert "Warn about removal of deprecated format strings (#33829)" (#34056)
This reverts commit 7f9af8d4a0.
2022-11-22 12:35:36 +01:00
Greg Becker
7f9af8d4a0 Warn about removal of deprecated format strings (#33829)
Co-authored-by: becker33 <becker33@users.noreply.github.com>
2022-11-22 10:56:57 +01:00
John W. Parent
793a7bc6a9 Windows: add registry query and SDK/WDK packages (#33021)
* Add a WindowsRegistryView class, which can query for existing
  package installations on Windows. This is particularly important
  because some Windows packages (including those added here)
  do not allow two simultaneous installs, and this can be
  queried in order to provide a clear error message.
* Consolidate external path detection logic for Windows into
  WindowsKitExternalPaths and WindowsCompilerExternalPaths objects.
* Add external-only packages win-sdk and wgl
* Add win-wdk (including external detection) which depends on
  win-sdk
* Replace prior msmpi implementation with a source-based install
  (depends on win-wdk). This install can control the install
  destination (unlike the binary installation).
* Update MSVC compiler to choose vcvars based on win-sdk dependency
* Provide "msbuild" module-level variable to packages during build
* When creating symlinks on Windows, need to explicitly specify when
  a symlink target is a directory
* executables_in_path no-longer defaults to using PATH (this is
  now expected to be taken care of by the caller)
2022-11-22 00:27:42 -08:00
genric
376afd631c py-kubernetes: add version 25.3.0 (#33915) 2022-11-22 05:46:41 +01:00
Harmen Stoppels
e287c6ac4b gnuconfig: bump with 2022-09-17 (#34035) 2022-11-22 05:31:29 +01:00
Sergey Kosukhin
e864744b60 py-fprettify: new version 0.3.7 (#34040) 2022-11-21 21:26:31 -06:00
Andrew W Elble
5b3af53b10 qiskit: updates (#33877) 2022-11-21 21:10:10 -06:00
Harmen Stoppels
44c22a54c9 Spec traversal: add option for topological ordering (#33817)
Spec traversals can now specify a topological ordering. A topologically-
ordered traversal with input specs X1, X2... will

* include all of X1, X2... and their children
* be ordered such that a given node is guaranteed to appear before any
  of its children in the traversal

Other notes:

* Input specs can be children of other input specs (this is useful if
  a user specifies a set of specs to uninstall: some of those specs
  might be children of others)
* `direction="parents"` will produce a reversed topological order
  (children always come before parents).
* `cover="edges"` will generate a list of edges L such that (a) input
  edges will always appear before output edges and (b) if you create
  a list with the destination of each edge in L the result is
  topologically ordered
2022-11-21 18:33:35 -08:00
Chris Green
f97f37550a libjpeg-turbo: make build_system settings comprehensive (#34046) 2022-11-22 03:15:32 +01:00
Massimiliano Culpo
0e4ee3d352 Speed-up a few unit-tests (#34044)
* test_suite.py: speed up slow test by using mock packages

* Don't resolve the sha during unit-tests

* Skip long-running test that fails, instead of executing it
2022-11-21 23:50:55 +01:00
Brian Van Essen
05fc800db9 Fixed the rdma-core package to find its external library (#33798) 2022-11-21 15:45:47 -07:00
Dom Heinzeller
2387c116ad ecflow: add v5.8.3, update with changes from JCSDA-EMC fork (#34038) 2022-11-21 11:01:52 -07:00
Scott Wittenburg
6411cbd803 ci: restore ability to reproduce gitlab job failures (#33953) 2022-11-21 10:39:03 -06:00
Harmen Stoppels
8ea366b33f uninstall: fix accidental cubic complexity (#34005)
* uninstall: fix accidental cubic complexity

Currently spack uninstall runs in worst case cubic time complexity
thanks to traversal during traversal during traversal while collecting
the specs to be uninstalled.

Also brings down the number of error messages printed to something
linear in the amount of matching specs instead of quadratic.
2022-11-21 16:44:48 +01:00
Drew Whitehouse
9a2fbf373c openvdb: update to v10.0.0 (#33835) 2022-11-21 06:38:28 +01:00
Mosè Giordano
9e1fef8813 texinfo: require also makeinfo executable (#33370)
* texinfo: require also `makeinfo` executable
* texinfo: add versions 6.6, 6.7, 6.8
* texinfo: add `info` and `makeinfo` sanity checks
2022-11-21 05:20:11 +01:00
Alec Scott
f8a6e3ad90 hugo: add v0.106.0 (#34023) 2022-11-21 04:22:32 +01:00
Adam J. Stewart
0706919b09 Python: specify tcl/tk version requirements (#34027) 2022-11-20 19:13:47 -06:00
Wouter Deconinck
b9b93ce272 qt6: new packages (#29555)
* qt6: initial commit of several basic qt6 packages

* Qt6: fix style issues

* [qt6] fix style issues, trailing spaces

* [qt6] rename to qt-* ecosystem; remove imports

* [qt6] rename dependencies; change version strings

* [qt6] list_urls

* [qt6] homepage links

* [qt6] missing closing quotes failed style check

* qt-declarative: use private _versions

Co-authored-by: Seth R. Johnson <johnsonsr@ornl.gov>

* qt-quick3d, qt-quicktimeline, qt-shadertools: use private _versions

* qt-base: rework feature defines and use run_tests

* qt: new version 6.2.4

* flake8 whitespace before comma

* qt-base: variant opengl when +gui

Co-authored-by: Seth R. Johnson <johnsonsr@ornl.gov>

* qt6: rebase and apply new black style

* qt6: apply style isort fixes

* qt6: new version 6.3.0 and 6.3.1

* qt6: add 6.3.0 and 6.3.1 to versions list

* qt6: multi-argument join_path

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* qt-base: fix isort

* qt-shadertools: no cmake_args needed

* qt-declarative: imports up front

* qt-quick3d: fix import

* qt-declarative: remove useless cmake_args

* qt-shadertools: imports and join_path fixes

* qt-quick3d: join_path fixes

* qt-declarative: join_path fixes

* Update features based on gui usage

* Update dependencies, cmake args, mac support

* Update features based on linux

* More updates

* qt-base: fix style

* qt-base: archive_files join_path

* qt-base: new version 6.3.2

* qt-{declarative,quick3d,quicktimeline,shadertools}@6.3.2

* qt-base: require libxcb@1.13: and use system xcb_xinput when on linux

Co-authored-by: Seth R. Johnson <johnsonsr@ornl.gov>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-11-20 20:03:52 -05:00
Pedro Ciambra
87cb9760ce mold: new package for the mold linker (#34017) 2022-11-21 01:32:47 +01:00
Adam J. Stewart
d472e28bfe py-numpy: add v1.23.5 (#34026) 2022-11-21 00:40:37 +01:00
Bernhard Kaindl
dbc81549db krb5: Add new versions 1.19.4 and 1.20.1 (#34021)
Co-authored-by: Bernhard Kaindl <contact@bernhard.kaindl.dev>
2022-11-21 00:39:13 +01:00
Sam Grayson
dc00c4fdae Update dask and related packages (#33925)
* Update dask and related packages

* Update package dependency specs

* Run spack style

* Add new version of locket

* Respond to comments

* Added constraints

* Add version constraints for py-dask+distributed

* Run spack style

* Update var/spack/repos/builtin/packages/py-dask/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Deprecated dask versions

* Deprecated more dask and distirbuted

* spack style --fix

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-11-20 12:43:32 -06:00
Bernhard Kaindl
f1b9da16c8 bash: Update 5.1 to 5.1.16 (#34022) 2022-11-20 18:36:24 +01:00
Adam J. Stewart
93ce943301 py-torch: add note about MPS variant (#34018) 2022-11-19 18:10:06 -07:00
Jen Herting
632b36ab5d New package: py-ahpy (#34008)
* first build of ahpy

* updated to limit python to >4

* added from spack.package import * to >4

Co-authored-by: Sid Pendelberry <sid@rit.edu>
2022-11-19 12:10:14 -07:00
Paul Romano
94c76c5823 OpenMC: add v0.13.2 (#33903)
* openmc: add v0.13.2

* Fix style formatting

* Update Python version dependency

* Update numpy version dependency
2022-11-19 12:22:58 -06:00
Massimiliano Culpo
45b4cedb7e spack find: remove deprecated "--bootstrap" option (#34015) 2022-11-19 16:09:34 +01:00
Erik Schnetter
6d0a8f78b2 libxcrypt: Disable -Werror (#34013) 2022-11-19 06:29:50 -07:00
Chris Green
409cf185ce package_base.py: Fix #34006: test msg needs to be a string (#34007) 2022-11-19 13:02:51 +01:00
iarspider
602984460d Boost: enable lzma and zstd iostreams (#33998) 2022-11-19 12:07:52 +01:00
Olivier Cessenat
62b1d52a1e graphviz: remove 1. cyclic dep when +pangocairo and 2. error with poppler+glib (#32120)
* graphviz: remove cyclic dep to svg when pangocairo and poppler+glib failure

* graphviz: remove cyclic dep to svg when pangocairo and poppler+glib failure
2022-11-19 11:53:09 +01:00
Jim Edwards
790bd175e0 parallelio: update package to use mpi-serial, add extra module info (#33153) 2022-11-19 03:50:01 -07:00
Adam J. Stewart
2f057d729d py-scipy: add v1.9 (#31810) 2022-11-19 11:16:01 +01:00
Jerome Soumagne
a124185090 mercury: add version 2.2.0 (#31966)
add psm, psm2 and hwloc variants

Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2022-11-19 11:12:52 +01:00
Michael Kuhn
c5235bbe86 sqlite: add 3.40.0 (#33975) 2022-11-18 18:42:03 -07:00
Chris Green
e715901cb2 PackageBase should not define builder legacy attributes (#33942)
* Add a regression test for 33928

* PackageBase should not set `(build|install)_time_test_callbacks`

* Fix audits by preserving the current semantic

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-11-18 22:22:51 +01:00
Robert Blake
1db914f567 Updating faiss with new versions (#33983)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-11-18 21:43:41 +01:00
Robert Blake
688dae7058 Updating hiredis with new software versions (#33982) 2022-11-18 21:43:20 +01:00
Richard Berger
ddb460ec8d charliecloud: new version 0.30 (#34004) 2022-11-18 11:29:33 -08:00
snehring
703e5fe44a trnascan-se: adding missing build dep (#33978) 2022-11-18 11:22:21 -08:00
Bernhard Kaindl
c601bdf7bf gcc: Ensure matching assembler/binutils on RHEL8 (#33994)
gcc@10: Newer binutils than RHEL7/8's are required to for guaranteed operaton. Therefore, on RHEL7/8, reject ~binutils. You need to add +binutils to be sure to have binutils which are recent enough.

See this discussion with the OpenBLAS devs for reference:
https://github.com/xianyi/OpenBLAS/issues/3805#issuecomment-1319878852

Co-authored-by: Bernhard Kaindl <contact@bernhard.kaindl.dev>
2022-11-18 10:55:52 -08:00
Satish Balay
778dddc523 pflotran: add "rxn" variant (#33995) 2022-11-18 10:34:27 -08:00
Robert Underwood
acc19ad34f LibPressio support for MGARD (#33999)
Co-authored-by: Robert Underwood <runderwood@anl.gov>
2022-11-18 10:26:50 -08:00
Adam J. Stewart
f4826e1b33 py-mypy: add new versions; add new py-types packages (#34002)
* py-mypy: add new versions
* Add new packages
2022-11-18 10:23:55 -08:00
snehring
05ff7e657c py-cutadapt: adding version 4.1 (#33959)
* py-dnaio: adding version 0.9.1
py-cutadapt: adding version 4.1

* py-cutadapt: remove old python versions

* py-dnaio: remove old python versions

* py-cutadapt: add cython dep
2022-11-18 10:33:57 -07:00
Massimiliano Culpo
839a14c0ba Improve error message for requirements (#33988)
refers #33985
2022-11-18 15:49:46 +01:00
Bernhard Kaindl
9aafbec121 openblas: Fix build on ARM Neoverse with gcc@:9 (no sve2+bf16) (#33968)
Also improve the InstallError message when +fortran but no FC was added.

Co-authored-by: Bernhard Kaindl <contact@bernhard.kaindl.dev>
2022-11-18 02:54:04 -07:00
iarspider
20071e0c04 Update libjpeg-turbo using new multibuildsystem approach (#33971)
Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2022-11-18 01:41:53 -07:00
Adam J. Stewart
51bb2f23a3 py-pytorch-lightning: add v1.8.2 (#33984) 2022-11-17 23:13:55 -07:00
Ross Miller
2060d51bd0 libxml2: make older versions depend on python@:3.9 (#33952)
Add a dependency on python versions less than 3.10 in order to work
around a bug in libxml2's configure script that fails to parse python
version strings with more than one character for the minor version.

The bug is present in v2.10.1, but has been fixed in 2.10.2.

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2022-11-18 05:16:11 +01:00
Harmen Stoppels
e5af0ccc09 libuv-julia: usa static libs for julia (#33980) 2022-11-18 03:09:07 +01:00
Jen Herting
284859e742 [lerc] added version 4.0.0 (#33974)
* [lerc] added version 4.0.0

* [@spackbot] updating style on behalf of qwertos

Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-11-17 19:50:58 -06:00
Cory Quammen
37e77f7a15 ParaView: add ParaView-5.11.0 new release (#33972) 2022-11-17 18:06:08 -07:00
Harmen Stoppels
d2432e1ba4 julia: 1.8.3 (#33976) 2022-11-17 16:18:32 -07:00
David
5809ba0e3f ompss-2: new package (#33844) 2022-11-17 15:03:32 -08:00
Robert Underwood
95e294b2e8 fixes for ndzip and sperr (#33882)
* fixes for ndzip
* fix commits in spack
* new and fixed sperr release

Co-authored-by: Robert Underwood <runderwood@anl.gov>
2022-11-17 14:25:48 -08:00
Glenn Johnson
cdaac58488 Spack Bioconductor package updates (#33852)
* add version 1.46.0 to bioconductor package r-a4
* add version 1.46.0 to bioconductor package r-a4base
* add version 1.46.0 to bioconductor package r-a4classif
* add version 1.46.0 to bioconductor package r-a4core
* add version 1.46.0 to bioconductor package r-a4preproc
* add version 1.46.0 to bioconductor package r-a4reporting
* add version 1.52.0 to bioconductor package r-absseq
* add version 1.28.0 to bioconductor package r-acde
* add version 1.76.0 to bioconductor package r-acgh
* add version 2.54.0 to bioconductor package r-acme
* add version 1.68.0 to bioconductor package r-adsplit
* add version 1.70.0 to bioconductor package r-affxparser
* add version 1.76.0 to bioconductor package r-affy
* add version 1.74.0 to bioconductor package r-affycomp
* add version 1.58.0 to bioconductor package r-affycompatible
* add version 1.56.0 to bioconductor package r-affycontam
* add version 1.70.0 to bioconductor package r-affycoretools
* add version 1.46.0 to bioconductor package r-affydata
* add version 1.50.0 to bioconductor package r-affyilm
* add version 1.68.0 to bioconductor package r-affyio
* add version 1.74.0 to bioconductor package r-affyplm
* add version 1.44.0 to bioconductor package r-affyrnadegradation
* add version 1.46.0 to bioconductor package r-agdex
* add version 3.30.0 to bioconductor package r-agilp
* add version 2.48.0 to bioconductor package r-agimicrorna
* add version 1.30.0 to bioconductor package r-aims
* add version 1.30.0 to bioconductor package r-aldex2
* add version 1.36.0 to bioconductor package r-allelicimbalance
* add version 1.24.0 to bioconductor package r-alpine
* add version 2.60.0 to bioconductor package r-altcdfenvs
* add version 2.22.0 to bioconductor package r-anaquin
* add version 1.26.0 to bioconductor package r-aneufinder
* add version 1.26.0 to bioconductor package r-aneufinderdata
* add version 1.70.0 to bioconductor package r-annaffy
* add version 1.76.0 to bioconductor package r-annotate
* add version 1.60.0 to bioconductor package r-annotationdbi
* add version 1.22.0 to bioconductor package r-annotationfilter
* add version 1.40.0 to bioconductor package r-annotationforge
* add version 3.6.0 to bioconductor package r-annotationhub
* add version 3.28.0 to bioconductor package r-aroma-light
* add version 1.30.0 to bioconductor package r-bamsignals
* add version 2.14.0 to bioconductor package r-beachmat
* add version 2.58.0 to bioconductor package r-biobase
* add version 2.6.0 to bioconductor package r-biocfilecache
* add version 0.44.0 to bioconductor package r-biocgenerics
* add version 1.8.0 to bioconductor package r-biocio
* add version 1.16.0 to bioconductor package r-biocneighbors
* add version 1.32.1 to bioconductor package r-biocparallel
* add version 1.14.0 to bioconductor package r-biocsingular
* add version 2.26.0 to bioconductor package r-biocstyle
* add version 3.16.0 to bioconductor package r-biocversion
* add version 2.54.0 to bioconductor package r-biomart
* add version 1.26.0 to bioconductor package r-biomformat
* add version 2.66.0 to bioconductor package r-biostrings
* add version 1.46.0 to bioconductor package r-biovizbase
* add version 1.8.0 to bioconductor package r-bluster
* add version 1.66.1 to bioconductor package r-bsgenome
* add version 1.34.0 to bioconductor package r-bsseq
* add version 1.40.0 to bioconductor package r-bumphunter
* add version 2.64.0 to bioconductor package r-category
* add version 2.28.0 to bioconductor package r-champ
* add version 2.30.0 to bioconductor package r-champdata
* add version 1.48.0 to bioconductor package r-chipseq
* add version 4.6.0 to bioconductor package r-clusterprofiler
* add version 1.34.0 to bioconductor package r-cner
* add version 1.30.0 to bioconductor package r-codex
* add version 2.14.0 to bioconductor package r-complexheatmap
* add version 1.72.0 to bioconductor package r-ctc
* add version 2.26.0 to bioconductor package r-decipher
* add version 0.24.0 to bioconductor package r-delayedarray
* add version 1.20.0 to bioconductor package r-delayedmatrixstats
* add version 1.38.0 to bioconductor package r-deseq2
* add version 1.44.0 to bioconductor package r-dexseq
* add version 1.40.0 to bioconductor package r-dirichletmultinomial
* add version 2.12.0 to bioconductor package r-dmrcate
* add version 1.72.0 to bioconductor package r-dnacopy
* add version 3.24.1 to bioconductor package r-dose
* add version 2.46.0 to bioconductor package r-dss
* add version 3.40.0 to bioconductor package r-edger
* add version 1.18.0 to bioconductor package r-enrichplot
* add version 2.22.0 to bioconductor package r-ensembldb
* add version 1.44.0 to bioconductor package r-exomecopy
* add version 2.6.0 to bioconductor package r-experimenthub
* add version 1.24.0 to bioconductor package r-fgsea
* add version 2.70.0 to bioconductor package r-gcrma
* add version 1.34.0 to bioconductor package r-gdsfmt
* add version 1.80.0 to bioconductor package r-genefilter
* add version 1.34.0 to bioconductor package r-genelendatabase
* add version 1.70.0 to bioconductor package r-genemeta
* add version 1.76.0 to bioconductor package r-geneplotter
* add version 1.20.0 to bioconductor package r-genie3
* add version 1.34.3 to bioconductor package r-genomeinfodb
* update r-genomeinfodbdata
* add version 1.34.0 to bioconductor package r-genomicalignments
* add version 1.50.2 to bioconductor package r-genomicfeatures
* add version 1.50.1 to bioconductor package r-genomicranges
* add version 2.66.0 to bioconductor package r-geoquery
* add version 1.46.0 to bioconductor package r-ggbio
* add version 3.6.2 to bioconductor package r-ggtree
* add version 2.8.0 to bioconductor package r-glimma
* add version 1.10.0 to bioconductor package r-glmgampoi
* add version 5.52.0 to bioconductor package r-globaltest
* update r-go-db
* add version 1.18.0 to bioconductor package r-gofuncr
* add version 2.24.0 to bioconductor package r-gosemsim
* add version 1.50.0 to bioconductor package r-goseq
* add version 2.64.0 to bioconductor package r-gostats
* add version 1.76.0 to bioconductor package r-graph
* add version 1.60.0 to bioconductor package r-gseabase
* add version 1.30.0 to bioconductor package r-gtrellis
* add version 1.42.0 to bioconductor package r-gviz
* add version 1.26.0 to bioconductor package r-hdf5array
* add version 1.70.0 to bioconductor package r-hypergraph
* add version 1.34.0 to bioconductor package r-illumina450probevariants-db
* add version 0.40.0 to bioconductor package r-illuminaio
* add version 1.72.0 to bioconductor package r-impute
* add version 1.36.0 to bioconductor package r-interactivedisplaybase
* add version 2.32.0 to bioconductor package r-iranges
* add version 1.58.0 to bioconductor package r-kegggraph
* add version 1.38.0 to bioconductor package r-keggrest
* add version 3.54.0 to bioconductor package r-limma
* add version 2.50.0 to bioconductor package r-lumi
* add version 1.74.0 to bioconductor package r-makecdfenv
* add version 1.76.0 to bioconductor package r-marray
* add version 1.10.0 to bioconductor package r-matrixgenerics
* add version 1.6.0 to bioconductor package r-metapod
* add version 2.44.0 to bioconductor package r-methylumi
* add version 1.44.0 to bioconductor package r-minfi
* add version 1.32.0 to bioconductor package r-missmethyl
* add version 1.78.0 to bioconductor package r-mlinterfaces
* add version 1.10.0 to bioconductor package r-mscoreutils
* add version 2.24.0 to bioconductor package r-msnbase
* add version 2.54.0 to bioconductor package r-multtest
* add version 1.36.0 to bioconductor package r-mzid
* add version 2.32.0 to bioconductor package r-mzr
* add version 1.60.0 to bioconductor package r-oligoclasses
* update r-org-hs-eg-db
* add version 1.40.0 to bioconductor package r-organismdbi
* add version 1.38.0 to bioconductor package r-pathview
* add version 1.90.0 to bioconductor package r-pcamethods
* update r-pfam-db
* add version 1.42.0 to bioconductor package r-phyloseq
* add version 1.60.0 to bioconductor package r-preprocesscore
* add version 1.30.0 to bioconductor package r-protgenerics
* add version 1.32.0 to bioconductor package r-quantro
* add version 2.30.0 to bioconductor package r-qvalue
* add version 1.74.0 to bioconductor package r-rbgl
* add version 2.38.0 to bioconductor package r-reportingtools
* add version 2.42.0 to bioconductor package r-rgraphviz
* add version 2.42.0 to bioconductor package r-rhdf5
* add version 1.10.0 to bioconductor package r-rhdf5filters
* add version 1.20.0 to bioconductor package r-rhdf5lib
* add version 2.0.0 to bioconductor package r-rhtslib
* add version 1.74.0 to bioconductor package r-roc
* add version 1.26.0 to bioconductor package r-rots
* add version 2.14.0 to bioconductor package r-rsamtools
* add version 1.58.0 to bioconductor package r-rtracklayer
* add version 0.36.0 to bioconductor package r-s4vectors
* add version 1.6.0 to bioconductor package r-scaledmatrix
* add version 1.26.0 to bioconductor package r-scater
* add version 1.12.0 to bioconductor package r-scdblfinder
* add version 1.26.0 to bioconductor package r-scran
* add version 1.8.0 to bioconductor package r-scuttle
* add version 1.64.0 to bioconductor package r-seqlogo
* add version 1.56.0 to bioconductor package r-shortread
* add version 1.72.0 to bioconductor package r-siggenes
* add version 1.20.0 to bioconductor package r-singlecellexperiment
* add version 1.32.0 to bioconductor package r-snprelate
* add version 1.48.0 to bioconductor package r-snpstats
* add version 2.34.0 to bioconductor package r-somaticsignatures
* add version 1.10.0 to bioconductor package r-sparsematrixstats
* add version 1.38.0 to bioconductor package r-spem
* add version 1.36.0 to bioconductor package r-sseq
* add version 1.28.0 to bioconductor package r-summarizedexperiment
* add version 3.46.0 to bioconductor package r-sva
* add version 1.36.0 to bioconductor package r-tfbstools
* add version 1.20.0 to bioconductor package r-tmixclust
* add version 2.50.0 to bioconductor package r-topgo
* add version 1.22.0 to bioconductor package r-treeio
* add version 1.26.0 to bioconductor package r-tximport
* add version 1.26.0 to bioconductor package r-tximportdata
* add version 1.44.0 to bioconductor package r-variantannotation
* add version 3.66.0 to bioconductor package r-vsn
* add version 2.4.0 to bioconductor package r-watermelon
* add version 2.44.0 to bioconductor package r-xde
* add version 1.56.0 to bioconductor package r-xmapbridge
* add version 0.38.0 to bioconductor package r-xvector
* add version 1.24.0 to bioconductor package r-yapsa
* add version 1.24.0 to bioconductor package r-yarn
* add version 1.44.0 to bioconductor package r-zlibbioc
* make version resource consistent for r-bsgenome-hsapiens-ucsc-hg19
* make version resource consistent for r-go-db
* make version resource consistent for r-kegg-db
* make version resource consistent for r-org-hs-eg-db
* make version resource consistent for r-pfam-db
* new package: r-ggrastr
* Patches not needed for new version
* new package: r-hdo-db
* new package: r-ggnewscale
* new package: r-gson
* Actually depends on ggplot2@3.4.0:
* Fix formatting of r-hdo-db
* Fix dependency version specifiers
* Clean up duplicate dependency references
2022-11-17 14:04:45 -08:00
Erik Heeren
13389f7eb8 glib: fix URLs (#33919) 2022-11-17 13:58:07 -07:00
Adam J. Stewart
4964633614 py-tensorflow: add patch releases, remove v0.X (#33963) 2022-11-17 14:29:48 -06:00
Jared Popelar
381bedf369 Hdf5 package: build on Windows (#31141)
* Enable hdf5 build (including +mpi) on Windows
* This includes updates to hdf5 dependencies openssl (minor edit) and
  bzip2 (more-extensive edits)
* Add binary-based installation of msmpi (this is currently the only
  supported MPI implementation in Spack for Windows). Note that this
  does not install to the Spack-specified prefix. This implementation
  will be replaced with a source-based implementation

Co-authored-by: John Parent <john.parent@kitware.com>
2022-11-17 10:40:53 -08:00
John W. Parent
6811651a0f Update CMake version to 3.25.0 (#33957)
CMake had official release 3.25.0, update package version to reflect

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2022-11-17 10:58:38 -07:00
Chris Green
22aada0e20 Waf build system: fix typo in legacy_attributes (#33958)
Fix erroneous duplication of `build_time_test_callbacks` in
`legacy_attributes`: one of the duplicates should be
`install_time_test_callbacks`
2022-11-17 16:54:46 +01:00
Massimiliano Culpo
4a71020cd2 Python: do not set PYTHONHOME during build (#33956)
Setting PYTHONHOME is rarely needed (since each interpreter has
various ways of setting it automatically) and very often it is
difficult to get right manually.

For instance, the change done to set PYTHONHOME to
sysconfig["base_prefix"] broke bootstrapping dev dependencies
of Spack for me, when working inside a virtual environment in Linux.
2022-11-17 15:41:50 +01:00
Adam J. Stewart
294e6f80a0 py-rasterio: add v1.3.4 (#33961) 2022-11-17 15:23:26 +01:00
Harmen Stoppels
cc2d0eade6 docs: fix typo in multiple build systems (#33965) 2022-11-17 15:20:10 +01:00
Harmen Stoppels
f00e411287 relocate.py: small refactor for file_is_relocatable (#33967) 2022-11-17 13:21:27 +01:00
Massimiliano Culpo
da0a6280ac Remove deprecated subcommands from "spack bootstrap" (#33964)
These commands are slated for removal in v0.20
2022-11-17 12:42:57 +01:00
Ashwin Kumar
6ee6844473 Octopus : Separate serial and MPI dependencies (#33836)
* replace mpi as a variant instead of dependency 
* separate serial and MPI dependencies
* configure args depending on serial or mpi variant
* reformat with black
2022-11-17 04:34:03 -07:00
Adam J. Stewart
69822b0d82 py-torchmetrics: add v0.10.3 (#33962) 2022-11-17 11:18:57 +01:00
Michael Kuhn
93eecae0c3 Add sgid notice when running on AFS (#30247) 2022-11-17 09:17:41 +01:00
Massimiliano Culpo
61f5d85525 Python: fix bug detection, trying to access self (#33955)
Typo introduced in #33847
2022-11-17 08:38:49 +01:00
Ben Boeckel
a90e86de75 zlib, openssl: return to http URLs (#33324)
In #3113, `https` was removed to ensure that `curl` can be bootstrapped
without SSL being present. This was lost in #25672 which aimed to use
`https` where possible.

Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2022-11-16 22:25:55 -07:00
Stephen Sachs
7247a493ab [xz] icc does not support attribute __symver__ (#33839)
xz have added attribute __symver__ for compilers that identify as GCC>=10.0 via
__GNUC__. Intels `icc` sets __GNUC__ but currently does not support this
attribute:
https://community.intel.com/t5/Intel-C-Compiler/symver-not-supported/m-p/1429028/emcs_t/S2h8ZW1haWx8dG9waWNfc3Vic2NyaXB0aW9ufExBQVRWMjIyUFFZTlZTfDE0MjkwMjh8U1VCU0NSSVBUSU9OU3xoSw#M40459
2022-11-16 20:06:41 -07:00
Sergey Kosukhin
cd8ec60ae9 serialbox: update patch to handle UTF-8 conversion errors (#33317) 2022-11-16 20:06:28 -07:00
Manuela Kuhn
fe597dfb0c py-jupyter-server: add 1.21.0 (#33310) 2022-11-16 20:02:20 -07:00
Brian Vanderwende
c721aab006 lib/spack/spack/store.py: Fix #28170 for padding relocation (#33122) 2022-11-17 03:56:00 +01:00
Manuela Kuhn
6a08e9ed08 py-jupyterlab: add 3.4.8 (#33308) 2022-11-16 19:53:59 -07:00
Christian Kniep
7637efb363 blast-plus: update to 2.13.0 and add cpio as build dependency (#33187) 2022-11-17 03:42:25 +01:00
Sebastian Grabowski
b31f1b0353 * ninja: Set min. required version of re2c dependency, fixes #33127 (#33128)
Reviewed-by: haampie, bernhardkaindl
2022-11-17 03:28:06 +01:00
Jonathon Anderson
497682260f gettext: On ppc64le, for older versions, use system cdefs.h (#33411)
Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2022-11-17 02:55:02 +01:00
Massimiliano Culpo
e47beceb8a Clean unit-test workflow file (#33945)
Delete statements related to Python 2.7, and avoid installing
patchelf since now we can bootstrap it.
2022-11-16 23:28:49 +01:00
chenwany
067976f4b8 updated v2.11.8 (#33944) 2022-11-16 13:04:15 -08:00
Greg Becker
1263b5c444 initial implementation of slingshot detection (#33793) 2022-11-16 13:01:37 -08:00
psakievich
90f0a8eacc Upstreams: add canonicalize path (#33946) 2022-11-16 14:37:32 -06:00
John W. Parent
61a7420c94 Windows bootstrapping: remove unneeded call to add dll to PATH (#33622)
#32942 fixed bootstrapping on Windows by having the core Spack
code explicitly add the Clingo package bin/ directory as a
DLL path.

Since then, #33400 has been merged, which ensures that the Python
module installed by the Spack `clingo` package can find the DLLs
in bin/.

Note that this only works for Spack instances which have been
bootstrapped after #33400: for installations bootstrapped before
then, you will need to run `spack clean -b` (this would only
be needed for Spack instances running on Windows).
2022-11-16 12:04:57 -08:00
Stephen Sachs
39a1f1462b SIP build system: fix "python not defined in builder" (#33906)
Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-11-16 13:36:25 -06:00
Wouter Deconinck
6de5d8e68c qt: new version 5.15.6 and 5.15.7 (#33933) 2022-11-16 11:35:01 -07:00
Robert Underwood
b0f2523350 add sz3 and mdz smoke test for inclusion in e4s (#33864)
* add sz3 and mdz smoke test

Co-authored-by: Robert Underwood <runderwood@anl.gov>
2022-11-16 10:05:43 -08:00
snehring
bc8cc39871 py-isal: use external libisal (#33932)
* py-isal: adding some missing build deps

* py-isal: use external libisal
2022-11-16 10:58:15 -07:00
Pat Riehecky
b36a8f4f2e New Package: rarpd (#28686) 2022-11-16 08:29:58 -07:00
Harmen Stoppels
0a952f8b7b docs updates for spack env depfile (#33937) 2022-11-16 15:47:31 +01:00
Matthias Wolf
26a0384171 neovim: fix build dependencies (#33935)
Buildin neovim@0.8.0 complains (for me) about Lua's lpeg and mpack
packages not being available at build time. Removing the link-only
setting in the dependencies for these two packages fixes the build for
me.
2022-11-16 07:30:08 -07:00
Harmen Stoppels
d18cccf7c5 spack env depfile in Gitlab CI should use install-deps/pkg-version-hash target (#33936) 2022-11-16 14:02:56 +00:00
Kevin Broch
fbe6b4b486 Change code suggestions to output black formatter compliant code (#33931) 2022-11-16 12:08:20 +01:00
Nathalie Furmento
5fe08a5647 starpu: add v1.3.10 (#33934) 2022-11-16 12:04:31 +01:00
Vanessasaurus
ac2fc4f271 Automated deployment to update package flux-core 2022-11-09 (#33780)
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
2022-11-16 11:58:51 +01:00
Adam J. Stewart
93430496e2 Getting Started: Python 2 is no longer supported (#33927) 2022-11-16 08:36:49 +01:00
Michael Kuhn
901b31a7aa docs: fix typo (#33926) 2022-11-15 16:06:12 -08:00
Garrett Morrison
0cec2d3110 zfp: update for version 1.0.0 (#33452)
* zfp: updates and many fixes for version 1.0.0

Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2022-11-15 16:21:57 -07:00
Satish Balay
40e4884e8b xsdk: add version @0.8.0 (#33794)
- enable sundials+magma+ginkgo
- enable dealii+sundials
- disable dealii~cgal due to build errors
- enable petsc+rocm
- enable slepc+cuda+rocm
- enable strumpack+cuda+slate
- enable slate build with non-gcc compilers
- enable pumi+shared
- enable mfem+shared
- enable ginkgo+mpi
- add hiop
- and exago
  - use exago~ipopt due to mumps~mpi conflict with mpi.h)
  - add raja variant [used by exago/hiop]
    ~raja builds exago in pflow-only mode - i.e exago~hiop~ipopt~python~cuda ^hiop~cuda [Default on MacOS]

Co-authored-by: Cody Balos <balos1@llnl.gov>
2022-11-15 16:52:58 -06:00
Jean-Luc Fattebert
f18425a51f Update BML versions list in package.py (#33920)
* Update BML versions list in package.py
* Update package.py
2022-11-15 14:08:10 -08:00
Massimiliano Culpo
472893c5c4 Run Python 3.6 unit tests on ubuntu-20.04 (#33918) 2022-11-15 22:33:11 +01:00
SXS Bot
289bbf74f6 spectre: add v2022.11.15 (#33921)
Co-authored-by: sxs-bot <sxs-bot@users.noreply.github.com>
2022-11-15 13:05:02 -08:00
Harmen Stoppels
a0182c069f Show time per phase (#33874) 2022-11-15 21:10:07 +01:00
Erik Schnetter
4ecb6ecaff meson: add new version 0.64.0 (#33880) 2022-11-15 12:42:11 -07:00
Saqib Khan
d5193f73d8 New Package: Prime95/Mprime (#33895)
* New Package: Prime95/Mprime
* Fix trailing whitespaces in prime95
* Fix checksum for prime95

Signed-off-by: saqibkh <saqibkhan@utexas.edu>
2022-11-15 11:39:02 -08:00
Brent Huisman
1aab5bb9f2 Add v0.8 to Arbor (#33916) 2022-11-15 12:57:29 -06:00
Erik Schnetter
8dda4ff60b nsimd: Update Python requirements (#33879)
We need Python 3.0:3.9
2022-11-15 10:05:14 -08:00
iarspider
0811f81a09 thepeg: make rivet dependency optional... (#33912)
* thepeg: make rivet dependency optional...
* add "libs" variant, move compiler flags to flag_handler

Co-authored-by: iarspider <iarspider@users.noreply.github.com>
2022-11-15 09:36:15 -08:00
Harmen Stoppels
af74680405 depfile: improve tab completion (#33773)
This PR allows you to do:

```
spack env create -d .
spack -e . add python
spack -e . concretize
spack -e . env depfile -o Makefile

make in<tab>              # -> install
make install-<tab>        # -> install-deps/
make install-deps/py<tab> # -> install-deps/python-x.y.z-hash
make install/zl<tab>      # -> install/zlib-x.y.z-hash

make SP<tab>              # -> make SPACK
make SPACK_<tab>          # -> make SPACK_INSTALL_FLAGS=
```
2022-11-15 18:03:17 +01:00
Harmen Stoppels
d1715c5fdf Fixup: start the timer before the phase (#33917) 2022-11-15 16:52:43 +01:00
Harmen Stoppels
b245f1ece1 Fix incorrect timer (#33900)
Revamp the timer so we always have a designated begin and end.

Fix a bug where the phase timer was stopped before the phase started,
resulting in incorrect timing reports in timers.json.
2022-11-15 16:33:47 +01:00
Harmen Stoppels
e10c47c53d glib: add missing libelf dep (#33894) 2022-11-15 07:18:10 -07:00
Harmen Stoppels
0697d20fd4 openssh: add libxcrypt (#33892) 2022-11-15 06:58:12 -07:00
Brian Van Essen
fd4f905ce5 External find now searches all dynamic linker paths (#33800)
Add spack.ld_so_conf.host_dynamic_linker_search_paths

Retrieve the current host runtime search paths for shared libraries;
for GNU and musl Linux we try to retrieve the dynamic linker from the
current Python interpreter and then find the corresponding config file
(e.g. ld.so.conf or ld-musl-<arch>.path). Similar can be done for
BSD and others, but this is not implemented yet. The default paths
are always returned. We don't check if the listed directories exist.

Use this in spack external find for libraries.

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2022-11-15 14:48:15 +01:00
Harmen Stoppels
d36c7b20d2 python: missing libxcrypt dep (#33847)
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-11-15 14:36:16 +01:00
Harmen Stoppels
2948248d7a Remove exit(0) (#33896)
Since they cause --backtrace to report backtraces even with exit code 0
2022-11-15 14:35:44 +01:00
Jonathon Anderson
850c54c3b1 Revert "fix perl libxcrypt.so dep (#33846)" (#33909)
This reverts commit bf1b2a828c, as libxcrypt's configure script requires Perl, leading to a circular dependency.
2022-11-15 14:04:31 +01:00
Harmen Stoppels
90fb16033e gitlab: report load in generate job (#33888) 2022-11-15 13:21:21 +01:00
Matthieu Dorier
13a68d547d mochi-margo: add v0.11 (#33910) 2022-11-15 13:19:18 +01:00
Massimiliano Culpo
857ae5a74b fixup 2022-11-15 12:42:48 +01:00
Massimiliano Culpo
b3124bff7c Stop using six in Spack (#33905)
Since we dropped support for Python 2.7, there's no need
so use `six` anymore. We still need to vendor it until
we update our vendored dependencies.
2022-11-15 10:07:54 +01:00
Scott Wittenburg
5c4137baf1 gitlab: Add shared PR mirror to places pipelines look for binaries. (#33746)
While binaries built for PRs that get merged must still be rebuilt
in develop pipelines, they can be used by other PRs that find they
would otherwise need to rebuild them.  Now that spackbot is
managing copying PR binaries from merged PRs into a shared location,
keeping it pruned to a reasonable size, and making sure the indices
are up to date, spack can use these mirrors as a potential source
of binaries.
2022-11-14 19:37:23 -07:00
Stephen Sachs
a9dcd4c01e [py-pmw-patched] needs setuptools to build (#33902)
Error message:
```
ModuleNotFoundError: No module named 'setuptools'
```

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-11-14 18:11:23 -06:00
Harmen Stoppels
2cd7322b11 swig: needs zlib (#33890) 2022-11-14 13:22:12 -07:00
Terry Cojean
f9e9ecd0c1 Ginkgo 1.5.0 version, new MPI variant, related fixes (#33838)
* Ginkgo 1.5.0 release, new MPI variant

* Fix ROCTHRUST/ROCPRIM issues

* Fix deal.II issue with Ginkgo 1.5.0

* Also fix hipRAND+rocRAND RPATH settings

* Turn off CCACHE for spack builds.

Co-authored-by: Veselin Dobrev <dobrev@llnl.gov>

Co-authored-by: Veselin Dobrev <dobrev@llnl.gov>
2022-11-14 12:33:11 -06:00
Veselin Dobrev
d756034161 Alquimia: tweak for building xsdk v0.8.0 with ROCm/HIP (#33881) 2022-11-14 12:15:50 -06:00
psakievich
2460c4fc28 Add $date option to the list of config variables (#33875)
I'm finding I often want the date in my paths and it would be nice if spack had a config variable for this.

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-11-14 10:13:30 -08:00
Cory Bloor
6e39efbb9a rocm: add all GFX9, GFX10 and GFX11 amdgpu_targets (#33871)
This change adds all documented AMDGPU processors from GFX9 through GFX11 and sorts the list.
2022-11-14 10:11:22 -08:00
Satish Balay
277e35c3b0 superlu-dist: add version 8.1.2 (#33868) 2022-11-14 10:09:55 -08:00
Harmen Stoppels
bf1b2a828c fix perl libxcrypt.so dep (#33846)
Detected using https://github.com/spack/spack/pull/28109
2022-11-14 18:56:43 +01:00
Dom Heinzeller
2913f8b42b hdf4: fix build on Apple M1 (#33740) 2022-11-14 17:49:34 +01:00
Harmen Stoppels
57f4c922e9 util-linux: fix deps (#33893) 2022-11-14 17:26:21 +01:00
Todd Gamblin
8d82fecce9 Update CHANGELOG.md for v0.19.0
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2022-11-14 08:22:29 -06:00
Todd Gamblin
96126cbf17 Update SECURITY.md for v0.19 2022-11-14 08:22:29 -06:00
Todd Gamblin
6ecb57e91f Bump version to v0.20.0.dev0 2022-11-14 08:22:29 -06:00
Harmen Stoppels
a75af62fe3 Get rid of context for exceptions outside PackageBase (#33887) 2022-11-14 14:11:22 +01:00
Massimiliano Culpo
e4e02dbeae Fix a bug/typo in a config_values.py fixture (#33886) 2022-11-14 05:26:14 -07:00
Massimiliano Culpo
3efa4ee26f Remove support for running with Python 2.7 (#33063)
* Remove CI jobs related to Python 2.7

* Remove Python 2.7 specific code from Spack core

* Remove externals for Python 2 only

* Remove llnl.util.compat
2022-11-14 13:11:28 +01:00
Harmen Stoppels
f4c3d98064 libxcrypt: 4.4.31 (#33885) 2022-11-14 04:30:04 -07:00
Harmen Stoppels
a4cec82841 Speed up traverse unit tests (#33840) 2022-11-14 09:34:14 +01:00
Veselin Dobrev
3812edd0db [plasma] add support for building with 'cray-libsci' (#33869) 2022-11-13 21:47:24 -06:00
Harmen Stoppels
3ea9c8529a tau: checksum (#33873) 2022-11-13 13:06:08 -07:00
Adam J. Stewart
ed28797f83 GDAL: add v3.6.0 (#33856)
* GDAL: add v3.6.0

* Explicitly control BASISU

* More reasonable variant defaults
2022-11-13 13:56:11 -06:00
Adam J. Stewart
eadb6ae774 py-pytorch-lightning: add v1.8.1 (#33854) 2022-11-13 11:45:23 -08:00
Veselin Dobrev
a5d35c3077 [sundials] fix cmake argument generation for '+magma' (#33858)
[dealii] force cmake to accept Scalapack settings from Spack
2022-11-13 09:50:57 -06:00
Todd Gamblin
3d811617e6 hotfix: ensure that schema is compatible with tutorial VM config
We added a hotfix to releases/v0.19 with a feature flag, but the flag
is incompatible with the config schema on `develop`.

- [x] Ensure schema is compatible on develop even though config option is unused.
2022-11-13 09:14:00 -06:00
Massimiliano Culpo
03224e52d2 Speed-up bootstrap and architecture unit tests (#33865)
* Speed-up bootstrap mirror unit test

The unit test doesn't need to concretize, since it checks
only metadata for the mirror.

* architecture.py: use "default_mock_concretization" for slow test
2022-11-13 13:09:22 +01:00
Greg Becker
4ebe57cd64 update tutorial command to newest release branch (#33867) 2022-11-12 13:29:38 -08:00
Greg Becker
343cd04a54 use spack.version_info as source of version truth for spack tutorial command (#33860)
* Use spack.spack_version_info as source of truth

Co-authored-by: Todd Gamblin <gamblin2@llnl.gov>
2022-11-12 11:42:59 -08:00
Morten Kristensen
ed45385b7b py-vermin: add latest version 1.5.1 (#33861) 2022-11-12 10:31:23 -06:00
Cameron Rutherford
8a3b596042 Update ExaGO for 1.5.0 release. (#33853)
* Update ExaGO for 1.5.0 release
2022-11-11 21:58:56 -06:00
Satish Balay
1792327874 magma: add version 2.7.0 (#33814)
* magma: add version 2.7.0

Co-authored-by: Stan Tomov <tomov@icl.utk.edu>
2022-11-11 21:58:02 -06:00
Veselin Dobrev
d0dedda9a9 [mfem] add a patch to fix some issues with building with ROCm (#33810) 2022-11-11 14:42:42 -08:00
Harmen Stoppels
368dde437a libxcrypt: 4.4.30 (#33845)
* libxcrypt: 4.4.30

* libxcrypt.so.2 by default

* add libs prop, since libxcrypt provides libcrypt
2022-11-11 15:22:17 -06:00
Massimiliano Culpo
022a2d2eaf Speed-up unit tests by caching default mock concretization (#33755) 2022-11-11 21:32:40 +01:00
kwryankrattiger
5f8511311c ParaView: Add variant for VisItBridge (#33783)
* ParaView: Add variant for VisItBridge

* ParaView: Add kwryankrattiger has package maintainer
2022-11-11 13:09:43 -07:00
Greg Becker
2d2c591633 ensure view projections for extensions always point to extendee (#33848) 2022-11-11 10:59:23 -07:00
Satish Balay
d49c992b23 xsdk: update maintainers (#33822) 2022-11-11 08:30:28 -06:00
Satish Balay
f1392bbd49 trilinos: add version 13.4.1 (#33533)
And update dependency on superlu-dist (now works with @8)
2022-11-11 09:28:47 -05:00
Harmen Stoppels
c14dc2f56a docs: updates related to extensions (#33837) 2022-11-11 13:24:17 +01:00
Harmen Stoppels
0f54a63dfd remove activate/deactivate support in favor of environments (#29317)
Environments and environment views have taken over the role of `spack activate/deactivate`, and we should deprecate these commands for several reasons:

- Global activation is a really poor idea:
   - Install prefixes should be immutable; since they can have multiple, unrelated dependents; see below
   - Added complexity elsewhere: verification of installations, tarballs for build caches, creation of environment views of packages with unrelated extensions "globally activated"... by removing the feature, it gets easier for people to contribute, and we'd end up with fewer bugs due to edge cases.
- Environment accomplish the same thing for non-global "activation" i.e. `spack view`, but better.

Also we write in the docs:

```
However, Spack global activations have two potential drawbacks:

#. Activated packages that involve compiled C extensions may still
   need their dependencies to be loaded manually.  For example,
   ``spack load openblas`` might be required to make ``py-numpy``
   work.

#. Global activations "break" a core feature of Spack, which is that
   multiple versions of a package can co-exist side-by-side.  For example,
   suppose you wish to run a Python package in two different
   environments but the same basic Python --- one with
   ``py-numpy@1.7`` and one with ``py-numpy@1.8``.  Spack extensions
   will not support this potential debugging use case.
```

Now that environments are established and views can take over the role of activation
non-destructively, we can remove global activation/deactivation.
2022-11-11 00:50:07 -08:00
Greg Becker
f11778bb02 remove deprecated top-level module config (#33828)
* remove deprecated top-level module config per deprecation in 0.18
2022-11-10 23:35:33 -08:00
Brian Van Essen
3437926cde Fixed a bug where the external HIP library is found in a nested directory, even on newer releases of ROCm. (#33772) 2022-11-10 23:32:55 -08:00
Pranith
d25375da55 emacs: Add version 28.2 (#33255) 2022-11-11 04:07:11 +01:00
Yang Zongze
0b302034df global: add --with-ncurses with prefix to configure (#33136) 2022-11-11 03:40:03 +01:00
Seth R. Johnson
b9f69a8dfa go-bootstrap: improve error message for Monterey (#31800)
Co-authored-by: Seth R. Johnson <johnsonsr@ornl.gov>
2022-11-11 02:22:37 +01:00
Loïc Pottier
c3e9aeeed0 redis-plus-plus: added initial support (#33803)
* redis-plus-plus: added initial support
* redis-plus-plus: use cmake arg provided by Spack
* redis-plus-plus: oups tiny typo

Signed-off-by: Loïc Pottier <pottier1@llnl.gov>
Signed-off-by: Loïc Pottier <lpottier@arnor>
Co-authored-by: Loïc Pottier <lpottier@arnor>
2022-11-10 17:19:45 -08:00
Greg Becker
277234c044 remove deprecated concretization environment key (#33774) 2022-11-11 00:11:52 +00:00
Harmen Stoppels
0077a25639 Use bfs order in spack find --deps tree (#33782)
* Use bfs order in spack find --deps tree
* fix printing tests
2022-11-10 15:39:07 -08:00
Massimiliano Culpo
6a3e20023e Delete directory with vestigial configuration file (#33825) 2022-11-11 00:10:29 +01:00
MatthewLieber
f92987b11f adding sha for 7.0 release (#33823)
Co-authored-by: Matthew Lieber <lieber.31@osu.edu>
2022-11-10 14:24:05 -08:00
Satish Balay
61f198e8af xsdk: deprecate 0.6.0, and remove older deprecated releases (#33815)
xsdk-examples: deprecate @0.2.0, remove @0.1.0 in sync with older xsdk releases
2022-11-10 14:16:17 -08:00
Glenn Johnson
4d90d663a3 Cran updates (#33819)
* add version 1.7-20 to r-ade4
* add version 1.1-13 to r-adephylo
* add version 0.3-20 to r-adespatial
* add version 1.2-0 to r-afex
* add version 0.8-19 to r-amap
* add version 0.1.8 to r-aplot
* add version 2.0.8 to r-biasedurn
* add version 2.4-4 to r-bio3d
* add version 1.30.19 to r-biocmanager
* add version 1.2-9 to r-brobdingnag
* add version 0.4.1 to r-bslib
* add version 3.7.3 to r-callr
* add version 3.1-1 to r-car
* add version 0.3-62 to r-clue
* add version 1.2.0 to r-colourpicker
* add version 1.8.1 to r-commonmark
* add version 0.4.3 to r-cpp11
* add version 1.14.4 to r-data-table
* add version 1.34 to r-desolve
* add version 2.4.5 to r-devtools
* add version 0.6.30 to r-digest
* add version 0.26 to r-dt
* add version 1.7-12 to r-e1071
* add version 1.8.2 to r-emmeans
* add version 1.1.16 to r-exomedepth
* add version 0.1-8 to r-expint
* add version 0.4.0 to r-fontawesome
* add version 1.5-2 to r-fracdiff
* add version 1.10.0 to r-future-apply
* add version 3.0.1 to r-ggmap
* add version 3.4.0 to r-ggplot2
* add version 2.1.0 to r-ggraph
* add version 0.6.4 to r-ggsignif
* add version 0.6-7 to r-gmp
* add version 2022.10-2 to r-gparotation
* add version 0.8.3 to r-graphlayouts
* add version 1.8.8 to r-grbase
* add version 2.1-0 to r-gstat
* add version 0.18.6 to r-insight
* add version 1.3.1 to r-irkernel
* add version 1.8.3 to r-jsonlite
* add version 1.7.0 to r-lava
* add version 1.1-31 to r-lme4
* add version 5.6.17 to r-lpsolve
* add version 5.5.2.0-17.9 to r-lpsolveapi
* add version 1.2.9 to r-mapproj
* add version 3.4.1 to r-maps
* add version 1.1-5 to r-maptools
* add version 1.3 to r-markdown
* add version 6.0.0 to r-mclust
* add version 4.2-2 to r-memuse
* add version 1.8-41 to r-mgcv
* add version 1.2.5 to r-minqa
* add version 0.3.7 to r-nanotime
* add version 2.4.1.1 to r-nfactors
* add version 3.1-160 to r-nlme
* add version 2.7-1 to r-nmof
* add version 0.60-16 to r-np
* add version 2.0.4 to r-openssl
* add version 4.2.5.1 to r-openxlsx
* add version 0.3-8 to r-pbdzmq
* add version 2.0-3 to r-pcapp
* add version 0.7.0 to r-philentropy
* add version 2.0.3 to r-pkgcache
* add version 1.3.1 to r-pkgload
* add version 1.10-4 to r-polyclip
* add version 3.8.0 to r-processx
* add version 1.7.2 to r-ps
* add version 2.12.1 to r-r-utils
* add version 1.2.4 to r-ragg
* add version 3.7 to r-rainbow
* add version 0.0.20 to r-rcppannoy
* add version 0.3.3.9.3 to r-rcppeigen
* add version 0.3.12 to r-rcppgsl
* add version 1.0.2 to r-recipes
* add version 1.1.10 to r-rmutil
* add version 0.10.24 to r-rmysql
* add version 2.4.8 to r-rnexml
* add version 4.1.19 to r-rpart
* add version 1.7-2 to r-rrcov
* add version 0.8.28 to r-rsconnect
* add version 0.25 to r-servr
* add version 1.7.3 to r-shiny
* add version 3.0-0 to r-spatstat-data
* add version 3.0-3 to r-spatstat-geom
* add version 3.0-1 to r-spatstat-random
* add version 3.0-0 to r-spatstat-sparse
* add version 3.0-1 to r-spatstat-utils
* add version 1.8.0 to r-styler
* add version 3.4.1 to r-sys
* add version 1.5-2 to r-tclust
* add version 0.0.9 to r-tfmpvalue
* add version 1.2.0 to r-tidyselect
* add version 0.10-52 to r-tseries
* add version 4.2.2 to r-v8
* add version 0.5.0 to r-vctrs
* add version 2.6-4 to r-vegan
* add version 0.7.0 to r-wk
* add version 0.34 to r-xfun
* add version 1.0.6 to r-xlconnect
* add version 3.99-0.12 to r-xml
* add version 0.12.2 to r-xts
* add version 1.0-33 to r-yaimpute
* add version 2.3.6 to r-yaml
* add version 2.2.2 to r-zip
* add version 2.2-7 to r-deoptim
* add version 4.3.1 to r-ergm
* add version 0.18 to r-evaluate
* add version 1.29.0 to r-future
* add version 0.0.8 to r-ggfun
* add version 0.9.2 to r-ggrepel
* add version 1.9.0 to r-lubridate
* add version 4.10.1 to r-plotly
* add version 0.2.12 to r-rcppcctz
* add version 1.2 to r-rook
* add version 1.6-1 to r-segmented
* add version 4.2.1 to r-seurat
* add version 4.1.3 to r-seuratobject
* add version 1.0-9 to r-sf
* add version 1.5-1 to r-sp
* add version 1.8.1 to r-styler
* new package: r-timechange
* new package: r-stars
* new package: r-sftime
* new package: r-spatstat-explore

Co-authored-by: glennpj <glennpj@users.noreply.github.com>
2022-11-10 12:06:13 -07:00
Rémi Lacroix
7a7e9eb04f pandoc: add version 2.19.2 (#33811) 2022-11-10 10:47:28 -08:00
Chris White
3ea4b53bf6 add utilities and examples variants to conduit (#33804) 2022-11-10 11:05:24 -07:00
Olivier Cessenat
ad0d908d8d octave: new version 7.3.0 (#33788) 2022-11-10 09:42:00 -08:00
Harmen Stoppels
9a793fe01b gcc: drop target bootstrap flags for aarch64 (#33813)
See https://github.com/spack/spack/issues/31184

GCC bootstrap logic adds `-mpcu` for libatomic (iirc), which conflicts
with the `-march` flag we provide.
2022-11-10 17:42:45 +01:00
Dave Love
6dd3c78924 elpa: Fix build on ppc64le (#33639) 2022-11-10 14:51:17 +01:00
Axel Huebl
5b080d63fb pybind11: v2.10.1 (#33645)
Add the latest release of pybind11:
  https://github.com/pybind/pybind11/releases/tag/v2.10.1
2022-11-10 05:01:57 -07:00
Adam J. Stewart
ea8e3c27a4 py-einops: add v0.6.0 (#33799)
Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2022-11-10 11:54:14 +01:00
iarspider
30ffd6d33e dcap: add variant ~plugins: Disables the build of plugins (#33524) 2022-11-10 11:20:32 +01:00
iarspider
c1aec72f60 cpu-features: Add variant to enable BUILD_SHARED_LIBS=True (#33809)
* Allow building shared libraries for cpu-features
2022-11-10 11:14:52 +01:00
Massimiliano Culpo
cfd0dc6d89 spack location: fix attribute lookup after multiple build systems (#33791)
fixes #33785
2022-11-10 01:53:59 -07:00
Satish Balay
60b3d32072 py-mpi4py: add version 3.1.4 (#33805) 2022-11-09 23:33:56 -07:00
Glenn Johnson
5142ebdd57 udunits: Add libs property to recipe to find libudunits2 (#33764) 2022-11-10 01:43:20 +01:00
Harmen Stoppels
6b782e6d7e ucx: fix int overflow: use ssize_t (#33784) 2022-11-10 01:18:22 +01:00
Saqib Khan
168bced888 New Package: stressapptest (#33736)
Signed-off-by: saqibkh <saqibkhan@utexas.edu>
2022-11-10 01:11:46 +01:00
Saqib Khan
489de38890 New Package: y-cruncher (#33754)
y-cruncher is a program that can compute Pi and
other constants to trillions of digits.

Signed-off-by: saqibkh <saqibkhan@utexas.edu>
2022-11-10 00:50:54 +01:00
Robert Underwood
2a20520cc8 updates and fixes for libpressio (#33789)
* updates and fixes for libpressio

* differentiate between standalone and build tests

* add e4s tags

Co-authored-by: Robert Underwood <runderwood@anl.gov>
2022-11-09 16:22:58 -07:00
Jean Luca Bez
ae6213b193 New package: py-darshan (#33430)
* include py-darshan

* include requested changes

* fix required versions

* fix style

* fix style

* Update package.py

* Update var/spack/repos/builtin/packages/py-darshan/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-11-09 16:44:45 -06:00
Chris White
bb1cd430c0 always use the cxx compiler as a host compiler (#33771) 2022-11-09 13:22:43 -08:00
Filippo Spiga
36877abd02 Adding libpfm 4.12.0 (#33779) 2022-11-09 12:54:50 -08:00
snehring
62db008e42 sentieon-genomics: adding version 202112.06 (#33786) 2022-11-09 12:52:57 -08:00
James Willenbring
b10d75b1c6 Update package.py (#33787)
Proposing to add myself as a maintainer of the Trilinos Spack package after a related conversation with @kuberry.
2022-11-09 12:40:33 -08:00
kwryankrattiger
078767946c Boost: Change comment to conflict for MPI/Python (#33767)
Boost 1.64.0 has build errors when building the python and MPI modules. This was previously just a comment in the package.py which allowed broken specs to concretize. The comments are now expressed in conflicts to prevent this.
2022-11-09 09:05:27 -06:00
snehring
9ca7165ef0 postgresql: fix weird spack message (#33770) 2022-11-09 15:25:22 +01:00
Harmen Stoppels
d1d668a9d5 Revert "fix racy sbang (#33549)" (#33778)
This reverts commit 4d28a64661.
2022-11-09 09:31:27 +00:00
Greg Becker
284c3a3fd8 ensure external PythonPackages have python deps (#33777)
Currently, external `PythonPackage`s cause install failures because the logic in `PythonPackage` assumes that it can ask for `spec["python"]`.  Because we chop off externals' dependencies, an external Python extension may not have a `python` dependency.

This PR resolves the issue by guaranteeing that a `python` node is present in one of two ways:
1. If there is already a `python` node in the DAG, we wire the external up to it.
2. If there is no existing `python` node, we wire up a synthetic external `python` node, and we assume that it has the same prefix as the external.

The assumption in (2) isn't always valid, but it's better than leaving the user with a non-working `PythonPackage`.

The logic here is specific to `python`, but other types of extensions could take advantage of it.  Packages need only define `update_external_dependencies(self)`, and this method will be called on externals after concretization.  This likely needs to be fleshed out in the future so that any added nodes are included in concretization, but for now we only bolt on dependencies post-concretization.

Co-authored-by: Todd Gamblin <tgamblin@llnl.gov>
2022-11-09 08:25:30 +00:00
Massimiliano Culpo
ec89c47aee Account for patchelf binaries when creating local bootstrap mirror (#33776)
This was overlooked when we added binary patchelf buildcaches
2022-11-08 23:05:03 -08:00
Veselin Dobrev
49114ffff7 MFEM: more updates for v4.5 (#33603)
* [mfem] updates related to building with cuda

* [hypre] tweak to support building with external ROCm/HIP

* [mfem] more tweaks related to building with +rocm

* [mfem] temporary (?) workaround for issue #33684

* [mfem] fix style

* [mfem] fix +shared+miniapps install
2022-11-08 22:56:58 -08:00
iarspider
05fd39477e Add checksum for py-protobuf 4.21.7, protobuf 21.7; remove protobuf and py-protobuf 2.x (#32977)
* Add checksum for py-protobuf 4.21.7, protobuf 21.7

* Update var/spack/repos/builtin/packages/protobuf/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update package.py

* Update var/spack/repos/builtin/packages/protobuf/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/protobuf/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update package.py

* Update package.py

* Delete protoc2.5.0_aarch64.patch

* Update package.py

* Restore but deprecate py-protobuf 3.0.0a/b; deprecate py-tensorflow 0.x

* Fix audit

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-11-08 16:10:29 -07:00
Mikael Simberg
e53a19a08d Patch fmt for hipcc/dpcpp (#33733)
* Patch fmt for hipcc/dpcpp
* Add msimberg as fmt maintainer
2022-11-08 12:14:14 -08:00
Xavier Delaruelle
a8470a7efe environment-modules: add version 5.2.0 (#33762) 2022-11-08 13:10:22 -07:00
Wouter Deconinck
0f26d4402e hepmc3: new version 3.2.5 (#33748)
Changelog at https://gitlab.cern.ch/hepmc/HepMC3/-/tags/3.2.5

Maintainer: @vvolkl
2022-11-08 11:54:28 -08:00
Harmen Stoppels
4d28a64661 fix racy sbang (#33549)
Spack currently creates a temporary sbang that is moved "atomically" in place,
but this temporary causes races when multiple processes start installing sbang.

Let's just stick to an idempotent approach. Notice that we only re-install sbang
if Spack updates it (since we do file compare), and sbang was only touched
18 times in the past 6 years, whereas we hit the sbang tempfile issue
frequently with parallel install on a fresh spack instance in CI.

Also fixes a bug where permissions weren't updated if config changed but
the latest version of the sbang file was already installed.
2022-11-08 11:05:05 -08:00
eugeneswalker
4a5e68816b hypre +rocm: needs explicit rocprim dep (#33745) 2022-11-08 10:50:02 -08:00
Greg Becker
97fe7ad32b use pwd for usernames on unix (#19980) 2022-11-08 10:36:10 -08:00
Harmen Stoppels
052bf6b9df python: 3.11.0 (#33507) 2022-11-08 09:38:45 -08:00
Stephen Sachs
80f5939a94 Install from source if binary cache checksum validation fails (#31696)
* Fix https://github.com/spack/spack/issues/31640

Some packages in the binary cache fail checksum validation. Instead of having to
go back and manually install all failed packages with `--no-cache` option,
requeue those failed packages for installation from source

```shell
$ spack install py-pip
==> Installing py-pip-21.3.1-s2cx4gqrqkdqhashlinqyzkrvuwkl3x7
==> Fetching https://binaries.spack.io/releases/v0.18/build_cache/linux-amzn2-graviton2-gcc-7.3.1-py-pip-21.3.1-s2cx4gqrqkdqhashlinqyzkrvuwkl3x7.spec.json.sig
gpg: Signature made Wed 20 Jul 2022 12:13:43 PM UTC using RSA key ID 3DB0C723
gpg: Good signature from "Spack Project Official Binaries <maintainers@spack.io>"
==> Fetching https://binaries.spack.io/releases/v0.18/build_cache/linux-amzn2-graviton2/gcc-7.3.1/py-pip-21.3.1/linux-amzn2-graviton2-gcc-7.3.1-py-pip-21.3.1-s2cx4gqrqkdqhashlinqyzkrvuwkl3x7.spack
==> Extracting py-pip-21.3.1-s2cx4gqrqkdqhashlinqyzkrvuwkl3x7 from binary cache
==> Error: Failed to install py-pip due to NoChecksumException: Requeue for manual installation.
==> Installing py-pip-21.3.1-s2cx4gqrqkdqhashlinqyzkrvuwkl3x7
==> Using cached archive: /shared/spack/var/spack/cache/_source-cache/archive/de/deaf32dcd9ab821e359cd8330786bcd077604b5c5730c0b096eda46f95c24a2d
==> No patches needed for py-pip
==> py-pip: Executing phase: 'install'
==> py-pip: Successfully installed py-pip-21.3.1-s2cx4gqrqkdqhashlinqyzkrvuwkl3x7
  Fetch: 0.01s.  Build: 2.81s.  Total: 2.82s.
[+] /shared/spack/opt/spack/linux-amzn2-graviton2/gcc-7.3.1/py-pip-21.3.1-s2cx4gqrqkdqhashlinqyzkrvuwkl3x7
```

* Cleanup style

* better wording

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* Update lib/spack/spack/installer.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* changes quotes for style checks

* Update lib/spack/spack/installer.py

Co-authored-by: kwryankrattiger <80296582+kwryankrattiger@users.noreply.github.com>

* Addressing @kwryankrattiger comment to use local 'use_cache`

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
Co-authored-by: kwryankrattiger <80296582+kwryankrattiger@users.noreply.github.com>
2022-11-08 09:19:55 -08:00
Dave Love
bca8b52a8d cosma: Add shared option (#33751) 2022-11-08 18:06:58 +01:00
Annop Wongwathanarat
e4c2d1afc6 gromacs: enable linking with armpl-gcc FFT (#33750) 2022-11-08 08:44:03 -07:00
Massimiliano Culpo
89976af732 scons: fix Scons builder after multi build-system refactoring (#33753) 2022-11-08 16:03:15 +01:00
Massimiliano Culpo
a079722b1c r: fix order of execution for Makeconf filtering (#33752)
fixes #33747
2022-11-08 14:58:33 +01:00
Harmen Stoppels
f332ac6d21 More jobs in Gitlab CI (#33688)
Use at most 32 jobs when available.
2022-11-08 12:53:11 +01:00
Massimiliano Culpo
e4218595de Rework unit test to avoid tripping into concretization slowdown (#33749) 2022-11-08 10:56:24 +01:00
Greg Becker
c9561c5a0e intel oneapi classic bootstrapping (#31285)
The `intel` compiler at versions > 20 is provided by the `intel-oneapi-compilers-classic`
package (a thin wrapper around the `intel-oneapi-compilers` package), and the `oneapi`
compiler is provided by the `intel-oneapi-compilers` package. 

Prior to this work, neither of these compilers could be bootstrapped by Spack as part of
an install with `install_missing_compilers: True`.

Changes made to make these two packages bootstrappable:

1. The `intel-oneapi-compilers-classic` package includes a bin directory and symlinks
   to the compiler executables, not just logical pointers in Spack.
2. Spack can look for bootstrapped compilers in directories other than `$prefix/bin`,
   defined on a per-package basis
3. `intel-oneapi-compilers` specifies a non-default search directory for the
   compiler executables.
4. The `spack.compilers` module now can make more advanced associations between
   packages and compilers, not just simple name translations
5. Spack support for lmod hierarchies accounts for differences between package
   names and the associated compiler names for `intel-oneapi-compilers/oneapi`,
   `intel-oneapi-compilers-classic/intel@20:`, `llvm+clang/clang`, and
   `llvm-amdgpu/rocmcc`.

- [x] full end-to-end testing
- [x] add unit tests
2022-11-07 21:50:16 -08:00
Sergey Kosukhin
f099a68e65 mpich: patch @3.4 to fix checking whether the datatype is contiguous (#33328)
Co-authored-by: Thomas Jahns <jahns@dkrz.de>

Co-authored-by: Thomas Jahns <jahns@dkrz.de>
2022-11-07 22:02:21 -07:00
Adam J. Stewart
54abc7fb7e PyTorch: add v1.13.0 (#33596)
* PyTorch: add v1.13.0
* py-torchaudio: add v0.13.0
* py-torchaudio: add all versions
* py-torchvision: jpeg required for all backends
* py-torchtext: add v0.14.0
* py-torchtext: fix build
* py-torchaudio: fix build
* py-torchtext: update version tag
* Use Spack-built sox
* Explicitly disable sox build
* https -> http
2022-11-07 19:42:35 -08:00
Cédric Chevalier
23eb2dc9d6 Add zstd support for elfutils (#33695)
* Add zstd support for elfutils
Not defining `+zstd` implies `--without-zstd` flag to configure.
This avoids automatic library detection and thus make the build only
depends on Spack installed dependencies.
* Use autotools helper "with_or_without"
* Revert use of with_or_without
Using `with_or_without()` with `variant` keyword does not seem to work.
2022-11-07 20:30:23 -07:00
Peter Scheibel
1a3415619e "spack uninstall": don't modify env (#33711)
"spack install foo" no longer adds package "foo" to the environment
(i.e. to the list of root specs) by default: you must specify "--add".
Likewise "spack uninstall foo" no longer removes package "foo" from
the environment: you must specify --remove. Generally this means
that install/uninstall commands will no longer modify the users list
of root specs (which many users found problematic: they had to
deactivate an environment if they wanted to uninstall a spec without
changing their spack.yaml description).

In more detail: if you have environments e1 and e2, and specs [P, Q, R]
such that P depends on R, Q depends on R, [P, R] are in e1, and [Q, R]
are in e2:

* `spack uninstall --dependents --remove r` in e1: removes R from e1
  (but does not uninstall it) and uninstalls (and removes) P
* `spack uninstall -f --dependents r` in e1: will uninstall P, Q, and
   R (i.e. e2 will have dependent specs uninstalled as a side effect)
* `spack uninstall -f --dependents --remove r` in e1: this uninstalls
   P, Q, and R, and removes [P, R] from e1
* `spack uninstall -f --remove r` in e1: uninstalls R (so it is
  "missing" in both environments) and removes R from e1 (note that e1
  would still install R as a dependency of P, but it would no longer
  be listed as a root spec)
* `spack uninstall --dependents r` in e1: will fail because e2 needs R

Individual unit tests were created for each of these scenarios.
2022-11-08 03:24:51 +00:00
Jordan Galby
84a3d32aa3 Fix missing "*.spack*" files in views (#30980)
All files/dirs containing ".spack" anywhere their name were ignored when
generating a spack view.

For example, this happened with the 'r' package.
2022-11-08 02:58:19 +00:00
akhursev
69d4637671 2022.3.1 oneAPI release promotion (#33742) 2022-11-07 18:14:23 -07:00
Harmen Stoppels
3693622edf reorder packages.yaml: requirements first, then preferences (#33741)
* reorder packages.yaml: requirements first, then preferences
* expand preferences vs reuse vs requirements
2022-11-07 16:16:11 -08:00
Scott Wittenburg
b3b675157c gitlab ci: Add "script_failure" as a reason for retrying service jobs (#33420)
Somehow a network error when cloning the repo for ci gets
categorized by gitlab as a script failure.  To make sure we retry
jobs that failed for that reason or a similar one, include 
"script_failure" as one of the reasons for retrying service jobs
(which include "no specs to rebuild" jobs, update buildcache
index jobs, and temp storage cleanup jobs.
2022-11-07 16:11:04 -07:00
Tom Scogland
6241cdb27b encode development requirements in pyproject.toml (#32616)
Add a `project` block to the toml config along with development and CI
dependencies and a minimal `build-system` block, doing basically
nothing, so that spack can be bootstrapped to a full development
environment with:

```shell
$ hatch -e dev shell
```

or for a minimal environment without hatch:

```shell
$ python3 -m venv venv
$ source venv/bin/activate
$ python3 -m pip install --upgrade pip
$ python3 -m pip install -e '.[dev]'
```

This means we can re-use the requirements list throughout the workflow
yaml files and otherwise maintain this list in *one place* rather than
several disparate ones.  We may be stuck with a couple more temporarily
to continue supporting python2.7, but aside from that it's less places
to get out of sync and a couple new bootstrap options.

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-11-07 15:00:22 -08:00
dependabot[bot]
28d669cb39 build(deps): bump docker/setup-buildx-action from 2.2.0 to 2.2.1 (#33399)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 2.2.0 to 2.2.1.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](c74574e6c8...8c0edbc76e)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-07 20:49:42 +00:00
dependabot[bot]
c0170a675b build(deps): bump actions/upload-artifact from 3.1.0 to 3.1.1 (#33471)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 3.1.0 to 3.1.1.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](3cea537223...83fd05a356)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-07 21:39:38 +01:00
Scott Wittenburg
28a77c2821 binary_distribution: Speed up buildcache update-index (#32796)
This change uses the aws cli, if available, to retrieve spec files
from the mirror to a local temp directory, then parallelizes the
reading of those files from disk using multiprocessing.ThreadPool.

If the aws cli is not available, then a ThreadPool is used to fetch
and read the spec files from the mirror.

Using aws cli results in ~16 times speed up to recreate the binary
mirror index, while just parallelizing the fetching and reading
results in ~3 speed up.
2022-11-07 21:31:14 +01:00
Sergey Kosukhin
01a5788517 eckit: fix underlinking (#33739) 2022-11-07 12:54:36 -07:00
Harmen Stoppels
cc84ab1e92 Remove known issues (#33738) 2022-11-07 19:41:16 +00:00
dependabot[bot]
e0e20e3e79 Bump docker/build-push-action from 3.1.1 to 3.2.0 (#33271)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3.1.1 to 3.2.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](c84f382811...c56af95754)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-07 20:40:06 +01:00
dependabot[bot]
9d08feb63e Bump dorny/paths-filter from 2.10.2 to 2.11.1 (#33270)
Bumps [dorny/paths-filter](https://github.com/dorny/paths-filter) from 2.10.2 to 2.11.1.
- [Release notes](https://github.com/dorny/paths-filter/releases)
- [Changelog](https://github.com/dorny/paths-filter/blob/master/CHANGELOG.md)
- [Commits](b2feaf19c2...4512585405)

---
updated-dependencies:
- dependency-name: dorny/paths-filter
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-07 20:38:32 +01:00
dependabot[bot]
8be6378688 Bump docker/setup-qemu-action from 2.0.0 to 2.1.0 (#33269)
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 2.0.0 to 2.1.0.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](8b122486ce...e81a89b173)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-07 20:13:09 +01:00
Greg Becker
ec05543054 Bugfix: Compiler bootstrapping for compilers that are independently present in env (#32228)
The compiler bootstrapping logic currently does not add a task when the compiler package is already in the install task queue. This causes failures when the compiler package is added without the additional metadata telling the task to update the compilers list.

Solution: requeue compilers for bootstrapping when needed, to update `task.compiler` metadata.
2022-11-07 09:38:51 -08:00
Greg Becker
a30b60f9a6 Apply dev specs for dependencies of roots (#30909)
Currently, develop specs that are not roots and are not explicitly listed dependencies 
of the roots are not applied.

- [x] ensure dev specs are applied.

Co-authored-by: Todd Gamblin <tgamblin@llnl.gov>
2022-11-07 09:37:03 -08:00
Adam J. Stewart
8fb8381b6f Rust: don't apply constraints to nightly/beta versions (#33723) 2022-11-07 09:21:46 -08:00
Laura Bellentani
1dcb5d1fa7 quantum-espresso: improve concretization for intel libraries (#33312) 2022-11-07 16:47:07 +01:00
Yang Zongze
96b8240ea6 singularity: add new versions (#33462) 2022-11-07 16:44:09 +01:00
Harmen Stoppels
47df88404a Simplify repeated _add_dependency calls for same package (#33732) 2022-11-07 16:33:18 +01:00
Veselin Dobrev
476e647c94 GLVis: new versions: v4.1, v4.2 (#33728) 2022-11-07 16:31:59 +01:00
Sajid Ali
c3851704a2 openblas confuses flang/flang-new, so do not set TIME with ~fortran (#33163)
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
Co-authored-by: eugeneswalker <38933153+eugeneswalker@users.noreply.github.com>
2022-11-07 16:20:03 +01:00
Axel Huebl
1eb35d0378 Doc: lsb-release (#32479)
Without the `lsb-release` tool installed, Spack cannot identify the
Ubuntu/Debian version.
2022-11-07 16:13:17 +01:00
Sergey Kosukhin
74c3fbdf87 netcdf-c: add variant optimize (#33642) 2022-11-07 15:49:55 +01:00
Michael Kuhn
492525fda5 socat: new package (#33713) 2022-11-07 15:45:50 +01:00
Adam J. Stewart
9dcd4fac15 py-modin: add new package (#33724)
Co-authored-by: adamjstewart <adamjstewart@users.noreply.github.com>
2022-11-07 15:43:37 +01:00
Harmen Stoppels
2ab974f530 concretizer:unify:true as a default (#31787)
`spack env create` enables a view by default (in a weird hidden
directory, but well...). This is asking for trouble with the other
default of `concretizer:unify:false`, since having different flavors of
the same spec in an environment, leads to collision errors when
generating the view.

A change of defaults would improve user experience:

However, `unify:true` makes most sense, since any time the issue is
brought up in Slack, the user changes the concretization config, since
it wasn't the intention to have different flavors of the same spec, and
install times are decreased.

Further we improve the docs and drop the duplicate root spec limitation
2022-11-07 15:38:24 +01:00
Massimiliano Culpo
e045dabb3a archspec: update version, translate renamed uarchs (#33556)
* Update archspec version

* Add a translation table from old names
2022-11-07 04:50:38 -08:00
Tim Haines
f8e4ad5209 elfutils: add version 0.188 (#33715) 2022-11-07 12:23:10 +01:00
Greg Becker
4b84cd8af5 bugfix for matrices with dependencies by hash (#22991)
Dependencies specified by hash are unique in Spack in that the abstract
specs are created with internal structure. In this case, the constraint
generation for spec matrices fails due to flattening the structure.

It turns out that the dep_difference method for Spec.constrain does not
need to operate on transitive deps to ensure correctness. Removing transitive
deps from this method resolves the bug.

- [x] Includes regression test
2022-11-06 16:49:35 -08:00
Greg Becker
fce7bf179f solver setup: extract virtual dependencies from reusable specs (#32434)
* extract virtual dependencies from reusable specs
* bugfix to avoid establishing new node for virtual
2022-11-06 16:47:07 -08:00
Greg Becker
f3db624b86 package preferences: allow specs to be configured buildable when their virtuals are not (#18269)
* respect spec buildable that overrides virtual buildable
2022-11-06 16:45:38 -08:00
Greg Becker
22c2f3fe89 improve error message for dependency on nonexistant compiler (#32084) 2022-11-06 16:44:11 -08:00
Greg Becker
52cc798948 solver: do not punish explicitly requested compiler mismatches (#30074) 2022-11-06 16:40:00 -08:00
Michael Kuhn
258edf7dac MesonPackage: disable automatic download and install of dependencies (#33717)
Without this, Meson will use its Wraps to automatically download and
install dependencies. We want to manage dependencies explicitly,
therefore disable this functionality.
2022-11-06 19:34:43 +00:00
Greg Becker
d4b45605c8 allow multiple compatible deps from CLI (#21262)
Currently, Spack can fail for a valid spec if the spec is constructed from overlapping, but not conflicting, concrete specs via the hash.

For example, if abcdef and ghijkl are the hashes of specs that both depend on zlib/mnopqr, then foo ^/abcdef ^/ghijkl will fail to construct a spec, with the error message "Cannot depend on zlib... twice".

This PR changes this behavior to check whether the specs are compatible before failing.

With this PR, foo ^/abcdef ^/ghijkl will concretize.

As a side-effect, so will foo ^zlib ^zlib and other specs that are redundant on their dependencies.
2022-11-06 11:30:37 -08:00
Morten Kristensen
8b4b26fcbd py-vermin: add latest version 1.5.0 (#33727) 2022-11-06 10:32:17 -08:00
John W. Parent
f07f75a47b CMake: add versions 3.24.3, 3.23.4, and 3.23.5 (#33700) 2022-11-06 14:21:42 +01:00
Glenn Johnson
f286a7fa9a Add version 4.2.2 to R (#33726) 2022-11-06 12:40:14 +01:00
Erik Schnetter
fffc4c4846 z3: New version 4.11.2 (#33725) 2022-11-06 11:05:57 +01:00
Greg Becker
27e1d28c0b canonicalize_path: add arch information to substitutions (#29810)
Co-authored-by: becker33 <becker33@users.noreply.github.com>
2022-11-06 10:11:59 +01:00
Emilio J. Padrón González
e550f48b17 ADD version 0.19.0 in py-gym recipe (#33701)
* ADD version 0.19.0 in py-gym recipe

* Fix py-gym download url and dependencies for v0.19.0

* Fix stupid error in previous commit: no change in py-cloudpickle dep

* Yes, I should've paid more attention! O:)

I think now it is right, thanks!
2022-11-05 16:28:58 -07:00
Adam J. Stewart
0f32f7d0e9 py-transformers: add v4.24.0 (#33716)
* py-transformers: add v4.24.0

* Internet access still required
2022-11-05 12:38:49 -05:00
Massimiliano Culpo
5558940ce6 Add support for Python 3.11 (#33505)
Argparse started raising ArgumentError exceptions
when the same parser is added twice. Therefore, we
perform the addition only if the parser is not there
already

Port match syntax to our unparser
2022-11-05 15:59:12 +01:00
Erik Schnetter
c9fcb8aadc openssh: New version 9.1p1 (#33668)
Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2022-11-05 15:34:59 +01:00
Tom Scogland
3346c0918b Fix relocation to avoid overwriting merged constant strings (#32253)
Compilers and linker optimize string constants for space by aliasing
them when one is a suffix of another. For gcc / binutils this happens
already at -O1, due to -fmerge-constants. This means that we have
to take care during relocation to always preserve a certain length
of the suffix of those prefixes that are C-strings. 

In this commit we pick length 7 as a safe suffix length, assuming the
suffix is typically the 7 characters from the hash (i.e. random), so
it's unlikely to alias with any string constant used in the sources.

In general we now pad shortened strings from the left with leading
dir seperators, but in the case of C-strings that are much shorter
and don't share a common suffix (due to projections), we do allow
shrinking the C-string, appending a null, and retaining the old part
of the prefix.

Also when rewiring, we ensure that the new hash preserves the last
7 bytes of the old hash.

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2022-11-05 11:09:35 +01:00
Peter Scheibel
71d480515b packages.yaml: set url/git (#33275)
A user may want to set some attributes on a package without actually modifying the package (e.g. if they want to git pull updates to the package without conflicts). This PR adds a per-package configuration section called "set", which is a dictionary of attribute names to desired values. For example:

packages:
  openblas:
    package_attributes:
      submodules: true
      git: "https://github.com/myfork/openblas"

in this case, the package will always retrieve git submodules, and will use an alternate location for the git repo.

While git, url, and submodules are the attributes for which we envision the most usage, this allows any attribute to be overridden, and the acceptable values are any value parseable from yaml.
2022-11-05 08:44:50 +00:00
Massimiliano Culpo
c0ed5612ab unparser: fix bug in unit test assertion (#33722) 2022-11-05 09:00:54 +01:00
Adam J. Stewart
d79cba1a77 py-matplotlib: add v3.6.2 (#33683) 2022-11-04 22:38:04 -06:00
wspear
34724cae87 Updated tau 2.32 hash (#33718) 2022-11-04 20:07:33 -07:00
iarspider
9becc82dfc Fix formatting in packaging guide (#33714) 2022-11-05 02:00:16 +00:00
Erik Schnetter
d7cb790f88 openssl: New version 1.1.1s (#33664)
This is a security update.
2022-11-04 18:18:05 -06:00
Adam J. Stewart
7c0b3f6374 py-pytorch-lightning: add conflicts for py-torch~distributed (#33710) 2022-11-05 00:00:23 +01:00
Greg Becker
912d544afe demote warning for no source id to debug message (#33657)
* demote warning for no source id to debug message
2022-11-04 21:52:58 +00:00
Greg Becker
53fbaa5dcd Cray support: use linux platform for newer craype versions (#29392)
Newer versions of the CrayPE for EX systems have standalone compiler executables for CCE and compiler wrappers for Cray MPICH. With those, we can treat the cray systems as part of the linux platform rather than having a separate cray platform.

This PR:
- [x] Changes cray platform detection to ignore EX systems with Craype version 21.10 or later
- [x] Changes the cce compiler to be detectable via paths
- [x] Changes the spack compiler wrapper to understand the executable names for the standalone cce compiler (`craycc`, `crayCC`, `crayftn`).
2022-11-04 14:52:11 -07:00
Greg Becker
a88c74dc17 delegate to cray modules for target args on cray (#17857) 2022-11-04 14:50:05 -07:00
Sinan
fb5ff901c0 package/py-pykml: add new py3 compatible version (#33631)
* package/py-pykml: add new py3 compatible version

* fix bugs

Co-authored-by: sbulut <sbulut@3vgeomatics.com>
2022-11-04 14:34:50 -07:00
Matthieu Boileau
76ec64859a Fix typo in docs (#33662) 2022-11-04 20:19:34 +01:00
kent-cheung-arm
e85b308212 arm-forge: add 22.1 and 22.1.1. (#33584) 2022-11-04 20:18:20 +01:00
Massimiliano Culpo
a4f3fe2ac7 Deprecate old YAML format for buildcaches (#33707) 2022-11-04 12:06:42 -07:00
Alberto Sartori
b6da8635ec add justbuild package (#33689) 2022-11-04 11:59:27 -07:00
Tamara Dahlgren
d338ac0634 Updates to stand-alone test documentation (#33703) 2022-11-04 18:55:38 +00:00
Dom Heinzeller
33e5e77225 Python package: fix .libs on macOS with external Python (#33410)
For some instances of externally-provided Python (e.g. Homebrew),
the LDLIBRARY/LIBRARY config variables don't actually refer to
libraries and should therefore be excluded from ".libs".
2022-11-04 11:52:27 -07:00
Moritz Kern
13565df027 add elephant version v0.11.2 (#33663) 2022-11-04 12:34:16 -06:00
Stephen McDowell
6f8e242db8 ECP-SDK: fixup +hdf5 +cuda contraints (#33676)
Only enable the hdf5-vfd-gds package if it can compile.

- hdf5-vfd-gds needs cuda@11.7.1+ to be able to `find_library` for cuFile.
- Only enable hdf5-vfd-gds in the sdk if cuda@11.7.1+ is available.
  If an earlier version of cuda is being used, do not depend on the
  hdf5-vfd-gds package at all.
2022-11-04 13:26:58 -05:00
Greg Becker
17eaf34902 fix requires test for aarch64 (#33656) 2022-11-04 18:12:55 +00:00
Vicente Bolea
ac9172fdbc paraview: static cuda is not supported (#33246) 2022-11-04 18:52:28 +01:00
Erik Schnetter
1a77f3e2e0 gnutls: add v3.7.8 (#33708) 2022-11-04 18:06:11 +01:00
Erik Schnetter
7d4373f526 libressl: New package (#33709) 2022-11-04 18:05:23 +01:00
Greg Becker
2caec6bd27 Bugfix: glvis new builder interface (#33704)
* take two

* Add missing import statement

* Group dependencies together

* Extract libtiff arguments

* Extract libpng arguments

* Push preamble variable into png_args and tiff_args

* Extract setting args associated with the screenshot variant

* Inlined a few variables

* Modify only build targets and install targets

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-11-04 08:42:06 -07:00
Ashwin Kumar
bde4d1e38c Octopus: refactor AutotoolsPackage (#33526) 2022-11-04 14:59:45 +01:00
snehring
49d7aa21fd orca: add v5.0.3 (#33649) 2022-11-04 12:26:59 +01:00
Harmen Stoppels
1d4919924d Add in-place RPATH replacement (#27610)
Whenever the rpath string actually _grows_, it falls back to patchelf,
when it stays the same length or gets shorter, we update it in-place,
padded with null bytes.

This PR only deals with absolute -> absolute rpath replacement. We don't
use `_build_tarball(relative=True)` in our CI. If `relative` then it falls
back to the old replacement code.

With this PR, relocation time goes down significantly, likely because patchelf
does some odd things with mmap, causing lots of overhead. Example:

- `binutils`: 700MB installed, goes from `1.91s` to `0.57s`, or `3.4x` faster.
   Relocation time: 27% -> 10% of total install time
- `llvm`: 6.8GB installed, goes from `28.56s` to `5.38`, or `5.3x` faster.
   Relocation time: 44% -> 13% of total install time

The bottleneck is now decompression.

Note: I'm somewhat confused about the "relative rpath" code paths. Right
now this PR only deals with absolute -> absolute replacement. As far as
I understand, if you embrace relative rpaths when uploading to the
buildcache, the whole point is you _don't_ want to patch rpaths on
install? So it seems fine to not expand `$ORIGIN` again imho.
2022-11-04 02:30:53 -07:00
Jordan Galby
b1f896e6c7 Fix non-parallel make under depfile jobserver (#32862)
When a package asks for non-parallel make, we need to force `make -j1` because just doing `make` will run in parallel under jobserver (e.g. `spack env depfile`).

We now always add `-j1` when asked for a non-parallel execution (even if there is no jobserver).

And each `MakeExecutable` can now ask for jobserver support or not. For example: the default `ninja` does not support jobserver so spack applies the default `-j`, but `ninja@kitware` or `ninja-fortran` does, so spack doesn't add `-j`.

Tips: you can run `SPACK_INSTALL_FLAGS=-j1 make -f spack-env-depfile.make -j8` to avoid massive job-spawning because of build tools that don't support jobserver (ninja).
2022-11-04 02:05:22 -07:00
Satish Balay
34969b7072 petsc: fix configure option to use double-hyphen (#33685) 2022-11-03 20:22:09 -06:00
Lucas
72b11c1883 Adding gegelati library package (#33686)
* testing ssh key
* test
* LR : Creating the packge to install the gegelati app
* LR : Gegelati, a TPG C++ library added and fully tested
* LR : adjusting for fork
* LR: taking out the boilerplates
* LR: taking out the rest
2022-11-03 18:34:00 -07:00
wspear
b3e41736e6 Add version 2.32 to tau package (#33702) 2022-11-03 18:24:23 -07:00
Todd Gamblin
9c5c327a6f propagation: don't count propagated variant values as non-default (#33687)
We try to avoid non-default variant values in the concretizer, but this doesn't make
sense for variants forced to take some non-default value by variant propagation.
Counting this as a penalty effectively biases the concretizer for small specs dependency
graphs -- something we try very hard to avoid elsewhere because it can lead to very
strange decisions.

Example: with the penalty, `spack spec hdf5` will choose the default `openmpi` as its
`mpi` provider, but `spack spec hdf5 ~~shared` will choose `mpich` because it has to set
fewer non-default variant values because `mpich`'s DAG is smaller. That's not a good
reason to prefer a non-default virtual provider.

To fix this, if the user explicitly requests a non-default value to be propagated, there
shouldn't be a penalty. Variant values set on the CLI already don't count as default; we
just need to extend that to propagated values.
2022-11-03 18:26:03 -06:00
Greg Becker
79fcc0848f Update glvis for new builder interface (#33699) 2022-11-03 17:10:39 -07:00
Harmen Stoppels
b52be75978 Experimental binding of shared ELF libraries (#31948)
Adds another post install hook that loops over the install prefix, looking for shared libraries type of ELF files, and sets the soname to their own absolute paths.

The idea being, whenever somebody links against those libraries, the linker copies the soname (which is the absolute path to the library) as a "needed" library, so that at runtime the dynamic loader realizes the needed library is a path which should be loaded directly without searching.

As a result:

1. rpaths are not used for the fixed/static list of needed libraries in the dynamic section (only for _actually_ dynamically loaded libraries through `dlopen`), which largely solves the issue that Spack's rpaths are a heuristic (`<prefix>/lib` and `<prefix>/lib64` might not be where libraries really are...)
2. improved startup times (no library search required)
2022-11-03 17:34:00 -06:00
Adrien Cotte
7fc49c42ee Add new versions to py-clustershell (#33694) 2022-11-03 17:11:28 -05:00
snehring
5b39059472 tassel: adding version 5.2.86 (#33697) 2022-11-03 15:02:36 -07:00
snehring
e8cc1a60ea spades: adding version 3.15.5 (#33698) 2022-11-03 14:44:31 -07:00
eugeneswalker
d2d01ea488 flux-core: allow ncurses >= 6.2 (#33599) 2022-11-03 14:44:02 -07:00
Zack Galbreath
ccc716f617 Limit the number of parallel jobs launched by Tensile (#33692) 2022-11-03 15:26:03 -06:00
Scott Wittenburg
b55509ffa8 gitlab: Prune untouched specs less aggressively (#33669)
Untouched spec pruning was added to reduce the number of specs
developers see getting rebuilt in their PR pipelines that they
don't understand.  Because the state of the develop mirror lags
quite far behind the tip of the develop branch, PRs often find
they need to rebuild things untouched by their PR.

Untouched spec pruning was previously implemented by finding all
specs in the environment with names of packages touched by the PR,
traversing in both directions the DAGS of those specs, and adding
all dependencies as well as dependents to a list of concrete specs
that should not be considered for pruning.

We found that this heuristic results in too many pruned specs, and
that dependents of touched specs must have all their dependencies
added to the list of specs that should not be considered for pruning.
2022-11-03 13:33:52 -06:00
Miroslav Stoyanov
08bee718a2 new cmake requirement (#33679) 2022-11-03 11:28:08 -07:00
Nicolas Cornu
da020d1bb8 Bump HighFive to v2.5.0 (#33691)
* Bump HighFive to v2.5.0
* Adding myself as maintainers
* fix format with black
2022-11-03 11:34:15 -06:00
Cyrus Harrison
ca93c8b57a fides: remove unneeded variants (#32521) 2022-11-03 11:33:59 -06:00
Greg Sjaardema
16acd25053 SEACAS: further refactor (#33673)
* SEACAS: Update package.py to handle new SEACAS project name

The base project name for the SEACAS project has changed from
"SEACASProj" to "SEACAS" as of @2022-10-14, so the package
needed to be updated to use the new project name when needed.

The refactor also changes several:
    "-DSome_CMAKE_Option:BOOL=ON"
to
   define("Some_CMAKE_Option", True)

* SEACAS: Additional refactorings

* Replaced all cmake "-Dsomething=other" lines with either `define`
or `define_from_variant` functions.

Consolidated the application (fortran, legacy, all) enabling lines
into loops over the code names.  Easier to see categorization of
applications and also to add/move/remove an application

Reordered some lines; general cleanup and restructuring.

* Address flake8 issues

* Remove trailing whitespace

* Reformat using black
2022-11-03 11:42:25 -04:00
snehring
9925f3b779 isescan: add version 1.7.2.3 (#33675) 2022-11-03 09:29:59 -06:00
Mikael Simberg
68a5fe84a7 Add pika 0.10.0 (#33659)
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2022-11-03 12:28:38 +01:00
Harmen Stoppels
243dfe91e9 Use spack.traverse.traverse_nodes where useful (#33677) 2022-11-03 11:34:24 +01:00
Jose E. Roman
30da20c1bc New patch release SLEPc 3.18.1 (#33661) 2022-11-03 03:58:16 -06:00
Massimiliano Culpo
0d82688903 Update metadata for bootstrapping (#33665) 2022-11-03 09:05:03 +00:00
Michael Kuhn
707e56dea8 glib: add 2.74.1 (#33650) 2022-11-03 02:50:20 -06:00
Sinan
2264b75ca0 add new package: py-pylatex (#33573)
* add new package: py-pylatex

* fix bugs

* add extras indicated in setup.py

* Update var/spack/repos/builtin/packages/py-pylatex/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-pylatex/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* improvements

* remove git merge related lines

* tidy

* Update var/spack/repos/builtin/packages/py-pylatex/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* remove variant

* [@spackbot] updating style on behalf of Sinan81

Co-authored-by: sbulut <sbulut@3vgeomatics.com>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
Co-authored-by: Sinan81 <Sinan81@users.noreply.github.com>
2022-11-02 22:38:17 -06:00
Greg Becker
c716c6ca95 Bugfix for spec objects modified by flag handlers (#33682)
This issue was introduced in #29761:

```
==> Installing ncurses-6.3-22hz6q6cvo3ep2uhrs3erpp2kogxncbn
==> No binary for ncurses-6.3-22hz6q6cvo3ep2uhrs3erpp2kogxncbn found: installing from source
==> Using cached archive: /spack/var/spack/cache/_source-cache/archive/97/97fc51ac2b085d4cde31ef4d2c3122c21abc217e9090a43a30fc5ec21684e059.tar.gz
==> No patches needed for ncurses
==> ncurses: Executing phase: 'autoreconf'
==> ncurses: Executing phase: 'configure'
==> ncurses: Executing phase: 'build'
==> ncurses: Executing phase: 'install'
==> Error: AttributeError: 'str' object has no attribute 'propagate'

The 'ncurses' package cannot find an attribute while trying to build from sources. This might be due to a change in Spack's package format to support multiple build-systems for a single package. You can fix this by updating the build recipe, and you can also report the issue as a bug. More information at https://spack.readthedocs.io/en/latest/packaging_guide.html#installation-procedure

/spack/lib/spack/spack/build_environment.py:1075, in _setup_pkg_and_run:
       1072        tb_string = traceback.format_exc()
       1073
       1074        # build up some context from the offending package so we can
  >>   1075        # show that, too.
       1076        package_context = get_package_context(tb)
       1077
       1078        logfile = None
```

It turns out this was caused by a bug that had been around much longer, in which the flags were passed by reference to the flag_handler, and the flag_handler was modifying the spec object, not just the flags given to the build system. The scope of this bug was limited by the forking model in Spack, which is how it went under the radar for so long.

PR includes regression test.
2022-11-02 21:09:43 -07:00
Harmen Stoppels
b652fe72d7 remove deptype_query remnants and fix incorrect deptypes kwarg (#33670)
* remove deptype_query remnants
* deptypes -> deptype

These arguments haven't existed since 2017, but `traverse` now fails on unknown **kwargs, so they have finally popped up.
2022-11-02 14:24:59 -07:00
Robert Pavel
4d5f2e3a37 Initial Version of Hypar Spackage (#33647)
Initial spackage for Hypar proxy app
2022-11-02 14:10:19 -07:00
Martin Diehl
4c535a2037 update: damask3.0.0-alpha7 (#33634)
* damask3.0.0-alpha7
* [@spackbot] updating style on behalf of MarDiehl

Co-authored-by: MarDiehl <MarDiehl@users.noreply.github.com>
2022-11-02 12:23:19 -07:00
Weiqun Zhang
2a516aadb1 amrex: add v22.11 (#33671) 2022-11-02 11:59:50 -07:00
Carson Woods
0661c1f531 Package: add new package py-fitter (#33652)
* Add new python package

* Fix isort style issues

* Add additional dependencies

* Add additional dependencies

* Remove comments

* Add additional explicit dependencies
2022-11-02 12:42:10 -06:00
Sinan
4b549560f9 package_qgis_fix_pythonpath (#33655)
* package_qgis_fix_pythonpath

* check if bindings enabled also

Co-authored-by: sbulut <sbulut@3vgeomatics.com>
2022-11-02 13:40:05 -05:00
Greg Sjaardema
d4ea74bf80 SEACAS: Update package.py to handle new SEACAS project name (#33646)
The base project name for the SEACAS project has changed from
"SEACASProj" to "SEACAS" as of @2022-10-14, so the package
needed to be updated to use the new project name when needed.

The refactor also changes several:
    "-DSome_CMAKE_Option:BOOL=ON"
to
   define("Some_CMAKE_Option", True)
2022-11-02 11:50:15 -05:00
Paul R. C. Kent
cff94f8e71 llvm: add 15.0.3, 15.0.4 (#33651)
* v1503

* v1504
2022-11-02 10:46:08 -06:00
Gregory Becker
aa4f478ab8 propagation: improve performance
This updates the propagation logic used in `concretize.lp` to avoid rules with `path()`
in the body and instead base propagation around `depends_on()`.
2022-11-02 09:43:57 -07:00
Kayla Butler
bc209c470d flags/variants: Add ++/~~/== syntax for propagation to dependencies
Currently, compiler flags and variants are inconsistent: compiler flags set for a
package are inherited by its dependencies, while variants are not. We should have these
be consistent by allowing for inheritance to be enabled or disabled for both variants
and compiler flags.

- [x] Make new (spec language) operators
- [x] Apply operators to variants and compiler flags
- [x] Conflicts currently result in an unsatisfiable spec
      (i.e., you can't propagate two conflicting values)

What I propose is using two of the currently used sigils to symbolized that the variant
or compiler flag will be inherited:

Example syntax:
- `package ++variant`
      enabled variant that will be propagated to dependencies
- `package +variant`
      enabled variant that will NOT be propagated to dependencies
- `package ~~variant`
      disabled variant that will be propagated to dependencies
- `package ~variant`
      disabled variant that will NOT be propagated to dependencies
- `package cflags==True`
      `cflags` will be propagated to dependencies
- `package cflags=True`
      `cflags` will NOT be propagated to dependencies

Syntax for string-valued variants is similar to compiler flags.
2022-11-02 09:43:57 -07:00
Filippo Spiga
ae99829af4 armpl-gcc: Pull RHEL8 package when OS is Rocky8 (#33641) 2022-11-02 16:09:28 +01:00
Todd Gamblin
a4d978be59 tests: fix group membership check in sbang tests. (#33658)
Fixes an issue on the RHEL8 UBI container where this test would fail because `gr_mem`
was empty for every entry in the `grp` DB.

You have to check *both* the `pwd` database (which has primary groups) and `grp` (which
has other gorups) to do this correctly.

- [x] update `llnl.util.filesystem.group_ids()` to do this
- [x] use it in the `sbang` test
2022-11-02 11:00:16 +01:00
Harmen Stoppels
4bad9f9b13 Consolidate DAG traversal in traverse.py, support DFS/BFS (#33406)
This PR introduces breadth-first traversal, and moves depth-first traversal
logic out of Spec's member functions, into `traverse.py`.

It introduces a high-level API with three main methods:

```python
spack.traverse.traverse_edges(specs, kwargs...)
spack.traverse.traverse_nodes(specs, kwags...)
spack.traverse.traverse_tree(specs, kwargs...)
```

with the usual `root`, `order`, `cover`, `direction`, `deptype`, `depth`, `key`,
`visited` kwargs for the first two.

What's new is that `order="breadth"` is added for breadth-first traversal.

The lower level API is not exported, but is certainly useful for advanced use
cases. The lower level API includes visitor classes for direction reversal and
edge pruning, which can be used to create more advanced traversal methods,
especially useful when the `deptype` is not constant but depends on the node
or depth. 

---

There's a couple nice use-cases for breadth-first traversal:

- Sometimes roots have to be handled differently (e.g. follow build edges of
  roots but not of deps). BFS ensures that root nodes are always discovered at
  depth 0, instead of at any depth > 1 as a dep of another root.
- When printing a tree, it would be nice to reduce indent levels so it fits in the 
  terminal, and ensure that e.g. `zlib` is not printed at indent level 10 as a 
  dependency of a build dep of a build dep -- rather if it's a direct dep of my
  package, I wanna see it at depth 1. This basically requires one breadth-first
  traversal to construct a tree, which can then be printed with depth-first traversal.
- In environments in general, it's sometimes inconvenient to have a double
  loop: first over the roots then over each root's deps, and maintain your own
  `visited` set outside. With BFS, you can simply init the queue with the
  environment root specs and it Just Works. [Example here](3ec7304699/lib/spack/spack/environment/environment.py (L1815-L1816))
2022-11-01 23:04:47 -07:00
eugeneswalker
353e31e72a rempi %oneapi: -Wno-error=implicit-function-declaration (#33654) 2022-11-01 17:53:53 -06:00
Vicente Bolea
328addd43d ParaView: add v5.11.0-RC2 (#33486)
Co-authored-by: eugeneswalker <38933153+eugeneswalker@users.noreply.github.com>
2022-11-01 15:49:57 -07:00
Greg Becker
f696f02a46 Unit tests: make unit tests work for aarch64 machines (#33625)
Currently, many tests hardcode to older versions of gcc for comparisons of
concretization among compiler versions. Those versions are too old to concretize for
`aarch64`-family targets, which leads to failing tests on `aarch64`.

This PR fixes those tests by updating the compiler versions used for testing.

Currently, many tests hardcode the expected architecture result in concretization to the
`x86_64` family of architectures.

This PR generalizes the tests that can be generalized, to cover multiple architecture
families. For those that test specific relationships among `x86_64`-family targets, it
ensures that concretization uses the `x86_64`-family targets in those cases.

Currently, many tests rely on the fact that `AutotoolsPackage` imposes no dependencies
on the inheriting package. That is not true on `aarch64`-family architectures.

This PR ensures that the fact `AutotoolsPackage` on `aarch64` pulls in a dependency on
`gnuconfig` is ignored when testing for the appropriate relationships among dependencies

Additionally, 5 tests currently prompt the user for input when `gpg` is available in the
user's path. This PR fixes that issue. And 7 tests fail currently when the user has a
yubikey available. This PR fixes the incorrect gpg argument causing those issues.
2022-11-01 16:25:55 -06:00
Greg Sjaardema
e0265745bc Update command option for example (#33321)
The `spack info <package>` command does not show the `Virtual Packages:` output unless the `--virtuals` command option is passed.  Before this changes, the information that the command is supposed to be illustrating is not shown in the example and is confusing.
2022-11-01 15:29:50 -06:00
Massimiliano Culpo
75360bdc21 Allow target requirements in packages.yaml (#32528)
This PR solves the issue reported in #32471 specifically for targets and operating systems, 
by avoiding to add a default platform to anonymous specs.
2022-11-01 22:11:49 +01:00
Harmen Stoppels
230e96fbb8 Add elf parsing utility function (#33628)
Introduces `spack.util.elf.parse_elf(file_handle)`
2022-11-01 19:42:06 +00:00
Michael Kuhn
6b3ea94630 perl: add 5.36.0 (#33336) 2022-11-01 12:13:53 -07:00
Michael Kuhn
6dd2bb258c xz: add 5.2.7 (#33338) 2022-11-01 20:02:11 +01:00
Cody Balos
1abcc8caf7 sundials: add v6.4.1, new ginkgo and kokkos variants, plus some fixes (#33644)
* sundials: add v6.4.1, new ginkgo and kokkos variants, plus some fixes
* add missing kokkos/kokkos-kernels variant
* add v6.4.0
2022-11-01 12:45:53 -06:00
Massimiliano Culpo
23aef6bb94 Let pytest-cov create the xml directly (#33619)
`coverage` sometimes failed to combine, even if there were multiple reports.
2022-11-01 19:04:45 +01:00
liuyangzhuan
973b43b1c1 superlu-dist: fix rocm variant for the master branch (#33624)
* superlu-dist: fix rocm variant for the master branch
* simplify superlu-dist
* add mpi include to HIP_HIPCC_FLAGS

Co-authored-by: liuyangzhuan <liuyangzhuan@users.noreply.github.com>
2022-11-01 10:28:01 -07:00
Mikael Simberg
d925ba9bc6 Add tracy 0.9 (#33638)
* Add tracy 0.9
* Add conflict for pika and tracy@0.9:
2022-11-01 09:22:34 -07:00
Adam J. Stewart
1780f3ab3c py-pytorch-lightning: add v1.8.0 (#33643) 2022-11-01 09:13:12 -07:00
Qian Jianhua
d6f25becdb py-ilmbase: add dependency to py-numpy (#33633)
* py-ilmbase: add dependency to py-numpy

* fix style
2022-11-01 10:36:50 -05:00
Sinan
f2c84efed2 package/py-simplekml_add_new_versions (#33632)
Co-authored-by: sbulut <sbulut@3vgeomatics.com>
2022-11-01 10:30:02 -05:00
Harmen Stoppels
156dd5848e Relocate links using prefix to prefix map (#33636)
Previously symlinks were not relocated when they pointed across packages
2022-11-01 16:00:51 +01:00
Mark W. Krentel
cd40d02214 hpctoolkit: adjust rocm dependency types (#33627)
Drop the link dependency type for the rocm packages.  We don't
actually link, and that adds rpaths that conflict with the app.
2022-10-31 21:38:04 -07:00
Adam J. Stewart
3187d4e7b1 py-torchmetrics: add v0.10.2 (#33630) 2022-10-31 20:01:23 -07:00
kwryankrattiger
6b86a8562f ParaView: ParaView needs to set the HDF5 API (#33617)
When building ParaView with a newer HDf5 than 1.10, it needs to select the 1.10 API using flags.
2022-10-31 20:58:02 -06:00
Adam J. Stewart
df6cdcf6c7 GDAL: add v3.5.3 (#33623) 2022-10-31 19:53:52 -06:00
Luke Diorio-Toth
02097b1856 new package: polypolish (#33601)
* added polypolish package, comfirmed builds
* added bwa dep
2022-10-31 15:07:40 -07:00
downloadico
a83456dd7b julia: don't look for the openlibm libraries when unneeded (#33626)
* julia: don't look for the openlibm libraries when unneeded
Cause spack to *not* check for the existence of the openlibm libraries (by adding it to the pkgs list) when ~openlibm is specified.
* [@spackbot] updating style on behalf of downloadico

Co-authored-by: downloadico <downloadico@users.noreply.github.com>
2022-10-31 16:05:49 -06:00
SoniaScard
269304a7ac ophidia-server: new package at v1.7 (#33581)
Co-authored-by: SoniaScard <SoniaScard@users.noreply.github.com>
2022-10-31 14:20:56 -07:00
Massimiliano Culpo
ace8c74e20 Revert "gitlab: when_possible -> false (#33443)" (#33552)
This reverts commit b1559cc831.
2022-10-31 13:31:57 -07:00
Michael Kuhn
fc2d5d2311 Fix pkgconfig dependencies (#33614)
Packages should depend on the virtual provider, pkgconfig, not on its implementations pkg-config or pkgconf.
2022-10-31 11:44:07 -07:00
Mark Olesen
ef3cd6d6ca openfoam: update mechanism for creating spack-specific wmake rules (#33615)
- the updated OpenFOAM wmake rules now allow multiple locations for
  compiler flags:
  * wmake/General/common/c++Opt  [central]
  * wmake/linux64Gcc/c++Opt      [traditional]
- match both '=' and ':=' make rule lines

Co-authored-by: Mark Olesen <Mark.Olesen@esi-group.com>
2022-10-31 09:43:58 -07:00
John W. Parent
222cef9b7c Windows: fix library loading and enable Clingo bootstrapping (#33400)
Changes to improve locating shared libraries on Windows, which in
turn enables the use of Clingo. This PR attempts to establish a
proper distinction between linking on Windows vs. Linux/Mac: on
Windows, linking is always done with .lib files (never .dll files).
This somewhat complicates the model since the Spec.lib method could
return libraries that were used for both linking and loading, but
since these are not always the same on Windows, it was decided to
treat Spec.libs as being for link-time libraries. Additional functions
are added to help dependents locate run-time libraries.

* Clingo is now the default concretizer on Windows
* Clingo is now the concretizer used for unit tests on Windows
* Fix a permissions issue that can occur while moving Git files during
  fetching/staging
* Packages can now implement "win_add_library_dependent" to register
  files/directories that include libraries that would need to link
  to dependency dlls
* Packages can now implement "win_add_rpath" to register the locations
  of dlls that dependents would want to load
* "Spec.libs" on Windows is updated to return link-time libraries
  (i.e. .lib files, rather than .dll files)
* PackageBase.rpath on Windows is now updated to return the most-likely
  locations where .dlls will be found (which is generally in the bin/
  directory)
2022-10-31 09:36:52 -07:00
Erik
214890c026 Enable Cuda for AMReX smoke test. (#28576)
* Enable Cuda for AMReX smoke test.

* style fix

* more style fixes

* change /... to join_path

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-10-31 09:33:55 -07:00
Erik Schnetter
30d84a2716 rsync: New version 3.2.7 (#33618) 2022-10-31 09:26:45 -07:00
psakievich
6990cf76a0 Nalu-Wind: Allow for standard versions of trilinos (#33620)
* Nalu-Wind: Allow for standard versions of trilinos

This will allow us to utilize custom numeric versions for trilinos in `spack-manager` while we continue to develop `nalu-wind`.
Pinging @eugeneswalker @jrood-nrel @tasmith4

* Update var/spack/repos/builtin/packages/nalu-wind/package.py
2022-10-31 08:37:38 -07:00
Harmen Stoppels
7db38433e2 gmake: add a patch so dirs are not executed (#33578) 2022-10-31 08:17:40 -06:00
Satish Balay
a93b3643c6 exago: query and use MPI compilers from spack (#33598)
* exago: query and use MPI compilers from spack

* exago: requires explicit location of mpi.h for nvcc
2022-10-31 07:03:26 -07:00
Harmen Stoppels
a4930c74cb Make --backtrace show non-SpackError backtraces (#33540) 2022-10-31 12:49:19 +00:00
Harmen Stoppels
1ab888cdc1 remove sequential filter in binary relo (#33608)
Currently there's a slow sequential step in binary relocation where all
strings of a binary are collected, with rpaths removed, and then
filtered for the old install root.

This is completely unnecessary, and also incorrect, since we replace
more than just the old install root in the prefix to prefix mapping. And
in fact the prefix to prefix mapping is parallel, and a single pass. So
even as an optimization, this filter makes no sense anymore.

Therefor we remove it
2022-10-31 10:41:59 +01:00
Harmen Stoppels
616d5a89d4 _replace_prefix_bin performance improvements (#33590)
- single pass over the binary data matching all prefixes
- collect offsets and replacement strings
- do in-place updates with `fseek` / `fwrite`, since typically our
  replacement touch O(few bytes) while the file is O(many megabytes)
- be nice: leave the file untouched if some string can't be
  replaced
2022-10-31 10:08:16 +01:00
Mosè Giordano
fb4be98f26 utf8proc: add v2.8.0 (#33611) 2022-10-31 00:47:20 +01:00
Diego Alvarez
20fafe6a46 openjdk: add 11.0.16.1+1, 11.0.17+8, 17.0.4.1+1, 17.0.5+8 (#33355) 2022-10-30 13:25:41 -06:00
Mosè Giordano
7d5446740c libgit2: add v1.4.4 and v1.5.0 (#33604) 2022-10-30 12:13:47 +01:00
eugeneswalker
999c460b1e e4s ci: add mfem +rocm (#31604) 2022-10-29 23:32:46 +00:00
Veselin Dobrev
82470f880a New MFEM version: 4.5 (#33480)
* New MFEM version: 4.5

Add new MFEM variants: ginkgo, hiop

* mfem: small tweaks

* mfem: tweak testing script

* mfem: try to resolve issue #30483

* mfem: fix style

* mfem: tweak for Spack-built hipsparse

Co-authored-by: eugeneswalker <38933153+eugeneswalker@users.noreply.github.com>
2022-10-29 13:22:25 -07:00
eugeneswalker
e5274de7ec unifyfs %oneapi: -Wno-error=deprecated-non-prototype,unused-function (#33602) 2022-10-29 13:19:27 -07:00
eugeneswalker
23aada1d24 gettext: constrain nvhpc patch to @:0.20.0 (#33489) 2022-10-29 21:41:10 +02:00
Massimiliano Culpo
7e645f54c5 Deprecate spack bootstrap trust/untrust (#33600)
* Deprecate spack bootstrap trust/untrust
* Update CI
* Update tests
2022-10-29 12:24:26 -07:00
Sergey Kosukhin
29f1e8395c mpich: fix rpath flags in mpif90 when building with oneapi (#33319)
Co-authored-by: eugeneswalker <38933153+eugeneswalker@users.noreply.github.com>
2022-10-29 12:17:43 -06:00
Jonas Thies
83b49070e6 phist: add/update conflicts with cray-libsci and/or python@3.11: for … (#33587)
* phist: add/update conflicts with cray-libsci and/or python@3.11: for versions <1.11.2

* phist: style fix
2022-10-29 10:12:26 -07:00
eugeneswalker
ef8c15c5ef czmq %oneapi: -Wno-error: gnu-null-pointer-arithmetic, strict-prototypes (#33586) 2022-10-29 06:14:15 -06:00
eugeneswalker
c10d525956 json-c %oneapi: add -Wno-error=implicit-function-declaration (#33585) 2022-10-29 06:13:54 -06:00
Satish Balay
6edb20c7a6 mumps: update URLs, and add versions 5.5.0, 5.5.1 (#33597) 2022-10-29 11:34:45 +02:00
Axel Huebl
b06c5a43d9 WarpX 22.10 & PICMI-Standard (#33594)
Update `warpx` & `py-warpx` to the latest release, `22.10`.
Update `py-picmistandard` accordingly.
2022-10-29 11:27:46 +02:00
Adam J. Stewart
06bac4a487 libtiff: CMake support, internal codecs variants (#33591) 2022-10-29 06:36:14 +02:00
Brian Van Essen
6c5a7fefd6 Fixed a bad variant when statement for including cuDNN. (#33595) 2022-10-28 13:21:50 -06:00
Luke Diorio-Toth
04f87da36b new packages (py-auditwheel, py-medaka, py-parasail, py-progressbar33, py-pyspoa) and updates to others (py-scikit-build, py-ont-fast5-api) (#33541)
* Added py-medaka and dependencies

* fixed py-parasail build error

* medaka still doesn't have correct linked libdeflate

* fixed pyspoa deps

* added htslib.patch, confirmed builds and runs

* fixed style

* Update var/spack/repos/builtin/packages/py-auditwheel/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* made requested changes

* added targets for pyspoa dep

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-28 14:05:15 -05:00
Satish Balay
f74a6a4503 netlib-scalapack: fix build error with oneapi compilers (#33539)
/home/xsdk/spack.x/lib/spack/env/oneapi/icx -DAdd_ -Dscalapack_EXPORTS -I/opt/intel/oneapi/mpi/2021.7.0/include -O3 -DNDEBUG -fPIC -MD -MT CMakeFiles/scalapack.dir/BLACS/SRC/dgamx2d_.c.o -MF CMakeFiles/scalapack.dir/BLACS/SRC/dgamx2d_.c.o.d -o CMakeFiles/scalapack.dir/BLACS/SRC/dgamx2d_.c.o -c /home/xsdk/spack.x/spack-stage/spack-stage-netlib-scalapack-2.2.0-uj3jepiowz5is4hmdmjrzjltetgdr3lx/spack-src/BLACS/SRC/dgamx2d_.c
/home/xsdk/spack.x/spack-stage/spack-stage-netlib-scalapack-2.2.0-uj3jepiowz5is4hmdmjrzjltetgdr3lx/spack-src/BLACS/SRC/igsum2d_.c:154:7: error: call to undeclared function 'BI_imvcopy'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
      BI_imvcopy(Mpval(m), Mpval(n), A, tlda, bp->Buff);
      ^
2022-10-28 10:13:51 -06:00
Lucas Nesi
b89f6226f8 starpu: add papi and blocking variants (#33580) 2022-10-28 16:43:45 +02:00
Vasileios Karakasis
c772b662c9 ReFrame: add versions up to v3.12.0 (#33446)
Also adds 4.0 dev versions
2022-10-28 16:38:29 +02:00
Harmen Stoppels
fa0432c521 gitlab ci: patched make 4.3.0 (#33583) 2022-10-28 14:38:57 +02:00
Harmen Stoppels
21e826f256 patchelf: add v0.16.1 (#33579) 2022-10-28 11:15:06 +02:00
eugeneswalker
0896bf928b openblas %oneapi: extend application of --Wno-error=implicit-function-declaration (#33576) 2022-10-28 02:05:59 -06:00
Chris White
d4a0f588e9 CachedCMakePackage: Add back initconfig as a defined phase (#33575)
Also: add type annotation to indicate that "phases" is always a
tuple of strings.
2022-10-27 23:04:18 -07:00
Adam J. Stewart
b81b54a74c py-scikit-learn: add v1.1.3 (#33534) 2022-10-27 19:49:43 -06:00
Diego Alvarez
3ad0952956 nextflow: add 22.10.1 (#33574)
* Add nextflow 22.10.1
* Add trailing comma (style)
2022-10-27 16:41:49 -06:00
Adam J. Stewart
bd51751a8c GDAL: multi-build system support (#33566) 2022-10-27 16:10:12 -06:00
rfbgo
67585fe13e Add vasp variant to control shmem compile options (#33531)
Currently the vasp package always enables the use of shmem to reduce algorithm memory usage (see
https://www.vasp.at/wiki/index.php/Precompiler_options). This is great,but on some systems gives compile errors with the interoperability of C and Fortran. This PR makes that shmem flag optional, but retains the
existing default on behavior.
2022-10-27 14:59:06 -07:00
Robert Cohn
3e966f2547 support pkgconfig for mkl (#33382) 2022-10-27 15:01:59 -06:00
SoniaScard
600948558d ophidia-analytics-framework: new package at v1.7 (#33567)
* ophidia-analytics-framework: new package at v1.7
* Fix code style in ophidia-analytics-framework

Co-authored-by: SoniaScard <SoniaScard@users.noreply.github.com>
Co-authored-by: Donatello Elia <eldoo@users.noreply.github.com>
2022-10-27 13:42:58 -07:00
Adam J. Stewart
a8c0a662a1 py-torchdata: add v0.5.0 (#33568) 2022-10-27 15:02:46 -05:00
Brian Van Essen
6408b51def Support ROCm backing in DiHydrogen (#33563)
* Added support for building the DiHydrogen package and LBANN extensions
to DiHydrogen with ROCm libraries.

Fixed a bug on Cray systems where CMake didn't try hard enough to find
an MPI-compatible compiler wrapper.  Make it look more.

Added support for the roctracer package when using ROCm libraries.

* Fixed how ROCm support is defined for pre-v0.3 versions.
2022-10-27 21:19:56 +02:00
Stephen McDowell
4be67facdc ECP-SDK: enable hdf5-vfd-gds when +cuda (#33300)
- hdf5-vfd-gds:
    - Add new version 1.0.2 compatible with hdf5@1.13.
    - CMake is a build dependency.
    - Set `HDF5_PLUGIN_PATH` in the runtime environment, this plugin
      is loaded dynamically.
- SDK:
    - The VFD GDS driver only has utility when CUDA is enabled.
    - Require hdf5-vfd-gds@1.0.2+ (1.0.1 and earlier do not compile).
2022-10-27 13:51:19 -05:00
Carson Woods
13636a2094 Add new versions to wi4mpi (#33569) 2022-10-27 11:32:20 -07:00
Massimiliano Culpo
ec50906943 Update macOS Python version in CI to 3.10 (#33560) 2022-10-27 20:25:26 +02:00
Ben Boeckel
ea1719d986 Paraview catalyst support (#33369)
* paraview: add support for Catalyst 1 APIs

* paraview: add support for libcatalyst impl support
2022-10-27 12:18:16 -06:00
Miroslav Stoyanov
6f4d69cf8d new version and rocm fix (#33536) 2022-10-27 10:18:44 -07:00
Luke Diorio-Toth
57226a870b py-ncbi-genome-download: new package (#33511)
* py-ncbi-genome-download: new package

* fixed style
2022-10-27 11:51:36 -05:00
Satish Balay
34d55af55d phist: add v1.11.2 (#33561) 2022-10-27 11:44:51 -05:00
Brian Van Essen
5f99d3dfaa spdlog: allow using vendored fmt library (#33379) 2022-10-27 11:13:07 -05:00
Lucas Nesi
86337f042e chameleon: correct chameleon+simgrid build (#33559)
* chameleon: correct chameleon+simgrid build
* chameleon: remove unused declarations
2022-10-27 08:59:06 -07:00
SoniaScard
2960d8ac0a ophidia-io-server: new package at v1.7 (#33436)
Co-authored-by: SoniaScard <SoniaScard@users.noreply.github.com>
2022-10-27 17:52:49 +02:00
psakievich
b9bee70a97 curl: stop auto generating file named str (#33532)
Calling `determine_variants` from the `curl` package autogenerates an empty file every time it is called.
2022-10-27 17:33:51 +02:00
ryandanehy
5a939d9c94 exago, hiop: propagate build type (#32750) 2022-10-27 17:14:09 +02:00
Satish Balay
6cb4a00280 petsc+kokkos: pass in cuda_arch, rocm_arch to kokkos (#33530)
Also remove dependency on kokkos+wrapper
2022-10-27 17:02:36 +02:00
Lucas Nesi
ecdfe02355 starpu: correct fxt dependency variant when simgrid (#33558) 2022-10-27 09:02:09 -06:00
Massimiliano Culpo
b19549ce9d suite-sparse: add versions up to v5.13.0 (#33550) 2022-10-27 17:01:50 +02:00
G-Ragghianti
590c4e35ca Package slate: added requirements for cuda_arch (#33554) 2022-10-27 08:54:16 -06:00
Lucas Nesi
41d53b85f8 simgrid: add v3.32 (#33557) 2022-10-27 08:46:54 -06:00
Mosè Giordano
07d9c254a2 intel-mpi: add cpio as build dependency (#33555) 2022-10-27 08:26:06 -06:00
Massimiliano Culpo
9a51d42cec oce: rework recipe to prefer old intel-tbb (#33553) 2022-10-27 15:34:47 +02:00
Satish Balay
883b7cfa29 hiop: add version 0.7.1 (#33543) 2022-10-27 15:00:15 +02:00
Massimiliano Culpo
605411a9fb LuaPackage: add missing attribute (#33551)
fixes #33544
2022-10-27 06:17:54 -06:00
Harmen Stoppels
df1d233573 Don't fail over cpuinfo (#33546) 2022-10-27 11:14:09 +02:00
Marco De La Pierre
a82a9cf3c1 tower-agent and tower-cli: update versions (#33545) 2022-10-27 11:10:22 +02:00
Massimiliano Culpo
f89be5d7e4 Fix bootstrapping from sources in CI (#33538)
Since #32262 we are not testing bootstrapping from sources, since
we didn't update the mirrors in tests
2022-10-27 07:40:10 +02:00
iarspider
9d7c688d3c cppunit: add static/shared variant, add version 1.15_20220904 (#33522) 2022-10-26 17:04:29 -07:00
Wouter Deconinck
8fc3e49e00 opencascade: new version 7.6.3 (#33518)
* opencascade: new version 7.6.3
* opencascade: correct hash for 7.6.3

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-10-26 17:41:56 -06:00
iarspider
6594f49758 CLHEP: Add checksum for clhep 2.4.5.4, 2.4.6.0; cleanup recipe (#33521)
* CLHEP: patching of CMake policy not needed for new-ish versions
* Add checksum for clhep 2.4.5.4, 2.4.6.0; cleanup recipe
2022-10-26 16:41:40 -07:00
Ben Boeckel
8b202769f4 libcatalyst: add 2.0.0-rc3 release (#33322) 2022-10-26 14:45:55 -06:00
百地 希留耶
4ff8a6a9b7 Windows: fix bootstrap and package install failure (#32942)
* Add patches for building clingo with MSVC
* Help python find clingo DLL
* If an executable is located in "C:\Program Files", Executable was
  running into issues with the extra space. This quotes the exe
  to ensure that it is treated as a single value.

Signed-off-by: Kiruya Momochi <65301509+KiruyaMomochi@users.noreply.github.com>
2022-10-26 13:45:35 -07:00
Satish Balay
5d0ae001a1 slepc: fix for slepc+cuda ^petsc+kokkos+cuda ^kokkos+cuda+wrapper (#33529)
kokkos wrappers modify mpicxx - breaking slepc build.
2022-10-26 13:04:22 -07:00
Miroslav Stoyanov
bfc23f4560 new version (#33537) 2022-10-26 12:38:20 -07:00
Harmen Stoppels
34f9394732 gitlab ci: show build machine info (#33523) 2022-10-26 20:31:16 +02:00
Massimiliano Culpo
30c9ff50dd Allow for packages with multiple build-systems (#30738)
This commit extends the DSL that can be used in packages
to allow declaring that a package uses different build-systems
under different conditions.

It requires each spec to have a `build_system` single valued
variant. The variant can be used in many context to query, manipulate
or select the build system associated with a concrete spec.

The knowledge to build a package has been moved out of the
PackageBase hierarchy, into a new Builder hierarchy. Customization
of the default behavior for a given builder can be obtained by
coding a new derived builder in package.py.

The "run_after" and "run_before" decorators are now applied to
methods on the builder. They can also incorporate a "when="
argument to specify that a method is run only when certain
conditions apply.

For packages that do not define their own builder, forwarding logic
is added between the builder and package (methods not found in one
will be retrieved from the other); this PR is expected to be fully
backwards compatible with unmodified packages that use a single
build system.
2022-10-26 20:17:32 +02:00
Adam J. Stewart
83ee500108 py-torchmetrics: add v0.10.1 (#33535) 2022-10-26 12:14:08 -06:00
Satish Balay
b497581ce7 pflotran: fix build errors with gfortran@10: (#33527)
>> 38    Error: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
2022-10-26 11:33:52 -06:00
Satish Balay
117a82117d petsc, py-petsc4py: add 3.18.1 (#33525) 2022-10-26 09:40:32 -07:00
MatthewLieber
bb64d09ccd Updating package file for osu-micro-benchmarks for the 6.2 release (#33512)
* Updating package file for osu-micro-benchmarks for the 6.2 release
* updating sha hash for 6.2 tarball

Co-authored-by: natshineman <shineman.5@osu.edu>
2022-10-26 09:34:37 -07:00
Matthieu Dorier
8ddb5c3299 [mochi-margo] added version 0.10 (#33519) 2022-10-26 09:20:33 -07:00
Dom Heinzeller
3e37ad9aee Add netcdf-c 4.9.0 and netcdf-fortran 4.6.0 (supersedes #31953) (#33514)
* Add netcdf-c 4.9.0 and netcdf-fortran 4.6.0

With v4.9.0 netcdf-c introduces zstandard compression option which is added as a variant.

* Fix when= in dependency

* Turn on variant zstd by default

Co-authored-by: kgerheiser <kgerheiser@icloud.com>
2022-10-26 09:18:17 -07:00
Satish Balay
b3794761ab alquimia, pflotran, plasma, py-mpi4py, strumpack - add in new versions (#33447)
* alquimia, pflotran, plasma, py-mpi4py, strumpack - add in new versions

* Fix hip CI failure

Co-authored-by: eugeneswalker <eugenesunsetwalker@gmail.com>
2022-10-26 09:09:45 -07:00
Harmen Stoppels
6413862f84 fix use of non-existing kwarg (#33520) 2022-10-26 09:03:40 -07:00
Harmen Stoppels
b92bdf8c72 Relocation regex single pass (#33496)
Instead of looping over multiple regexes and the entire text file
contents, create a giant regex with all literal prefixes and do a single
pass over files to detect prefixes. Not only is a single pass faster,
it's also likely that the regex is compiled better, given that most
prefixes share a common ... prefix.
2022-10-26 10:41:31 +02:00
Harmen Stoppels
a2520e80c0 gitlab ci: install binary deps faster (#33248)
* Fast Gitlab CI job setup, and better legibility

* Use a non-broken, recent GNU Make
2022-10-26 09:19:24 +02:00
Harmen Stoppels
d039744a5b dfs traversal: simplify edges in reverse mode (#33481)
In the dfs code, flip edges so that `parent` means `from` and
`spec` means `to` in the direction of traversal. This makes it slightly
easier to write generic/composable code. For example when using visitors
where one visitor reverses direction, and another only cares about
accepting particular edges or not depending on whether the target node
is seen before, it would be good if the second visitor didn't have to
know whether the order was changed or not.
2022-10-25 22:55:05 -07:00
Mark W. Krentel
57c1d6c410 elfutils: add version 0.187 (#33419)
* elfutils: add version 0.187
* Move conflict for debuginfod to variant when clause.
* Add myself as maintainer.
2022-10-25 19:06:29 -07:00
MichaelLaufer
53a76761d0 Scotch: 'link_error_lib' variant - Link error handling library to libscotch/libptscotch (#33297) 2022-10-25 19:04:04 -07:00
Luke Diorio-Toth
7b053fde89 New packages: mlst, any2fasta, perl-carp, perl-class-method-modifiers, perl-role-tiny, perl-moo, perl-sub-quote (#33274)
* added mlst and deps
* added install() to any2fasta
* added script dependencies, builds OK
* fixed style
* Update var/spack/repos/builtin/packages/any2fasta/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-10-25 16:08:56 -07:00
Harmen Stoppels
b538acb2a9 binary_distribution: compress level 9 -> 6 (#33513)
Use the same compression level as `gzip` (6) instead of what Python uses
(9).

The LLVM tarball takes 4m instead of 12m to create, and is <1% larger.
That's not worth the wait...
2022-10-25 22:15:16 +00:00
Rémi Lacroix
8aa9758024 udunits: Update download URL (#32390)
* udunits: Update download URL
* udunits: Deprecate older versions

Unidata now only provides the latest version of each X.Y branch. Older 2.2 versions have been deprecated accordingly but are still available in the build cache.

Co-authored-by: RemiLacroix-IDRIS <RemiLacroix-IDRIS@users.noreply.github.com>
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-10-25 15:06:52 -05:00
Dom Heinzeller
10aa6bdfc1 Update wgrib2 from JCSDA/NOAA-EMC fork (#32857)
* Update wgrib2 from JCSDA/NOAA-EMC fork
* var/spack/repos/builtin/packages/wgrib2/package.py: fix typo in comment, add conflict for variants netcdf3, netcdf4
* wget hdf5/netcdf4 internal dependencies for wgrib2
* Black-format var/spack/repos/builtin/packages/wgrib2/package.py
* More format changes in var/spack/repos/builtin/packages/wgrib2/package.py
2022-10-25 12:52:01 -07:00
Harmen Stoppels
649e2d3e28 depfile: resurrect lost touch (#33504) 2022-10-25 12:48:24 -07:00
Tamara Dahlgren
512f8d14d2 feature: Add -x|--explicit option to 'spack test run' (#32910) 2022-10-25 12:32:55 -07:00
Jonathon Anderson
9d5151ba25 BinaryCacheIndex: track update failures with cooldown (#33509)
#32137 added an option to update() a BinaryCacheIndex with a
cooldown: repeated attempts within this cooldown would not
actually retry. However, the cooldown was not properly
tracked for failures (which is common when the mirror
does not store any binaries and therefore has no index.json).

This commit ensures that update(..., with_cooldown=True) will
also skip the update even if a failure has occurred within the
cooldown period.
2022-10-25 11:36:12 -07:00
Rémi Lacroix
d2e75045b8 Gmsh: Fix CGNS support for version up to 4.7.1 (#33508)
Gmsh started supporting the "scoping" option of CGNS in version 4.8.0.
2022-10-25 10:40:08 -07:00
Harmen Stoppels
09e0bd55c2 spec.py: prefer transitive link and direct build/run/test deps (#33498)
Due to reuse concretization, we may generate DAGs with two occurrences
of the same package corresponding to distinct specs. This happens when
build dependencies are reused, since their dependencies are ignored in
concretization.

This caused a regression, for example: `spec['openssl']` would take the
'openssl' of the build dep `cmake`, instead of the direct `openssl`
dependency, simply because the edge to `cmake` was traversed first and
we do depth first traversal.

One solution that was discussed is to limit `spec[name]` to just direct
deps, or direct deps + transitive link deps, but this is too breaking.
Instead, this PR simply prioritizes transitive link and direct
build/run/test deps, and then falls back to a full DAG traversal. So,
it's just about order of iteration.
2022-10-25 16:47:50 +02:00
Massimiliano Culpo
00ae74f40e Update Spack Dockerfiles (#33500)
* Use spack bootstrap now in containers

* Fix wrong path glob expression
2022-10-25 11:46:47 +00:00
Massimiliano Culpo
62526c1085 Make CI on Windows fail fast (#33502) 2022-10-25 13:04:25 +02:00
Massimiliano Culpo
4b237349a3 Remove recursive symbolic link in lib/spack/docs from git repository (#33483)
Delete code removing the symlink during CI
2022-10-25 12:27:13 +02:00
Harmen Stoppels
d361378553 Improve legibility of Gitlab CI (#33482)
Use --backtrace in ci instead of --debug to reduce verbosity
and don't show log on error, since log is already printed
2022-10-25 12:21:34 +02:00
Massimiliano Culpo
329adc1d22 CI: speed-up tests by dropping coverage on Python 2.7 (#33497) 2022-10-25 11:41:29 +02:00
Brian Spilner
272767c67f cdo: add new release 2.1.0 (#33303) 2022-10-25 08:49:17 +02:00
Miroslav Stoyanov
8aa09fd1c0 fix problems with missing rocm dependencies (#33381) 2022-10-24 19:34:04 -07:00
Zach Jibben
8e78a91ebd Add py-myst-parser & update py-mdit-py-plugins and py-sphinxcontrib-mermaid (#33427)
* Update py-sphinxcontrib-mermaid

* Add py-myst-parser

* Fix py-mdit-py-plugins and py-myst-parser dependencies

* Add py-exhale package

* Update var/spack/repos/builtin/packages/py-mdit-py-plugins/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-myst-parser/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-myst-parser/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-myst-parser/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update py-exhale and py-myst-parser dependencies

* Add @svenevs as py-exhale maintainer

* Update var/spack/repos/builtin/packages/py-mdit-py-plugins/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-24 20:38:23 -05:00
eugeneswalker
baa21d664b e4s ci: use an appropriate name for cdash build group name (#33494) 2022-10-24 16:15:01 -07:00
iarspider
e7512bcb7b Add filename to text_to_relocate only if it needs to be relocated (#31074)
Scan the text files for relocatable prefixes *before* creating a tarball,
to reduce the amount of work to be done during install from binary
cache. 

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2022-10-24 23:32:46 +02:00
Jon Rood
20492fa48e cppcheck: add version 2.9 (#33491) 2022-10-24 13:37:58 -07:00
Ryan Mulhall
2eb0660a79 update fms package for v2022.04 (#33484)
Co-authored-by: rem1776 <Ryan.Mulhall@noaa.gov>
2022-10-24 13:15:19 -07:00
Danny McClanahan
0b971a1aef redact line numbers from grouped exception message (#33485) 2022-10-24 17:08:18 +00:00
eugeneswalker
a51bd80a5e e4s ci: add chai +rocm (#32506) 2022-10-24 18:16:56 +02:00
eugeneswalker
dda2ff4653 chai +rocm: use hipcc as CMAKE_CXX_COMPILER (#33479) 2022-10-24 09:08:16 -07:00
Luke Diorio-Toth
560a9eec92 py-drep and ANIcalculator: new packages (#33467)
* py-drep: new package

* fixed file extension

* added darwin conflict

* py-checkm-genome and py-pysam: bumped version and updated deps (#10)

added checkm and pysam deps

* added dep documentation and fixed style

* changed checkm and pysam back to dev version for upstreaming

* added url and perl run dep

* fixed style
2022-10-24 09:01:28 -05:00
Harmen Stoppels
d67b12eb79 locks: improved errors (#33477)
Instead of showing

```
==> Error: Timed out waiting for a write lock.
```

show

```
==> Error: Timed out waiting for a write lock after 1.200ms and 4 attempts on file: /some/file
```

s.t. we actually get to see where acquiring a lock failed even when not
running in debug mode.

And use pretty time units everywhere, so we don't get 1.45e-9 seconds
but 1.450ns etc.
2022-10-24 11:54:49 +02:00
Harmen Stoppels
7d99fbcafd backtraces with --backtrace (#33478)
* backtraces without --debug

Currently `--debug` is too verbose and not-`--debug` gives to little
context about where exceptions are coming from.

So, instead, it'd be nice to have `spack --backtrace` and
`SPACK_BACKTRACE=1` as methods to get something inbetween: no verbose
debug messages, but always a full backtrace.

This is useful for CI, where we don't want to drown in debug messages
when installing deps, but we do want to get details where something goes
wrong if it goes wrong.

* completion
2022-10-23 18:12:38 -07:00
Michael Kuhn
6c32c6fbdb py-gcovr: add 5.2 (#33476) 2022-10-23 08:49:57 -05:00
Michael Kuhn
f8a899f904 ca-certificates-mozilla: add 2022-10-11 (#33331) 2022-10-23 13:44:36 +02:00
HELICS-bot
6e0d06c104 helics: Add version 3.3.1 (#33475) 2022-10-23 05:05:54 -06:00
Michael Kuhn
efa6acae86 sqlite: add 3.39.4 (#33339) 2022-10-23 04:45:46 -06:00
Michael Kuhn
e00208c566 gettext: add 0.21.1 (#33333) 2022-10-23 01:33:54 -06:00
Michael Kuhn
d4a7ea8eb0 util-linux, util-linux-uuid: add 2.38.1 (#33342) 2022-10-23 00:49:53 -06:00
Michael Kuhn
3256688f20 python: add 3.10.8, 3.9.15, 3.8.15, 3.7.15 (#33340)
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2022-10-22 21:57:57 -06:00
Michael Kuhn
0bc596fc27 zlib: add 1.2.13 (#33337) 2022-10-22 19:53:51 -06:00
eugeneswalker
afc33518e6 openblas@0.3.21: fix misdetection of gfortran on cray (#33444) 2022-10-22 18:53:52 -06:00
eugeneswalker
8e2696172b netlib-scalapack %cce: add -hnopattern to fflags (#33422) 2022-10-22 09:10:28 -06:00
Massimiliano Culpo
dc110db65d Don't install xdist in CI on Python 2.7 (#33474) 2022-10-22 15:53:42 +02:00
Wouter Deconinck
5e2f258767 acts: new versions (#32969)
* acts: new versions

In the 20.x release line, these are the changes, https://github.com/acts-project/acts/compare/v20.0.0...v20.2.0
- `option(ACTS_SETUP_ACTSVG "Build ActSVG display plugin" OFF)` introduced in v20.1.0
- `option(ACTS_USE_SYSTEM_ACTSVG "Use the ActSVG system library" OFF)` introduced in v20.1.0
- `option(ACTS_BUILD_PLUGIN_ACTSVG "Build SVG display plugin" OFF)` introduced in v20.1.0
- `option(ACTS_USE_EXAMPLES_TBB "Use Threading Building Blocks library in examples" ON)` introduced in v20.1.0
- `option(ACTS_EXATRKX_ENABLE_ONNX "Build the Onnx backend for the exatrkx plugin" OFF)` introduced in v20.2.0
- `option(ACTS_EXATRKX_ENABLE_TORCH "Build the torchscript backend for the exatrkx plugin" ON)` introduced in v20.2.0

In the 19.x release line, these are the changes: https://github.com/acts-project/acts/compare/v19.7.0...v19.9.0
- `option(ACTS_USE_EXAMPLES_TBB "Use Threading Building Blocks library in examples" ON)` introduced in v19.8.0

The new build options have not been implemented in this commit but will be implemented next.

* acts: new variant svg

* actsvg: new package

* actsvg: style fixes

* acts: new versions 20.3.0 and 19.10.0

* astsvg: depends_on boost googletest

* actsvg: new version 0.4.26 (and style fix)

Includes fix to build issue when +examples, https://github.com/acts-project/actsvg/pull/23

* acts: new variant tbb when +examples @19.8:19 @20.1:

* acts: set ACTS_USE_EXAMPLES_TBB

* acts: no need for ACTS_SETUP_ACTSVG

* acts: move tbb variant to examples block

* acts: ACTS_USE_SYSTEM_ACTSDD4HEP removed in 20.3

* acts: use new ACTS_USE_SYSTEM_LIBS

* acts-dd4hep: new version 1.0.1, maintainer handle fixed

* acts: simplify variant tbb condition
2022-10-22 13:56:22 +02:00
Zack Galbreath
6d3869a7d3 Remove x86_64_v4 target from AHUG and ISC stacks (#33464) 2022-10-22 08:53:07 +00:00
Harmen Stoppels
669bbe1e66 stop building binaries for the 1% (#33463) 2022-10-22 02:01:50 -06:00
Andrey Prokopenko
cff76fb23f arborx: add new release 1.3 (#33402)
* arborx: add new release 1.3

* [@spackbot] updating style on behalf of aprokop
2022-10-21 21:36:19 -07:00
Chris White
773de54cd9 honor global spack flags (#33470) 2022-10-21 16:50:01 -06:00
eugeneswalker
3fd097f1d5 raja@0.14.0 +rocm: add -std=c++14 to HIP_HIPCC_FLAGS (#33456) 2022-10-21 14:58:58 -07:00
Alex Richert
9268b14f96 Update maintainers for NOAA/EMC-maintained libraries (#33469)
* Update maintainers for NOAA/EMC-maintained libraries
* Fix line lengths
* Fix line length for gptl
2022-10-21 14:58:24 -07:00
Jon Rood
ffbace0fbd openfast: Fix package file (#33454)
* Fix openfast package file.

* Fix openfast package file.

* Fix typo.

* [@spackbot] updating style on behalf of jrood-nrel

Co-authored-by: jrood-nrel <jrood-nrel@users.noreply.github.com>
2022-10-21 13:50:05 -07:00
Luke Diorio-Toth
6fdb8b2682 py-instrain: added required + optional dependency (#33465)
* added py-instrain dependencies

* fixed style

* removed coverm dep until I have a working coverm package

* added dep documentation
2022-10-21 13:54:23 -06:00
Luke Diorio-Toth
b1836a7c50 updated python version requirements (#33466)
* updated python version requirements

* updated sha256

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-21 13:50:19 -06:00
Luke Diorio-Toth
3c37bfb6d9 py-checkm-genome and py-pysam: bumped version and updated deps (#33449)
* py-checkm-genome and py-pysam: bumped version and updated deps

* updated setuptools dep type

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-21 14:38:18 -05:00
Scott Wittenburg
27921c38ce gitlab: Retry protected publish jobs in certain cases (#32496)
When we lose a running pod (possibly loss of spot instance) or encounter
some other infrastructure-related failure of this job, we need to retry
it.  This retries the job the maximum number of times in those cases.
2022-10-21 10:35:20 -06:00
Harmen Stoppels
f9112a6244 Relocation should take hardlinks into account (#33460)
Currently `relocate_text` and `relocate_text_bin` are unsafe in the
sense that they run in parallel, and lead to races when modifying
different items pointing to the same inode.

This leads to the issue observed in #33453.

This PR:

1. Renames those functions to `unsafe_*` so people are aware
2. Adds logic to deal with hardlinks in current binary packages
3. Adds logic to deal with hardlinks when creating new binary tarballs,
   so the install side doesn't have to de-dupe hardlinks.
4. Adds a test for 3

The assumption is that all our relocation logic preserves inodes. That
is, we should never copy a file, modify it, and then move it back. I
quickly verified, and its seems like this is true for (binary) text
relocation, as well as rpath patching in patchelf (even when the file
grows) and mach-o fixes.
2022-10-21 18:30:26 +02:00
eugeneswalker
7c3d93465c axom@0.7.0: require cmake@3.21: (#33450)
* axom@0.7.0: require cmake@3.21:

* Update var/spack/repos/builtin/packages/axom/package.py

Co-authored-by: Chris White <white238@llnl.gov>

Co-authored-by: Chris White <white238@llnl.gov>
2022-10-21 08:15:31 -07:00
Harmen Stoppels
428a8f72a0 git: new versions and deprecations (#33408) 2022-10-21 15:02:39 +02:00
Harmen Stoppels
b1559cc831 gitlab: when_possible -> false (#33443)
`reuse` and `when_possible` concretization broke the invariant that
`spec[pkg_name]` has unique keys. This invariant is relied on in tons of
places, such as when setting up the build environment.

When using `when_possible` concretization, one may end up with two or
more `perl`s or `python`s among the transitive deps of a spec, because
concretization does not consider build-only deps of reusable specs.

Until the code base is fixed not to rely on this broken property of
`__getitem__`, we should disable reuse in CI.
2022-10-21 14:42:06 +02:00
Satish Balay
93db654b8d intel-tbb: add in versions 2021.7.0, 2021.6.0 (#33445)
2021.7.0 fixes build on linux-ubuntu20.04-skylake / oneapi@2022.2.0
2022-10-21 06:34:18 -04:00
Massimiliano Culpo
abf3a696bd Remove "spack buildcache copy" in v0.19.0 (#33437) 2022-10-21 12:17:53 +02:00
eugeneswalker
1e4732d5fe e4s ci: add raja +rocm (#32505) 2022-10-20 14:26:18 -07:00
Luke Diorio-Toth
9621b2bb3b replaced package shortbred with py-shortbred (#33404)
* fixed version numbers to python 2 and old biopython

* changed shortbred pacakge to pypi, removed python 2 version

* added package description

* re-added shortbred package with depreciated flag

* fixed style and removed unnecessary python dep (it can't build with python 2 anyway)

* removed whitespace and readded the python2.7.9+ dep

* fixed style
2022-10-20 15:44:57 -05:00
Mikael Simberg
ee721f9c91 Add Boost 1.80.0 (#32879)
* Add Boost 1.80.0
* Add conflict for Boost 1.80.0 and dealii
* Add conflict for Boost 1.80 and %oneapi
2022-10-20 13:32:25 -07:00
eugeneswalker
e981ab9b65 hiop: add v0.7.0 (#33441)
* hiop: add v0.7.0

* Update var/spack/repos/builtin/packages/hiop/package.py

Co-authored-by: Cameron Rutherford <cameron.rutherford@me.com>

Co-authored-by: Cameron Rutherford <cameron.rutherford@me.com>
2022-10-20 20:21:43 +00:00
Cody Balos
e60e743843 kokkos and kokkos-kernels: add new versions (#33301)
* kokkos: add version 3.7.00
* kokkos-kernels: add versions 3.6.01 and 3.7.00
* add correct kokkos dependence
2022-10-20 11:50:59 -07:00
Satish Balay
70e369086c butterflypack: add version 2.2.2 and openmp variant (#33416)
- add conflcit with gcc < 7
- fails with MacOS sed - so add in (gnu) sed as build dependency
2022-10-20 11:20:45 -07:00
Jon Rood
cd015b8498 Update OpenFAST package file (#33438)
* Update OpenFAST package file.
* Add comment.
2022-10-20 11:04:55 -07:00
SoniaScard
69e66f57a9 ophidia-primitives: new package at v1.7 (#33434)
* ophidia-primitives: new package at v1.7
* ophidia-primitives: Add mantainers
* ophidia-primitives: Fix style

Co-authored-by: SoniaScard <SoniaScard@users.noreply.github.com>
2022-10-20 10:56:53 -07:00
Adam J. Stewart
0b873be13c py-rasterio: add v1.3.3 (#33428) 2022-10-20 10:12:59 -07:00
Rémi Lacroix
b3e04e8cd2 spdlog: Add version 1.10.0 (#33431) 2022-10-20 10:12:02 -07:00
Scott Wittenburg
9a1957c881 gitlab: Do not use root_spec['pkg_name'] anymore (#33403)
* gitlab: Do not use root_spec['pkg_name'] anymore

For a long time it was fine to index a concrete root spec with the name
of a dependency in order to access the concrete dependency spec.  Since
pipelines started using `--use-buildcache dependencies:only,package:never`
though, it has exposed a scheduling issue in how pipelines are
generated.  If a concrete root spec depends on two different hashes of
`openssl` for example, indexing that root with just the package name
is ambiguous, so we should no longer depend on that approach when
scheduling jobs.

* env: make sure exactly one spec in env matches hash
2022-10-20 10:33:18 -06:00
G-Ragghianti
af5d6295d5 Change scalapack to test-only dependency (#33433) 2022-10-20 08:42:52 -07:00
eugeneswalker
3e1db75372 arpack-ng %cce: add -hnopattern to fflags (#33424) 2022-10-20 08:09:35 -07:00
Luke Diorio-Toth
70d2556f4b py-bakta: new package (#33417) 2022-10-20 08:22:59 -05:00
Massimiliano Culpo
89cf5004db FIX CI after git update (#33429)
Add `protocol.file.allow always` to git configuration in CI
2022-10-20 09:46:04 +02:00
eugeneswalker
8aac0d09d4 e4s ci: add umpire +rocm (#32504) 2022-10-19 17:05:45 -06:00
Richard Berger
0934c4d602 singularity-eos: new version 1.6.2 (#33415) 2022-10-19 14:06:44 -07:00
Harmen Stoppels
e1344067fd depfile: buildcache support (#33315)
When installing some/all specs from a buildcache, build edges are pruned
from those specs. This can result in a much smaller effective DAG. Until
now, `spack env depfile` would always generate a full DAG.

Ths PR adds the `spack env depfile --use-buildcache` flag that was
introduced for `spack install` before. This way, not only can we drop
build edges, but also we can automatically set the right buildcache
related flags on the specific specs that are gonna get installed.

This way we get parallel installs of binary deps without redundancy,
which is useful for Gitlab CI.
2022-10-19 13:57:06 -07:00
Jon Rood
ae7999d7a1 Simplify TIOGA package (#33396)
* Update TIOGA package.

* Add comment.

* Remove cuda variant and MPI_ROOT.

* Style.
2022-10-19 13:33:01 -07:00
Adam J. Stewart
4b0832d3bc py-pandas: add v1.5.1 (#33412) 2022-10-19 14:18:00 -06:00
Sergey Kosukhin
ef872cc64b mpich: enable building when @3.4~cuda (#33325) 2022-10-19 13:04:32 -07:00
eugeneswalker
1f0751defe patch std::filesystem check as done in llnl/umpire pr#784 (#33250) 2022-10-19 14:14:46 -05:00
eugeneswalker
fa30f74e0c umpire +rocm: use hipcc as CMAKE_CXX_COMPILER (#33377) 2022-10-19 12:53:58 -06:00
eugeneswalker
6b45e2fef1 raja +rocm: use hipcc as CMAKE_CXX_COMPILER (#33375) 2022-10-19 13:43:51 -05:00
Luke Diorio-Toth
5cce66be75 pilercr: new package (#33251)
* new package
* fixed style
* actually building now
2022-10-19 11:41:39 -07:00
eugeneswalker
9f89926980 axom: python only reliably available when +python, +devtools (#33414) 2022-10-19 11:41:52 -06:00
Massimiliano Culpo
7ad7fde09c Add a command to bootstrap Spack right now (#33407) 2022-10-19 19:25:20 +02:00
Stephen Sachs
25cbb34579 Relocate "run" type dependencies too (#33191)
When downloading from binary cache not only replace RPATHs to dependencies, but
also text references to dependencies.

Example:
`autoconf@2.69` contains a text reference to the executable of its dependency
`perl`:

```
$ grep perl-5 /shared/spack/opt/spack/linux-amzn2-x86_64_v3/gcc-7.3.1/autoconf-2.69-q3lo/bin/autoreconf
eval 'case $# in 0) exec /shared/spack/opt/spack/linux-amzn2-x86_64_v3/gcc-7.3.1/perl-5.34.1-yphg/bin/perl -S "$0";; *) exec /shared/spack/opt/spack/linux-amzn2-x86_64_v3/gcc-7.3.1/perl-5.34.1-yphg/bin/perl -S "$0" "$@";; esac'
```

These references need to be replace or any package using `autoreconf` will fail
as it cannot find the installed `perl`.

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-10-19 17:37:07 +02:00
Jonathon Anderson
a423dc646a Update the binary index before attempting direct fetches (#32137)
"spack install" will not update the binary index if given a concrete
spec, which causes it to fall back to direct fetches when a simple
index update would have helped. For S3 buckets in particular, this
significantly and needlessly slows down the install process.

This commit alters the logic so that the binary index is updated
whenever a by-hash lookup fails. The lookup is attempted again with
the updated index before falling back to direct fetches. To avoid
updating too frequently (potentially once for each spec being
installed), BinaryCacheIndex.update now includes a "cooldown"
option, and when this option is enabled it will not update more
than once in a cooldown window (set in config.yaml).

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-10-19 09:36:27 -06:00
Tamara Dahlgren
3ec7304699 spack checksum: warn if version is deprecated (#32438)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-10-18 22:51:38 +00:00
Robert Cohn
7bb4b58b8b intel-oneapi-compilers: do not pass -Wno-unused-command-line-argument to icc + refactor (#33389) 2022-10-18 16:17:50 -06:00
Tamara Dahlgren
13356f3bfa Docs: Spack info option updates (#33376) 2022-10-18 21:11:21 +02:00
Harmen Stoppels
c6c5e56ec1 Reusable --use-buildcache with better validation (#33388)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-10-18 18:52:28 +00:00
Bernhard Kaindl
1ae32ff62c go,gcc: Support external go compilers for Go bootstrap (#27769)
For ARM64, fallback to gccgo. (go-bootstrap@1.4 can't support ARM64)
2022-10-18 10:18:49 -07:00
Howard Pritchard
d95f14084e papi: fix for Intel OneAPI compiler (#33225)
Without this patch one hits this error trying to compiler papi with Intel OneAPI:

icx: error: Note that use of '-g' without any optimization-level option will turn off most compiler optimizations similar to use of '-O0' [-Werror,-Wdebug-disables-optimization]

Signed-off-by: Howard Pritchard <howardp@lanl.gov>

Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2022-10-18 11:18:04 -06:00
snehring
b44c83429c vsearch: add v2.22.1 (#33327) 2022-10-18 08:59:38 -06:00
snehring
8e8d6e5adb mothur: add v1.48.0 and variants (#33326) 2022-10-18 08:54:23 -06:00
dependabot[bot]
b21e54dffa build(deps): bump docker/setup-buildx-action from 2.1.0 to 2.2.0 (#33384)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 2.1.0 to 2.2.0.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](95cb08cb26...c74574e6c8)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-18 10:22:30 +02:00
Massimiliano Culpo
fe2656f182 intel-oneapi-compilers: fix Python 2.7 compliance (#33383) 2022-10-18 07:19:25 +02:00
Adam J. Stewart
0b014ff9cd py-fiona: add v1.8.22 (#33372) 2022-10-17 22:33:50 -06:00
eugeneswalker
dd003f66a8 e4s ci stack: add trilinos +rocm (#31601) 2022-10-17 21:04:31 +00:00
Michael Kuhn
9d11b96e4b lz4: add 1.9.4 (#33334) 2022-10-17 14:42:03 -06:00
Brian Van Essen
47bfc60845 Bugfix HIP and aluminum rocm build (#33344)
* Fixed two bugs in the HIP package recipe.  The first is that the
HIP_PATH was being set to the actual spec, and not the spec prefix.

The second bug is that HIP is expected to be in /opt/rocm-x.y.z/hip
but it's libraries can exist at both /opt/rocm-x.y.z/hip/lib and
/opt/rocm-x.y.z/lib.  This means that the external detection logic may
find it in either and it turns out that some modules only expose one
of those two locations.  Logic is added to ensure that the internal
HIP_PATH and associated ROCM_PATH are correctly set in both cases.

* Added support for Aluminum to use the libfabric plugin with either
RCCL or NCCL.
2022-10-17 13:07:27 -07:00
Mosè Giordano
9b87b4c8cd grid: reference fftw-api instead of fftw (#33374)
This makes it possible to compile with, e.g., `cray-fftw`, not just `fftw`.
2022-10-17 14:06:15 -06:00
snehring
c0361168a5 New packages: libbigwig, methyldackel (#33273)
* libbigwig: adding new package libbigwig
* methyldackel: adding new package methyldackel
* libbigwig: tighten up curl variant
2022-10-17 12:40:01 -07:00
Robert Underwood
da6aeaad44 Initial contribution of LibPressio ecosystem (#32630)
* Add libpressio and dependencies; some of these packages are
  maintained as forks of the original repositories and in those
  cases the docstring mentions this.
* Add optional dependency in adios2 on libpressio
* cub package: set CUB_DIR environment variable for dependent
  installations
* Clear R_HOME/R_ENVIRON before Spack installation (avoid sources
  outside of Spack from affecting the installation in Spack)
* Rename dlib to dorian3d-dlib and update dependents; add new dlib
  implementation. Pending an official policy on how to handle
  packages with short names, reviewer unilaterally decided that
  the rename was acceptable given that the new Spack dlib package
  is referenced more widely (by orders of magnitude) than the
  original

Co-authored-by: Samuel Li <shaomeng@users.noreply.github.com>
2022-10-17 13:30:54 -06:00
Luke Diorio-Toth
fb090a69f4 py-xopen: version bump to 1.6.0 (#33231)
* version bump to 1.6.0

* added py-isal, updated URL
2022-10-17 19:16:09 +00:00
Stephen Sachs
2e55812417 Classic Intel compilers do not support gcc-toolchain (#33281)
* Classic Intel compilers do not support gcc-toolchain

This fix removes `--gcc-toolchain=` from the ~.fcg` files for the classic Intel
compilers. AFAIK this option is only supported for Clang based compilers.

This lead to an issue when installing cmake. Reproducer:
```
spack install cmake@3.24.2%intel@2021.7.0~doc+ncurses+ownlibs~qt
build_type=Release arch=linux-amzn2-skylake_avx512
```

Tagging maintainer @rscohn2

* Add `-gcc-name` for icc

.. and `-gxx-name` for icpc.

AFAIK this is used for modern C++ support, so we can ignore `ifort`.

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-10-17 10:46:11 -06:00
Harmen Stoppels
e7b14dd491 database: don't warn adding missing build deps (#33361)
When installing an individual spec `spack --only=package --cache-only /xyz`
from a buildcache, Spack currently issues tons of warnings about
missing build deps (and their deps) in the database.

This PR disables these warnings, since it's fine to have a spec without
its build deps in the db (they are just "missing").
2022-10-17 18:30:19 +02:00
Adam J. Stewart
839cf48352 py-horovod: add v0.26 (#33311)
* py-horovod: add v0.26

* py-petastorm: add v0.12.0
2022-10-17 09:14:55 -07:00
Harmen Stoppels
39105a3a6f installer.py: traverse_dependencies has local deptype (#33367)
Currently `traverse_dependencies` fixes deptypes to traverse once and
for all in the recursion, but this is incorrect, since deptypes depend
on the node (e.g. if it's a dependency and cache-only, don't follow
build type edges, even if the parent is build from sources and needs
build deps.)
2022-10-17 16:14:12 +00:00
Massimiliano Culpo
9081871966 GnuPG: add v2.3.8 and update stack (#33368) 2022-10-17 10:13:52 -06:00
iarspider
ad430a7504 Add checksum for py-ipykernel 6.15.2 (#33360) 2022-10-17 10:59:21 -05:00
iarspider
db342d8727 Add checksum for py-secretstorage 3.3.3 (#33366) 2022-10-17 10:54:31 -05:00
Carlos Bederián
32761cdb7b python: add 3.10.7, 3.9.14, 3.8.14, 3.7.14 (#32623) 2022-10-17 17:47:10 +02:00
Scott Wittenburg
29df7e9be3 Support spackbot rebuilding all specs from source (#32596)
Support spackbot rebuilding all specs from source when asked (with "rebuild everything")

- Allow overriding --prune-dag cli opt with env var
- Use job variable to optionally prevent rebuild jobs early exit behavior
- ci rebuild: Use new install argument to insist deps are always installed from binary, but
package is only installed from source.
- gitlab: fix bug w/ untouched pruning
- ci rebuild: install from hash rather than json file
- When doing a "rebuild everything" pipeline, make sure that each install job only consumes
binary dependencies from the mirror being populated by the current pipeline.  This avoids
using, e.g. binaries from develop, when rebuilding everything on a PR.
- When running a pipeline to rebuild everything, do not die because we generated a hash on
the broken specs list.  Instead only warn in that case.
- bugfix: Replace broken no-args tty.die() with sys.exit(1)
2022-10-17 09:45:09 -06:00
Harmen Stoppels
ea80113d0f Github Discussions can be used for Q&A (#33364) 2022-10-17 08:38:25 -07:00
Rui Peng Li
4fe53061a8 hypre 2.26.0 (#33299) 2022-10-17 08:31:28 -07:00
iarspider
bfe49222d5 Add checksum for py-prompt-toolkit 3.0.31 (#33362) 2022-10-17 09:02:19 -06:00
iarspider
42a27f3075 Add checksum for py-grpcio-tools 1.48.1 (#33358) 2022-10-17 10:01:22 -05:00
Harmen Stoppels
e882583b01 installer.py: fix/test get_deptypes (#33363)
Fixing an oversight in https://github.com/spack/spack/pull/32537

`get_deptypes` should depend on new `package/dependencies_cache_only`
props.
2022-10-17 08:57:58 -06:00
Scott Wittenburg
1be6506e29 gitlab ci: Do not force protected build jobs to run on aws runners (#33314) 2022-10-17 07:29:56 -07:00
iarspider
25e35c936b Add checksum for py-astroid 2.12.7, py-astroid 2.12.10, py-setuptools 62.6.0, py-wrapt 1.14.1, py-pylint 2.15.0 (#32976)
* Add checksum for py-astroid 2.12.7, py-setuptools 62.6.0

* Also add checksum for py-wrapt

* Update package.py

* Update package.py (#57)

* Update package.py

* Update package.py

* Update package.py
2022-10-17 08:09:52 -06:00
Harmen Stoppels
2c802c12a5 installer.py: show timers for binary install (#33305)
Print a message of the form
```
Fetch mm:ss.  Build: mm:ss.  Total: mm:ss
```
when installing from buildcache. 

Previously this only happened for source builds.
2022-10-17 15:54:40 +02:00
iarspider
f3523d8655 py-jupyterlab-pygments: install from wheel to avoid cyclic dependency (#33278)
* py-jupyterlab-pygments: avoid cyclic dependency

* Fix style

* Update package.py

* Update package.py

* [@spackbot] updating style on behalf of iarspider

* Update package.py

* Flake-8

* fix

Co-authored-by: iarspider <iarspider@users.noreply.github.com>
2022-10-17 07:42:01 -06:00
Adam J. Stewart
84fbccd682 py-numpy: add v1.23.4 (#33260) 2022-10-17 15:23:08 +02:00
iarspider
8dc2d37447 Add checksum for py-sniffio 1.3.0 (#32975) 2022-10-17 05:19:40 -06:00
Harmen Stoppels
9933a9046a py-tensorflow-hub: zlib, again. (#33359) 2022-10-17 12:39:16 +02:00
Michael Kuhn
f3ebe237e5 mariadb-c-client: add 3.3.2, 3.2.7, 3.1.18, 3.0.10 (#33335) 2022-10-17 09:53:07 +02:00
Wouter Deconinck
7993d10e54 sdl2: add v2.0.22 and v2.24.1 (#33351) 2022-10-17 09:37:34 +02:00
Diego Alvarez
574ab3e40a nextflow: add v20.10.0 (#33354) 2022-10-17 09:35:45 +02:00
Mosè Giordano
1338dbca56 libblastrampoline: Add versions 5.1.1, 5.2.0 (#33352) 2022-10-17 09:23:51 +02:00
Adam J. Stewart
02fb32bc1e py-setuptools: add v65.5.0 (#33353) 2022-10-17 09:17:10 +02:00
Adam J. Stewart
25e4d48227 py-sphinx: add v5.3 and v5.2 (#33356) 2022-10-16 22:45:07 +02:00
Hans Fangohr
7547f1c414 octopus: upgrade to 12.1 (#33343) 2022-10-16 18:19:01 +02:00
Miroslav Stoyanov
0c505e459b tasmanian: disable openmp by default (#33345) 2022-10-16 18:17:44 +02:00
Adam J. Stewart
23fe981c41 py-meson-python: add new versions (#33294) 2022-10-16 18:00:24 +02:00
Harmen Stoppels
f7f11fc881 py-tensorflow: fix zlib (#33349)
* py-tensorflow: fix zlib

* [@spackbot] updating style on behalf of haampie

Co-authored-by: haampie <haampie@users.noreply.github.com>
2022-10-16 05:09:56 -06:00
Adam J. Stewart
496f4193a6 meson: update OneAPI compiler support patch (#33293) 2022-10-16 11:53:54 +02:00
Jonathon Anderson
10491e98a8 CI: allow multiple matches to combine tags (#32290)
Currently "spack ci generate" chooses the first matching entry in
gitlab-ci:mappings to fill attributes for a generated build-job,
requiring that the entire configuration matrix is listed out
explicitly. This unfortunately causes significant problems in
environments with large configuration spaces, for example the
environment in #31598 (spack.yaml) supports 5 operating systems,
3 architectures and 130 packages with explicit size requirements,
resulting in 1300 lines of configuration YAML.

This patch adds a configuraiton option to the gitlab-ci schema called
"match_behavior"; when it is set to "merge", all matching entries
are applied in order to the final build-job, allowing a few entries
to cover an entire matrix of configurations.

The default for "match_behavior" is "first", which behaves as before
this commit (only the runner attributes of the first match are used).

In addition, match entries may now include a "remove-attributes"
configuration, which allows matches to remove tags that have been
aggregated by prior matches. This only makes sense to use with
"match_behavior:merge". You can combine "runner-attributes" with
"remove-attributes" to effectively override prior tags.
2022-10-15 17:29:53 +00:00
iarspider
898c0b45fb Add checksum for py-seaborn 0.12.0 (#33145)
* Add checksum for py-seaborn 0.12.0

* Update package.py

* Update package.py

* [@spackbot] updating style on behalf of iarspider

* Update package.py

Co-authored-by: iarspider <iarspider@users.noreply.github.com>
2022-10-15 10:34:30 -05:00
Michael Kuhn
b2d7782b00 rocksdb: add 7.7.3 (#33341) 2022-10-14 22:34:17 -06:00
Harmen Stoppels
2f6a56a43b depfile: update docs (#33279) 2022-10-15 06:10:05 +02:00
Michael Kuhn
31cda96181 glib: add 2.74.0 and 2.72.4 (#33332) 2022-10-14 21:27:08 -06:00
WuK
19226ecc49 gptl: new version 8.1.1; use the correct mpi fortran compiler (#33235)
* gptl: new version 8.1.1; use the correct `mpifc`
* add `F90` and `$F77`
2022-10-14 15:54:41 -07:00
Greg Sjaardema
2a166a5cc4 seacas: update to latest release (#33330)
Add checksum for latest tag/release
2022-10-14 15:49:06 -07:00
Erik Schnetter
a661193c64 ninja: New version 1.11.1 (#33215) 2022-10-14 14:31:42 -06:00
iarspider
9546eadd98 Add checksum for py-oauthlib 3.2.1 (#33201)
* Add checksum for py-oauthlib 3.2.1

* Update package.py

* [@spackbot] updating style on behalf of iarspider

* Update package.py

* Update package.py

Co-authored-by: iarspider <iarspider@users.noreply.github.com>
2022-10-14 12:46:08 -06:00
John-Luke Navarro
89b3e6c6d0 py-libensemble: updating package for v0.9.3 (#33298)
* commit updating py-libensemble package for 0.9.3

* removed commented-out lines
2022-10-14 11:01:57 -05:00
Satish Balay
6983d520fa petsc,py-petsc4py,slepc,py-slepc4py: add version 3.18.0 (#32938)
* petsc,py-petsc4py,slepc,py-slepc4py: add version 3.18.0

* workaround for dealii build failure [with petsc version check]

* pism: add compatibility fix to for petsc@3.18

* add in hipsolver dependency
2022-10-14 08:12:16 -07:00
eugeneswalker
c44934a44d hip@5.2.0 onwards: set prefix properly (#33257)
* hip-set-prefix-rocm5.2.0-onwards

* Update var/spack/repos/builtin/packages/hip/package.py

Update description

Co-authored-by: Satish Balay <balay@mcs.anl.gov>
2022-10-14 08:12:07 -07:00
Auriane R
67bc90acb7 Fix pika@0.9.0 sha (#33307) 2022-10-14 07:13:57 -06:00
Dan Bonachea
0de1f98920 UPC++/GASNet-EX 2022.9.0 update (#33277)
* gasnet: Add new release hash
* upcxx: Add new release hash
* gasnet: misc updates
* upcxx: misc updates
2022-10-13 18:50:27 -07:00
iarspider
c13381fab3 Add checksum for py-gitpython 3.1.27 (#33285)
* Add checksum for py-gitpython 3.1.27

* Update package.py

* Update var/spack/repos/builtin/packages/py-gitpython/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-13 20:27:39 -05:00
Adam J. Stewart
d5ebb55338 meson: remove slash in path (#33292) 2022-10-13 20:26:51 -05:00
Scott Wittenburg
7da303334e gitlab ci: Print better information about broken specs (#33124)
When a pipeline generation job is automatically failed because it
generated jobs for specs known to be broken on develop, print better
information about the broken specs that were encountered.  Include
at a minimum the hash and the url of the job whose failure caused it
to be put on the broken specs list in the first place.
2022-10-13 16:35:07 -06:00
iarspider
43dd34b651 Add checksum for py-psutil 5.9.2 (#33139) 2022-10-13 15:06:06 -06:00
Jim Edwards
00ea25061f add version 1.12.3 of parallel-netcdf (#33286) 2022-10-13 14:51:50 -06:00
Harmen Stoppels
75f71d3f81 py-execnet: 1.9.0 (#33282)
* py-execnet: 1.9.0

* bounds
2022-10-13 14:22:08 -06:00
Luke Diorio-Toth
f74742b834 new package (#33262) 2022-10-13 15:01:16 -05:00
Harmen Stoppels
599480ae9a Add missing upperbound to docs/spack.yaml (#33280) 2022-10-13 11:54:20 -07:00
Gregory Lee
feb1f3aadb libcroco does not respect gtk-doc configure flag, so removing variant (#32890)
* libcroco does not respect gtk-doc configure flag, so removing variant
2022-10-13 11:51:28 -07:00
Adam J. Stewart
8ce1574e0c py-meson: remove package (#33295) 2022-10-13 12:22:09 -06:00
Luke Diorio-Toth
7f24ab9b0a py-alive-progress, py-about-time, py-graphme: new packages (#33252)
* new package + deps

* Update var/spack/repos/builtin/packages/py-about-time/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-alive-progress/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* removed unnecessary python version dep

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-13 12:22:03 -06:00
Chris White
5167eed558 Lua: Add versions and minor clean up (#33037)
* add new lua releases

* split install phase and move it into a build phase, remove hardcoded standard flag

* revert back to the original hardcoded std flag, guard patch against versions above 5.4
2022-10-13 11:51:07 -06:00
Adam J. Stewart
3014caa586 py-kornia: add v0.6.8 (#33287) 2022-10-13 12:42:27 -05:00
Adam J. Stewart
6ac1f445ec py-shapely: add v1.8.5 (#33259) 2022-10-13 11:52:20 -05:00
iarspider
be93b27ffc Add checksum for py-atomicwrites 1.4.1 (#33284) 2022-10-13 11:42:58 -05:00
iarspider
9c6c296474 Add checksum for py-asn1crypto 1.5.1 (#33283) 2022-10-13 11:42:19 -05:00
Cameron Rutherford
e20d45f3bc Fix ROCm constraints for ginkgo@glu_experimental in HiOp (#32499)
* Remove ROCm constraints for ginkgo@glu_experimental.

* Fix style.

* Apply @tcojean suggestion.

* Fix hip_repair_options in camp package.

* Remvoe old ROCm logic.

* Remove added whitespace.

* Fix style issue.

* Revert camp changes.

* Revert camp whitespace change.

* Set Ginkgo preferred version to 1.4.0
2022-10-13 09:41:18 -07:00
Laurent Aphecetche
0c4ad440c6 py-pyopenssl: add version 22.1.0 (#33189)
* py-pyopenssl: add version 22.1.0

* Update var/spack/repos/builtin/packages/py-pyopenssl/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-13 11:32:11 -05:00
iarspider
93be19d0e3 Add checksum for py-bokeh 2.4.3 (#33236)
* Add checksum for py-bokeh 2.4.3

* [@spackbot] updating style on behalf of iarspider

Co-authored-by: iarspider <iarspider@users.noreply.github.com>
2022-10-13 11:31:42 -05:00
iarspider
4c151e0387 Add checksum for py-mpld3 0.5.8 (#33239) 2022-10-13 11:29:48 -05:00
iarspider
0af5838581 Add checksum for py-cloudpickle 2.2.0 (#33240) 2022-10-13 11:28:52 -05:00
iarspider
828fddacf1 Add checksum for py-bottle 0.12.23 (#33241) 2022-10-13 11:28:15 -05:00
iarspider
268a43762c Add checksum for py-pymongo 4.2.0 (#33234) 2022-10-13 11:25:43 -05:00
iarspider
bd263b71da Add checksum for py-keyring 23.9.1 (#33185)
* Add checksum for py-keyring 23.9.1

* Update package.py
2022-10-13 11:24:35 -05:00
iarspider
f76a3a1a73 Add checksum for py-setuptools-rust 1.5.1 (#33188)
* Add checksum for py-setuptools-rust 1.5.1

* Update package.py
2022-10-13 11:24:05 -05:00
iarspider
5eeb81c253 Add checksum for py-jupyter-server-mathjax 0.2.6 (#33203)
* Add checksum for py-jupyter-server-mathjax 0.2.6

* Update package.py

* Update package.py
2022-10-13 11:23:38 -05:00
iarspider
4ddf011c56 Add checksum for py-regex 2022.8.17 (#33209)
* Add checksum for py-regex 2022.8.17

* Update var/spack/repos/builtin/packages/py-regex/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-13 11:23:07 -05:00
iarspider
f5704fff69 Add checksum for py-async-lru 1.0.3 (#33196)
* Add checksum for py-async-lru 1.0.3

* [@spackbot] updating style on behalf of iarspider

* Update var/spack/repos/builtin/packages/py-async-lru/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update package.py

Co-authored-by: iarspider <iarspider@users.noreply.github.com>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-13 11:22:37 -05:00
dependabot[bot]
a8b1314d18 Bump docker/login-action from 2.0.0 to 2.1.0 (#33268)
Bumps [docker/login-action](https://github.com/docker/login-action) from 2.0.0 to 2.1.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](49ed152c8e...f4ef78c080)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-13 09:49:26 +02:00
dependabot[bot]
601c727491 Bump docker/setup-buildx-action from 2.0.0 to 2.1.0 (#33267)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 2.0.0 to 2.1.0.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](dc7b9719a9...95cb08cb26)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-13 09:48:55 +02:00
William R Tobin
40c400441a exodusii: add fortran variant (#33074)
* add fortran variant, pass cmake options to build with fortran + specified compiler/mpi compiler wrapper (following existing style in the package), activate exodus fortran wrapper library compilation
* change variant description, fix style
2022-10-12 15:28:35 -07:00
Max Zeyen
a2dee76310 gpi-space: add new version (#33184)
* gpi-space: add new version
* gpi-space: fix flake8 formatting issues
* gpi-space: fix more flake8 issues
2022-10-12 15:23:19 -07:00
Brian Van Essen
f24c135383 Added hash for version 2.7.0-6 (#33263) 2022-10-12 14:35:45 -07:00
Harmen Stoppels
5009e3d94a env depfile: allow deps only install (#33245)
* env depfile: allow deps only install

- Refactor `spack env depfile` to use a Jinja template, making it a bit
  easier to follow as a human being.
- Add a layer of indirection in the generated Makefile through an
  `<prefix>/.install-deps/<hash>` target, which allows one to specify
  different options when installing dependencies. For example, only
  verbose/debug mode on when installing some particular spec:
  ```
  $ spack -e my_env env depfile -o Makefile --make-target-prefix example
  $ make example/.install-deps/<hash> -j16
  $ make example/.install/<hash> SPACK="spack -d" SPACK_INSTALL_FLAGS=--verbose -j16
  ```

This could be used to speed up `spack ci rebuild`:
- Parallel install of dependencies from buildcache
- Better readability of logs, e.g. reducing verbosity when installing
  dependencies, and splitting logs into deps.log and current_spec.log

* Silence please!
2022-10-12 14:30:00 -07:00
Filippo Spiga
8dbdfbd1eb NVIDIA HPC SDK: add v22.9 (#33258) 2022-10-12 15:17:53 -06:00
Glenn Johnson
042fcc3575 update Bioconductor R packages (#33224)
* Add bioc attribute to r-do-db
* add version 1.38.1 to bioconductor package r-annotationforge
* add version 1.30.4 to bioconductor package r-biocparallel
* add version 2.64.1 to bioconductor package r-biostrings
* add version 4.4.4 to bioconductor package r-clusterprofiler
* add version 2.12.1 to bioconductor package r-complexheatmap
* add version 1.18.1 to bioconductor package r-delayedmatrixstats
* add version 3.22.1 to bioconductor package r-dose
* add version 3.38.4 to bioconductor package r-edger
* add version 1.16.2 to bioconductor package r-enrichplot
* add version 2.20.2 to bioconductor package r-ensembldb
* add version 1.32.4 to bioconductor package r-genomeinfodb
* add version 1.32.1 to bioconductor package r-genomicalignments
* add version 1.48.4 to bioconductor package r-genomicfeatures
* add version 1.44.1 to bioconductor package r-ggbio
* add version 3.4.4 to bioconductor package r-ggtree
* add version 1.24.2 to bioconductor package r-hdf5array
* add version 2.30.1 to bioconductor package r-iranges
* add version 1.36.3 to bioconductor package r-keggrest
* add version 3.52.4 to bioconductor package r-limma
* add version 1.8.1 to bioconductor package r-matrixgenerics
* update r-org-hs-eg-db
* add version 1.38.1 to bioconductor package r-organismdbi
* add version 1.36.1 to bioconductor package r-pathview
* add version 1.56.1 to bioconductor package r-rtracklayer
* add version 1.4.1 to bioconductor package r-scaledmatrix
* add version 1.24.1 to bioconductor package r-scran
* add version 1.6.3 to bioconductor package r-scuttle
* add version 1.18.1 to bioconductor package r-singlecellexperiment
* add version 1.20.2 to bioconductor package r-treeio
* Revert "Add bioc attribute to r-do-db"
This reverts commit 36be5c6072.
* Fix quotes on versions

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-10-12 14:04:20 -07:00
Massimiliano Culpo
48da17d18e py-pythran: customize headers attribute (#33242) 2022-10-12 13:09:52 -06:00
Auriane R
4765309b97 Limit whip dependencies for pika (#33244) 2022-10-12 11:10:03 -06:00
iarspider
d52eef5b16 Add checksum for py-requests-oauthlib 1.3.1 (#33199) 2022-10-12 10:22:12 -06:00
G-Ragghianti
a227fec4b9 Package slate: Added deps for +rocm smoke test (#33218)
* Added deps for slate+rocm smoke test
* Style change
2022-10-12 08:34:48 -07:00
Vicente Bolea
949151aff3 vtkm: add v1.9.0 (#33221) 2022-10-12 06:50:14 -06:00
iarspider
008b13f676 Add checksum for py-awkward 1.9.0 (#33159) 2022-10-12 07:43:14 -05:00
Harmen Stoppels
acd4787a1a oneapi: set -Wno-unused-command-line-argument (#33192)
For older versions of intel-oneapi-compilers, running the compiler in
preprocessor / compilation mode would trigger warnings that
`-Wl,-rpath,...` flags were unused.

This in turn caused certain configure scripts to fail as they did not
expect output from the compiler (it's treated as an error). Notably
cmake's bootstrap phase failed to detect c++ features of the compiler.

As a workaround, add this flag to silence the warning, since I don't
think we can scope the flags to compile+link mode.
2022-10-12 14:38:57 +02:00
Alberto Invernizzi
4ee22e7cf7 neovim: add version 0.8.0 (#33238)
* bump version for libvterm, required by neovim

* bump version for neovim and add related dep constraints

see release note:
d367ed9b23

in particular:
'deps: Bump required libvterm to v0.3'
https://github.com/neovim/neovim/pull/20222
2022-10-12 13:26:48 +02:00
iarspider
8537220b0e Add checksum for py-prettytable 3.4.1 (#33138) 2022-10-12 03:41:53 -06:00
Sergey Kosukhin
c85faaa216 netcdf packages: filter compiler wrappers in the *-config files (#33025)
* netcdf packages: filter compiler wrappers in the *-config files

* netcdf-c: provide dependent packages with unfiltered nc-config
2022-10-12 11:29:47 +02:00
Harmen Stoppels
dc39edb790 man-db: fix gnulib issue (#33149)
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-10-12 11:28:45 +02:00
Seth R. Johnson
f9620950cd py-sphinxcontrib-bibtex: new version 2.5.0 (#32902)
2.4 seems to have issues with sphinx-rtd and sphinx 5.1:
```
AttributeError: 'Text' object has no attribute 'rawsource'
```
2022-10-12 11:25:56 +02:00
iarspider
f10997a0df py-uproot: add v4.3.5 (#33151) 2022-10-12 11:22:43 +02:00
Michael Kuhn
2df25d8b37 meson: add 0.63.3 (#33216) 2022-10-12 03:02:44 -06:00
Jim Edwards
e31a4b6dc6 ESMF package update (#33202) 2022-10-12 10:59:02 +02:00
Jonathon Anderson
827e576c3d bear: fix RPATH handling (#33217) 2022-10-12 10:34:56 +02:00
Adam J. Stewart
549f6361ce py-poetry-core: jail git to stage directory (#33181) 2022-10-12 10:31:12 +02:00
MicK7
c3cc462a69 Add new vtk 9.2.2 release (#33001)
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2022-10-12 10:22:42 +02:00
Glenn Johnson
bffc4ab826 Update CRAN packages (#33223) 2022-10-12 10:20:52 +02:00
Luke Diorio-Toth
fffa9258c5 infernal: add v1.1.4 (#33230) 2022-10-12 09:41:01 +02:00
Luke Diorio-Toth
a34b36703a trnascan-se: add v2.0.11 (#33232) 2022-10-12 09:39:36 +02:00
Massimiliano Culpo
7efbd7d8eb Fix typo in docs (#33182) 2022-10-12 08:31:48 +02:00
iarspider
bd5705b2a8 Add checksum for py-cryptography 37.0.4 (#33186) 2022-10-11 20:43:56 -05:00
iarspider
f4cc48286d Add checksum for py-frozenlist 1.3.1 (#33193) 2022-10-11 20:41:08 -05:00
iarspider
caf8b57fd4 Add checksum for py-yarl 1.8.1 (#33195) 2022-10-11 20:40:22 -05:00
iarspider
9342344f78 Add checksum for py-immutables 0.18 (#33197) 2022-10-11 20:39:20 -05:00
iarspider
552908595e Add checksum for py-google-auth-oauthlib 0.5.2 (#33198) 2022-10-11 20:38:26 -05:00
iarspider
9cd47454f3 Add checksum for py-jupyter-server 1.18.1 (#33204) 2022-10-11 20:32:42 -05:00
iarspider
cbe2178e3f Add checksum for py-websocket-client 1.4.1 (#33205) 2022-10-11 20:30:45 -05:00
iarspider
7d4fa0ea00 Add checksum for py-requests-unixsocket 0.3.0 (#33206) 2022-10-11 20:29:40 -05:00
iarspider
7f49cc2d17 Add checksum for py-typed-ast 1.5.4 (#33207) 2022-10-11 20:28:37 -05:00
iarspider
a43ad2d876 Add checksum for py-scinum 1.4.3 (#33208) 2022-10-11 20:27:49 -05:00
iarspider
401412f999 Add checksum for py-python-rapidjson@1.8 (#33210) 2022-10-11 20:25:30 -05:00
iarspider
019463be39 Add checksum for py-pysqlite3 0.4.7 (#33211) 2022-10-11 20:24:46 -05:00
Luke Diorio-Toth
cd74e091d0 version bump to 3.10.42 (#33220) 2022-10-11 19:13:56 -06:00
Adam J. Stewart
5844c24ca8 py-rtree: add v1.0.1 (#33222) 2022-10-11 17:49:41 -07:00
Adam J. Stewart
d1fb82a2c4 GCC: update Xcode 14 conflict (#33226) 2022-10-11 17:26:47 -07:00
Harmen Stoppels
926dca9e5f Specify GCC prefix in LLVM-based compilers (#33146)
* spack.compiler.Compiler: introduce prefix property

We currently don't really have something that gives the GCC install
path, which is used by many LLVM-based compilers (llvm, llvm-amdgpu,
nvhpc, ...) to fix the GCC toolchain once and for all.

This `prefix` property is dynamic in the sense that it queries the
compiler itself. This is necessary because it's not easy to deduce the
install path from the `cc` property (might be a symlink, might be a
filename like `gcc` which works by having the compiler load a module
that sets the PATH variable, might be a generic compiler wrapper based
on environment variables like on cray...).

With this property introduced, we can clean up some recipes that have
the logic repeated for GCC.

* intel-oneapi-compilers: set --gcc-sysroot to %gcc prefix
2022-10-11 17:45:51 -06:00
kwryankrattiger
4b866e8ffc Darshan variant cleanup (#33165)
* Darshan-Runtime: Cleanup version dependent variants

* Darshan-Util: Cleanup version dependent variants.
2022-10-11 12:04:22 -07:00
kwryankrattiger
5d0f0914b8 Omega-H: Current constraint doesn't allow any cuda (#33164)
From the issue referenced, it seems later and earlier versions
of cuda work.
2022-10-11 12:03:39 -07:00
Massimiliano Culpo
de8c827983 Refactor a few classes related to package repositories (#32273)
Caches used by repositories don't reference the global spack.repo.path instance
anymore, but get the repository they refer to during initialization.
 
Spec.virtual now use the index, and computation done to compute the index 
use Repository.is_virtual_safe. 

Code to construct mock packages and mock repository has been factored into 
a unique MockRepositoryBuilder that is used throughout the codebase.

Add debug print for pushing and popping config scopes.

Changed spack.repo.use_repositories so that it can override or not previous repos

spack.repo.use_repositories updates spack.config.config according to the modifications done

Removed a peculiar behavior from spack.config.Configuration where push would always 
bubble-up a scope named command_line if it existed
2022-10-11 19:28:27 +02:00
Peter Scheibel
b594c0aee0 spack diff any specs you want (#32737)
Resolves #31782

With this change, if a spec is concrete after parsing (e.g. spec.yaml
or /hash-based), then it is not disambiguated (a process which requires
(a) that the spec be installed and (b) that it be part of the
currently-active environment).

This commit allows you to:

* Diff specs from an environment regardless of whether they have
  been installed (more useful for projection/matrix-based envs)
* Diff specs read from .yaml files which may or may not be entirely
  different installations of Spack

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-10-11 10:03:31 -06:00
dependabot[bot]
8e3c088a7a Bump actions/setup-python from 4.2.0 to 4.3.0 (#33166)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.2.0 to 4.3.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](b55428b188...13ae5bb136)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-11 09:54:17 +02:00
iarspider
a0489d8480 py-importlib-resources: add v5.9.0 (#33047) 2022-10-11 09:52:01 +02:00
eugeneswalker
a587bff119 e4s ci: add cabana +rocm (#33177) 2022-10-11 00:37:55 -06:00
Glenn Johnson
c885b591e2 new package: r-profvis (#33171) 2022-10-10 21:09:53 -06:00
Glenn Johnson
771aee30ea new package: r-urlchecker (#33174) 2022-10-10 19:42:06 -06:00
Glenn Johnson
87536ab107 new package: r-ragg (#33172) 2022-10-10 19:38:06 -06:00
Glenn Johnson
acf6acc93c Add bioc attribute to r-do-db (#33179) 2022-10-10 19:33:55 -06:00
Glenn Johnson
cecec254b0 new package: r-optimparallel (#33169) 2022-10-10 19:25:55 -06:00
Mark W. Krentel
c7472c849f hpctoolkit: add version 2022.10.01 (#33078)
* hpctoolkit: add version 2022.10.01

 1. add version 2022.10.01
 2. remove version for master branch, develop is now the main branch
 3. add CPATH and LD_LIBRARY_PATH to module run environment,
    this is for apps that want to use the start/stop interface
 4. cleanup style in variants, depends and conflicts
 5. remove all-static variant, nothing uses it
 6. deprecate more old versions

* [@spackbot] updating style on behalf of mwkrentel

* Add when(+level_zero) to the gtpin variant.

* Test commit to see if this passes E4S.

* Another test commit to see if E4S succeeds.

* Add temporary hack to ignore +mpi for version 2022.10.01 and issue a
warning instead.

Co-authored-by: mwkrentel <mwkrentel@users.noreply.github.com>
2022-10-10 17:59:13 -07:00
iarspider
be293ceb7a Add checksum for py-virtualenv 20.16.4 (#33154)
* Add checksum for py-virtualenv 20.16.4

* [@spackbot] updating style on behalf of iarspider

* Update package.py

* Update package.py

Co-authored-by: iarspider <iarspider@users.noreply.github.com>
2022-10-10 18:49:52 -06:00
iarspider
4a9790e8cd Add checksum for py-msgpack 1.0.4 (#33161)
* Add checksum for py-msgpack 1.0.4

* Update var/spack/repos/builtin/packages/py-msgpack/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-10 18:38:19 -06:00
Glenn Johnson
cd6ef2c3cb new package: r-textshaping (#33173) 2022-10-10 18:38:01 -06:00
Glenn Johnson
042050be11 new package: r-pkgdown (#33170) 2022-10-10 18:33:58 -06:00
Glenn Johnson
46b7d3995c new package: r-interp (#33168) 2022-10-10 17:57:52 -06:00
iarspider
c393a57a48 Update py werkzeug (#33155)
* Add checksum for py-virtualenv 20.16.4

* Add checksum for py-werkzeug 2.2.2

* Restore py-virtualenv/package.py

* Update var/spack/repos/builtin/packages/py-werkzeug/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-10 17:50:06 -06:00
Axel Huebl
9d89dba292 Docs: Getting Started Dependencies (#32480)
* Docs: Getting Started Dependencies

Finally document what one needs to install to use Spack on
Linux and Mac :-)

With <3 for minimal container users and my colleagues with
their fancy Macs.

* Debian Update Packages: GCC, Python

- build-essential: includes gcc, g++ (thx Cory)
- Python: add python3-venv, python3-distutils (thx Pradyun)

* Add RHEL8 Dependencies
2022-10-10 23:25:37 +00:00
Glenn Johnson
a05a34361a new package: r-downlit (#33167) 2022-10-10 16:24:13 -07:00
eugeneswalker
dc141f5ad6 e4s: add hypre +rocm (#32148) 2022-10-10 16:09:52 -06:00
iarspider
634941a1c3 Add checksum for py-mako 1.2.2 (#33141) 2022-10-10 13:30:06 -06:00
iarspider
22ea4aa210 Add checksum for py-pyrsistent 0.18.1 (#33084) 2022-10-10 13:26:03 -06:00
iarspider
83916961da Add checksum for py-parso 0.8.3 (#33050) 2022-10-10 13:16:29 -06:00
Harmen Stoppels
dcf157d3a9 julia: add latest 1.8.x and 1.6.x releases and update deps, remove deprecated versions (#32956)
* julia: add latest 1.8.x and 1.6.x releases and update deps, remove deprecated versions
* get libuv verisons right
* resurrect libuv 1.44.1
2022-10-10 12:11:13 -07:00
Adam J. Stewart
831d7979ca ML CPU pipeline: test py-torch-nvidia-apex (#33158) 2022-10-10 12:18:05 -06:00
iarspider
14f6de9bf2 Add checksum for py-skl2onnx 1.12 (#33137)
* Add checksum for py-skl2onnx 1.12

* Update var/spack/repos/builtin/packages/py-skl2onnx/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-10 12:17:52 -06:00
iarspider
c777380569 Add checksum for py-tables 3.7.0 (#33157)
* Add checksum for py-tables 3.7.0

* Update package.py

* Update var/spack/repos/builtin/packages/py-tables/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-10 12:06:08 -06:00
Jean Luca Bez
0835b69771 New package: DXT Explorer tool (#31007)
* DXT Explorer tool

* Remove comments

* Fix style

* Syntax change

* Fix syntax

* remove dependencies, update version number, fix recipe

* fix syntax

* fixes

* change version order
2022-10-10 11:49:58 -06:00
iarspider
d886700de5 Add checksum for py-stevedore 4.0.0 (#33147) 2022-10-10 12:26:55 -05:00
iarspider
15dddee8f6 Add checksum for py-pycurl 7.45.1 (#33143) 2022-10-10 12:23:52 -05:00
iarspider
75cb7cefc1 Add checksum for py-pytools 2022.1.12 (#33142) 2022-10-10 12:22:59 -05:00
Jonas Thies
c61dad1c25 phist: new version 1.11 and patch to make previous versions compile w… (#33132)
* phist: new version 1.11 and patch to make previous versions compile with OpenBLAS

* phist; drop conflict on netlib-lapack and openblas
2022-10-10 19:19:09 +02:00
Jim Galarowicz
ee2ece3c91 Update versions of the survey performance tool. (#33058) 2022-10-10 09:55:49 -07:00
Jim Edwards
8829fb7c03 add ANL mpi-serial package (used by parallelio) (#33150) 2022-10-10 09:39:58 -07:00
iarspider
ef4c7474e5 Add checksum for py-dill 0.3.5.1 (#33144) 2022-10-10 11:31:51 -05:00
iarspider
5f642ff2d6 Add checksum for py-crashtest 0.4.0 (#33162) 2022-10-10 11:30:28 -05:00
Auriane R
41f992a2f8 Do not set CMAKE_HIP_ARCHITECTURES if none specified (#33156) 2022-10-10 09:21:45 -07:00
iarspider
c453d8718b Add checksum for py-vector 0.8.5 (#33152) 2022-10-10 11:13:37 -05:00
iarspider
5b3e8a46b3 Add checksum for py-cachecontrol 0.12.11 (#33160) 2022-10-10 10:05:59 -06:00
Adam J. Stewart
8d9a035d12 py-torch-nvidia-apex: fix +cuda build (#33070) 2022-10-10 16:04:35 +02:00
Sarah Osborn
cbc867a24c hypre: fix to correctly find rocsparse and rocrand when not in ROCM_PATH (#33073) 2022-10-10 15:46:26 +02:00
snehring
86aaede202 libfabric: add version 1.16.1 (#33030) 2022-10-10 15:45:41 +02:00
Adam J. Stewart
8da82ebf69 py-matplotlib: add v3.6.1 (#33126) 2022-10-10 15:45:06 +02:00
Thomas Madlener
fc23b48804 podio, edm4hep: add latest versions (#33056) 2022-10-10 15:41:33 +02:00
iarspider
f915f9db32 py-luigi: add v3.1.1 (#33090) 2022-10-10 15:37:40 +02:00
Brian Vanderwende
27cf8dddec shell prompt: enclose control sequence in brackets (#33079)
When setting `PS1` in Bash, it's required to enclose non-printable characters in square brackets, so that the width of the terminal is handled correctly.

See https://www.gnu.org/software/bash/manual/bash.html#Controlling-the-Prompt
2022-10-10 07:29:58 -06:00
Adam J. Stewart
7cb745b03a PythonPackage: fix libs/headers attributes (#32970) 2022-10-10 13:26:30 +00:00
iarspider
bfbd411091 Add checksum for py-lizard 1.17.10 (#33095) 2022-10-10 06:09:56 -06:00
Wouter Deconinck
2a43571a68 root: new variant webgui when +root7 (default True) (#33133)
ROOT has a webgui which is available with the `+root7` variant. This is a fairly large part of a ROOT install (275MB out of 732MB on my system) which is not necessarily useful in all use cases (e.g. inside containers on network-restricted HPC/HTC compute nodes). This new variant adds the option to retain the ROOT7 functionality but not necessarily include the `webgui` aspects.
2022-10-10 11:13:35 +02:00
Yang Zongze
46239ea525 fixbug-ctags-5.8: general.h: missing binary operator before token "(" (#33135)
`__unused__` defined in `general.h` conflict with the one defined by libc headers,
so change it to `__attribute__unused__` according to s.zharkoff:
  https://bugs.gentoo.org/828550#c11

cmd:
  `grep -rl "__unused__" . | xargs -n1 sed -i -e 's/\b__unused__\b/__attribute__unused__/g' -e 's/(unused)/(__unused__)/g'`
2022-10-10 10:24:54 +02:00
Adam J. Stewart
01ede3c595 Add CI stack for ML packages (#31592)
Basic stack of ML packages we would like to test and generate binaries for in CI. 

Spack now has a large CI framework in GitLab for PR testing and public binary generation.
We should take advantage of this to test and distribute optimized binaries for popular ML
frameworks.

This is a pretty extensive initial set, including CPU, ROCm, and CUDA versions of a core
`x96_64_v4` stack.

### Core ML frameworks

These are all popular core ML frameworks already available in Spack.

- [x] PyTorch
- [x] TensorFlow
- [x] Scikit-learn
- [x] MXNet
- [x] CNTK
- [x] Caffe
- [x] Chainer
- [x] XGBoost
- [x] Theano

### ML extensions

These are domain libraries and wrappers that build on top of core ML libraries

- [x] Keras
- [x] TensorBoard
- [x] torchvision
- [x] torchtext
- [x] torchaudio
- [x] TorchGeo
- [x] PyTorch Lightning
- [x] torchmetrics
- [x] GPyTorch
- [x] Horovod

### ML-adjacent libraries

These are libraries that aren't specific to ML but are still core libraries used in ML pipelines

- [x] numpy
- [x] scipy
- [x] pandas
- [x] ONNX
- [x] bazel

Co-authored-by: Jonathon Anderson <17242663+blue42u@users.noreply.github.com>
2022-10-09 15:39:47 -07:00
iarspider
4a6aff8bd1 Add checksum for py-nest-asyncio 1.5.5 (#33080) 2022-10-09 16:25:58 -06:00
iarspider
5d8e97af2a Add checksum for py-pycparser 2.21 (#32981) 2022-10-09 16:21:54 -06:00
iarspider
48f5f8eb17 Add checksum for py-br 5.10.0 (#33093) 2022-10-09 11:11:05 -06:00
iarspider
01a54dd616 Add checksum for py-hep-ml 0.7.1 (#33091) 2022-10-09 11:10:43 -06:00
iarspider
e5414ed9cc Add checksum for py-python-daemon 2.3.1 (#33092) 2022-10-09 11:10:24 -06:00
iarspider
20453622a0 Add checksum for py-law 0.1.7 (#33089) 2022-10-09 11:10:12 -06:00
Sergey Kosukhin
4a3e3807a3 py-eccodes: fix environment variables (#32807) 2022-10-09 11:09:57 -06:00
Sergey Kosukhin
c60dffaea7 py-cdo: add version 1.5.6, deprecate 1.3.2 (#32793)
* py-cdo: add version 1.5.6

* py-cdo: make python run depdendencies also the build ones

* py-cdo: restrict Python version
2022-10-09 11:38:54 -05:00
Axel Huebl
17898a61dd py-cupy: 11.2 (#33076)
* py-cupy: 11.2

Add the latest version of `cupy`:
  https://github.com/cupy/cupy/tree/v11.2.0#installation

* Update Dependencies

* Deprecate: 8.0.0
2022-10-09 10:38:04 -06:00
iarspider
2d28274387 Add checksum for py-pybind11 2.10.0 (#32971) 2022-10-09 11:17:20 -05:00
iarspider
918ed5f328 Add checksum for py-scikit-build 0.15.0 and use sources from pypi (#32954)
* Add checksum for py-scikit-build 0.15.0 and use sources from pypi

* Update var/spack/repos/builtin/packages/py-scikit-build/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-09 11:17:07 -05:00
iarspider
6f79dc654c Add checksum for py-terminado 0.15.0 (#33085)
* Add checksum for py-terminado 0.15.0

* Update var/spack/repos/builtin/packages/py-terminado/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-09 11:13:19 -05:00
Luke Diorio-Toth
6c2df00443 new packages (py-metaphlan, py-hclust2, iqtree2) + updates to others (py-dendropy, py-phylophlan, py-pkgconfig) (#32936)
* added metaphlan v4, cleaned up phylophlan

* added iqtree2

* fixed phylophlan, builds now

* changed config.yaml to default

* fixed style

* py-jsonschema: add 4.16.0 and new package py-hatch-fancy-pypi-readme (#32929)

* acfl: add v22.1 (#32915)

Co-authored-by: Annop Wongwathanarat <annop.wongwathanarat@arm.com>

* Fixup errors introduced by Clingo Pr: (#32905)

* re2c depends on cmake on Windows
* Winbison properly added to bootstrap package search list

* Set CMAKE_HIP_ARCHITECTURES with the value of amdgpu_target (#32901)

* libtiff: default to +zlib+jpeg (#32945)

* octave: add version 7.2.0 (#32943)

* simgrid new releases (#32920)

* [rocksdb] Added rtti variant (#32918)

* rvs binary path updated for 5.2 rocm release (#32892)

* Add checksum for py-pytest-runner 6.0.0 (#32957)

* py-einops: add v0.5.0 (#32959)

* Replace repo with the NVIDIA one (#32951)

* Add checksum for py-tomli 2.0.1 (#32949)

* QMCPACK: add @3.15.0 (#32931)

* Tidied up configure arguments to use special spack autotools features. (#32930)

* casper: old domain fell off, adding github repo (#32928)

* unifyfs: pin mercury version; add boost variant (#32911)

Mercury has a new version (v2.2) releasing soon that UnifyFS does not build with and hasn't been tested with. This pins UnifyFS to the last version of Mercury used/tested.

Add a variant to avoid building/using boost

Append -std=gnu99 to cflags if building with gcc@4. Needed for mochi-margo to compile

* trilinos: constrain superlu-dist version (#32889)

* trilinos: constrain superlu-dist version for 13.x
* syntax

* FEniCSx: Updates for 0.5.1 (#32665)

* Updates for DOLFINx 0.5.1 and associated packages
* xtensor needed on anything less than main
* Switch back to Python 3.7 minimum.
* Might be good to point out in our README how to fix Python version?
* Fix basix, xtensor dep
* Add numba feature
* Fix checksum
* Make slepc optional

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* simgrid: add variant and remove flag (#32797)

* simgrid: remove std c++11 flag
* simgrid: add msg variant

* Axom: bring in changes from axom repo (#32643)

* bring in changes from axom repo

Co-authored-by: white238 <white238@users.noreply.github.com>
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* Add checksum for py-pyparsing 3.0.9 (#32952)

* rdma-core: fix syntax for external discoverability (#32962)

* Add checksum for py-flatbuffers 2.0.7 (#32955)

* amrex: add v22.10 (#32966)

* Remove CMakePackage.define alias from most packages (#32950)

* Bug fix for `ca-certificates-mozilla/package.py` to enable `spack install --source` (#32953)

* made suggested changes to iqtree2, py-dendropy, py-metaphlan, and py-pkgconfig. Poetry install still broken

* reverted py-pkgconfig deps to poetry-core

* made iqtree2 less dedundant, changes to py-dendropy and py-pkgconfig deps

Co-authored-by: Manuela Kuhn <36827019+manuelakuhn@users.noreply.github.com>
Co-authored-by: Annop Wongwathanarat <annop.wongwathanarat@gmail.com>
Co-authored-by: Annop Wongwathanarat <annop.wongwathanarat@arm.com>
Co-authored-by: John W. Parent <45471568+johnwparent@users.noreply.github.com>
Co-authored-by: Auriane R <48684432+aurianer@users.noreply.github.com>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
Co-authored-by: Kai Torben Ohlhus <k.ohlhus@gmail.com>
Co-authored-by: Vinícius <viniciusvgp@gmail.com>
Co-authored-by: Matthieu Dorier <mdorier@anl.gov>
Co-authored-by: renjithravindrankannath <94420380+renjithravindrankannath@users.noreply.github.com>
Co-authored-by: iarspider <iarspider@gmail.com>
Co-authored-by: Paul R. C. Kent <kentpr@ornl.gov>
Co-authored-by: Brian Van Essen <vanessen1@llnl.gov>
Co-authored-by: snehring <7978778+snehring@users.noreply.github.com>
Co-authored-by: Cameron Stanavige <stanavige1@llnl.gov>
Co-authored-by: Cody Balos <balos1@llnl.gov>
Co-authored-by: Jack S. Hale <mail@jackhale.co.uk>
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
Co-authored-by: Lucas Nesi <lucas31nesi@hotmail.com>
Co-authored-by: Chris White <white238@llnl.gov>
Co-authored-by: white238 <white238@users.noreply.github.com>
Co-authored-by: Martin Pokorny <mpokorny@caltech.edu>
Co-authored-by: Weiqun Zhang <WeiqunZhang@lbl.gov>
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
Co-authored-by: Dom Heinzeller <dom.heinzeller@icloud.com>
2022-10-08 16:57:45 -06:00
Jen Herting
3146f9309c New package: py-qudida (#33115)
* [py-qudida] New package

* [@spackbot] updating style on behalf of qwertos

Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-10-08 11:37:50 -06:00
Qian Jianhua
c1440aaa17 py-blis: fix environment settings (#32913) 2022-10-08 01:20:51 -05:00
iarspider
5ca32d82e4 Add checksum for py-jupyterlab-pygments 0.2.2 (#33081) 2022-10-07 22:06:15 -06:00
eugeneswalker
dfbeaff8ae remove outdated comments (#33123) 2022-10-07 19:47:57 -07:00
iarspider
8309ae08d1 Add checksum for py-jupyter-core 4.11.1 (#33086) 2022-10-07 16:06:11 -06:00
Sergey Kosukhin
4bc8f66388 autotools: extend patching of the libtool script (#30768)
* filter_file: introduce argument 'start_at'

* autotools: extend patching of the libtool script

* autotools: refactor _patch_usr_bin_file

* autotools: improve readability of the filtering

* autotools: keep the modification time of the configure scripts

* autotools: do not try to patch directories

* autotools: explain libtool patching for posterity

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2022-10-07 22:04:44 +00:00
iarspider
8a5790514d Add checksum for py-nbclient 0.6.7 (#33083) 2022-10-07 15:58:03 -06:00
eugeneswalker
01e7b89b53 e4s ci: add variorum (#33113) 2022-10-07 14:52:30 -07:00
eugeneswalker
041c1486f8 e4s ci: add h5bench (#33114) 2022-10-07 14:52:08 -07:00
Jen Herting
cbc224852b [brotli] added version 1.0.9 (#33107) 2022-10-07 15:33:07 -06:00
Jen Herting
5560bbf97e New package: py-pathml (#32566)
* [py-pathml Farber] Created package

* [pathml Farber] Dependencies added

* [py-pathml] Corrected dependency

* [py-pathml] Added types

* [py-pathml] depends on py-h5py

* [py-pathml] py-opencv-contrib-python -> opencv+python3+contrib

* [py-pathml] added spack import and fixed setuptools type

* [py-pathml] update import

* [py-pathml] opencv no longer has +contrib

* [@spackbot] updating style on behalf of qwertos

Co-authored-by: James A Zilberman <jazrc@rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-10-07 15:32:43 -06:00
Gregory Lee
b3cfcebf94 fixed and added mrnet versions (#33120) 2022-10-07 14:25:53 -06:00
iarspider
f3027fb561 Add checksum for py-onnxmltools 1.11.0 (#33104)
* Add checksum for py-onnxmltools 1.11.0

* Add checksum for py-onnxmltools 1.11.0

* Fix patch name

* Update var/spack/repos/builtin/packages/py-onnx-runtime/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-07 14:05:52 -05:00
iarspider
af4134dd48 Add checksum for py-pkginfo 1.8.3 (#33094)
* Add checksum for py-pkginfo 1.8.3

* Update var/spack/repos/builtin/packages/py-pkginfo/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-07 13:02:13 -06:00
iarspider
3270df735f Add checksum for py-markdown 3.4.1 (#33098)
* Add checksum for py-markdown 3.4.1

* Update package.py
2022-10-07 13:01:54 -06:00
Laurent Aphecetche
a2d7776c95 pythia6: set CMAKE_MACOSX_RPATH=True to build on macos (#33082) 2022-10-07 11:53:41 -07:00
iarspider
a4651a2a02 Add checksum for py-pathlib2 2.3.7.poast1 (#33105)
* Add checksum for py-pathlib2 2.3.7.poast1

* [@spackbot] updating style on behalf of iarspider

Co-authored-by: iarspider <iarspider@users.noreply.github.com>
2022-10-07 13:47:26 -05:00
iarspider
910cf7fe7b Add checksum for py-python-ldap 3.4.2 (#33106) 2022-10-07 13:46:09 -05:00
iarspider
fb0d8cd151 Add checksum for py-networkx 2.8.6, py-pygraphviz 1.10 (#33102)
* Add checksum for py-networkx 2.8.6, py-pygraphviz 1.10

* [@spackbot] updating style on behalf of iarspider

Co-authored-by: iarspider <iarspider@users.noreply.github.com>
2022-10-07 13:39:56 -05:00
iarspider
c5e3ec8b1f Add checksum for py-mplhep 0.3.26 (#33101) 2022-10-07 13:37:17 -05:00
iarspider
e81ecae3b5 Add checksum for py-more-itertools 8.14.0 (#33100) 2022-10-07 13:36:11 -05:00
iarspider
ce7461a783 Add checksum for py-lz4 4.0.2 (#33097) 2022-10-07 13:32:34 -05:00
iarspider
f141f806e9 Add checksum for py-llvmlite 0.38.1 (#33096) 2022-10-07 13:31:31 -05:00
iarspider
3968263bf6 Add checksum for py-jupyter-console 6.4.4 (#33088) 2022-10-07 12:54:58 -05:00
iarspider
9de9d2f65b Add checksum for py-jsonpickle 2.2.0 (#33087) 2022-10-07 12:53:44 -05:00
Adam J. Stewart
163242bd6e py-black: add v22.10.0 (#33077) 2022-10-07 10:33:04 -07:00
eugeneswalker
35bc158387 e4s ci: add quantum-espresso (#33075) 2022-10-07 08:38:10 -07:00
Auriane R
39fe4371fa Rename p2300 to stdexec (#33099)
* Rename p2300 package after renaming PR merged in stdexec

https://github.com/NVIDIA/stdexec/pull/622

* Adapt pika to depend on stdexec
2022-10-07 14:54:05 +02:00
Paul Kuberry
2346544e6f trilinos and xyce: fix fortran library handling (#33033)
* trilinos and xyce: fix fortran library handling

xyce:
  - add pymi_static_blas variant and logic
    handles blas and hdf5 conflicts for Xyce-PyMi
  - make +isorropia and +zoltan conditional on mpi

* xyce: clean up CMake options

* xyce: change pymi_static_blas to pymi_static_tpls

* xyce: made pymi_static_tpls only when +pymi
2022-10-07 06:47:26 -04:00
iarspider
8acb4da6aa Add checksum for py-tornado 6.2, py-pyzmq 24.0.1, py-jupyter-client 7.3.5 (#33062) 2022-10-07 00:09:56 -06:00
Laurent Aphecetche
837954729f geant3: new package (#33065)
* geant3: new package
* fix copyright
2022-10-06 22:26:22 -06:00
MatthewLieber
23f6c92f33 add compatibility for rocky8 and rhel8 (#33068) 2022-10-07 04:25:58 +00:00
Hans Fangohr
a661536eb6 oommf: update oommf package to version 2.0b0 (#33072)
- Official release mentioned on https://math.nist.gov/oommf/software-20.html
- Tested at https://github.com/fangohr/oommf-in-spack/pull/39/files
2022-10-06 18:30:27 -07:00
Laurent Aphecetche
080c37046f cppgsl: add version 4.0.0 (#33060) 2022-10-06 18:24:01 -07:00
Jonas Thies
f56ff16564 phist: add patch to resolve build issue #32111 with +fortran %oneapi (#32965)
* phist: add patch to resolve build issue #32111 with +fortran %oneapi

* phist: some lines of code were patched twice, make these patches orthogonal.
2022-10-06 16:16:48 -07:00
Massimiliano Culpo
1a12ddbd2d Add a warning on Python 2.7 deprecation (#33052)
Co-authored-by: alalazo <alalazo@users.noreply.github.com>
Co-authored-by: Todd Gamblin <tgamblin@llnl.gov>
2022-10-06 23:42:34 +02:00
snehring
f43887dd4e ncbi-toolkit: adding version 26_0_1 (#33061) 2022-10-06 12:26:25 -07:00
Sergey Kosukhin
a520a7ef28 tcl module template: automatically unload automatically loaded modules (#32853)
Remove `module-info mode load` condition that prevents auto-unloading when autoloading is enabled. It looks like this condition was added to work around an issue in environment-modules that is no longer necessary.

Add quotes to make is-loaded happy
2022-10-06 20:15:28 +02:00
iarspider
c3018f95ee Add checksum for py-executing 1.0.0 (#33059) 2022-10-06 10:25:54 -06:00
iarspider
164d5fc7a4 Add checksum for py-histogrammar 1.0.31 (#33045) 2022-10-06 09:52:38 -05:00
iarspider
38b50079e1 Add checksum for py-uhi 0.3.1 (#33043) 2022-10-06 09:51:28 -05:00
iarspider
e67a19cb36 Add checksum for py-tqdm 4.64.1 (#33046) 2022-10-06 09:50:24 -05:00
iarspider
7e1cb5414c Add checksum for py-zipp@3.8.1 (#33048) 2022-10-06 09:47:56 -05:00
iarspider
5c5de3e683 Update py stack data (#33051)
* Add checksum for py-traitlets 5.3.0

* Add checksum for py-stack-data 0.5.0

* Remove extra file
2022-10-06 09:41:16 -05:00
Laurent Aphecetche
ca0e023c43 geant4-vmc: unset MACOSX_DEPLOYMENT_TARGET (#32828) 2022-10-06 10:41:08 -04:00
Sergey Kosukhin
70a3868168 ncl: enable building with recent versions of hdf5 (#32842) 2022-10-06 16:20:55 +02:00
iarspider
f168a44fcb Add checksum for py-urllib3 1.26.12 (#33019)
* Add checksum for py-urllib3 1.26.12

* Update var/spack/repos/builtin/packages/py-urllib3/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Fixes from review

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-06 07:38:00 -06:00
Harmen Stoppels
c959d6c905 gmake: add 4.3.90 alpha release (#33044)
GNU Make 4.3.90 supports jobserver through fifo, so it's nice to add the
alpha release to Spack already.
2022-10-06 04:34:00 -06:00
Manuela Kuhn
4cfe58651a py-docutils: add 0.19 (#32814) 2022-10-06 04:29:48 -06:00
eugeneswalker
a56cd8ffb6 e4s ci: add charliecloud (#32990) 2022-10-06 12:22:23 +02:00
Sreenivasa Murthy Kolam
5cf05b6515 mlirmiopen: update the SHA for 5.2.1 release (#33049) 2022-10-06 03:54:03 -06:00
Harmen Stoppels
fc5da74998 docs: fix deprecated use of install_tree (#33004) 2022-10-06 09:45:46 +00:00
iarspider
0bc23d8bdc Add checksum for py-markupsafe 2.1.1 (#33003) 2022-10-06 03:42:01 -06:00
iarspider
5fc0bef4fc Add checksum for py-avro 1.11.1 (#32979) 2022-10-06 03:26:07 -06:00
iarspider
0184f008f1 Add checksum for py-autopep8 1.7.0, py-pycodestyle 2.9.1 (#32978) 2022-10-06 03:22:06 -06:00
Mark W. Krentel
e8dcfcd7ae hpcviewer: add v2022.10 (#33041) 2022-10-06 03:18:04 -06:00
dependabot[bot]
bfd848089f build(deps): bump actions/checkout from 3.0.2 to 3.1.0 (#32998) 2022-10-06 02:58:13 -06:00
Wouter Deconinck
887dd3fcd9 dd4hep: add v1.23 (#32968)
Release notes at https://github.com/AIDASoft/DD4hep/releases/tag/v01-23
2022-10-06 10:57:09 +02:00
iarspider
96daaa359d Add checksum for py-soupsieve 2.3.2.post1 (#32980)
* Add checksum for py-soupsieve 2.3.2.post1

* Update package.py

* Update var/spack/repos/builtin/packages/py-soupsieve/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-10-06 02:53:58 -06:00
Jen Herting
1f5729644b New package: py-scanpy (#32565)
* [py-scanpy] New package

* [py-scanpy] Added types

* [py-scan] reworked dependencies

* [py-scanpy] flake8

* [py-scanpy] update import

* [py-scanpy] fixed minor issues

Co-authored-by: James A Zilberman <jazrc@rit.edu>
2022-10-06 10:27:37 +02:00
iarspider
aab5bcf05a Add checksum for py-histoprint 2.4.0 (#33017) 2022-10-06 02:22:00 -06:00
iarspider
0ae46519ba Add checksum for py-hepdata-lib 0.10.1, py-hepdata-validator 0.3.3 (#33018)
* Add checksum for py-hepdata-lib 0.10.1, py-hepdata-validator 0.3.3

* Update package.py

* Update package.py

* Update package.py

* Update package.py
2022-10-06 02:14:06 -06:00
Vanessasaurus
270a19504b flux-core: add v0.44.0 (#33039)
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
2022-10-06 02:10:11 -06:00
snehring
6de5f58026 dock: fix compilation with gcc10+, add dep (#33034) 2022-10-06 09:57:14 +02:00
Jean Luca Bez
33b1425add h5bench: update version (#33000)
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-10-06 09:48:09 +02:00
Jen Herting
071c323b95 New package: py-pprintpp (#30764)
* New package: py-pprintpp

* [py-pprintpp] added dependency on setuptools

Co-authored-by: Viv Eric Hafener <vehrc@sporcbuild.rc.rit.edu>
2022-10-06 09:46:32 +02:00
Andrew W Elble
28de7da0cc cuda: add v11.8.0 (#33027)
Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2022-10-06 09:46:01 +02:00
Vanessasaurus
791776cece flux-sched: add v0.25.0 (#33038)
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
2022-10-06 09:41:15 +02:00
Chris White
9ba102c2bb add blt 0.5.2 (#33029) 2022-10-06 00:02:04 -06:00
Jen Herting
c5d62294b2 New package: py-pyassimp (#30762)
* New package: py-pyasimp

* Cleaned up dependencies

* Fixed liked issue

* Fixed linked issue

* [py-pyassimp] depends on assimp

* [py-pyassimp] added dependency on py-setuptools

* [@spackbot] updating style on behalf of qwertos

Co-authored-by: Viv Eric Hafener <vehrc@sporcbuild.rc.rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-10-05 21:43:29 -05:00
Harmen Stoppels
189baa96db python: don't accidentally link to system db libs (#33007) 2022-10-05 18:22:01 -06:00
snehring
4b17d9b92e salmon: new version 1.9.0 (#33035) 2022-10-05 17:10:00 -06:00
Charles Ferenbaugh
21ca17a157 pfunit: fix @4: ~openmp (#33024) 2022-10-05 17:03:18 -06:00
iarspider
5b45ffb353 Add checksum for py-threadpoolctl 3.1.0 (#33012)
* Add checksum for py-threadpoolctl 3.1.0

* Update package.py
2022-10-05 16:54:04 -06:00
iarspider
143faeee0e Add checksum for py-distlib 0.3.6 (#33009)
* Add checksum for py-distlib 0.3.6

* Update package.py

* Update package.py

* Update package.py
2022-10-05 16:32:56 -06:00
dlkuehn
b4df99376d Package jsonnet: change sha256sum to sha256 for version hash (#33031)
Co-authored-by: David Kuehn <las_dkuehn@iastate.edu>
2022-10-05 14:40:59 -07:00
Daryl W. Grunau
b2c2958acc eospac: support version 6.5.5 (#33023)
Co-authored-by: Daryl W. Grunau <dwg@lanl.gov>
2022-10-05 14:08:27 -07:00
snehring
881571c4ba canu: new version 2.2 (#32999) 2022-10-05 15:06:08 -06:00
Glenn Johnson
aef6d4a40a add version 4.2.1 of R (#32993) 2022-10-05 13:40:45 -07:00
Adam J. Stewart
760294b402 py-matplotlib: add v3.6.0, new backends (#32697)
* py-matplotlib: add v3.6.0, new backends
* [@spackbot] updating style on behalf of adamjstewart
* Undo conditional variant hack
* Update dependencies

Co-authored-by: adamjstewart <adamjstewart@users.noreply.github.com>
2022-10-05 13:36:37 -07:00
Charles Ferenbaugh
417760e829 Fix wonton CMake config to not break host codes (#33026) 2022-10-05 14:06:12 -06:00
MichaelLaufer
e0b418f288 py-pyfr: add v1.15.0, explicitly set env variables for dependencies (#32964)
* Update to PyFR v1.15.0

* allow unsupported compilers for cuda

* update requirement for py-gimmik version

* update requirement for cuda version

* update versions, style fix

* lib directory changed, style fixes

* PYFR_METIS_LIBRARY_PATH set
2022-10-05 14:08:37 -05:00
eugeneswalker
1fe8387d23 e4s ci: add gotcha cpu (#32989) 2022-10-05 11:43:13 -07:00
Adam J. Stewart
d956da95c3 py-torch-nvidia-apex: ~cuda does not build (#32939) 2022-10-05 12:38:21 -05:00
Axel Huebl
4ed963dda1 OpenBLAS 0.3.21: w/o Fortran (#32398)
There is a new OpenBLAS release out that can be compiled w/o
a Fortran compiler.

macOS XCode developers, rejoice. Maybe at some point Spack
becomes a package manager that can be used without using
another package manager (to get gfortran) 🎉

phist: add conflict on reference netlib-lapack due to API change in lapack.h

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2022-10-05 11:30:09 -06:00
eugeneswalker
cefc1dc808 e4s ci: add caliper +cuda (#32992) 2022-10-05 10:25:18 -07:00
eugeneswalker
af02dcbd2e e4s ci: enable caliper cpu (#32988) 2022-10-05 10:25:04 -07:00
iarspider
1800684ac1 Add checksum for py-flit 3.7.1 (#33013) 2022-10-05 11:41:16 -05:00
eugeneswalker
82cfa68e69 e4s: add omega-h +cuda (#32156) 2022-10-05 09:36:09 -07:00
eugeneswalker
27074d5bec e4s ci: add unifyfs (#32991) 2022-10-05 09:28:19 -07:00
Wileam Y. Phan
9fe315b953 Make hwloc both CudaPackage and ROCmPackage (#31334)
* Make hwloc both CudaPackage and ROCmPackage

* Remove redundant variants
2022-10-05 09:45:47 -06:00
iarspider
592d97137a Add checksum for py-arrow 1.2.3 (#33005) 2022-10-05 10:38:58 -05:00
iarspider
9abee2e851 Add checksum for py-pydantic 1.10.2 (#33006) 2022-10-05 10:37:50 -05:00
iarspider
e5da747d6f Add checksum for py-rich 12.5.1 (#33008) 2022-10-05 10:29:30 -05:00
Brian Van Essen
f463666f0e Add aws-ofi-nccl library (#32906)
* Added a package for the aws-ofi-nccl plug-in from to enable NCCL to
use libfabric communication library as a network provider.

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2022-10-05 14:08:32 +02:00
Jordan Galby
6c12630e95 Optimize concurrent misc_cache provider index rebuild (#32874)
When concurrent misc_cache provider index rebuilds happen, try to
rebuild it only once, so we don't exceed misc_cache lock timeout.

For example, when using `spack env depfile`, with no previous
misc_cache, running `make -f depfile -j8` could run at most 8 concurrent
`spack install` locking on misc_cache to rebuild the provider index. If
one rebuild takes 30s, before this fix, the "worst" lock could wait up
to 30s * 7, easily exceeding misc_cache lock timeout. Now, the "worst"
lock would take 30s * 1 + ~1s * 6.
2022-10-05 06:01:59 -06:00
Chris MacMackin
53cea629b7 autotools: Filter libtools when building with dpcpp (#32876)
Due to a [known
issue](https://community.intel.com/t5/Intel-oneAPI-Data-Parallel-C/dpcpp-and-GNU-Autotools/m-p/1296985)
with dpcpp, autotool-based builds that try to use it will fail because
they try to link against temporary files that no longer exist. This
commit filters those files out of the libtools script so that linking
can work properly.
2022-10-05 11:57:37 +00:00
iarspider
cfea21319f Add checksums for Rivet 3.1.7 and YODA 1.9.7 and fastjet 3.4.0 (#32917)
* Add checksums for Rivet 3.1.7 and YODA 1.9.7

* Add checksum for fastjet 3.4.0

* Add v3.1.7b...

... in which version requirement for autoconf was lowered to 2.68
2022-10-05 12:54:20 +02:00
Adam J. Stewart
e2b5179060 py-torchmetrics: add v0.10.0 (#32997) 2022-10-05 04:45:59 -06:00
Auriane R
4e5ea86b20 Add pika 0.9.0 (#33010)
* Reorder dependencies in alphabetical order + fix typo
2022-10-05 03:33:54 -06:00
Annop Wongwathanarat
e69c8338a4 armpl-gcc: Add version 22.1 (#32914)
* armpl-gcc: Add version 22.1

* fixed url, installation script name, and conflicts

Co-authored-by: Annop Wongwathanarat <annop.wongwathanarat@arm.com>
2022-10-05 11:02:56 +02:00
Brian Van Essen
15e0e15c90 Added a new version (#33002) 2022-10-05 10:29:36 +02:00
Paul R. C. Kent
316b620a05 llvm: add 15.0.1, 15.0.2 (#32983)
* llvm: 15.0.1, 15.0.2

* Requested format change
2022-10-04 21:54:04 -06:00
Richard Berger
153206be00 flecsi: upcoming release will no longer need lanl-cmake-modules (#32986) 2022-10-04 17:44:58 -07:00
snehring
f677855e7d pbbam: switching to meson, adding version 2.1.0 (#32996) 2022-10-04 18:38:08 -06:00
Sam Grayson
d1fe67b0bc nix: Fix #32994 (#32995)
* Fix nix
* Check value in attribute
2022-10-04 18:37:47 -06:00
SXS Bot
fd911e7b2e spectre: add v2022.10.04 (#32987)
Co-authored-by: sxs-bot <sxs-bot@users.noreply.github.com>
2022-10-04 14:22:21 -06:00
Greg Becker
5f59821433 BuildEnvironment: accumulate module changes to poke to all relevant modules (#32340)
Currently, module changes from `setup_dependent_package` are applied only to the module of the package class, but not to any parent classes' modules between the package class module and `spack.package_base`.

In this PR, we create a custom class to accumulate module changes, and apply those changes to each class that requires it. This design allows us to code for a single module, while applying the changes to multiple modules as needed under the hood, without requiring the user to reason about package inheritance.
2022-10-04 13:06:50 -07:00
eugeneswalker
b57d24a5e1 e4s: add vtk-m +rocm (#32151) 2022-10-04 12:28:24 -07:00
Adam J. Stewart
8e1de16193 py-tensorflow-probability: add v0.18.0 (#32941) 2022-10-04 13:50:25 -05:00
Adam J. Stewart
7fdfdea0c7 py-tensorflow-estimator: add v2.10 (#32940)
* py-tensorflow-estimator: add v2.10

* Typo fix
2022-10-04 13:48:11 -05:00
eugeneswalker
4bd537574b omega-h: add v9.34.13 (#32963) 2022-10-04 12:05:52 -06:00
Todd Gamblin
8c50b44bfe find/list: display package counts last (#32946)
* find/list: display package counts last

We have over 6,600 packages now, and `spack list` still displays the number of packages
before it lists them all. This is useless for large sets of results (e.g., with no args)
as the number has scrolled way off the screen before you can see it. The same is true
for `spack find` with large installations.

This PR changes `spack find` and `spack list` so that they display the package count
last.

* add some quick testing

Co-authored-by: Danny McClanahan <1305167+cosmicexplorer@users.noreply.github.com>
2022-10-04 10:56:46 -07:00
Adam J. Stewart
450a3074e2 Fix typo in documentation (#32984) 2022-10-04 19:54:40 +02:00
iarspider
7f2e204e20 Add checksum for py-pip 22.2.2 (#32877) 2022-10-04 11:26:17 -06:00
iarspider
bf7512e25a Add checksum for py-pysympy 1.11.1 (#32972) 2022-10-04 12:23:14 -05:00
iarspider
aaf6b1fd29 Add checksum for py-absl-py 1.2.0 (#32973) 2022-10-04 12:22:12 -05:00
iarspider
30c2d2765c Add checksum for py-grpcio 1.48.1 (#32974) 2022-10-04 12:21:14 -05:00
Cody Balos
c03979c74b superlu-dist: add 8.1.0 and 8.0.0 versions (#32558) 2022-10-04 07:25:53 -06:00
Dom Heinzeller
8af1802bd9 Bug fix for ca-certificates-mozilla/package.py to enable spack install --source (#32953) 2022-10-04 04:29:48 -06:00
Massimiliano Culpo
abbdf24083 Remove CMakePackage.define alias from most packages (#32950) 2022-10-04 10:58:58 +02:00
Weiqun Zhang
93cd84c922 amrex: add v22.10 (#32966) 2022-10-03 22:01:49 -06:00
iarspider
7daab390b3 Add checksum for py-flatbuffers 2.0.7 (#32955) 2022-10-03 17:53:47 -07:00
Martin Pokorny
916b21bfb4 rdma-core: fix syntax for external discoverability (#32962) 2022-10-03 17:45:46 -06:00
iarspider
977c89cee1 Add checksum for py-pyparsing 3.0.9 (#32952) 2022-10-03 14:57:56 -06:00
Chris White
9225f4f27f Axom: bring in changes from axom repo (#32643)
* bring in changes from axom repo

Co-authored-by: white238 <white238@users.noreply.github.com>
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-10-03 14:02:46 -06:00
Lucas Nesi
ffc40a0fdb simgrid: add variant and remove flag (#32797)
* simgrid: remove std c++11 flag
* simgrid: add msg variant
2022-10-03 13:53:59 -06:00
Jack S. Hale
241b4624bc FEniCSx: Updates for 0.5.1 (#32665)
* Updates for DOLFINx 0.5.1 and associated packages
* xtensor needed on anything less than main
* Switch back to Python 3.7 minimum.
* Might be good to point out in our README how to fix Python version?
* Fix basix, xtensor dep
* Add numba feature
* Fix checksum
* Make slepc optional

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-10-03 12:49:04 -07:00
Cody Balos
a51a81655a trilinos: constrain superlu-dist version (#32889)
* trilinos: constrain superlu-dist version for 13.x
* syntax
2022-10-03 12:24:21 -07:00
Cameron Stanavige
db1e32623f unifyfs: pin mercury version; add boost variant (#32911)
Mercury has a new version (v2.2) releasing soon that UnifyFS does not build with and hasn't been tested with. This pins UnifyFS to the last version of Mercury used/tested.

Add a variant to avoid building/using boost

Append -std=gnu99 to cflags if building with gcc@4. Needed for mochi-margo to compile
2022-10-03 11:51:05 -07:00
snehring
6e86daf470 casper: old domain fell off, adding github repo (#32928) 2022-10-03 11:42:03 -07:00
Brian Van Essen
25c1ef1e57 Tidied up configure arguments to use special spack autotools features. (#32930) 2022-10-03 11:05:21 -07:00
Paul R. C. Kent
8e60b3932c QMCPACK: add @3.15.0 (#32931) 2022-10-03 19:28:31 +02:00
iarspider
8227a221e6 Add checksum for py-tomli 2.0.1 (#32949) 2022-10-03 10:45:55 -06:00
Auriane R
941eb8d297 Replace repo with the NVIDIA one (#32951) 2022-10-03 09:33:00 -07:00
Adam J. Stewart
e89b79d074 py-einops: add v0.5.0 (#32959) 2022-10-03 10:29:50 -06:00
iarspider
0fee3095e1 Add checksum for py-pytest-runner 6.0.0 (#32957) 2022-10-03 10:21:51 -06:00
renjithravindrankannath
52e538e1d9 rvs binary path updated for 5.2 rocm release (#32892) 2022-10-03 05:13:52 -06:00
Matthieu Dorier
d4f05b0362 [rocksdb] Added rtti variant (#32918) 2022-10-03 12:55:18 +02:00
Vinícius
9728ddb0cd simgrid new releases (#32920) 2022-10-03 12:51:11 +02:00
Kai Torben Ohlhus
4924a9a28d octave: add version 7.2.0 (#32943) 2022-10-03 12:38:57 +02:00
Adam J. Stewart
4fb99912f1 libtiff: default to +zlib+jpeg (#32945) 2022-10-03 12:37:46 +02:00
Auriane R
7ee8fd5926 Set CMAKE_HIP_ARCHITECTURES with the value of amdgpu_target (#32901) 2022-10-03 10:22:25 +02:00
John W. Parent
5a0f4970df Fixup errors introduced by Clingo Pr: (#32905)
* re2c depends on cmake on Windows
* Winbison properly added to bootstrap package search list
2022-10-02 17:44:05 -07:00
Annop Wongwathanarat
fa7407093e acfl: add v22.1 (#32915)
Co-authored-by: Annop Wongwathanarat <annop.wongwathanarat@arm.com>
2022-10-01 09:23:16 +02:00
Manuela Kuhn
1596191b27 py-jsonschema: add 4.16.0 and new package py-hatch-fancy-pypi-readme (#32929) 2022-09-30 20:57:45 -06:00
Greg Becker
deae0c48e4 develop: canonicalize dev paths and base relative paths on env.path (#30075)
Allow environment variables and spack-specific path substitution variables (e.g. `$spack`) to be
used in the paths associated with develop specs, while maintaining the ability to keep those
paths relative to the environment rather than the working directory.
2022-09-30 20:56:53 +00:00
Manuela Kuhn
a5a16ed5b3 py-jinja2: add 3.1.2 (#32925) 2022-09-30 13:41:48 -06:00
Manuela Kuhn
c4429ad6ed py-ipykernel: add 6.16.0 (#32923) 2022-09-30 12:38:02 -06:00
Manuela Kuhn
918de81f5a py-joblib: add 1.2.0 (#32926) 2022-09-30 12:29:53 -06:00
Manuela Kuhn
8b2ed09832 py-json5: add 0.9.10 (#32927) 2022-09-30 12:09:51 -06:00
Manuela Kuhn
4f5be6c17e py-jeepney: add 0.8.0 (#32924) 2022-09-30 10:33:57 -06:00
Massimiliano Culpo
cf0c4523f3 qmcpack: set python3 executable explicitly (#32900) 2022-09-30 09:43:15 +02:00
Daniel De Lucca
e31f8da021 New Package: Navi (#32895)
* feat: adds navi
* Update var/spack/repos/builtin/packages/navi/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-09-30 00:53:53 -06:00
liuyangzhuan
2abbcaa49c add butterflypack 2.2.1 (#32909) 2022-09-29 19:38:02 -06:00
Stephen McDowell
24f9ec7dc0 Update ecp-data-vis-sdk homepage and maintainers (#32886) 2022-09-29 17:33:52 -06:00
G-Ragghianti
d417d49690 Package updates for slate, lapackpp, and blaspp (#32907)
* Added new versions
* New slate version
* Adding GPU support for lapackpp package
* Modified dependency on lapackpp
* Added rocblas and rocsolver to deps
* Testing with custom lapackpp repo
* Added chaining depends_on for +rocm
* Removing testing repo
2022-09-29 17:09:55 -06:00
Stephen Sachs
bb510c7979 [lammps] Add +intel and +user-intel options (#32898)
Going ahead adding this option individually since https://github.com/spack/spack/pull/25015 needs some more time.

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-09-29 16:42:08 -06:00
Sergey Kosukhin
56a2cfd19d claw: enable building with oneapi and nag+gcc@10: (#32897)
* claw: enable building when '%oneapi'
* claw: enable building when '%nag' is mixed with 'gcc@10:'
2022-09-29 13:32:10 -07:00
Manuela Kuhn
4b7836f822 py-ipython: add 8.5.0 and py-win-unicode-console: new package (#32903)
* py-ipython: add 8.5.0 and py-win-unicode-console: new package

* Fix style

* Fix dependency version

* Deprecate version 2.3.1 and 3.1.0

* Always skip IPython.kernel

* Move skip_module definition to top
2022-09-29 13:46:18 -06:00
kwryankrattiger
a01c36da45 Install: Add use-buildcache option to install (#32537)
Install: Add use-buildcache option to install

* Allow differentiating between top level packages and dependencies when
determining whether to install from the cache or not.

* Add unit test for --use-buildcache

* Use metavar to display use-buildcache options.

* Update spack-completion
2022-09-29 13:48:06 -05:00
Brian Van Essen
7a25f416b8 Added new versions of NCCL (#32891) 2022-09-29 11:54:07 -06:00
Brian Van Essen
400a9f3df7 Add aws ofi rccl (#32773)
* Added a package for the aws-ofi-rccl plug-in from the ROCm software
stack.  It allows RCCL to use the libfabric communication library.

Added support for using libfabric in Aluminum.

* Updated the run environment so that the plugin would get loaded.

* Added support for setting up the the LD_LIBRARY_PATH for dependent packages.

* Added package for RCCL tests to assess the impact of OFI libfabric RCCL plug-in.
2022-09-29 10:46:27 -07:00
iarspider
699f575976 Add tag for xgboost 1.6.2 (#32896)
* Add tag for xgboost 1.6.2

* Update py-xgboost as well

* Update package.py

* Update var/spack/repos/builtin/packages/py-xgboost/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-09-29 11:10:22 -06:00
Manuela Kuhn
2ea7703d69 py-itsdangerous: add 2.1.2 (#32904) 2022-09-29 10:54:27 -06:00
Stephen McDowell
679cd4b60d Enable adios2+cuda for ecp-data-vis-sdk +cuda (#32885) 2022-09-29 09:49:58 -05:00
Manuela Kuhn
22054403e8 py-hatchling: add 1.10.0 and py-pathspec: add 0.10.1 (#32865) 2022-09-29 08:16:11 -06:00
Mikael Simberg
a78462988b Add patch to link pthread library for llvm 15 (#32838) 2022-09-29 06:41:59 -07:00
Manuela Kuhn
a0147a1f07 py-importlib-metadata-4.12.0 (#32872) 2022-09-29 07:04:42 -06:00
Sergey Kosukhin
19faeab84d intel-oneapi-compilers-classic: extend setup_run_environment with the one from intel-oneapi-compilers (#32854)
* intel-oneapi-compilers-classic: refactor setup_run_environment

* intel-oneapi-compilers-classic: extend setup_run_environment with the one from intel-oneapi-compilers
2022-09-29 07:58:05 -04:00
Annop Wongwathanarat
42a230eef1 Rename arm to acfl, add v22.0.2 (#32518)
Co-authored-by: Annop Wongwathanarat <annop.wongwathanarat@arm.com>
2022-09-29 13:49:39 +02:00
Manuela Kuhn
8d14f16246 py-imageio: add 2.22.0 (#32870) 2022-09-29 05:29:48 -06:00
Manuela Kuhn
dfecbbeeee py-idna: add 3.4 (#32869) 2022-09-29 04:41:55 -06:00
Manuela Kuhn
1b343434c3 py-interface-meta: add 1.3.0 (incl new dependency packages) (#32873)
* py-interface-meta: add 1.3.0 (incl new dependency packages)

* Update var/spack/repos/builtin/packages/py-poetry-dynamic-versioning/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-09-29 04:22:41 -06:00
Manuela Kuhn
d9cab51fd7 py-formulaic: add 0.5.2 (#32851) 2022-09-29 04:22:18 -06:00
Manuela Kuhn
3f1ebfd4fb py-fracridge: add 2.0 (#32852) 2022-09-29 04:17:59 -06:00
Howard Pritchard
eab148288a superlu:oneapi-deal with non ISO C99 compliance (#32685)
superlu:oneapi-deal with non ISO C99 complianc in the package.

The Intel OneAPI compilers are based on LLVM 14.  A recent enhancement to LLVM -
  https://reviews.llvm.org/D122983
results in superlu-dist not compiling because of some non ISO C99 compliant stuff.

A workaround is to use an llvm compile line option noted in the above URL.

Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2022-09-29 03:58:03 -06:00
Laurent Aphecetche
17d9960424 gl2ps: set CMAKE_MACOSX_RPATH=True to build (#32777) 2022-09-29 03:50:08 -06:00
Lucas Nesi
b37a1ec12b fxt: add static variant (#32794) 2022-09-29 03:46:05 -06:00
Matthieu Dorier
9515998deb [py-deephyper] Added py-deephyper package (#32848) 2022-09-29 03:38:19 -06:00
Manuela Kuhn
2d0ff51185 py-identify: add 2.5.5 (#32868) 2022-09-29 03:34:32 -06:00
iarspider
7b365f4c43 clhep: add v2.4.5.3 and cms-specific patch (#32757) 2022-09-29 11:26:16 +02:00
Manuela Kuhn
7d50fd3b8e py-imagesize-1.4.1 (#32871) 2022-09-29 03:14:18 -06:00
Rob Jones
0e95f580a0 MGCFD-OP2: add new package (#32529) 2022-09-29 11:11:53 +02:00
Manuela Kuhn
a70897c356 py-flake8: add 5.0.4 (#32867) 2022-09-29 03:02:37 -06:00
Manuela Kuhn
6fe89a4220 py-humanize: add 4.4.0 (#32866) 2022-09-29 03:02:14 -06:00
Adam J. Stewart
bc039524da py-torch: fix +rocm+nccl build (#32771) 2022-09-29 11:01:32 +02:00
Sarah Osborn
77afad229c hypre: add Umpire variant (#32884)
* hypre: Add umpire variant
* hypre: Fix to umpire / GPU target propagation
2022-09-29 02:42:00 -06:00
Hans Fangohr
2214f34380 anaconda3: add v2021.11 and v2022.05 (#32882) 2022-09-29 09:07:16 +02:00
Paul Kuberry
59415e6fc8 hwloc: update url_for_version (#32735) 2022-09-29 09:05:18 +02:00
Paul Kuberry
31d54da198 trilinos: update url (#32887) 2022-09-28 23:30:07 -06:00
Manuela Kuhn
d6d40919b2 py-greenlet: add 1.1.3 (#32864) 2022-09-28 22:57:59 -06:00
Manuela Kuhn
e7b0ef719d py-fonttools: add 4.37.3 (#32850) 2022-09-28 22:05:50 -06:00
Sergey Kosukhin
266453ce24 serialbox: enable building with NAG 7.1 (#32883) 2022-09-28 15:57:51 -06:00
Sergey Kosukhin
81f9a5b732 serialbox: patch to add missing include directives (#32880) 2022-09-28 10:33:59 -06:00
Manuela Kuhn
25a75ff9bf py-filelock: add 3.8.0 and py-setuptools-scm: add 7.0.5 (#32846) 2022-09-28 10:09:59 -06:00
John W. Parent
650a668a9d Windows: Support for Clingo and dependencies (#30690)
Make it possible to install the Clingo package on Windows; this
also provides a means to use Clingo with Spack on Windows.

This includes

* A new "winbison" package: Windows has a port of bison and flex where
  the two packages are grouped together. Clingo dependencies have been
  updated to use winbison on Windows and bison elsewhere (this avoids
  complicating the existin bison/flex packages until we can add support
  for implied virtuals).
* The CMake build system was incorrectly converting CMAKE_INSTALL_PREFIX
  to POSIX format.
* The re2c package has been modified to use CMake on Windows; for now
  this is done by overloading the configure/build/install methods to
  perform CMake-appropriate operations; the package should be refactored
  once support for multiple build systems in one Package is available.
2022-09-28 09:54:00 -06:00
iarspider
db2565cb53 Add checksum for py-ipywidgets 8.0.2, py-jupyterlab-widgets 3.0.3 (#32847)
* Add checksum for py-ipywidgets 8.0.2, py-jupyterlab-widgets 3.0.3, add py-jupyterpackaging10

* Apply changes from review

* Fix
2022-09-28 03:45:53 -06:00
Massimiliano Culpo
63dca0c6cc Remove mentions of "best-effort" matrix expansion in the docs (#32755)
closes #20340
2022-09-28 09:15:36 +02:00
Adam J. Stewart
51feed16db py-sphinx: add v5.2.0 (#32804)
* py-sphinx: add v5.2.0
* py-colorama: add v0.4.5
* 3.6 still supported
2022-09-27 21:13:49 -06:00
Vicente Bolea
af1e62b0ac vtkm: add v1.9.0-rc1, keep v1.8.0 preferred (#32858) 2022-09-27 17:41:48 -06:00
eugeneswalker
87b014ed13 e4s: use ubuntu 20.04 image and %gcc@9.4.0 (#32795) 2022-09-27 16:25:56 -06:00
Tom Scogland
d0136899a2 fix cmake cache package handling for hip workaround 2022-09-27 14:21:59 -07:00
Adam J. Stewart
90b86a2266 py-torch-geometric: add v2.1.0 (#32822)
* py-torch-geometric: add v2.1.0

* black

* Update homepage

* Add missing sklearn dep
2022-09-27 15:47:45 -05:00
Alex Hornburg
67717c569e shell.py: fix undefined variable in csh deactivate (#32816)
This commit fixes #27027.

The root cause of the issue is that the `SPACK_OLD_PROMPT` variable
was evaluated in string interpolation regardless of whether the
guard condition above evaluates to true or false. This commit uses
the `eval` keyword to defer evaluation until the command is executed.

Co-authored-by: Alexander Hornburg <alexande@xilinx.com>
2022-09-27 12:32:42 -07:00
snehring
cb9f174a7f zziplib: adding some missing build deps (#32833)
* zziplib: adding some missing build deps
2022-09-27 10:46:01 -06:00
Philipp Edelmann
f0ec6a994c pgplot: install rbg.txt and change PGPLOT_DIR (#32775)
The file rbg.txt is needed for many PGPLOT application, such as the MESA
stellar evolution code. This change installs the file to the PGPLOT_DIR,
where the library expects it.

PGPLOT_DIR was previously set to the prefix itself, which is an odd
place to install rgb.txt. This commit changes it to lib/pgplot5,
following the convention used by Debian.

Co-authored-by: Philipp Edelmann <edelmann@fs.tum.de>
2022-09-27 09:44:19 -07:00
Laurent Aphecetche
384ff70b0d root: add arrow variant (#32837) 2022-09-27 09:26:22 -07:00
Michael Kuhn
9c1d6da111 strace: add 5.19 (#32844) 2022-09-27 08:45:28 -07:00
Manuela Kuhn
0c49ee939b py-executing: add 1.1.0 (#32840) 2022-09-27 10:42:58 -05:00
Manuela Kuhn
086dc66653 py-exifread: add 3.0.0 (#32841) 2022-09-27 10:41:59 -05:00
Manuela Kuhn
608d20446d py-fasteners: add 0.18 (#32843) 2022-09-27 10:39:08 -05:00
Manuela Kuhn
b7a43bf515 py-fastjsonschema: add 2.16.2 (#32845) 2022-09-27 10:38:02 -05:00
Stefano Bertone
ae627150b2 cgal: depends on for older versions (#32802)
* cgal: depends on for older versions
* Update package.py

Co-authored-by: steo85it <steo85it@users.noreply.github.com>
2022-09-27 08:32:16 -07:00
iarspider
9f271fa388 hwloc: replace 'shared' variant with 'libs' (#32093)
* hwloc: replace 'shared' variant with 'libs'
* PEP-8
* Fix gpi-space
2022-09-27 05:53:57 -06:00
Adam J. Stewart
43ceff4193 py-libclang: add v14 (#32824) 2022-09-26 17:21:52 -06:00
Chris White
777271da18 improve lexing error (#32832) 2022-09-26 22:47:45 +00:00
Pak Lui
de9fc038f7 add ROCmPackage to OSU Micro Benchmarks (#32806) 2022-09-26 14:26:58 -07:00
iarspider
b192e3492c Add checksum for py-nbconvert 7.0.0, py-mistune 2.0.4 (#32817) 2022-09-26 14:02:06 -06:00
Jean Luca Bez
f64ca7bc6a hdf5-vol-async: fix path needed for h5bench (#32805)
* fix path needed for h5bench
* Update var/spack/repos/builtin/packages/hdf5-vol-async/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-09-26 12:21:45 -06:00
Laurent Aphecetche
a077b2b0ee vmc: add versions 1-1-p1 and 2-0 (#32703)
* vmc: add versions 1-1-p1 and 2-0
* Update var/spack/repos/builtin/packages/vmc/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-09-26 11:02:10 -07:00
Valentin Volkl
b6be1f3520 hoppet: fix typo in hep tag (#32820) 2022-09-26 11:26:05 -06:00
Manuela Kuhn
94435778ba py-datalad-metalad: add 0.4.5 and new package py-datalad-metadata-model (#32811)
* py-datalad-metalad: add 0.4.5

* Update var/spack/repos/builtin/packages/py-datalad-metalad/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-09-26 11:25:43 -06:00
Manuela Kuhn
f8e23b4fbe py-cryptography: add 38.0.1 (#32809)
* py-cryptography: add 38.0.1

* Fix rust dependency
2022-09-26 10:38:01 -06:00
Alberto Invernizzi
b1fda5dd64 add neovim version 0.7.2 (#32815) 2022-09-26 09:10:38 -07:00
akhursev
5fbbc5fa68 2022.3 oneAPI release promotion (#32786)
In addition to the new release, made intel-oneapi-compilers-classic version number match the compiler version number, instead of the version of the package that contains it.

Co-authored-by: Robert Cohn <robert.s.cohn@intel.com>
2022-09-26 10:01:59 -06:00
Seth R. Johnson
494946d020 celeritas: new versions 0.1.2,3 (#32803) 2022-09-26 08:50:14 -07:00
Manuela Kuhn
7c5a417bb3 py-bottleneck: add 1.3.5 and py-versioneer: add 0.26 (#32780)
* py-bottleneck: add 1.3.5

* Fix sha256 for version 0.18

* Fix python dependency
2022-09-26 10:47:37 -05:00
Manuela Kuhn
beab39eb3c py-coverage: add 6.4.4 (#32789)
* py-coverage: add 6.4.4

* Fix python version in +toml variant
2022-09-26 10:46:23 -05:00
Manuela Kuhn
100eb5014a py-datalad-container: add 1.1.7 (#32810) 2022-09-26 10:42:25 -05:00
Laurent Aphecetche
a5bf7f458d root: make X11 really optional on macOS (#32661)
* root: make X11 really optional on macOS
* Update var/spack/repos/builtin/packages/root/package.py
* remove when clauses in provides

Co-authored-by: Hadrien G. <knights_of_ni@gmx.com>
2022-09-26 08:37:21 -07:00
Manuela Kuhn
b961cfa8d6 py-debugpy: add 1.6.3 (#32812) 2022-09-26 10:35:59 -05:00
Manuela Kuhn
07157306b2 py-distro: add 1.7.0 (#32813) 2022-09-26 10:34:43 -05:00
Laurent Aphecetche
3aa93ca79d arrow: add version 9 and more variants (#32701)
* utf8proc: add version 2.7.0 and shared variant
* xsimd: add version 8.1.0
* arrow: add version 9.0.0 and more variants
2022-09-26 08:30:24 -07:00
Adam J. Stewart
b7926eb6c8 py-py2cairo: only supports Python 2 (#32818) 2022-09-26 17:14:20 +02:00
Adam J. Stewart
1f6545c1c7 gcc: add Apple Silicon support for newer versions (#32702) 2022-09-26 16:21:25 +02:00
Auriane R
677a862fb9 Adapt pika to use the p2300 spack package (#32667)
* Adapt pika to use the p2300 spack package

* Fix formatting with black
2022-09-26 15:07:26 +02:00
Massimiliano Culpo
93dc500f41 py-pkgutil-resolve-name: fix issue with UTF-8 character
This modifications breaks `develop` since it doesn't
pass audits with Python 2.7 It is to be investigated
why audits pass in CI for the PR and the issue is
revealed only when the package is pushed to develop.
2022-09-26 14:47:13 +02:00
Massimiliano Culpo
ecce657509 Remove "tut" from the "build-systems" pipeline
PR #32615 deprecated Python versions up to 3.6.X. Since
the "build-systems" pipeline requires Python 3.6.15 to
build "tut", it will fail on the first rebuild that
involves Python.

The "tut" package is meant to perform an end-to-end
test of the "Waf" build-system, which is scarcely
used. The fix therefore is just to remove it from
the pipeline.
2022-09-26 14:47:13 +02:00
John W. Parent
30f6fd8dc0 Fetching/decompressing: use magic numbers (#31589)
Spack currently depends on parsing filenames of downloaded files to
determine what type of archive they are and how to decompress them.
This commit adds a preliminary check based on magic numbers to
determine archive type (but falls back on name parsing if the
extension type cannot be determined).

As part of this work, this commit also enables decompression of
.tar.xz-compressed archives on Windows.
2022-09-26 00:01:42 -07:00
iarspider
a5ea566bdf Update py-poetry to 1.2.1 (including new packages) (#32776)
* Update py-poetry to 1.2.1

* Update py-xattr

* Apply style from review

* Apply suggestions from code review (part 1)

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Changes from review - 2

* Fix typo

* Fix style

* Add missing py-dulwich version

* Update var/spack/repos/builtin/packages/py-poetry-core/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-poetry/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-poetry/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Apply changes from review

* Add py-backports-cached-property and fix style

* Apply suggestions from code review

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-09-25 12:36:42 -05:00
Sergey Kosukhin
5dc440ea92 py-eccodes: add version 1.5.0 (#32792)
* py-eccodes: ensure the minimal recommended shared version of libeccodes

* py-eccodes: set less general environment variables to enable location of libeccodes

* py-eccodes: add version 1.5.0

* py-eccodes: make flake8 happy
2022-09-24 16:00:45 -05:00
Manuela Kuhn
d9b7bedaaa py-cppy: add 1.2.1 (#32790)
* py-cppy: add 1.2.1

* Update var/spack/repos/builtin/packages/py-cppy/package.py

Co-authored-by: iarspider <iarspider@gmail.com>

Co-authored-by: iarspider <iarspider@gmail.com>
2022-09-24 15:57:55 -05:00
Manuela Kuhn
00753d49da py-click: add 8.1.3 (#32788) 2022-09-24 15:53:42 -05:00
Valentin Volkl
5573ccee53 py-colorcet: add new package (#31597)
* py-colorcet: add new package

* style

* py-colorcet: depend on python 2.7:

* address pr review comments

* address pr review comments

* style
2022-09-24 15:52:14 -05:00
Manuela Kuhn
b721f8038f py-ci-info: add 0.3.0 (#32785) 2022-09-24 15:49:58 -05:00
Manuela Kuhn
08371954bb py-charset-normalizer: add 2.1.1 (#32784) 2022-09-24 15:49:16 -05:00
Manuela Kuhn
3e4bf1e400 py-cfgv: add 3.3.1 (#32782) 2022-09-24 15:48:30 -05:00
Manuela Kuhn
cd58ae23be py-chardet: add 3.0.2 (#32783) 2022-09-24 15:47:37 -05:00
Manuela Kuhn
184af723e4 py-certifi: add 2022.9.14 (#32781) 2022-09-24 15:46:32 -05:00
Manuela Kuhn
c2aab98920 py-beautifulsoup4: add 4.11.1 (#32779) 2022-09-24 15:42:47 -05:00
iarspider
6ee7b5ad91 Add checksum for py-hist 2.6.1, py-boost-histogram 1.3.1 (#32787)
* Add checksum for py-hist 2.6.1

* Swap when and type
2022-09-24 15:41:18 -05:00
iarspider
02e4d4e546 Add checksum for py-google-auth 2.11.0, py-cachetools 5.2.0 (#32791)
* Add checksum for py-google-auth 2.11.0

* Swap when and type

* Update package.py
2022-09-24 15:27:19 -05:00
Tamara Dahlgren
4751881fd1 Fix two docstring typos (#32751) 2022-09-23 11:17:01 -07:00
Manuela Kuhn
3f28ef89cc py-pytz: add 2022.2.1 (#32711) 2022-09-23 09:30:01 -06:00
Daryl W. Grunau
ca62819261 Packages/py scipy (#32767) 2022-09-23 07:41:44 -06:00
Manuela Kuhn
4bfa61c149 py-attrs: add 22.1.0 (#32762) 2022-09-23 04:09:44 -06:00
Harmen Stoppels
2fa9aff206 gitlab: cuda not compatible amazon linux 2 (#32678)
amazon linux 2 ships a glibc that is too old to work with cuda toolkit
for aarch64.

For example:

`libcurand.so.10.2.10.50` requires the symbol `logf@@GLIBC_2.27`, but
glibc is at 2.26.

So, these specs are removed.
2022-09-23 11:01:59 +02:00
Manuela Kuhn
e98e27ac3f py-asttokens: add 2.0.8 (#32760) 2022-09-23 02:49:43 -06:00
iarspider
86958669cf New packages: py-conan, py-node-semver, py-patch-ng (#32753)
* New packages: py-conan, py-node-semver, py-patch-ng

* Update var/spack/repos/builtin/packages/py-conan/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-conan/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-09-23 02:17:42 -06:00
Peter Scheibel
0a050785e9 Skip all tests using problematic fixture on python 2.7 (#32768) 2022-09-23 09:29:48 +02:00
Manuela Kuhn
8f5b847cb0 py-babel: add 2.10.3 (#32763)
* py-babel: add 2.10.3

* Update var/spack/repos/builtin/packages/py-babel/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-09-22 18:29:38 -06:00
iarspider
cbde650eed New package: py-jaraco-classes (#32759)
* New package: py-jaraco-classes

* Update var/spack/repos/builtin/packages/py-jaraco-classes/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-09-22 14:41:53 -06:00
Matthieu Dorier
b18ab062cf [py-tinydb] Added package py-tinydb (#32752)
* [py-tinydb] added package py-tinydb

* [py-tinydb] corrected version in dependency for py-tinydb

* [py-tinydb] update python dependency

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* [py-tinydb] update dependency

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-09-22 15:32:19 -05:00
Peter Scheibel
4094e59ab8 Fetching: log more exceptions (#32736)
Include exception info related to url retrieval in debug messages
which otherwise would be swallowed. This is intended to be useful
for detecting if CA configuration interferes with downloads from
HTTPS links.
2022-09-22 10:54:52 -07:00
Adam J. Stewart
0869d22fcb py-pytorch-lightning: add v1.7.7 (#32765) 2022-09-22 10:22:45 -07:00
Manuela Kuhn
be38400ce2 py-anyio: add 3.6.1 (#32756) 2022-09-22 10:30:14 -06:00
Hans Fangohr
2ad47c8ab2 Enable use of latest version of Octopus (12.0) (#32758)
Release notes:
https://www.octopus-code.org/documentation/main/releases/octopus-12/
2022-09-22 08:50:59 -07:00
iarspider
83d55daae5 New package: cepgen (#32754) 2022-09-22 08:47:44 -07:00
Andrey Alekseenko
0ddbb92ae3 GROMACS: update CMake version, and a couple more fixes (#32748)
- GROMACS is not an acronym (https://www.gromacs.org/about.html).
- GROMACS switched to LGPL a long time ago, so let's mention it first.
- CMake version required for `main` has been bumped to 3.18
  (https://gitlab.com/gromacs/gromacs/-/merge_requests/3093)
- `-DGMX_USE_OPENCL` flag was used before 2021; for newer versions,
  `-DGMX_GPU=OpenCL` is enough.
2022-09-22 07:10:30 -05:00
Tamara Dahlgren
54d06fca79 Add hash hint to multi-spec message (#32652) 2022-09-22 09:18:43 +02:00
Sreenivasa Murthy Kolam
457daf4be6 Add new variants (OPENCL and HIP) for MIVisionX recipe and their dependencies correctly. (#32486)
* add the 2 variants OPENCL and HIP and their dependencies correctly
for OPENCL - rocm-opencl, miopengemm and miopen-opencl
for HIP - miopen-hip
Earlier this was adding both the dependencies -miopen-hip and miopen-opencl
for both the backends which did not seem correct.
Also corrected the miopen-hip or miopen-opencl config.h  in patch() depending on the
backend
Also added libjpeg-turbo as it is required for building ROCAl .
the AMDRpp is still required for ROCAL inclusion but it currently does not build
AMDRpp will be added as a new spack recipe and the mivisionx will refer to that as a
dependency in future.

* fix style errors
* bump up the version for 5.2.3 release. tested +opencl, +hip and ~hip~opencl(cpu backend)

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-09-21 16:54:40 -07:00
renjithravindrankannath
c6d7557484 Update the version details for rccl, rvs, rocm-tensile rocm-5.2.3 release (#32741)
* ROCm 5.2.3 release changes
* Patch file for rccl

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-09-21 15:48:23 -07:00
Sreenivasa Murthy Kolam
e7f1f1af30 Update the version details for rocm-5.2.3 release (#32733)
* Bump up the version for rocm-5.2.3 release
* revert miopen-hip till the tag for mlirmiopen for 5.2.3 is available
2022-09-21 14:40:40 -07:00
Massimiliano Culpo
7e01a1252a Allow conditional variants as first values in a variant directive (#32740) 2022-09-21 19:22:58 +02:00
Robert Pavel
d07b200b67 Spackage for mlperf's OpenCatalyst (#32553)
* Initial opencatalyst proxy app spackage

Initial spackage for opencatalyst proxy app. Includes exposing of
versions in dependency spackages

* Verified Functionality and Spack Style

Verified build of mlperf-opencatalyst and fixed lingering spack style
issues

* Making requested changes to py-ocp

Making requested changed to spackage

* Further Requested Changes
2022-09-21 10:45:48 -06:00
Vanessasaurus
663f55825d flux-core: add v0.43.0 (#32744)
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
2022-09-21 18:26:41 +02:00
Vanessasaurus
dc214edc9c flux-sched: add v0.24.0 (#32743)
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
2022-09-21 18:26:09 +02:00
Manuela Kuhn
36df918e7d py-bleach: add 5.0.1 (#32727) 2022-09-21 09:48:16 -05:00
Laurent Aphecetche
874364bf4d vgm: add v5-0 (#32742) 2022-09-21 15:38:52 +02:00
Tamara Dahlgren
f12ececee5 Docs: Update pipeline ci rebuild to add --tests (plus fixed typos) (#32048) 2022-09-21 14:23:58 +02:00
Garth N. Wells
1313bc99a6 dolfinx: fix depends_on directive missing a version (#32730) 2022-09-21 10:12:22 +02:00
Adam J. Stewart
e45bc8440b pango: harfbuzz+coretext required on macOS (#32637) 2022-09-20 17:57:50 -06:00
Paulo Baraldi Mausbach
16692b802b New python package support: py-river (#32718) 2022-09-20 15:47:08 -05:00
John W. Parent
fd66f55e3c cmake: add v3.24.1 and v3.24.2 (#32654) 2022-09-20 11:24:16 -07:00
Wouter Deconinck
4b66364b06 gaudi: @:36 fails to build with fmt@9: (#32699)
Since fmt@9.0.0 and 9.1.0 were [added](6c4acfbf83) to spack a few days ago, gaudi fails to compile with default concretization. Since gaudi developers are usually paying attention to new versions of dependencies, I'm going to assume (perhaps optimistically) that the next bugfix version of gaudi will fix this (even though the issue has not been reported yet to Gaudi; I posted on the [key4hep public mirror](https://github.com/key4hep/Gaudi/issues/1)).
2022-09-20 11:20:55 -07:00
HELICS-bot
692f1d0e75 helics: Add version 3.3.0 (#32682)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Ryan Mast <3969255+nightlark@users.noreply.github.com>
2022-09-20 11:53:59 -06:00
Stephanie Labasan Brink
2f796e1119 variorum: new versions 0.5 and 0.6, remove log option (#32731) 2022-09-20 11:46:04 -06:00
iarspider
ac459df2b6 Add fixed version 0.7.0 to cpu-features (#32726)
* Add fixed version 0.7.0 to cpu-features
* [@spackbot] updating style on behalf of iarspider

Co-authored-by: iarspider <iarspider@users.noreply.github.com>
2022-09-20 10:40:39 -07:00
Joel Falcou
d8e566d554 Update EVE to 2022.09 (#32729) 2022-09-20 10:35:39 -07:00
Luke Diorio-Toth
cc0e7c87c1 new version (py-multiqc v1.13) + new package (py-rich-click) (#32719)
* started updating multiqc package

* working now

* added py-rich-click

* fixed style

* changed py-matlibplot versions

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* changed py-networkx versions

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* changed py-coloredlogs versions

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* changed python versions

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* changed py-markdown versions

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* changed py-pyyaml requirement

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* changed py-requests requirements

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* changed py-spectra requirements

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-09-20 11:14:01 -06:00
Manuela Kuhn
757a2db741 py-python-gitlab: add 3.9.0 (#32723) 2022-09-20 10:41:53 -06:00
Manuela Kuhn
8409ec0f21 py-annexremote: add 1.6.0 (#32725) 2022-09-20 10:06:03 -06:00
Manuela Kuhn
0d3a4d799a py-pybids: add 0.15.3 (#32722) 2022-09-20 11:03:33 -05:00
Manuela Kuhn
578d06a86a py-nibabel: add 4.0.2 (#32721) 2022-09-20 11:01:06 -05:00
dependabot[bot]
e656b4659a build(deps): bump codecov/codecov-action from 3.1.0 to 3.1.1 (#32717)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 3.1.0 to 3.1.1.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/master/CHANGELOG.md)
- [Commits](81cd2dc814...d9f34f8cd5)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-20 14:03:47 +02:00
natshineman
3b273e263b osu-micro-benchmarks: add v6.1 (#32692) 2022-09-20 12:57:59 +02:00
Jim Galarowicz
24245be85a must: fix incorrect cmake argument (#32671) 2022-09-20 12:45:15 +02:00
Massimiliano Culpo
71434d8b9d intel-oneapi-itac: remove UTF-8 character in docstring
This character causes random failures in CI for Python 2.7
2022-09-20 11:02:10 +02:00
iarspider
2518a55105 Add checksum for py-nbconvert 6.5.1 (#32646) 2022-09-20 09:31:48 +02:00
Jen Herting
637a95c67f py-h5py: add v3.7.0 (#32578) 2022-09-20 09:30:36 +02:00
Manuela Kuhn
7e00852278 py-bids-validator: add 1.9.8 (#32712) 2022-09-20 01:05:45 -06:00
Gregory Lee
9b9691233a stat: add v4.2.1 (#32691) 2022-09-20 08:43:36 +02:00
Sreenivasa Murthy Kolam
0405ed6e9b Bump up the version for rocm-5.2.1 release (#32195)
* Bump up the version for rocm-5.2.1-initial commit
* Bump up the version for rocm-5.2.1 release
* Bump up the version for rocm-5.2.1 release
* correct the PROF_API_HEADER_PATH to include
* Bump up the version of rocm-openmp-extras for rocm-5.2.1 release
* bump up the version of rocwmma for 5.2.1
2022-09-19 21:13:38 -06:00
Jim Edwards
60997a7bc3 add pio2_5_9 to spack package (#32716) 2022-09-19 15:45:40 -06:00
Adam J. Stewart
5479f26aa6 py-pandas: add v1.5.0 (#32714) 2022-09-19 15:09:52 -06:00
kent-cheung-arm
8a7343f97b Added variant to ensure Arm Forge license acceptance (#32635)
* Added variant to ensure Arm Forge license acceptance
* Update var/spack/repos/builtin/packages/arm-forge/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-09-19 13:45:43 -07:00
Wouter Deconinck
5b26df8f64 imagemagick: new variant ghostscript (#32450)
* imagemagick: new variant ghostscript

Ghostscript adds about 75 dependencies to an installation of
imagemagick (97 without, 172 with Ghostscript). This adds a
variant (defaulting to true for backward compatibility) that
allows users to turn off Ghostscript support.

* imagemagick: be explicit when `--with-gslib`

* imagemagick: fix suggestion fail

* imagemagick: use spec.prefix.share.font

* imagemagick: default ghostscript false

* imagemagick: no need for join_path anymore

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-09-19 15:41:11 -05:00
Adam J. Stewart
83e66ce03e Deprecate Python 2 support (#32615)
This PR deprecates using Spack to install [EOL Python versions](https://endoflife.date/python), including Python 2.7, 3.1–3.6. It also deprecates running Spack with Python 2.7. Going forward, we expect Spack to have the following Python support timeline.

### Running Spack

* Spack 0.18 (spring 2022): Python 2.7, 3.5–3.10
* Spack 0.19 (fall 2022): Python 2.7 (deprecated), 3.6–3.11
* Spack 0.20 (spring 2023): Python 3.6–3.11

### Building with Spack

* Spack 0.18 (spring 2022): Python 2.7, 3.1–3.10
* Spack 0.19 (fall 2022): Python 2.7, 3.1–3.6 (deprecated), 3.7–3.11
* Spack 0.20 (spring 2023): Python 3.7–3.11

This is a reboot of #28003. See #31824 for a detailed discussion of the motivation for this PR.
If you have concerns about this change, please comment on #31824.
2022-09-19 13:34:38 -07:00
Manuela Kuhn
cc78d5db36 py-datalad: add 0.17.5 (#32676)
* py-datalad: add 0.17.5

* Fix description of py-types-urllib3

* Update var/spack/repos/builtin/packages/py-datalad/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-datalad/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Add colorama dependency for windows

* Fix importlib-metadata dependency

* Update var/spack/repos/builtin/packages/py-pytest/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-pytest/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-pytest/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Use conflict to avoid dependency duplication

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-09-19 15:30:34 -05:00
rsanthanam-amd
8f8205af88 NCCL should not be dependent on ROCm builds since RCCL is used instead. (#32461)
Allow the nccl flag to be specified even for ROCm builds so that NCCL kernels are included in the build.

In this case the NCCL kernels will use RCCL as the backend implementation.
2022-09-19 15:02:02 -05:00
Stephen Sachs
13d870157f Adding intel-oneapi-itac package (#32658)
* Adding intel-oneapi-itac package
* Make black happy
* add rscohn2 as maintainer
* black prefers double quotes

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
Co-authored-by: Robert Cohn <rscohn2@gmail.com>
2022-09-19 12:44:32 -07:00
Terry Cojean
5d42185698 Ginkgo: improve smoke testing (#32647)
* Ginkgo: improve smoke testing
* Fix style issues
* Pass `self.compiler.{cc,cxx}` to the smoke tests
2022-09-19 12:37:34 -07:00
Ashwin Kumar
3ffc7f4281 patch etsf-io tests (#32666)
(Patches from meisam.tabriz@mpcdf.mpg.de and smoke tests from @fangohr)
2022-09-19 12:31:59 -07:00
Wouter Deconinck
7d250c4bea root: determine_variants cxxstd=20 support (#32673)
This is somewhat ahead of reality, but once/when external ROOT installs with cxxstd=20 are common, we will need this to pick up the correct variant.
2022-09-19 11:32:47 -07:00
snehring
edee67d96f fasttree: updating to 2.1.11 (#32683) 2022-09-19 11:07:51 -07:00
Massimiliano Culpo
fc1e25c5e1 Don't run bootstrap on package only PRs (#32689)
* Don't run bootstrap on package only PRs

* Run bootstrap tests when ci.yaml is modified

* Test a package only PR

* Revert "Test a package only PR"

This reverts commit af96b1af60b0c31efcc9a2875ffb1a809ef97241.
2022-09-19 10:59:29 -07:00
Adam J. Stewart
bb071d03ba py-sip: add v6.6.2 (#32695)
* py-sip: add v6.6.2

* Fix python deptype
2022-09-19 10:56:47 -07:00
Wouter Deconinck
0298823e28 edm4hep: allow variant cxxstd 20, sync with podio (#32698)
Now that `podio` can support `cxxstd` variants 17 and 20, we can allow `edm4hep` to use `cxxstd=20` as well, but must ensure that `edm4hep` uses the same `cxxstd` variant as `podio`. Solution as in `celeritas`.
2022-09-19 10:51:22 -07:00
Laurent Aphecetche
51d2c05022 geant4-vmc: add version 6-1-p1 (#32704) 2022-09-19 10:12:02 -07:00
iarspider
3762e7319d Fix benchmark recipe after branch name was changed (#32708) 2022-09-19 10:08:30 -07:00
Wouter Deconinck
2f19826470 geant4: new bugfix version 11.0.3 (#32700)
Geant4 has a new bugfix version 11.0 patch-03, [release notes](https://geant4-data.web.cern.ch/ReleaseNotes/Patch.11.0-3.txt). No build system changes.
2022-09-19 13:11:31 +01:00
Manuela Kuhn
0f9cd73f58 py-neurora: add 1.1.6.8 (#32684) 2022-09-19 04:41:41 -06:00
Manuela Kuhn
17c16ac2fc py-pydicom: add 2.3.0 (#32681) 2022-09-19 04:25:35 -06:00
John W. Parent
0376a62458 Attempt at patching phist find mpi heuristic (#32688)
for updated phist version
2022-09-18 11:18:28 -05:00
Manuela Kuhn
d4c13b0f8f Add skip_import to PythonPackage and use it in py-nilearn (#32664)
* Add skip_import to PythonPackage and use it in py-nilearn

* Fix dependencies
2022-09-17 23:02:30 +00:00
Paul Kuberry
2c7c749986 xyce: Change preferred to last numeric version (#32679)
- Also handles new constraints on Trilinos version
2022-09-17 13:57:40 -06:00
Robert Cohn
9e0755ca3a [intel-oneapi-compilers] fix CC/CXX (#32677) 2022-09-16 14:16:06 -04:00
Massimiliano Culpo
0f26931628 CI: add coverage on Windows (#32610)
Co-authored-by: Tom Scogland <scogland1@llnl.gov>
2022-09-16 05:38:29 -07:00
Todd Gamblin
a0c7209dc1 bugfix: package hash should affect process, dag, and dunder hashes (#32516)
This fixes a bug where two installations that differ only by package hash will not show
up in `spack find`.

The bug arose because `_cmp_node` on `Spec` didn't include the package hash in its
yielded fields. So, any two `Spec` objects that were only different by package hash
would appear to be equal and would overwrite each other when inserted into the same
`dict`. Note that we could still *install* specs with different package hashes, and they
would appear in the database, but we code that needed to put them into data structures
that use `__hash__` would have issues.

This PR makes `Spec.__hash__` and `Spec.__eq__` include the `process_hash()`, and it
makes `Spec._cmp_node` include the package hash. All of these *should* include all
information in a spec so that we don't end up in a situation where we are blind to
particular field differences.

Eventually, we should unify the `_cmp_*` methods with `to_node_dict` so there aren't two
sources of truth, but this needs some thought, since the `_cmp_*` methods exist for
speed. We should benchmark whether it's really worth having two types of hashing now
that we use `json` instead of `yaml` for spec hashing.

- [x] Add `package_hash` to `Spec._cmp_node`
- [x] Add `package_hash` to `spack.solve.asp.spec_clauses` so that the `package_hash`
      will show up in `spack diff`.
- [x] Add `package_hash` to the `process_hash` (which doesn't affect abstract specs
      but will make concrete specs correct)
- [x] Make `_cmp_iter` report the dag_hash so that no two specs with different
      process hashes will be considered equal.
2022-09-16 00:57:10 +00:00
liuyangzhuan
46d7ba9f78 adding butterflypack 2.2.0 (#32670) 2022-09-15 18:14:01 -06:00
iarspider
31c24cd0d5 New package: xrdcl-record (#32663)
* New package: xrdcl-record
* Flake-8
2022-09-15 10:13:37 -07:00
Matthew Archer
66b451a70d Fenicsx v0.5.0 (#32611)
* initial commit of 0.5.0 changes
* updated dependencies
* updated ffcx sha
* comment style
* llvm compilers
* introduce pugixml dependency for 0.5.0:
* update compilers to support C++20 features
* style fixes
* xtensor and xtl not needed for basix 0.5.0 and above
* Skip to Basix 0.5.1

The 0.5.1 release removes the C++ build dependency on Python that sneaked into the 0.5.0 build system.

* Improve depends on version ranges
* More dependency version improvements

Co-authored-by: Chris Richardson <chris@bpi.cam.ac.uk>
Co-authored-by: Garth N. Wells <gnw20@cam.ac.uk>
2022-09-15 08:11:25 -07:00
Robert Underwood
6f15d8ac76 added missing dependency for py-msgpack that breaks neovim (#32631)
* added missing dependency for py-msgpack that breaks neovim

* Update var/spack/repos/builtin/packages/py-pynvim/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Robert Underwood <runderwood@anl.gov>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-09-15 09:45:39 -05:00
Glenn Johnson
123354e920 FPLO: add new package (#32580) 2022-09-15 10:03:05 +02:00
Matthieu Dorier
eaf3f7c17c [py-pip] fix setup_dependent_package in py-pip (#32632) 2022-09-14 23:41:34 -06:00
Vicente Bolea
dde5867d15 libcatalyst: use git instead of fixed urls (#32642)
The issue is that we are not not able to install (Fetch URL error) any
version of catalyst other than the specified in the spack package.py.
This very version is accessible only because it is cached by Spack. The
real URL does not exist anymore, I believe the reason is that there used
to be a tag in catalyst that does not exist anymore.
2022-09-14 17:05:02 -07:00
John W. Parent
deca34676f Bugfix: find_libraries (#32653)
53a7b49 created a reference error which broke `.libs` (and
`find_libraries`) for many packages. This fixes the reference
error and improves the testing for `find_libraries` by actually
checking the extension types of libraries that are retrieved by
the function.
2022-09-14 14:45:42 -06:00
Peter Scheibel
7971985a06 Manifest parsing: skip invalid manifest files (#32467)
* catch json schema errors and reraise as property of SpackError
* no need to catch subclass of given error
* Builtin json library for Python 2 uses more generic type
* Correct instantiation of SpackError (requires a string rather than an exception)
* Use exception chaining (where possible)
2022-09-14 13:02:51 -07:00
Sergey Kosukhin
ebb20eb8f8 llvm: fix detection of LLDB_PYTHON_EXE_RELATIVE_PATH (#32584) 2022-09-14 12:45:41 -06:00
psakievich
045a5e80cb Allow version to accept the '=' token without activating lexer switch (#32257) 2022-09-14 10:16:28 -07:00
Valentin Volkl
01c9780577 py-awkward: allow newer, fixed rapidjson versions (#32650)
Rapidjson was constrained due to a bug (see https://github.com/spack/spack/pull/29889) , but newer (although untagged) versions of rapidjson have since been added to spack (https://github.com/spack/spack/pull/29869). Tested the build of py-awkward with the latest, works fine.
2022-09-14 11:57:20 -05:00
iarspider
5ffde1d51c Add checksum for yoda 1.9.6 (#32648) 2022-09-14 09:48:56 -07:00
Ishaan Desai
4453653418 [py-pyprecice] add v2.5.0.0 and v2.5.0.1 and update checksum of v2.4.0.0 (#32551)
* Update versions 2.5.0.0 and 2.5.0.1

* Applying review changes

* Updating incorrect checksum for v2.4.0.0

* Add for loop to define depends_on for preCICE versions and bindings versions

* Formatting

* Missing comma
2022-09-14 09:55:48 -05:00
Paul Kuberry
f37e9addcd compadre: add v1.5.0, v1.4.1 (#32609) 2022-09-14 06:49:52 -06:00
Houjun Tang
c1b3f0e02f Add hdf5-vol-async v1.3 (#32634) 2022-09-14 04:21:48 -06:00
Adam J. Stewart
ddd18351a1 py-pytorch-lightning: add v1.7.6 (#32644) 2022-09-14 02:09:58 -06:00
Adam J. Stewart
ce56cb23fe py-tokenize-rt: add missing setuptools dependency (#32639) 2022-09-14 10:04:03 +02:00
Jonas Thies
8d2cd4a620 phist: add v1.9.5 (#32621) 2022-09-14 09:46:09 +02:00
Erik Schnetter
9543716d81 berkeley-db: Correct TLS auto-detection (#32592) 2022-09-13 22:13:50 -06:00
Zack Galbreath
4ebdc5643e Revert "e4s ci: restore power builds (#32296)" (#32633)
This reverts commit 0d18c32bca.
2022-09-14 03:26:26 +00:00
Adam J. Stewart
93c39464e3 json-glib: add pkgconfig dependency (#32638) 2022-09-13 21:18:55 -06:00
Adam J. Stewart
cb323b1f55 graphite2: fix build on macOS (#32636) 2022-09-13 21:16:59 -06:00
João Seródio
9f72962dd1 New package: py-qiskit-nature (#32628) 2022-09-13 21:16:38 -06:00
Robert Underwood
9e5f3f96dd add ability to disable werror for rocksdb (#32618)
* add ability to disable werror for rocksdb
* Update var/spack/repos/builtin/packages/rocksdb/package.py

Co-authored-by: Robert Underwood <runderwood@anl.gov>
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-09-13 19:45:56 -06:00
Sam Broderick
d6a3ffc301 Update module_file_support.rst (#32629)
Missing lead in "This may to inconsistent modulfiles if..."
2022-09-14 01:41:50 +00:00
Jonas Thies
4654d66905 packages/phist: new version 1.10 (#32581)
* packages/phist: new version 1.10

* fix (and narrow) conflicts, thanks @glennpj
2022-09-13 17:21:46 -05:00
Ondřej Čertík
463c5eacca Add libraqm package; enable in py-pillow (#32619)
* Add libraqm package

* py-pillow: Add optional raqm dependency/variant

* Use sha256

* Use " instead of '

* Use more explicit import

* Only add raqm from @8.4.0:

* Make the docstring shorter to satisfy flake

* Add conflict, silence warning, adjust version

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-09-13 14:13:57 -06:00
Aurelien Bouteiller
83d6aff03a Parsec: v3.0.2209 (#32617)
Signed-off-by: Aurelien Bouteiller <bouteill@icl.utk.edu>

Signed-off-by: Aurelien Bouteiller <bouteill@icl.utk.edu>
2022-09-13 13:33:56 -06:00
Carlos Bederián
3b46a0bffe gromacs: add 2022.3 (#32624) 2022-09-13 12:41:57 -06:00
Chris White
937b576b5b fix depends on versioning (#32626) 2022-09-13 10:29:21 -07:00
John W. Parent
53a7b49619 Windows rpath support (#31930)
Add a post-install step which runs (only) on Windows to modify an
install prefix, adding symlinks to all dependency libraries.

Windows does not have the same concept of RPATHs as Linux, but when
resolving symbols will check the local directory for dependency
libraries; by placing a symlink to each dependency library in the
directory with the library that needs it, the package can then
use all Spack-built dependencies.

Note:

* This collects dependency libraries based on Package.rpath, which
  includes only direct link dependencies
* There is no examination of libraries to check what dependencies
  they require, so all libraries of dependencies are symlinked
  into any directory of the package which contains libraries
2022-09-13 10:28:29 -07:00
Cameron Stanavige
251d86e5ab unifyfs & gotcha: new releases (#32625)
UnifyFS:
- Add 1.0 release
- Deprecate older, unsupported versions
- Set fortran variant to true by default
- Update gotcha and mochi-margo dependency versions for unifyfs@1.0
  and unifyfs@develop
- Add conflict of unifyfs with libfabric 1.13.* versions
- Update configure_args to use helper functions

GOTCHA: Hasn't been under active development for a couple years but
the develop branch has some fixes UnifyFS uses. To avoid having
UnifyFS v1.0 depend on a develop branch of a dependency, this creates
a new release in the Gotcha Spack package based on the most recent
commit of the develop branch.
2022-09-13 10:53:11 -06:00
Cory Bloor
633a4cbd46 rocsparse: add spack build test (#31529)
* rocsparse: add spack build test

* Fix Navi 1x patch for ROCm 5.2

* Remove bench variant and other cleanup

* Fix style
2022-09-13 08:42:42 -07:00
Jordan Ogas
3e331c7397 charliecloud: deprecate old versions (#32462)
* tidy, deprecate old versions

* bump python

* begrudgingly apply less readable style

* adjust comment spacing

* apply ghastly multiline function arguments
2022-09-13 09:25:55 -06:00
Tamara Dahlgren
e97915eef2 Add an issue template for reporting package stand-alone test failures (#32487) 2022-09-13 08:22:04 -06:00
Brian Van Essen
2d895a9ec3 Added 2.6.0 version to NVSHMEM package. Added new variant for GPU (#32622)
initiated support experimental feature.
2022-09-13 08:14:04 -06:00
Tamara Dahlgren
62e788fb89 Added install phase test methods for CachedCMakePackage (inherited) and WafPackage (#32627) 2022-09-13 12:12:15 +02:00
Henrik Nortamo
bc83c72ebe Hyperqueue package (#32475)
* Adds hyperqueue package

* Adds maintainers

* Adds missing dockstring

* Bump year for Copyright

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* Fixes checksum, selects preferred version

Don't use a release candidate as the default version

* Switch maintainer to one of the developers for HQ

* Update package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-09-13 00:57:55 -06:00
Adam J. Stewart
68115eb1d0 GDAL: add v3.5.2 (#32614) 2022-09-13 00:53:51 -06:00
Erik Schnetter
6e5dc7374c openblas: Allow building linktest.c with clang@15 (#32597) 2022-09-12 12:17:49 -06:00
kwryankrattiger
6a5d247d7c VTK-m: Update gcc 11 conflict after patch (#32546) 2022-09-12 11:29:45 -06:00
Cory Bloor
13d872592e rocalution: fix compilation for Navi 1x and 2x (#32586) 2022-09-12 09:19:59 -07:00
Jim Edwards
5dc1a9f214 parallelio: make shared lib the default (#32432) 2022-09-12 17:48:21 +02:00
Wouter Deconinck
8dad297526 cuba: new package (#32510) 2022-09-12 15:27:03 +00:00
Qian Jianhua
734ae99285 dtc: fix build error with clang or Fujitsu compiler (#32543) 2022-09-12 16:59:05 +02:00
kwryankrattiger
b4f3812077 SDK: Remove conflicting variants from sensei propagation (#32490) 2022-09-12 16:57:42 +02:00
Rémi Lacroix
f2b19c39a0 r-gridextra: fix the CRAN package name. (#32474)
It seems like it was renamed from "gridExtras" to "gridExtra".
2022-09-12 16:57:15 +02:00
Simon Pintarelli
cb3b5fb716 sirius: new version, libsci supports (#32443) 2022-09-12 16:56:14 +02:00
Vicente Bolea
e5dcc43b57 ParaView: add v5.11.0-RC1 (#32436) 2022-09-12 16:55:18 +02:00
Mikael Simberg
daf691fd07 whip: add new package (#32576) 2022-09-12 16:54:17 +02:00
Kendra Long!
3ff63b06bf draco: add v7.14.1 (#32495) 2022-09-12 08:52:41 -06:00
Adrien Cotte
acdb6321d1 wi4mpi: mpi dep removed after v3.6.0 (#32352) 2022-09-12 08:52:17 -06:00
Jack Morrison
8611aeff52 opa-psm2: add v11.2.230 (#32530) 2022-09-12 08:47:04 -06:00
Ioannis Magkanaris
6c4acfbf83 fmt: add v9.1.0 and v9.0.0 (#32527)
Co-authored-by: Ioannis Magkanaris <ioannis.magkanaris@epfl.ch>
2022-09-12 08:46:42 -06:00
aeropl3b
d8e6782f42 HIPSycl: LLVM@10: provides working clang with cuda >= 11 (#32512)
Co-authored-by: RJ <aeropl3b+dev@gmail.com>
2022-09-12 08:46:19 -06:00
Simon Pintarelli
f33b7c0a58 spfft: inherit from ROCmPackage (#32550)
Co-authored-by: Alberto Invernizzi <9337627+albestro@users.noreply.github.com>
2022-09-12 08:22:39 -06:00
Seth R. Johnson
d4065e11c6 iwyu: support external find (#32458) 2022-09-12 08:22:14 -06:00
natshineman
bb6c39ea7c osu-micro-benchmarks: add v6.0 (#32587) 2022-09-12 16:19:23 +02:00
Carson Woods
46828eff1b Add new and legacy intel-mpi-benchmarks versions (#32535)
* Add new intel-mpi-benchmarks version

* Add new versions of intel mpi benchmarks

* Fix style bugs

* Fix style bugs

* Switch to using url_for_version formatting and improve patch ranges

* p2p benchmark is not included on older versions

* Set patch to proper version

* Add url field, improve patch versioning, improve version detection

* Add url field, improve patch versioning, improve version detection

* Bug fix
Syntax fix

* Remove 2019 from valid version on reorder_benchmark_macros patch

* OpenMPI isn't supported on older versions of the benchmark. Prevents OpenMPI from being selected on those versions

* Add new requirement of gmake for older versions

* Require intel-mpi for older versions of benchmark

* Minor changes to build directory for older versions

* Remove repeated conflict

* Minor style changes

* Minor change

* Correct fix for intel-mpi-benchmarks

* Bug fix

* Bug fix

* Attempted fix for install bug

* Attempted fix for install bug

* Remove duplicate build_directory setting
2022-09-12 08:54:42 -05:00
Christoph Conrads
5be1da4491 fenics-basix: make xtensor-blas dependency explicit (#28951) 2022-09-12 12:51:37 +00:00
Wouter Deconinck
29093f13ec podio: new variant cxxstd=(17,20) (#30437) 2022-09-12 14:44:16 +02:00
SXS Bot
51ce370412 spectre: add v2022.09.02 (#32501)
Co-authored-by: sxs-bot <sxs-bot@users.noreply.github.com>
2022-09-12 14:05:40 +02:00
Jen Herting
3c822cee58 [py-bitarray] added version 2.6.0 (#32560) 2022-09-12 04:01:55 -06:00
Adam J. Stewart
7904e1d504 GDAL: fix typo (#32524) 2022-09-12 11:41:55 +02:00
Adam J. Stewart
9d9f1ac816 py-pytorch-lightning: add v1.7.5 (#32552) 2022-09-12 11:41:33 +02:00
eugeneswalker
bf84cdfcbe e4s: add py-torch +cuda (#32601) 2022-09-12 09:40:49 +00:00
Ken Raffenetti
8071cc60cb mpich: Set minimum libfabric version to build (#32557)
Starting with MPICH 3.4, we need at least libfabric 1.5 in order to
build. Fixes #24394
2022-09-12 11:38:55 +02:00
Elsa Gonsiorowski, PhD
f5c0bc194f SCR: add v3.0.1 (#32555) 2022-09-12 03:38:05 -06:00
Jhon-Cleto
1ca184c1ee cuda: add v11.7.1 (#32606) 2022-09-12 03:30:00 -06:00
Sergey Kosukhin
7a93eddf1c gcc: add support for the D language (GDC) (#32330) 2022-09-12 11:27:35 +02:00
Andrew W Elble
f7fbfc54b3 routinator: add new package (#32532) 2022-09-12 11:20:16 +02:00
Larry Knox
0bc9dbe6f8 Add spack package hdf5-vol-cache. (#32449)
* Add spack package hdf5-vol-cache.

* Style updates.

* Update var/spack/repos/builtin/packages/hdf5-vol-cache/package.py

* Remove outdated hdf5-cmake package options.
2022-09-12 03:18:05 -06:00
Adam J. Stewart
3d904d8e65 py-tensorflow: add v2.10.0 (#32544) 2022-09-12 11:17:47 +02:00
Stephen Sachs
9c1e916c1c wrf: define NETCDFFPATH in case it differs from NETCDFPATH (#32548)
Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-09-12 11:17:17 +02:00
Erik Schnetter
cd1d6a9178 mpitrampoline: add v5.0.2 (#32598) 2022-09-12 03:09:52 -06:00
Auriane R
a2396c30b2 p2300: add wg21 p2300 std_execution as a package (#32531) 2022-09-12 09:04:04 +00:00
Philipp Edelmann
dea1e12c88 pgplot: fix build failure when using +X (#32542)
The spec was using the wrong key to find the X11 library flags.
2022-09-12 10:58:43 +02:00
Mikael Simberg
17b98f6b1f pika: add v0.8.0 (#32577) 2022-09-12 10:41:29 +02:00
Stephen Sachs
40ee78f6e8 GPCNeT: add new package (#32593)
Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-09-12 10:40:19 +02:00
Massimiliano Culpo
34a7df9ea0 Fix encoding issues with py-cylp (#32608)
fixes #32607

The package contains character that have encoding
issues with Python 2.7.
2022-09-12 10:34:54 +02:00
Adam J. Stewart
cb2cdb7875 py-tensorflow-metadata: add v1.10.0 (#32545) 2022-09-12 10:27:16 +02:00
Adam J. Stewart
50c031e6aa nettle: add v3.8.1 (#32523) 2022-09-12 09:45:35 +02:00
João Marcos
7382a3ca89 distbench: add new package (#32605) 2022-09-12 08:44:05 +02:00
Mark W. Krentel
d4ec0da49a hpctoolkit: add yaml-cpp as dependency for develop (#32538) 2022-09-12 08:35:37 +02:00
Adam J. Stewart
2caf449b8b py-numpy: add v1.23.3 (#32590) 2022-09-10 19:58:11 -05:00
Adam J. Stewart
76b4e5cc51 py-torchgeo: add v0.3.1 (#32582) 2022-09-10 19:43:45 -05:00
Adam J. Stewart
2ad9164379 py-pyproj: add v3.4.0 (#32599)
* py-pyproj: add v3.4.0

* Remove older basemap versions
2022-09-10 19:25:01 -05:00
Adam J. Stewart
11a4b5ed69 py-cartopy: add v0.21.0 (#32600) 2022-09-10 19:24:30 -05:00
Glenn Johnson
01153b3271 new packages: py-arm-pyart and dependencies (#32579)
* new packages: py-arm-pyart and dependencies

- py-arm-pyart
- py-cylp
- rsl

* Update var/spack/repos/builtin/packages/py-cylp/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Fix dependencies

- xarray is not optional
- pandas is needed
- pylab is needed
  - new package, py-pylab-sdk
- setuptools is needed at run time

* Patch for import of StringIO

* Update var/spack/repos/builtin/packages/py-arm-pyart/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Fix call to `StringIO` in patch

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-09-10 23:02:15 +00:00
Massimiliano Culpo
1427ddaa59 ci: restore coverage computation (#32585)
* ci: restore coverage computation

* Mark "test_foreground_background" as xfail

* Mark "test_foreground_background_output" as xfail

* Make number of processes explicit, remove verbosity on linux

* Run coverage on just 3 Python jobs for linux

* Run coverage on just 3 Python jobs for linux

* Run coverage on just 2 Python jobs for linux

* Add back verbose, since before we didn't encounter the xdist internal error

* Reduce the workers to 2

* Try to use command line
2022-09-10 07:25:44 -06:00
psakievich
b4a2b8d46c GitRef Versions: Bug Fixes (#32437)
* Fix a version cmp bug in asp.py

* Fix submodule bug for git refs

* Add branch in logic for submodules

* Fix git version comparisons

main does not satisfy git.foo=main
git.foo=main does satisfy main
2022-09-09 11:02:40 -07:00
Jen Herting
c51af2262e py-session-info: add new package (#32564)
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-09-09 05:13:59 -06:00
Jen Herting
a13cf43b65 py-anndata: add new package (#32563)
Co-authored-by: James A Zilberman <jazrc@rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-09-09 05:09:45 -06:00
Jen Herting
0fd749aa2c New package: py-python-bioformats (#32561)
* [py-python-bioformats] New package

* [py-python-bioformats] Added version 4.0.0

* [py-python-bioformats] Added types

* [py-python-bioformats] setuptools is build only

* [py-python-bioformats] fixup import

* [@spackbot] updating style on behalf of qwertos

Co-authored-by: James A Zilberman <jazrc@rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-09-09 03:09:57 -06:00
Jen Herting
59602f790e py-umap-learn: add new package (#32562)
Co-authored-by: James A Zilberman <jazrc@rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-09-09 03:05:49 -06:00
eugeneswalker
0d18c32bca e4s ci: restore power builds (#32296) 2022-09-08 21:00:58 -07:00
Brian Van Essen
f0c1c6f8cc Match protobuf to py-protobuf version (#32491)
* Fixed the py-protobuf recipe so that when cpp support is require so
that it uses the same major and minor version range for the protobuf
package.

* Fixed the range bound for the 3.x py-protobuf packages.

Added mappings for 4.x py-protobuf packages to 3.x protobuf packages.

Removed a hash for v21.1 protobuf and replaced with v3.21.1 to keep a
standard versioning convention.  Note that while Google has started
releasing both 3.x.y and a tag that dropped the leading 3. so it is
just x.y.  This provides the appearance of a new major version, but
really is just a new minor version.  These packages still report
versions as 3.x.y, so switching to versions and hashes with that
convention.

* Simplified constraints based on reviewer comments.

* Fixed flake8 errors

* Update var/spack/repos/builtin/packages/py-protobuf/package.py

* Fixed constraints on v2. versions and addressed Flake8 comments.

* Fixed flake8

* Fixed range dependencies for version 2.x

* Update var/spack/repos/builtin/packages/py-protobuf/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Fixed version ranges to skip unknown versions.

* Fixed the dependencies on protobuf to solve weird build issues.

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-09-08 21:05:52 -06:00
Peter Scheibel
02151ac649 CMakePackage: allow custom CMAKE_PREFIX_PATH entries (#32547)
* define `cmake_prefix_paths` property for packages

add to CMake arguments via CMakePackage

Co-authored-by: Robert Underwood <runderwood@anl.gov>
2022-09-08 16:23:04 -07:00
Mark W. Krentel
e3f87035b6 libmonitor: add version 2022.09.02 (#32525) 2022-09-08 13:45:57 -06:00
Massimiliano Culpo
67534516c7 ci: avoid running coverage on package only PRs (#32573)
* ci: remove !docs from "core" filters

Written like it is now it causes package only PRs
to run with coverage.

* Try to skip job under condition, see if the workflow proceed

* Try to cancel a running CI job

* Simplify linux unit-tests, skip windows unit-tests on package PRs

* Reduce the inputs to unit-tests workflow

* Move control logic to main workflow, remove inputs

* Revert "Move control logic to main workflow, remove inputs"

This reverts commit 0c46fece4c.

* Do not compute "with_coverage" since it's always == to "core"

* Remove workflow dispatch from unit tests

* Revert "Revert "Move control logic to main workflow, remove inputs""

This reverts commit dd4e4a4e61.

* Try to skip all from the main workflow

* Add back bootstrap to needed checks for "all"

* Restore the correct logic for conditionals
2022-09-08 10:58:53 -07:00
Michael Kuhn
dc1734f0a6 py-cython: add 0.29.32 (#32574) 2022-09-08 12:41:24 -05:00
Michael Kuhn
2cfac3389a meson: add v0.63.2 (#32575) 2022-09-08 10:33:49 -06:00
Jen Herting
63d079cce9 New package: py-pytesseract (#30765)
* Versions added for each dep, but I think I'll need to remove them

* py-tesseract now builds and will import in python

* Fixed flake style error as raised by pipeline

* changed to proper python dependency

* added pil as a dependency

* Fixed flake style errors

* [py-pytesseract] py-pillow and py-wheel are redundant

* [py-pytesseract]

- fixed spelling
- removed unneeded dependency

* [py-pytesseract] update import

Co-authored-by: Viv Eric Hafener <vehrc@sporcbuild.rc.rit.edu>
2022-09-08 15:24:42 +00:00
Howard Pritchard
a7fe137941 ucx: add 1.13.1 release (#32556)
Signed-off-by: Howard Pritchard <howardp@lanl.gov>

Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2022-09-08 08:24:21 +02:00
Peter Scheibel
021ff1c7da Skip test which fails randomly on Python 2.7 (#32569) 2022-09-08 08:11:20 +02:00
Tom Scogland
762ba27036 Make GHA tests parallel by using xdist (#32361)
* Add two no-op jobs named "all-prechecks" and "all"

These are a suggestion from @tgamblin, they are stable named markers we
can use from gitlab and possibly for required checks to make CI more
resilient to refactors changing the names of specific checks.

* Enable parallel testing using xdist for unit testing in CI

* Normalize tmp paths to deal with macos

* add -u flag compatibility to spack python

As of now, it is accepted and ignored.  The usage with xdist, where it
is invoked specifically by `python -u spack python` which is then passed
`-u` by xdist is the entire reason for doing this.  It should never be
used without explicitly passing -u to the executing python interpreter.

* use spack python in xdist to support python 2

When running on python2, spack has many import cycles unless started
through main.  To allow that, this uses `spack python` as the
interpreter, leveraging the `-u` support so xdist doesn't error out when
it unconditionally requests unbuffered binary IO.

* Use shutil.move to account for tmpdir being in a separate filesystem sometimes
2022-09-07 20:12:57 +02:00
Satish Balay
8e5ccddc13 llvm: add 15.0.0 (#32536) 2022-09-07 10:42:01 -07:00
Robert Blake
5bb175aede Upgrade py-kosh to 2022-08-10 version. (#32541) 2022-09-06 21:57:57 -06:00
Laura Bellentani
92e0dbde03 quantum-espresso: add cuda support (#31869) 2022-09-06 14:45:57 -06:00
Adam J. Stewart
ab82cc5257 py-tensorflow: add v2.7.4, v2.8.3, v2.9.2 (#32500)
* py-tensorflow: add v2.7.4

* py-tensorflow: add v2.8.3

* py-tensorflow: add v2.9.2
2022-09-06 15:44:51 -05:00
luker
92018261aa update libflame for work with crayCC, craycc, ... (#32533)
update libflame for work with crayCC, craycc, crayftn compiler wrappers. These lightweight compiler drivers do not add the `-L<lib_path>` like the CC/cc/ftn compiler drivers do. I've made a slight change to add the lib directories.
2022-09-06 11:14:06 -06:00
Seth R. Johnson
c7292aa4b6 Fix spack locking on some NFS systems (#32426)
Co-authored-by: Todd Gamblin <tgamblin@llnl.gov>
2022-09-06 09:50:59 -07:00
Massimiliano Culpo
d7d59a24d1 Mark a test xfail on Python 2.7 (#32526)
refers #32470
2022-09-06 11:56:44 +02:00
Cory Bloor
b093929f91 rocthrust: add amdgpu_target and spack build test (#31203)
This change adds support for building the rocthrust tests and adds the `amdgpu_target` 
variant to the `rocthrust` package.

- [x] rocthrust: add amdgpu_target and spack build test
- [x] Drop numactl as it is not a direct dependency
2022-09-04 19:18:33 -07:00
Tom Scogland
c25b7ea898 Apply hip workaround for raja-framework (#32469)
* add workaround for broken behavior in HIP

Hip has a longstanding cmake issue where they calculate include paths
incorrectly, this works around it for raja and adds an explicit rocprim
dependency.

* propagate openmp requirement and workaround to camp

* refactor and include umpire

* propagate openmp option to camp in umpire and use main camp for main and develop raja and umpire

* bump camp to new patch release
2022-09-02 16:55:06 -07:00
Tom Scogland
69f7a8f4d1 Reorder workflow execution in GHA (#32183)
This patchset refactors our GitHub actions into a single top-level ci workflow that
invokes a series of reusable actions.  The main goal of this is to be able to easily
control which tests run and in what order based on the success or failure of top-level
prechecks.  Our previous workflows ran in three sets:

* nix tests: style and verification first, then linux and macos tests if successful
* windows tests: style and verification first, then linux and macos tests if successful
* bootstrap tests

As a result, the bootstrap tests ran even if the style failed, and style and verification
had to run on two different platforms despite running identical checks.  I'm relatively
sure that's because of the limitation on dependencies between steps in the jobs.
Reusable workflows allow us to run the style, verification and now audit checks once,
then depending on the results, and the files changed, run the appropriate nix, windows
and bootstrap tests.  While it saves only a few minutes by itself, this makes it easier to
refactor checks to subset tests without having to replicate tests or other workflow
components in the future.

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-09-02 14:09:23 -07:00
Harmen Stoppels
80389911cc Update bootstrap buildcache to v0.3 (#32262)
This release allow to bootstrap patchelf from binaries.
2022-09-02 12:48:46 +02:00
Timothy Brown
a2e829c7b9 [CURL] New version. (#32481)
Adding a new version of curl. This addresses issue [9081](https://github.com/curl/curl/issues/9081).
2022-09-02 01:57:58 -06:00
Alex Hedges
85446f7a96 tree: add 2.0.3 (#32463)
Fix GCC compiler warnings due to not using C99 mode

CC should be overriden with Spack's value, and the other flags needed
to be copied from the Makefile.
2022-09-02 09:44:43 +02:00
Adam J. Stewart
de623f240c meson: add maintainer (#32460) 2022-09-01 20:45:46 -07:00
Adam J. Stewart
7796bf3fa0 py-pytorch-lightning: add v1.7.4 (#32464) 2022-09-01 22:15:52 +00:00
Scott Wittenburg
6239198d65 Fix cause of checksum failures in public binary mirror (#32407)
Move the copying of the buildcache to a root job that runs after all the child
pipelines have finished, so that the operation can be coordinated across all
child pipelines to remove the possibility of race conditions during potentially
simlutandous copies. This lets us ensure the .spec.json.sig and .spack files
for any spec in the root mirror always come from the same child pipeline
mirror (though which pipeline is arbitrary).  It also allows us to avoid copying
of duplicates, which we now do.
2022-09-01 15:29:44 -06:00
H. Joe Lee
d9313cf561 Upgrade version from 0.7.0-beta to 0.8.0-beta. (#32442)
The version 0.8.0-beta is released.
2022-09-01 14:53:48 -06:00
Axel Huebl
ce1500fad3 Add: py-sphinx-design (#32482)
* Add: py-sphinx-design

Needed for #32480
2022-09-01 19:25:59 +00:00
kwryankrattiger
117b0af831 Backport fix for buliding vtk-m diy with GCC 11 (#32465) 2022-09-01 11:41:20 -07:00
Peter Scheibel
2968ae667f New command, spack change, to change existing env specs (#31995)
If you have an environment like

```
$ cat spack.yaml
spack:
  specs: [openmpi@4.1.0+cuda]
```

this PR provides a new command `spack change` that you can use to adjust environment specs from the command line:

```
$ spack change openmpi~cuda
$ cat spack.yaml
spack:
  specs: [openmpi@4.1.0~cuda]
```

in other words, this allows you to tweak the details of environment specs from the command line.

Notes:

* This is only allowed for environments that do not define matrices
  * This is possible but not anticipated to be needed immediately
  * If this were done, it should probably only be done for "named"/not-anonymous specs (i.e. we can change `openmpi+cuda` but not spec like `+cuda` or `@4.0.1~cuda`)
2022-09-01 11:04:01 -07:00
Graeme A Stewart
92b72f186e root: apply 6.26 COMPILE_DEFINITIONS patch unconditionally (#32472)
This bug isn't per-se tied to the root7 variant and should
be applied always for these ROOT releases
2022-09-01 17:57:50 +02:00
Weiqun Zhang
3d67c58436 amrex: add v22.09 (#32477) 2022-09-01 09:45:49 -06:00
Massimiliano Culpo
01298287f6 Fix CI for package only PRs (#32473) 2022-09-01 14:41:28 +02:00
Jordan Ogas
9dca54fdc8 use bash for autoreconf (#32466) 2022-09-01 02:29:58 -06:00
Massimiliano Culpo
0df0b9a505 Port package sanity unit tests to audits (#32405) 2022-09-01 08:21:12 +02:00
Michael Kuhn
c4647a9c1f meson: add 0.63.1 (#32441) 2022-08-31 20:45:52 -06:00
marcost2
597af9210f perl-bignum: Adding perl module (#31590) 2022-08-31 21:07:41 -05:00
Adam J. Stewart
986e8fd6c5 py-black: add v22.8.0 (#32468) 2022-08-31 19:53:46 -06:00
Wouter Deconinck
c75c27c95c gdk-pixbuf: only build tests when requested (#32452)
The building of tests is optional [as of 2.42.9](801eef111d). This applies this option in the build.

The reason the option was added was to deal with test build failures in sandboxed environments and with certain glibc versions (caused by glib gresources). For example, with the latest version glibc and in the latest version of docker these tests [cannot be built](https://github.com/moby/moby/issues/43595).
2022-08-31 16:16:22 -07:00
Adam J. Stewart
f1f831edef py-pandas: add v1.4.4 (#32459) 2022-08-31 14:27:15 -07:00
Satish Balay
60f37e8c88 llvm: fix 15.0.0rc builds on MacOS with command-line-tools (#32397)
* llvm: fix 15.0.0rc builds on MacOS with command-line-tools

Ref: https://github.com/llvm/llvm-project/issues/57037

i.e use -DBUILTINS_CMAKE_ARGS=-DCOMPILER_RT_ENABLE_IOS=OFF. But this needs switching "compiler-rt" from "projects" to "runtimes".

Also fixing the warnings below fixes compile errors

CMake Warning at CMakeLists.txt:101 (message):
  Using LLVM_ENABLE_PROJECTS=libcxx is deprecated now, please use
  -DLLVM_ENABLE_RUNTIMES=libcxx or see the instructions at
  https://libcxx.llvm.org/BuildingLibcxx.html for building the runtimes.


CMake Warning at CMakeLists.txt:101 (message):
  Using LLVM_ENABLE_PROJECTS=libcxxabi is deprecated now, please use
  -DLLVM_ENABLE_RUNTIMES=libcxxabi or see the instructions at
  https://libcxx.llvm.org/BuildingLibcxx.html for building the runtimes.


CMake Warning at CMakeLists.txt:101 (message):
  Using LLVM_ENABLE_PROJECTS=libunwind is deprecated now, please use
  -DLLVM_ENABLE_RUNTIMES=libunwind or see the instructions at
  https://libcxx.llvm.org/BuildingLibcxx.html for building the runtimes.


/private/var/folders/nt/_m1t_x7j76q6sl3xt91tqgs00000gn/T/balay/spack-stage/spack-stage-llvm-15.0.0-rc2-h2t5bohzyy7exz2ub3m42pfycjcmbndk/spack-build-h2t5boh/include/c++/v1/cstdlib:135:9: error: no member named 'at_quick_exit' in the global namespace
using ::at_quick_exit _LIBCPP_USING_IF_EXISTS;
      ~~^

* Update var/spack/repos/builtin/packages/llvm/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-08-31 13:29:07 -07:00
Massimiliano Culpo
0c6e3188ac ASP-based solver: allow to reuse installed externals (#31558)
fixes #31484

Before this change if anything was matching an external
condition, it was considered "external" and thus something
to be "built".

This was happening in particular to external packages
that were re-read from the DB, which then couldn't be
reused, causing the problems shown in #31484.

This PR fixes the issue by excluding specs with a
"hash" from being considered "external"

* Test that users have a way to select a virtual

This ought to be solved by extending the "require"
attribute to virtual packages, so that one can:
```yaml
mpi:
  require: 'multi-provider-mpi'
```

* Prevent conflicts to be enforced on specs that can be reused.

* Rename the "external_only" fact to "buildable_false", to better reflect its origin
2022-08-31 20:05:55 +00:00
Seth R. Johnson
08261af4ab py-breathe: add new version and improve version constraints (#31857)
* py-breathe: add new version and improve version constraints

* py-breathe: everyone loves versions

```
py-breathe, py-breathe in the air
don't be afraid to care
````

* Update var/spack/repos/builtin/packages/py-breathe/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* add comment

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-08-31 17:23:19 +00:00
Larry Knox
62e4177e44 hdf5-vol-log: Update package versions and update HDF5 dependency to version 1.13.2 (#32448)
* Add HDF5 version 1.13.2.
Remove HDF5 versions 1.13.0 and 1.13.1.

* Correct formatting.

* Update vol-log-based versions and HDF5 dependency version.
2022-08-31 06:29:15 -07:00
Ivan Maidanski
74506a2a83 bdw-gc: add v8.2.2 (#32453) 2022-08-31 06:18:49 -07:00
Adam J. Stewart
5fcfce18fd py-gpytorch: add v1.9.0 (#32445) 2022-08-30 11:34:06 -07:00
Adam J. Stewart
c07c4629ff py-kornia: add v0.6.7 (#32447) 2022-08-30 11:33:49 -07:00
Tamara Dahlgren
3894ceebc9 Environments: Add support for include URLs (#29026)
* Preliminary support for include URLs in spack.yaml (environment) files

This commit adds support in environments for external configuration files obtained from a URL with a preference for grabbing raw text from GitHub and gitlab for efficient downloads of the relevant files. The URL can also be a link to a directory that contains multiple configuration files.

Remote configuration files are retrieved and cached for the environment. Configuration files with the same name will not be overwritten once cached.
2022-08-30 11:13:23 -07:00
Ryan Marcellino
b35a0b1b40 New package: py-mkdocstrings-python (#32421) 2022-08-30 10:27:02 -07:00
Gregory Lee
543a797d1a added STAT 4.2.0 and updated deps (#32385)
* added STAT 4.2.0 and updated deps

* launchmon package fix and style fixes

* launchmon package fix

* Update var/spack/repos/builtin/packages/launchmon/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-08-30 09:25:55 -06:00
Ivan Maidanski
08c67302fc libatomic_ops: add v7.6.14 (#32418)
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-08-30 06:00:09 -07:00
Harmen Stoppels
33cb61afb9 libxml2: fix building with nvhpc (#32440) 2022-08-30 06:13:47 -06:00
Wouter Deconinck
43ae15a887 root: new bugfix version 6.26.06 (#32230) 2022-08-30 10:31:17 +02:00
Toyohisa Kameyama
a735dc027d oprnmx: fix to build with Fujitsu compiler. (#32389) 2022-08-30 10:26:15 +02:00
Olivier Cessenat
5be9f4dfef coreutils: add support for external find (#32414) 2022-08-30 02:26:02 -06:00
David M. Rogers
d75234b675 hipsycl: fix building on OSX. Patch boost to be backward-compatible. (#31311)
Co-authored-by: frobnitzem <frobnitzem@users.noreply.github.com>
2022-08-30 10:22:34 +02:00
luker
3779e645b8 scorep: modify configure flags for Cray platforms (#32201) 2022-08-30 00:25:35 -07:00
Olivier Cessenat
7f4799a4a2 visit: actually set the dev env for plugins again (#32427) 2022-08-30 08:02:23 +02:00
Jim Edwards
a09d4ffb4e esmf: update package for cce (cray) compiler (#32433) 2022-08-30 07:53:45 +02:00
robgics
0c9b4bc3d2 Initial commit for freesurfer package (#32395)
* Initial commit for freesurfer package

* Add myself as maintainer

* Change URLs to https and move url function to proper place.
2022-08-29 14:35:34 -07:00
snehring
778af070f0 snphylo: update to new version (#32425) 2022-08-29 11:56:57 -07:00
Brian Van Essen
bd815fbada Switched LBANN to using an explicit variant to enable unit testing (#32429)
support rather than relying on the spack install --test root option,
because it doesn't play nice in environments.
2022-08-29 12:53:45 -06:00
Luca Heltai
1c22af8ef4 dealii:: fixed application of stdcxx variant (#32413)
* Fixed imposition of stdcxx.

* Fixed style.
2022-08-29 08:41:17 -07:00
Seth R. Johnson
9687d91d72 celeritas: new version 0.1.1 (#32412) 2022-08-29 08:34:16 -07:00
Wouter Deconinck
a14d228e8b gdk-pixbuf: new bugfix version 2.42.9 (#32420)
No changes of note. Just bugfixes. Full diff at https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/compare/2.42.6...2.42.9?from_project_id=1548
2022-08-29 07:48:48 -07:00
Ryan Marcellino
b64d2393ea New package: py-mkdocstrings (#32417) 2022-08-28 14:34:02 -07:00
Ryan Marcellino
d0173a486f New package: py-mkdocs-jupyter (#32416) 2022-08-28 14:32:50 -07:00
Sergey Kosukhin
215379cc27 libxml2: add new versions (#32394)
* libxml2: add new versions

* libxml2: apply patch preventing SIGFPE
2022-08-27 02:29:49 -06:00
Adam J. Stewart
a7cc58d42c py-radiant-mlhub: add v0.5 (#32406) 2022-08-26 18:02:02 -06:00
downloadico
430b8ca362 add sra-tools and NCBI-VDT packages (#32403)
* ncbi-vdb: add ncbi-vdb package to spack
ncbi-vdb provides the interface to the NCBI VDB

* sra-tools: add sra-tools to spack
2022-08-26 17:38:27 -06:00
Richard Berger
e6f6de406d py-sphinx-rtd-theme: add version 1.0.0 (#32379) 2022-08-26 17:38:14 -06:00
Betsy McPhail
ad95719a1d Use threading.TIMEOUT_MAX when available (#32399)
This value was introduced in Python 3.2. Specifying a timeout greater than
this value will raise an OverflowError.
2022-08-26 17:37:56 -06:00
Jen Herting
59bfa6bcd3 [py-pybedtools] added version 0.9.0 (#32401) 2022-08-26 21:44:53 +00:00
dlkuehn
c7acda0062 New packages: roary plus 5 new perl-* (#32217)
* New package: roary
2022-08-26 14:29:44 -06:00
Massimiliano Culpo
51244abee9 Configuration: Allow requirements for virtual packages (#32369)
Extend the semantics of package requirements to
allow using them also under a virtual package
attribute in packages.yaml

These requirements are enforced whenever that
virtual spec is present in the DAG.
2022-08-26 13:17:40 -07:00
kwryankrattiger
eb1c9c1583 SDK: Option to disable fortran support. (#32319)
This option was requested to support MacOS systems that do not have
fortran installed.
2022-08-26 11:12:13 -07:00
Ryan Marcellino
c227e7ab13 New package: py-mkdocs-material (#32387) 2022-08-26 10:32:03 -07:00
Ryan Marcellino
987c067f68 New package: py-mkdocs-autorefs (#32386) 2022-08-26 10:30:28 -07:00
Dom Heinzeller
26a16dc5bb Add pic variant to bacio (#32388)
* Add pic variant to bacio

* Fix black style error
2022-08-26 09:24:34 -07:00
François Trahay
e41f9aad38 add eztrace 2.0 release (#32350)
* [EZTrace] Version uptate to 2.0

* Update var/spack/repos/builtin/packages/eztrace/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-08-26 08:45:05 -07:00
Massimiliano Culpo
b6ea2a46d1 Update archspec to latest commit (#32368)
Modifications:

- [x] Add graviton3
- [x] Optimize __eq__ for microarchitectures
2022-08-26 12:58:20 +02:00
Tom Scogland
a2f0588004 calculate make_jobs in ninja (#32384)
This is in case ninja's setup_dependent_package is called before its
module is initialized by build_environment
2022-08-26 03:37:53 -06:00
Chris White
b31cd189a7 Improve error message for yaml config file (#32382)
* improve error message

* Update lib/spack/spack/config.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-08-26 02:43:03 +00:00
Wouter Deconinck
3ba58d85e2 libzmq: add patch for gcc-12; conflict for older gcc-11 versions (#32381)
Per #32214, the existing patch `92b2c...` for `gcc@11:` only applies
cleanly for `libzmq@4.3.3:4.3.4`. This PR adds a conflict for earlier
versions, as they cannot be patched due to different context.

For `gcc@11`, this leaves the most recent two versions available (a
satisfactory compromise).

For `gcc@12`, however, there is another existing conflict that makes
these most recent two versions unavailable. This PR adds an upstream
patch for the single most recent version that allows compilation with
`gcc@12` for that most recent version.

Starting point:
- `gcc@11` concretizes on all versions, attempts to apply patch on
`@4.2.3:4.3.4`, and only succeeds to apply patch on `@4.3.3:4.3.4`,
- `gcc@12` concretizes on `@:4.3.1` (and `@master`), attempts to apply
patch on `@4.2.3:4.3.1`, fails to apply patch on all.

Ending point:
- `gcc@11` concretizes on `@4.3.3:4.3.4` (and `@master`), attempts and
succeeds to apply patch on `@4.3.3:4.3.4`,
- `gcc@12` concretizes on `@4.3.4` (and `@master`), attempts and
succeeds to apply patch on `@4.3.4`.

Verified with environment build:
```yaml
spack:
  specs:
  - libzmq@4.3.4%gcc@12.1.0
  - libzmq@4.3.4%gcc@11.3.0
  - libzmq@4.3.3%gcc@11.3.0
  view: false
```
which returns the following:
```console
16:14:47 wdconinc@menelaos ~/git/spack (libzmq-patch-gcc12 *+$%=) $
spack install --fresh
==> Installing environment libzmq
[+]
/opt/software/linux-ubuntu22.04-skylake/gcc-12.1.0/libmd-1.0.4-egpgd6eoaqtsl5fja2iwsl6gyc4o32p5
[+]
/opt/software/linux-ubuntu22.04-skylake/gcc-12.1.0/libsodium-1.0.18-af3rsfnvck6anxf7eeog3f2bph44tjia
[+]
/opt/software/linux-ubuntu22.04-skylake/gcc-12.1.0/pkgconf-1.8.0-z5of2hj2c6ygd3kxr4cwv7u7t42sxair
[+]
/opt/software/linux-ubuntu22.04-skylake/gcc-11.3.0/libmd-1.0.4-tec234gco2sd7n52dkwbrad43sdhaw4o
[+]
/opt/software/linux-ubuntu22.04-skylake/gcc-11.3.0/libsodium-1.0.18-uljf675u3yrn5c7fdjdpa5c7qnnkynke
[+]
/opt/software/linux-ubuntu22.04-skylake/gcc-11.3.0/pkgconf-1.8.0-l4hzc2g4pnn7dwyttphmxivt3xghvpoq
[+]
/opt/software/linux-ubuntu22.04-skylake/gcc-12.1.0/libbsd-0.11.5-fi3ri64moy45ksr4sf5pcwd6k23dsa4o
[+]
/opt/software/linux-ubuntu22.04-skylake/gcc-11.3.0/libbsd-0.11.5-2matmm7im7oygrr77k7wznttv4rbupfz
==> Installing libzmq-4.3.4-t7ad54q3atrnte4rzq7g7cfjcw5227pr
==> No binary for libzmq-4.3.4-t7ad54q3atrnte4rzq7g7cfjcw5227pr found:
installing from source
==> Fetching
c593001a89.tar.gz
==> Fetching
310b8aa57a
==> Fetching
https://github.com/zeromq/libzmq/pull/4334.patch?full_index=1
==> Applied patch
92b2c38a2c.patch?full_index=1
==> Applied patch
https://github.com/zeromq/libzmq/pull/4334.patch?full_index=1
==> libzmq: Executing phase: 'autoreconf'
==> libzmq: Executing phase: 'configure'
==> libzmq: Executing phase: 'build'
==> libzmq: Executing phase: 'install'
==> libzmq: Successfully installed
libzmq-4.3.4-t7ad54q3atrnte4rzq7g7cfjcw5227pr
  Fetch: 0.61s.  Build: 1m 31.57s.  Total: 1m 32.18s.
[+]
/opt/software/linux-ubuntu22.04-skylake/gcc-12.1.0/libzmq-4.3.4-t7ad54q3atrnte4rzq7g7cfjcw5227pr
==> Installing libzmq-4.3.3-pxrd6piprucu65bkro2ixms6d3x2eudz
==> No binary for libzmq-4.3.3-pxrd6piprucu65bkro2ixms6d3x2eudz found:
installing from source
==> Fetching
9d9285db37.tar.gz
==> Using cached archive:
/home/wdconinc/.spack/cache/_source-cache/archive/31/310b8aa57a8ea77b7ac74debb3bf928cbafdef5e7ca35beaac5d9c61c7edd239
==> Applied patch
92b2c38a2c.patch?full_index=1
==> libzmq: Executing phase: 'autoreconf'
==> libzmq: Executing phase: 'configure'
==> libzmq: Executing phase: 'build'
==> libzmq: Executing phase: 'install'
==> libzmq: Successfully installed
libzmq-4.3.3-pxrd6piprucu65bkro2ixms6d3x2eudz
  Fetch: 0.93s.  Build: 11.55s.  Total: 12.48s.
[+]
/opt/software/linux-ubuntu22.04-skylake/gcc-11.3.0/libzmq-4.3.3-pxrd6piprucu65bkro2ixms6d3x2eudz
==> Installing libzmq-4.3.4-hiil6dzy2reb4nk555zztwh44rpbyv4h
==> No binary for libzmq-4.3.4-hiil6dzy2reb4nk555zztwh44rpbyv4h found:
installing from source
==> Using cached archive:
/home/wdconinc/.spack/cache/_source-cache/archive/c5/c593001a89f5a85dd2ddf564805deb860e02471171b3f204944857336295c3e5.tar.gz
==> Using cached archive:
/home/wdconinc/.spack/cache/_source-cache/archive/31/310b8aa57a8ea77b7ac74debb3bf928cbafdef5e7ca35beaac5d9c61c7edd239
==> Applied patch
92b2c38a2c.patch?full_index=1
==> libzmq: Executing phase: 'autoreconf'
==> libzmq: Executing phase: 'configure'
==> libzmq: Executing phase: 'build'
==> libzmq: Executing phase: 'install'
==> libzmq: Successfully installed
libzmq-4.3.4-hiil6dzy2reb4nk555zztwh44rpbyv4h
  Fetch: 0.01s.  Build: 10.77s.  Total: 10.78s.
[+]
/opt/software/linux-ubuntu22.04-skylake/gcc-11.3.0/libzmq-4.3.4-hiil6dzy2reb4nk555zztwh44rpbyv4h
```
2022-08-25 19:13:41 -06:00
Adam J. Stewart
c6842605ac py-pytorch-lightning: add v1.7.3 (#32383) 2022-08-25 18:01:50 -06:00
snehring
4d10cdb7e8 phylip: adding workarounds for gcc10+ (#32376)
* phylip: adding workarounds for gcc10+

* phylip: switch to spec.satisfies
2022-08-25 16:29:40 -06:00
Massimiliano Culpo
1bffa46d4d zig: add v0.9.1 (#32380) 2022-08-25 14:38:26 -07:00
Richard Berger
6e420c3556 charliecloud: add versions 0.28 and 0.29 (#32378) 2022-08-25 13:21:27 -07:00
Ryan Marcellino
a476f0fa59 New package: py-mkdocs (#32363) 2022-08-25 12:37:20 -07:00
AMD Toolchain Support
6fb13c0fc5 fixed cp2k libcp2k.pc (#32349)
Co-authored-by: Prasanthi <pdonthir@amd.com>
2022-08-25 12:01:02 -07:00
Glenn Johnson
c2291f7eb3 new packages: r-cmdstanr and cmdstan (#32364) 2022-08-25 11:58:31 -07:00
Glenn Johnson
925a99a043 new package: r-glmgampoi (#32366)
* new package: r-glmgampoi

* Remove duplicate depends_on directive
2022-08-25 11:50:11 -07:00
Glenn Johnson
883b96aeb5 new packages: r-scdblfinder and dependencies (#32367)
- r-bluster
- r-metapod
- r-scran
2022-08-25 11:47:12 -07:00
Matthieu Dorier
9204bd6204 [ycsb] fixes build process and installation of YCSB (#32213)
* [ycsb] fixes build process and installation of YCSB

* [ycsb] fixing style

* [ycsb] removed extra newline
2022-08-25 11:26:08 -07:00
Wileam Y. Phan
b482c71b43 New package: glab (#32251) 2022-08-25 11:23:15 -07:00
robgics
ff2874333d ddt: Initial commit (#32338)
* ddt: Initial commit

* ddt: Minor change to license date to appease the CI gods

* Get rid of unattractive extra line

* Switch to sha256 instead of md5
2022-08-25 11:03:07 -07:00
Robert Pavel
7214a438dc Adding e3sm-kernels to Spack (#32341)
* Initial Draft of E3SM-Kernels Spackage

Initial draft of E3SM-Kernels. Currently no support for nested_loops due
to build system limitations

* Style Check and Fixed gfortran Check

Fixed style issues and changed gnu toolchain check to a gfortran check
due to hybrid compilers (e.g. clang+gfortran)

* Fixed Style Issues
2022-08-25 11:01:07 -07:00
Lucas Frérot
06ba4d5c28 lammps: added build dependency to py-setuptools (#32351)
LAMMPS' setup.py uses setuptools as of lammps/lammps@2ed8e5cf02
2022-08-25 10:40:07 -07:00
Mikael Simberg
1c3979dcfa Add patch for missing template instantiation in pika 0.7.0 on macOS (#32370) 2022-08-25 11:30:00 -06:00
Melven Roehrig-Zoellner
f0925e1823 tixi: new variants (fortran,shared) (#32356)
* tixi: new variants (fortran,shared)

Since some tixi 3 versions, additional CMake flags are needed to build
tixi with shared libraries, respectively with Fortran support.

* tixi: fix style
2022-08-25 10:27:00 -07:00
snehring
ba87413eeb snap-berkeley: update to version 2.0.1 (#32358) 2022-08-25 10:21:53 -07:00
Tyler Funnell
a4cbdba388 fish: adding v3.5.1 (#32362) 2022-08-25 10:18:39 -07:00
snehring
70388da974 libfabric: adding missing dep for opx fabric (#32377) 2022-08-25 10:10:30 -07:00
Sreenivasa Murthy Kolam
f0df4b653d Changes for ROCm-5.2.0 changes and new recipe rocwmma (#31667)
* Changes for ROCm-5.2.0 changes and new recipe rocwmma

* modify the maintainers for hipify-clang

* address review comments

* update the rocwmma new recipe as per latest syntax

* fix style errors

* modify the patch file to provide the details about the patch

* fix style errors
2022-08-25 10:00:02 -07:00
Adam J. Stewart
507e06b5d2 Python: add new maintainer (#31755) 2022-08-25 09:46:09 -07:00
H. Joe Lee
c8f8b6957d libfabric: Match main version. (#32342)
* Match main version.

`develop` no loger exists.

* Change develop to main.
2022-08-25 09:25:43 -07:00
robgics
10ac24874b cplex: add package.py (#32337)
* cplex: add package.py

* Update var/spack/repos/builtin/packages/cplex/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-08-25 09:11:40 -07:00
Massimiliano Culpo
8654197c56 ASP-based solver: prevent the use of hashes that are not available (#32354)
fixes #32348
2022-08-25 17:55:58 +02:00
Dom Heinzeller
b332c1055c Update ESMF: bug fix for esmf@8.3.0b09 with PIO (#32360) 2022-08-25 08:52:54 -07:00
Christian Mauch
7e0d8fce89 py-pynn: add version 0.10.0 (#32307) 2022-08-25 08:02:52 -07:00
Robert Cohn
c56abe4247 oneapi e4s: use require: to force gcc build for some packages (#32309) 2022-08-24 16:22:02 -04:00
Graeme A Stewart
ee02623171 whizard: Fix passing of build options, update versions (#32326)
* whizard: Fix passing of build options, update versions

The dependency of whizard on libtirpc is now correctly passed down as
an autotools option.

Update known versions of package with 3.0.2 and 3.0.3.

* Express path to headers via spec object methods
2022-08-24 06:58:48 -07:00
otsukay
6fa6b8a903 fujitsu-fftw: add option for enabling thread support (#31426)
Co-authored-by: Yuichi Otsuka <otsukay@riken.jp>
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
Co-authored-by: otsukay <otsukay@users.noreply.github.com>
2022-08-24 11:36:14 +02:00
Atsushi Hori
14e99a1a5d process-in-process: overhaul package recipe (#32347) 2022-08-24 11:35:08 +02:00
Massimiliano Culpo
e2468c8928 Allow default requirements in packages.yaml (#32260)
Allow users to express default requirements in packages.yaml. 

These requirements are overridden if more specific requirements
are present for a given package.
2022-08-24 09:33:55 +02:00
Ryan Marcellino
b4df535e8d New package: py-mkdocs-material-extensions (#32334) 2022-08-23 23:29:56 -06:00
Ryan Marcellino
af4788fdef New package: py-griffe and new build backend: py-pdm-pep517 (#32335)
* New package: py-griffe and new build backend: py-pdm-pep517

* add pdm to build backend docs
2022-08-23 23:23:23 -05:00
Cyrus Harrison
a2bdbfcd24 add conduit 0.8.4 release (#32343) 2022-08-23 21:33:49 -06:00
Ben Darwin
3fb7fdfc58 minc-toolkit: add runtime flex dependency (#32345)
Some programs such as `minccalc` depend on libfl.so at runtime.
2022-08-23 17:14:07 -06:00
Timothy Brown
7e87c208ba [WRF] Version update to 4.4 (#32046)
* [WRF] Update to version 4.4.

* [WRF] Patches for v4.4.

* Fixing style.

* [@spackbot] updating style on behalf of t-brown
2022-08-23 13:47:23 -07:00
Jim Galarowicz
f8ae2ef8b4 Add new package for MUST runtime correctness analysis tool (#32329)
* Add new package for MUST runtime correctness analysis tool

* Fix encryption to SHA256 to fix with spack convention.
2022-08-23 20:43:55 +00:00
Ryan Marcellino
b238a9a457 New package: py-pyyaml-env-tag (#32333) 2022-08-23 12:55:53 -07:00
Harmen Stoppels
8af3743e91 Relative paths in default prefix_inspections start with ./ (#31867) 2022-08-23 12:54:12 -07:00
Harmen Stoppels
707a099b69 spack -e x config --scope=y add z add to scope (#31746)
* `spack -e x config --scope=y add z` add to scope

instead of to the environment file.
2022-08-23 12:52:34 -07:00
iarspider
2b680ae7b8 cpu-features: fix fetch failure (#32325)
* cpu-features: fix fetch failure

`master` branch was renamed to `main`

* Update var/spack/repos/builtin/packages/cpu-features/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-08-23 12:37:59 -07:00
Robert Cohn
6654d53611 intel-oneapi-compilers-classic: fix paths (#32305)
* Fix intel-oneapi-compilers-classic bin path

* Update package.py

* intel-oneapi-compilers-classic fix path

Co-authored-by: OfirGan <offirgan@gmail.com>
2022-08-23 12:14:24 -07:00
Ben Darwin
9b6b1a277d minc-toolkit: add MINC_TOOLKIT environment variable at runtime (#32331)
This variable is used by some programs both internal and external to the
toolkit itself to discover shared objects, data, etc.
2022-08-23 11:03:12 -07:00
Toyohisa Kameyama
a08d6e790d py-scipy: Fortran compiler specify code is change to setup.cfg for Fujitsu compiler (#32142)
* py-numpy: Change Fortran detect order for Fujitsu Compiler.

* create setup.cfg instead of command line.
2022-08-23 10:06:49 -07:00
Jen Herting
00feccde34 New package: py-loguru (#32074)
* [py-loguru] New package

* [py-loguru] Removed commented out line

* [py-loguru] Added types removed extra dependencies

* [py-loguru] missing windows dependency. listing windows as a conflict for now

* [py-loguru] depends on py-colorama when platform=windows

* [py-loguru] flake8

* [py-loguru] Import update

* [py-loguru]

- python is a runtime dependency
- setuptools is a build dependency

* [@spackbot] updating style on behalf of qwertos

Co-authored-by: James A Zilberman <jazrc@rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-08-23 10:00:25 -07:00
Jen Herting
2c567edc1d New package: py-python-javabridge (#32075)
* [py-python-javabridge] New package

* [py-python-javabridge] Added dependencies

* [py-python-javabridge] Added types

* [py-python-javabridge] py-setuptools and java are dependencies

* [py-python-javabridge] Import update

* [@spackbot] updating style on behalf of qwertos

Co-authored-by: James A Zilberman <jazrc@rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-08-23 09:59:09 -07:00
Martin Pokorny
51293f3750 libfabric: new versions (#32083)
* libfabric: add new versions

1.15.0, 1.15.1, main (previously named master)

* Add OPX fabric option, with conflict for versions before v1.15.0

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-08-23 10:33:49 -06:00
kwryankrattiger
b7024010d3 SDK: Quick fix to allow SDK to build with HIP (#32321) 2022-08-23 07:09:56 -07:00
Simon Pintarelli
44258a7cce meson: create unique names for build directory (#32062)
Taken from CMakePackage
2022-08-23 13:24:32 +02:00
Seth R. Johnson
0f25d3b219 Add cxxstd flag to googletest and default mock to true (#32171) 2022-08-23 13:05:03 +02:00
Seth R. Johnson
79a462c084 Geant4: update cmake defines and add support for nvhpc (#32185)
* geant4: use define function

* geant4: Change new feature from conflicts to when

* geant4: add support/conflicts for nvhpc

* fixup! geant4: add support/conflicts for nvhpc
2022-08-23 12:57:00 +02:00
Zhilin Zheng
b307d6e766 remove compiler optimize level limit of O2 for GCC (#32303)
gfortran can make it with O3, it might be better to remove this limitation.
2022-08-23 12:13:47 +02:00
Wouter Deconinck
abdecd2a9b acts: add new dependency on vecmem and autodiff (#26790)
Co-authored-by: Hadrien G. <knights_of_ni@gmx.com>
2022-08-23 11:31:33 +02:00
Tamara Dahlgren
3c3b18d858 spack ci: add support for running stand-alone tests (#27877)
This support requires adding the '--tests' option to 'spack ci rebuild'.
Packages whose stand-alone tests are broken (in the CI environment) can
be configured in gitlab-ci to be skipped by adding them to
broken-tests-packages.

Highlights include:
- Restructured 'spack ci' help to provide better subcommand summaries;
- Ensured only one InstallError (i.e., installer's) rather than allowing
  build_environment to have its own; and
- Refactored CI and CDash reporting to keep CDash-related properties and
  behavior in a separate class.

This allows stand-alone tests from `spack ci` to run when the `--tests`
option is used.  With `--tests`, stand-alone tests are run **after** a
**successful** (re)build of the package.  Test results are collected
and report(able) using CDash.

This PR adds the following features:
- Adds `-t` and `--tests` to `spack ci rebuild` to run stand-alone tests;
- Adds `--fail-fast` to stop stand-alone tests after the first failure;
- Ensures a *single* `InstallError` across packages
    (i.e., removes second class from build environment);
- Captures skipping tests for externals and uninstalled packages
    (for CDash reporting);
- Copies test logs and outputs to the CI artifacts directory to facilitate
    debugging;
- Parses stand-alone test results to report outputs from each `run_test` as
    separate test parts (CDash reporting);
- Logs a test completion message to allow capture of timing of the last
    `run_test` part;
- Adds the runner description to the CDash site to better distinguish entries
    in CDash tables;
- Adds `gitlab-ci` `broken-tests-packages` to CI configuration to skip
    stand-alone testing for packages with known issues;
- Changes `spack ci --help` so description of each subcommand is a single line;
- Changes `spack ci <subcommand> --help` to provide the full description of
    each command (versus no description); and
- Ensures `junit` test log file ends in an `.xml` extension (versus default where
    it does not).

Tasks:

- [x] Include the equivalent of the architecture information, or at least the host target, in the CDash output
- [x] Upload stand-alone test results files as  `test` artifacts
- [x] Confirm tests are run in GitLab
- [x] Ensure CDash results are uploaded as artifacts
- [x] Resolve issues with CDash build-and test results appearing on same row of the table 
- [x] Add unit tests  as needed
- [x] Investigate why some (dependency) packages don't have test results (e.g., related from other pipelines)
- [x] Ensure proper parsing and reporting of skipped tests (as `not run`) .. post- #28701 merge
- [x] Restore the proper CDash URLand or mirror ONCE out-of-band testing completed
2022-08-23 00:52:48 -07:00
Mikael Simberg
8b49790784 Constrain __skip_rocmclang workaround in pika package (#32208) 2022-08-23 01:41:54 -06:00
robgics
abad24265e ampl: Add new version and add variants for more install control. (#32317) 2022-08-23 09:40:53 +02:00
Daryl W. Grunau
4095666013 eospac: support intel-classic@2021 (#32323)
Co-authored-by: Daryl W. Grunau <dwg@lanl.gov>
2022-08-23 09:14:22 +02:00
Ryan Marcellino
877393e019 py-jupytext: add v1.14.1 (#32313) 2022-08-23 09:12:54 +02:00
kwryankrattiger
0d29bc00ec Kokkos: ROCm and CUDA are not compatible in Kokkos (#32181) 2022-08-23 08:24:56 +02:00
Ryan Marcellino
b203418720 New package: py-mergedeep (#32322) 2022-08-23 00:45:30 -05:00
Ryan Marcellino
3e3e387a45 New package: py-pymdown-extensions (#32324) 2022-08-23 00:44:39 -05:00
Vanessasaurus
04339fbe9a Automated deployment to update package flux-core 2022-08-23 (#32320)
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
2022-08-22 20:33:42 -06:00
Dom Heinzeller
560b6432cc Update ESMF from JCSDA/NOAA-EMC spack fork (esmf@8.3.0 with external parallelio) (#32222)
* Update ESMF package from JCSDA/NOAA-EMC spack fork

* Update var/spack/repos/builtin/packages/esmf/package.py

Fix url_for_version

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* [@spackbot] updating style on behalf of climbfuji

Co-authored-by: Jim Edwards <jedwards@ucar.edu>
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
Co-authored-by: climbfuji <climbfuji@users.noreply.github.com>
2022-08-22 17:36:07 -07:00
Cody Balos
bea8936e02 sundials: add v6.3.0 and logging-mpi variant (#32315) 2022-08-22 15:37:59 -06:00
Ryan Marcellino
95e8c4a615 New package: py-ghp-import (#32316) 2022-08-22 14:29:16 -07:00
Wouter Deconinck
c92db8a22a gaudi: consistent test dependencies when +examples (#32134)
* gaudi: consistent test dependencies when +examples

Gaudi requires testing to be enabled for examples to be built, so all
test dependencies are also there for `+examples`. This PR fixes a
missing pytest dependency when `+examples` is used but no testing is
enabled. The construct with the loop is to ensure the identical
dependencies are always used, even as version ranges my start to differ.

Testing with gaudi_add_tests was added in v35r0. Some nosetests and
QMtests were in the tree before, but not accessible it seems. The
effective dependency since 35.0 is also applied for pytest, extending
the range that was there before disentangling `optional`, at
9d67d1e034/var/spack/repos/builtin/packages/gaudi/package.py

* gaudi: version 36.7 in other PR...
2022-08-22 14:24:36 -07:00
Valentin Volkl
afecd70bc8 dd4hep: add version 1.22 (#32209) 2022-08-22 15:21:50 -06:00
Adam J. Stewart
9296a76658 py-shapely: add v1.8.3 (#32218) 2022-08-22 14:09:38 -07:00
Ryan Marcellino
e6e569e07c New package: py-py-f90nml (#32314) 2022-08-22 19:03:42 +00:00
Eric Brugger
ca9b2fe6ad VisIt: Add patch to include jpeg library in install. (#32245) 2022-08-22 11:59:07 -07:00
Mark Abraham
70f0a725cc hwloc: fix build with +onepai-level-zero (#31622)
Flags to configure were erroneously managed to configure twice. 

Removed the one that was wrong so that a configure warning is no longer issued.
2022-08-22 12:45:58 -06:00
Barry Rountree
fd80e34037 teckit: Fixes missing xmlparse.h issue. (#32295)
The "release" tarball provided by github lacks several files in
the SFconv/expat/xmlparse directory, including xmlparse.  Using
tarballs based off of version tags solves the problem.

o Changes version() to use commits associated with version tags.
o Adds several additional versions.
o Adds myself as maintainer.
o Adds hook to execute autogen.sh.
o Adds autotools &ct dependences.
o Removes expat dependence.
2022-08-22 18:39:28 +00:00
Paul Romano
7fc78b8b0f OpenMC: add v0.13.1 (#32263)
* openmc: add v0.13.1

* Add @paulromano as maintainer of openmc and py-openmc

* Address review comments from @adamjstewart

* Add back MPI variant in openmc package
2022-08-22 18:09:37 +00:00
Adam J. Stewart
1039caabed crunch: add new package (#31980) 2022-08-22 18:05:06 +00:00
Ryan Mast
5edb0fe96a helics: update v3 options and add missing versions (#32121)
* helics: update v3 options and add missing versions

* helics: allow using openssl 3.x for encryption support

* helics: fix style errors

* helics: Apply suggestion from code review

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-08-22 17:49:57 +00:00
iarspider
2860f2f70a Add checksum for py-requests 2.27.1, 2.28.0, 2.28.1 (#31896)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-08-22 11:46:01 -06:00
Jean-Paul Pelteret
85b8a41ccb deal.II 9.4: Fix issues due to override of CMake FIND_PACKAGE macro (#32079) 2022-08-22 11:37:52 -06:00
Harmen Stoppels
6e5d6ebf99 openmpi: fix patches for %nvhpc (#32308) 2022-08-22 10:57:51 -06:00
Adam J. Stewart
177e2e2672 xgboost: GCC 8+ required (#32282) 2022-08-22 08:48:18 -07:00
Arjun Guha
72b133a875 racket: fix spec (#32304) 2022-08-22 14:50:11 +00:00
Adam J. Stewart
dc0836804f py-rasterio: add v1.3.2 (#32277) 2022-08-22 16:15:33 +02:00
kwryankrattiger
a38beeaed2 HPX: ROCm and Cuda conflict needed (#32178)
Discovered this missing conflict when building the e4s enviroment with
unify:when_possible. #31940
2022-08-22 16:13:59 +02:00
Kelly (KT) Thompson
1c61f0420a Provide patches provided by consumers of draco. (#32281) 2022-08-22 16:04:58 +02:00
Robert Cohn
00b244853e enable packages that use numpy for oneapi e4s stack (#32293)
* enable geopm oneapi

* enable packages that depend on py-numpy

* disable nan warnings

* undo geopm enable

* undo geopm, it has multiple compile issues
2022-08-22 07:02:22 -07:00
Kendra Long!
1a030aa417 draco: add v7_14_0 (#32267) 2022-08-22 16:02:11 +02:00
Eric Brugger
c28f1c0b42 VisIt: add conduit and mfem variants (#32255) 2022-08-22 15:59:29 +02:00
Olivier Cessenat
a20c9b2d8e keepassxc: option autotype with pcsclite (#32288) 2022-08-22 15:50:41 +02:00
Jonas Thies
88a58abcf8 openfoam-org: add v9 and v10 (#32274) 2022-08-22 15:33:40 +02:00
Rémi Lacroix
e16f0b9f12 Molden: update URLs. (#32207) 2022-08-22 14:48:44 +02:00
Valentin Volkl
4d0612abfc baurmc: correct compile flag (#31305) 2022-08-22 14:28:20 +02:00
Valentin Volkl
408076adf0 prophecy4f: add hep tag, install to share (#31308) 2022-08-22 14:27:54 +02:00
Cory Bloor
dde6d00ab9 hip@4.5.2: fix installation (#31416)
In a fast-moving project with as many forks as LLVM, it's difficult to
accurately determine if a function exists just by checking the version
number. The existing version check fails, for example, with llvm-amdgpu
from ROCm 4.5. It is more robust to directly check if the function
exists.
2022-08-22 12:39:09 +02:00
Alan Sill
4c64a0fab2 VASP: add v6.3.2; handle changes to makefile.include naming pattern (#31701)
Added the SHA256 for version 6.3.2 and added logic to eal with the change of naming pattern for the makefile.include files that now appears to leave out the "linux_" prefix. (Changes should be. backwards compatible.)

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
Co-authored-by: alansill <alansill@users.noreply.github.com>
2022-08-22 12:21:00 +02:00
haralmha
01a4844ac4 feynhiggs: update url (#31760) 2022-08-22 12:20:09 +02:00
Adam J. Stewart
2ff132a62f py-isort: add v5.10.1 (#32302) 2022-08-22 11:09:09 +02:00
Olivier Cessenat
f7424e1fea qscintilla: coherence with py-sip (#32128) 2022-08-21 11:32:10 -07:00
Wileam Y. Phan
ab31256ee7 gcc: add 12.2.0 (#32270) 2022-08-21 15:30:37 +02:00
sparkyniner
21e6679056 spack list: add --tag flag (#32016)
* modified list.py and added functionality for --tag

* Removed long and very long, shifted rest of code above return statement

* removed results variable

* added import statement at top

* added the line accidentally deleted

* added line accidentally deleted

* changed p.name to p, added line inside if statement

* line order switched

* [@spackbot] updating style on behalf of sparkyniner

* ran update completion command

* add tests

* Update lib/spack/spack/test/cmd/list.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* [@spackbot] updating style on behalf of sparkyniner

* changed argument to mock_packages and moved code under filter by tag

* removed bad rebase code and added additional test

* [@spackbot] updating style on behalf of sparkyniner

* added line removed earlier

* added line removed earlier

* replaced function

* added more recommended changes

Co-authored-by: sairaj <sairaj@sairajs-MacBook-Pro.local>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-08-20 16:09:44 -06:00
Morten Kristensen
8d02e2cc52 py-vermin: add latest version 1.4.2 (#32287) 2022-08-20 13:35:07 -05:00
Axel Huebl
39beafc99a Ascent, Conduit & VTK-h: don't assume I have Fortran (#32285)
* VTK-h: don't assume I have Fortran

Don't assume I have a working Fortran compiler in my toolchain :)

* Conduit: Do not Assume Fortran

* Ascent: Do not Assume Fortran

* fix style
2022-08-20 10:12:23 -07:00
kwryankrattiger
fff929d5ab WarpX: Add hints for FindMPI (#31842)
This seems to be needed on some cray systems and is safe on normal
desktops.
2022-08-20 15:45:03 +02:00
Olivier Cessenat
51619fdb00 gxsview: new version 2022.05.09 (#32289) 2022-08-20 14:33:10 +02:00
Axel Huebl
7db1c69945 Vis: macOS llvm-openmp (#32284)
Add some OpenMP lib provider for Apple-Clang to the vis packages.
2022-08-20 01:11:03 -07:00
Sreenivasa Murthy Kolam
11a4f5e25d Enable Tensorflow for ROCm. Add ROCm dependencies. (#32248)
* Build Tensorflow using the fork for rocm. Initial commit

* re-order the versions

* fix style errors

* address review comments

* add conflicts for rocm version

* address review comments

* remove rocm variant as its added by ROCmPackage
2022-08-20 01:50:38 +00:00
eugeneswalker
5590cad1ef py-globus-sdk: add new versions; unpin py-cryptography version constraint (#32280)
* add mothra tests

* py-globus-sdk: add new versions; unpin py-cryptography version constraint

* Update var/spack/repos/builtin/packages/py-globus-sdk/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-08-19 19:30:07 -06:00
eugeneswalker
09486c082c py-pyjwt: fix py-cryptography version constraints (#32279)
* py-pyjwt: fix py-cryptography version constraints

* Update var/spack/repos/builtin/packages/py-pyjwt/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-08-19 18:50:20 -06:00
Adam J. Stewart
dab46296b6 py-setuptools: add v64.0.0 (#32078) 2022-08-19 14:20:08 -07:00
Axel Huebl
7f314947dd Doc: WarpX SENSEI Work-Around (#32276)
Follow-up to #31542
2022-08-19 14:10:00 -06:00
Rémi Lacroix
56e4203450 netcdf-cxx: Update the download URL (#32275) 2022-08-19 18:44:14 +00:00
Adam J. Stewart
b0990aa1fa py-pygments: add v2.13.0 (#32168) 2022-08-19 18:09:51 +00:00
Seth R. Johnson
e29d9de2dd ForTrilinos: new versions 2.0.1, 2.1.0 (#32265)
* ForTrilinos: new versions 2.0.1, 2.1.0

I also had to update the checksum for the released 2.0.0: see #32000 for
the explanation and solution to keep this from happening again.

* Soooo stylish
2022-08-19 11:37:55 -06:00
Harmen Stoppels
7acc082fba ncurses 6.3 restrict patch (#32271) 2022-08-19 10:11:32 -07:00
Olivier Cessenat
362cdc5437 pcsclite: add new package (#32129) 2022-08-19 18:22:15 +02:00
eugeneswalker
e1bce8c577 e4s %oneapi: add aml +ze (level zero) (#32161) 2022-08-19 08:25:15 -07:00
Seth R. Johnson
7760625b3f py-macholib: add v1.16 (#31967)
* py-macholib: add v1.16

* Update dependencies

Even 1.11 requires `altgraph (>=0.15)`. The lastest requires no
additional dependencies.
2022-08-19 08:25:51 -06:00
dunatotatos
77c2332df6 htslib, samtools: add v1.15 and v1.15.1 (#32259) 2022-08-19 13:56:14 +00:00
Olivier Cessenat
8773c183b5 ghostscript: new version 9.56.1 (#32088) 2022-08-19 15:00:14 +02:00
Harmen Stoppels
2daea9e4b4 docs: add a note about an issue being solved on develop (#32261) 2022-08-19 12:40:41 +00:00
psakievich
abf847ce82 Add messages to assertions in asp.py (#32237)
Assertions without messages if/when hit create a blank error message for users.  

This PR adds error messages to all assertions in asp.py even
if it seems unlikely they will ever be needed.
2022-08-19 14:15:25 +02:00
iarspider
8d99d33128 xpmem: fix configure with ~kernel-module (#32258) 2022-08-19 12:36:11 +02:00
eugeneswalker
a42a874faa e4s oneapi: compiler environment: prepend lib dir to LD_LIBRARY_PATH (#32227) 2022-08-19 06:30:18 -04:00
Mikael Simberg
be62635154 Add tracy variant to pika (#32090) 2022-08-19 02:38:07 -06:00
eugeneswalker
022d59f4a5 e4s: add dealii +cuda (#32159) 2022-08-18 22:41:57 -06:00
Massimiliano Culpo
605d72133b spack.util.package_hash: parametrize unit-tests (#32240)
* spack.util.package_hash: parametrize unit-tests

* Fix comment
2022-08-18 18:17:43 -07:00
eugeneswalker
b2d1d07d2e e4s %oneapi: add amrex +sycl (#32162) 2022-08-18 18:16:55 -07:00
Mark W. Krentel
908055e37c hpctoolkit: update git url from github to gitlab (#32252) 2022-08-18 17:35:34 -07:00
Wouter Deconinck
90352d7223 kassiopeia: new version 3.8.2 (#32254)
* kassiopeia: new version 3.8.2

There was no version 3.8.1, so here is the diff with 3.8.0: https://github.com/KATRIN-Experiment/Kassiopeia/compare/v3.8.0...v3.8.2

Build system changes:
- default `cxxstd` is now 17.

* kassiopeia: updated hash

* kassiopeia: use spec.satisfies

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-08-18 17:20:17 -07:00
kwryankrattiger
d77a8f7aa1 Sensei v4 (#30432)
* Sensei: Refactor package to work with v4.0.0

* Add missing MPI dependency
* Patch bug in libsim adapter
* Simplify conflicts with when-clauses
* Conflict variants that are incompatible (catalyst/libsim/ascent)
* Fix paraview version constraints to be more clear
* Add version constraints for VTK
* Drop unneeded visit restrictions
* Specify +vtkm dependency on ParaView's VTKm
* +hl is not needed for VTK, and is already specified in the VTK recipe
when it is needed
* Pass paths for adios2 and ascent packages

* ECP-SDK: Enable sensei

* CI: Add sensei to the data-vis-sdk pipeline

* Sensei: Change VISIT_DIR to work on linux

* Fixup: style check

* Sensei: Add patch for version detection

* CI: revert SDK pipeline in favor of new matrices

* Sensei: Formatting fixes
2022-08-18 17:20:01 -07:00
snehring
364e4e03ef pasta: missing setuptools dep (#32220)
* pasta: missing setuptools dep

* pasta: remove extraneous which

* pasta: convert to PythonPackage

* pasta: specify dendropy version
2022-08-18 22:53:09 +00:00
Adam J. Stewart
373d2ccf9f py-rasterio: add v1.3.1 (#32244) 2022-08-18 21:08:46 +00:00
Gregory Lee
0a8df434d2 added qt-creator 5.0.3 (#32241)
* added qt-creator 5.0.3

* [@spackbot] updating style on behalf of lee218llnl

Co-authored-by: lee218llnl <lee218llnl@users.noreply.github.com>
2022-08-18 19:35:44 +00:00
Sergey Kosukhin
15be91b585 autoconf-archive: fetch patch from github (#32232)
* autoconf-archive: fetch patch from github

* autoconf-archive: do not try to patch libtool
2022-08-18 10:55:04 -07:00
Thomas Gruber
bfa67bb275 Add patch for MEM_* group for Intel Icelake SP for 5.2.0 and newer (#32235) 2022-08-18 10:30:56 -07:00
Massimiliano Culpo
3c6b5b8afc Remove unused argument in test fixture (#32236)
The argument is very likely a typo, and was meant to
be given to the fixture decorator. Since the value
being passed is the default, let's just remove it.
2022-08-18 10:22:50 -07:00
Robert Cohn
1cdc50e3f6 ascent: fix oneapi build (#32239) 2022-08-18 17:15:39 +00:00
eugeneswalker
cfa4bffe26 e4s ci stack: add catalyst build (#31993) 2022-08-18 10:49:51 -06:00
Robert Cohn
3d4705ffab flux-sched: fix oneapi build (#32233) 2022-08-18 07:34:34 -07:00
Massimiliano Culpo
9d55a0436b spec: fix typo in Spec._finalize_concretization (#32210) 2022-08-18 15:04:08 +02:00
Olivier Cessenat
5981225d5a latex2html: new version V2022.2 (#32089) 2022-08-18 12:34:35 +00:00
Massimiliano Culpo
7f81a0a25e CI: move nightly macOS builds from GA to pipelines (#32231)
Modifications:
- [x] Delete the `macOS builds nightly` workflow
- [x] Removed shield in README.md
- [x] Moved corresponding specs to `e4s-macos`
2022-08-18 09:13:37 +00:00
Axel Huebl
5a59e1b77a hiredis: set install_name on macos, ccache: optional hiredis (#32219)
* hiredis: set install_name on macos
* ccache: make hiredis optional

Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2022-08-18 08:49:53 +00:00
snehring
a164b0b3e6 Update busco to 5.4.3 (#32221)
* metaeuk: new package

* sepp: new package

* busco: adding version 5.4.3

* busco: adding maintainers

* metauk: more accurate cmake dep

* sepp: adding missing dep and accurate python dep

* sepp: remove install_tree

* sepp: extend python
2022-08-17 23:31:04 -06:00
Adam J. Stewart
d398e91e88 py-pytorch-lightning: add v1.7.2 (#32226) 2022-08-18 04:25:16 +00:00
Sergey Kosukhin
f2adbafe38 mpich: add patch fixing MPI_MIN for unsigned integers (#32188) 2022-08-17 19:25:56 -06:00
Tom Scogland
b9e57006c9 bugfix: use cmake version from dependency (#31739)
Ensure that build tools with module-level commands in spack use
the version built as part of their build graph if one exists.
This is now also required for mesa, scons, cmake and ctest, out
of graph versions of these tools in path will not be found unless
added as an external.

This bug appeared because a new version of rocprim needs cmake
3.16, while I have 3.14 in my path I had added an external for
cmake 3.20 to the dag, but 3.14 was still used to configure
rocprim causing it to fail. As far as I can tell, all the build
tools added in build_environment.py had this problem, despite the
fact that they should have been resolving these tools by name
with a path search and find the one in the dag that way. I'm
still investigating why the path searching and Executable logic
didn't do it, but this makes three of the build systems much more
explicit, and leaves only gmake and ninja as dependencies from
out in the system while ensuring the version in the dag is used
if there is one.

The additional sqlite version is to perturb the hash of python to
work around a relocation bug which will be fixed in a subsequent
PR.
2022-08-17 17:54:17 -07:00
牟展佑
c386181c0f LLVM: add @15.0.0-rc1 (#31945) 2022-08-17 16:53:59 -06:00
Mikhail Titov
33c3cf2412 rct: update packages (RE, RG, RP, RS, RU) with new versions (#32216) 2022-08-17 22:42:48 +00:00
eugeneswalker
d8689b5038 e4s mac ci: try lambda, the new mac studio runner (#32169) 2022-08-17 21:24:47 +00:00
Larry Knox
c340fe43d2 Add HDF5 version 1.13.2. (#32202)
* Add HDF5 version 1.13.2.
Remove HDF5 versions 1.13.0 and 1.13.1.

* Correct formatting.
2022-08-17 14:21:54 -07:00
wanlinwang
4c040e02d1 Add riscv-gnu-toolchain package. (#32047)
Create a package for riscv-gnu-toolchain, a cross-compilation tool.
2022-08-17 12:18:24 -06:00
Todd Gamblin
73d25984ca clingo: fix bootstrapping on M1/monterey with command line tools
The Python that comes with XCode command line tools is a bit weird.

This fixes two issues that were preventing it from bootstrapping:

- [x] CommandLineTools python does not come with a `python-config` executable. If you
      don't have one of these, CMake's FindPython will, for some reason, assume that you
      want Python 2, so you need to set `CLINGO_PYTHON_VERSION` to ensure that clingo
      tells `find_package(Python <VERSION>)` the right thing.

- [x] We weren't setting `PYTHONHOME` correctly in Python's `package.py`. We were
      setting it to the `prefix` from Python `sysconfig`, but `prefix` tells you where
      the executable lives. CommandLineTools python reports its prefix as

          /Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8

      but that doesn't exist. It looks like Apple builds the full python and just copies
      pieces of it into command line tools. PYTHONHOME is supposed to tell you where the
      default python library location is. So you have to look at the `base`, which
      `sysconfig` reports as

          /Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.8

      On most systems this is probably the same as `prefix`, but not with
      CommandLineTools, which has its system library in a different place.

The second change here was cherry-picked to 0d981a012d before merging and doesn't show
up here.

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-08-17 10:42:15 -07:00
Adam J. Stewart
50f8a0f0d6 python: simplify libs() and headers() methods in python/package.py
- [x] Rework `headers` to search a sequence of directories and to display all searched
      locations on error, as opposed to handling each directory with a variable

- [x] Make `headers` and `libs` do the same type of search and raise the same sort of
      errors.

Co-authored-by: Todd Gamblin <tgamblin@llnl.gov>
2022-08-17 10:42:15 -07:00
Jen Herting
30585890a8 New package: py-bitshuffle (#31876)
* [py-bitshuffle] New package

* [py-bitshuffle] compiling against spack hdf5

* [py-bitshuffle] flake8

* [py-bitshuffle] update import ine

* [@spackbot] updating style on behalf of qwertos

Co-authored-by: James A Zilberman <jazrc@rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-08-17 10:19:19 -07:00
snehring
80afc1a5a8 ncbi-toolkit: adding new version (#32098) 2022-08-17 09:56:55 -07:00
Jonathan R. Madsen
809df37765 Add omnitrace version 1.4.0 (#32160)
* Add version 1.4.0

- override build variant with explicit variant instead of __init__ workaround

* Update package.py
2022-08-17 09:54:47 -07:00
Mike Renfro
7330969e8a fasta-36.3.8h_2020-05-04 (#32180)
* Adding 36.3.8h_2020-05-04

* [@spackbot] updating style on behalf of mikerenfro

Co-authored-by: mikerenfro <mikerenfro@users.noreply.github.com>
2022-08-17 09:50:35 -07:00
Erik Schnetter
b8b1a85e4d rclone: add v1.59.1 (#32011) 2022-08-17 14:51:06 +02:00
Wouter Deconinck
ff163bf623 acts: new versions 19.7.0, 20.0.0 (#32177) 2022-08-17 14:48:50 +02:00
Jon Rood
e76601006a amr-wind: remove propagation of shared and openmp variant to dependencies. (#32182) 2022-08-17 14:47:19 +02:00
eugeneswalker
8d8aa5c6cf kokkos: set CMAKE_CXX_STANDARD instead of Kokkos_CXX_STANDARD (#31841)
* kokkos@develop: set CMAKE_CXX_STANDARD instead of Kokkos_CXX_STANDARD

* use CMAKE_CXX_STANDARD regardless of kokkos version
2022-08-17 13:57:13 +02:00
Peter Scheibel
546c8a3092 Add c++14 support flag for xl compiler (#31826) 2022-08-17 13:57:13 +02:00
Adam J. Stewart
913e6043bb lerc: add libs property (#31684) 2022-08-17 13:57:13 +02:00
Adam J. Stewart
0c314caa37 mxnet: prefer stable release (#31821) 2022-08-17 13:57:13 +02:00
Weiqun Zhang
0017cbb193 amrex: add v22.08 (#31844) 2022-08-17 13:57:13 +02:00
eugeneswalker
5fe8ccca3a e4s oneapi stack: remove notes for now-fixed builds (#31839) 2022-08-17 13:57:13 +02:00
RichardABunt
3cbfb64a7e arm-forge: add v22.0.4. (#31835) 2022-08-17 13:57:13 +02:00
Massimiliano Culpo
6979d47cb6 CI: reduce the amount of tests run in the original concretizer (#32179)
* CI: reduce the amount of tests run in the original concretizer
* Don't test Python 3.6 on the original concretizer
2022-08-17 09:16:19 +02:00
Todd Gamblin
2d6087995c kokkos: fix conflict for deprecated sycl namespace
We're seeing errors pop up with older versions of Kokkos and newer versions of
`oneapi`, specifically:

    error: no member named 'ONEAPI' in namespace 'sycl'

This hapens because `sycl::ONEAPI` is `sycl::ext::oneapi` since oneapi `2022.0.0`.
`kokkos@3.6:` uses the new namespace. A conflict was present for this, but it was too
specific -- both to `dpcpp` and to the `2022.0.0` version.

- [x] Expand version ranges in `kokkos` conflict
- [x] Add conflict for `oneapi` in addition to `dpcpp`
2022-08-16 23:19:52 -07:00
Wouter Deconinck
8f34a3ac5c filesystem: in recursive mtime, check only files that exist (#32175)
* filesystem: use lstat in recursive mtime

When a `develop` path contains a dead symlink, the `os.stat` in the recursive `mtime` determination trips up over it.

Closes #32165.
2022-08-16 21:06:31 +00:00
Todd Gamblin
7e1890772c bugfix: silence clingo warning about requirement_policy/3
`requirement_policy/3` is generated and may not be in Spack's inputs to Clingo.
Currently this is causing warnings like:

```
$ spack spec zlib
/global/u2/t/tgamblin/src/spack/lib/spack/spack/solver/concretize.lp:510:3-43: info: atom does not occur in any rule head:
  requirement_policy(Package,X,"one_of")

/global/u2/t/tgamblin/src/spack/lib/spack/spack/solver/concretize.lp:517:3-43: info: atom does not occur in any rule head:
  requirement_policy(Package,X,"one_of")

/global/u2/t/tgamblin/src/spack/lib/spack/spack/solver/concretize.lp:523:3-43: info: atom does not occur in any rule head:
  requirement_policy(Package,X,"any_of")

/global/u2/t/tgamblin/src/spack/lib/spack/spack/solver/concretize.lp:534:3-43: info: atom does not occur in any rule head:
  requirement_policy(Package,X,"any_of")

Input spec
--------------------------------
zlib

Concretized
--------------------------------
zlib@1.2.11%gcc@7.5.0+optimize+pic+shared arch=cray-sles15-haswell
```

- [x] Silence warning with `#defined requirement_policy/3`
2022-08-16 12:56:37 -07:00
dunatotatos
194b4213c6 Add variant to install jellyfish in krakenuniq. (#32174) 2022-08-16 19:22:17 +00:00
Peter Scheibel
8281a0c5fe Configuration: allow users to enforce hard spec constraints (#27987)
Spack doesn't have an easy way to say something like "If I build
package X, then I *need* version Y":

* If you specify something on the command line, then you ensure
  that the constraints are applied, but the package is always built
* Likewise if you `spack add X...`` to your environment, the
  constraints are guaranteed to hold, but the environment always
  builds the package
* You can add preferences to packages.yaml, but these are not
  guaranteed to hold (Spack can choose other settings)

This commit adds a 'require' subsection to packages.yaml: the
specs added there are guaranteed to hold. The commit includes
documentation for the feature.

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-08-16 11:44:30 -07:00
Todd Gamblin
0d981a012d python: use base instead of prefix in python/package.py 2022-08-16 10:55:01 -07:00
Adam J. Stewart
2b69746e8a Python: remove ensurepip variant 2022-08-16 10:55:01 -07:00
Seth R. Johnson
928dfd6e75 celeritas: update checksum for git describe difference (#32000)
* celeritas: update checksum for git describe difference

Using `$Format:%h$` and the export-subst gitattribute property mean that
the release checksum can change post release...

```
$ diff -ru spack-stage-celeritas-0.1.0-hv7ewpjouekqws2y5iaql2cnp6tn76iz/ spack-stage-celeritas-0.1.0.wtf-ynyck3df2a7kkgkqrpwapgz3l2i62omz/
diff -ru spack-stage-celeritas-0.1.0-hv7ewpjouekqws2y5iaql2cnp6tn76iz/spack-src/cmake/CgvFindVersion.cmake spack-stage-celeritas-0.1.0.wtf-ynyck3df2a7kkgkqrpwapgz3l2i62omz/spack-src/cmake/CgvFindVersion.cmake
--- spack-stage-celeritas-0.1.0-hv7ewpjouekqws2y5iaql2cnp6tn76iz/spack-src/cmake/CgvFindVersion.cmake	2022-07-31 19:45:03.000000000 -0400
+++ spack-stage-celeritas-0.1.0.wtf-ynyck3df2a7kkgkqrpwapgz3l2i62omz/spack-src/cmake/CgvFindVersion.cmake	2022-07-31 19:45:03.000000000 -0400
@@ -75,7 +75,7 @@

   # Get a possible Git version generated using git-archive (see the
   # .gitattributes file)
-  set(_ARCHIVE_TAG "HEAD -> master, tag: v0.1.0")
+  set(_ARCHIVE_TAG "tag: v0.1.0")
   set(_ARCHIVE_HASH "04fe945d9")

   set(_TAG_REGEX "v([0-9.]+)(-dev[0-9.]+)?")
Binary files spack-stage-celeritas-0.1.0-hv7ewpjouekqws2y5iaql2cnp6tn76iz/v0.1.0.tar.gz and spack-stage-celeritas-0.1.0.wtf-ynyck3df2a7kkgkqrpwapgz3l2i62omz/v0.1.0.tar.gz differ
```

* celeritas: Use exported and re-uploaded tar.gz for reproducibility
2022-08-16 13:58:57 +00:00
eugeneswalker
0d7a6ec410 e4s: add flecsi +cuda (#32158) 2022-08-16 13:00:03 +00:00
eugeneswalker
fe77cc9b27 e4s: add ascent +cuda (#32153) 2022-08-16 10:47:17 +00:00
eugeneswalker
9bc537bb89 e4s: add amrex +cuda (#32152) 2022-08-16 09:08:26 +00:00
Thomas Madlener
55ae4e20bb podio, edm4hep: start to deprecate old versions (#32143) 2022-08-16 10:55:42 +02:00
Alberto Invernizzi
0403d11995 direnv: add v2.32.1 (#32094) 2022-08-16 10:55:01 +02:00
eugeneswalker
2c42ab45a0 e4s: add papi +rocm (#32150) 2022-08-16 08:26:06 +00:00
eugeneswalker
934db62541 e4s: add caliper +rocm (#32149) 2022-08-16 07:52:09 +00:00
Florian Albrechtskirchinger
89d55149c3 nlohmann-json: add v3.11.2 and make 'multiple_headers' the default (#31865)
* nlohmann-json: add v3.11.2

* nlohmann-json: variant multiple_headers should be the default
2022-08-15 18:16:47 -07:00
Peter Scheibel
4c2f357f0e CI/documentation: constrain pygments to avoid latest version (2.13.0) (#32163)
All PRs are failing the docs build on account of an error with
pygments. These errors coincide with a new release of pygments
(2.13.0) and restricting to < 2.13 allows the doc tests to pass,
so this commit enforces that constraint for the docs build.

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-08-15 18:00:33 -07:00
Massimiliano Culpo
2131bd7e8c Check that no reserved names are overridden by package recipes (#32092)
A few attribute in packages are meant to be reserved for
Spack internal use. This audit checks packages to ensure none
of these attributes are overridden.

- [x] add additional audit check
2022-08-15 16:31:10 -07:00
Andrew W Elble
ce0683db1d llvm: fix ncurses/terminfo builds (#32028)
* llvm: fix ncurses/terminfo builds

* use suggestion

* formatting
2022-08-15 15:37:59 -06:00
snehring
713c716195 tophat: fixing build issue with newer automakes (#32082) 2022-08-15 13:33:15 -07:00
Olivier Cessenat
cc48076e26 netpbm: new super stable version 10.73.40 (#32087) 2022-08-15 12:25:05 -07:00
Eric Brugger
68b94acf0d MFEM: Add an exceptions variant. (#32096) 2022-08-15 12:03:57 -07:00
snehring
a68ca0ead9 bridger: adding ncurses dep (#32103) 2022-08-15 11:55:43 -07:00
snehring
01e80210be quantum-espresso: adding some missing build deps (#32109) 2022-08-15 20:40:36 +02:00
Satish Balay
ede6d2caac fix oce build failure due to change of intel-tbb default version (#32101)
In file included from /data/xsdkci/VS1mJQ1K/0/xsdk-project/spack-xsdk/spack-stage/balay/spack-stage-oce-0.18.3-rim5zhuacb7z4plxag52fjj3gbc4znv3/spack-src/src/OSD/OSD_Parallel.cxx:17:
/data/xsdkci/VS1mJQ1K/0/xsdk-project/spack-xsdk/spack-stage/balay/spack-stage-oce-0.18.3-rim5zhuacb7z4plxag52fjj3gbc4znv3/spack-src/src/OSD/OSD_Parallel.hxx: In static member function 'static void OSD_Parallel::ForEach(InputIterator, InputIterator, const Functor&, Standard_Boolean)':
/data/xsdkci/VS1mJQ1K/0/xsdk-project/spack-xsdk/spack-stage/balay/spack-stage-oce-0.18.3-rim5zhuacb7z4plxag52fjj3gbc4znv3/spack-src/src/OSD/OSD_Parallel.hxx:223:18: error: 'captured_exception' in namespace 'tbb' does not name a type
  223 |     catch ( tbb::captured_exception& anException )
      |                  ^~~~~~~~~~~~~~~~~~
/data/xsdkci/VS1mJQ1K/0/xsdk-project/spack-xsdk/spack-stage/balay/spack-stage-oce-0.18.3-rim5zhuacb7z4plxag52fjj3gbc4znv3/spack-src/src/OSD/OSD_Parallel.hxx:225:38: error: 'anException' was not declared in this scope
  225 |       Standard_NotImplemented::Raise(anException.what());
      |                                      ^~~~~~~~~~~
/data/xsdkci/VS1mJQ1K/0/xsdk-project/spack-xsdk/spack-stage/balay/spack-stage-oce-0.18.3-rim5zhuacb7z4plxag52fjj3gbc4znv3/spack-src/src/OSD/OSD_Parallel.hxx: In static member function 'static void OSD_Parallel::For(Standard_Integer, Standard_Integer, const Functor&, Standard_Boolean)':
/data/xsdkci/VS1mJQ1K/0/xsdk-project/spack-xsdk/spack-stage/balay/spack-stage-oce-0.18.3-rim5zhuacb7z4plxag52fjj3gbc4znv3/spack-src/src/OSD/OSD_Parallel.hxx:272:18: error: 'captured_exception' in namespace 'tbb' does not name a type
  272 |     catch ( tbb::captured_exception& anException )
      |                  ^~~~~~~~~~~~~~~~~~
/data/xsdkci/VS1mJQ1K/0/xsdk-project/spack-xsdk/spack-stage/balay/spack-stage-oce-0.18.3-rim5zhuacb7z4plxag52fjj3gbc4znv3/spack-src/src/OSD/OSD_Parallel.hxx:274:38: error: 'anException' was not declared in this scope
  274 |       Standard_NotImplemented::Raise(anException.what());
      |                                      ^~~~~~~~~~~
2022-08-15 11:35:00 -07:00
eugeneswalker
43c0dac6f6 unifyfs %oneapi: add CFLAGS=-Wno-unused-function to build environment (#32107) 2022-08-15 10:43:39 -07:00
kwryankrattiger
c12446d0ea VTK-h: Patch VTK-h to build +shared+cuda (#32104) 2022-08-15 10:41:45 -07:00
Seth R. Johnson
b1e499d009 swig: new version 4.1.dev1-fortran (#32135) 2022-08-15 10:03:09 -07:00
eugeneswalker
5bffd371e7 e4s ci: enable trilinos@13.4.0 +cuda build, issues resolved (#32124) 2022-08-15 09:06:03 -07:00
eugeneswalker
ad51e7d9f0 e4s ci: enable hpctoolkit +rocm (#32126) 2022-08-15 09:05:34 -07:00
Valentin Volkl
4e5d4909c0 root: set CLING_STANDARD_PCH as in thisroot.sh (#32095)
* root: set CLING_STANDARD_PCH as in thisroot.sh

* root: also set CPPYY_API_PATH
2022-08-15 09:34:15 -04:00
Harmen Stoppels
f7736ddfc0 curl: --with-pkg=prefix instead of --with-pkg (#31816) 2022-08-15 13:47:07 +02:00
Wouter Deconinck
f52d59cd86 gaudi: new version 36.7 (#32116)
Small bugfix release, https://gitlab.cern.ch/gaudi/Gaudi/-/compare/v36r6...v36r7. No changes to recipe needed.
2022-08-15 10:21:21 +02:00
Adam J. Stewart
34aad9b53f py-numpy: add v1.23.2 (#32139) 2022-08-15 10:19:07 +02:00
eugeneswalker
d402c1d6b5 flex %oneapi: add -Wno-implicit-function-declaration (#32073) 2022-08-14 08:48:32 -07:00
eugeneswalker
53e41ca9f1 arpack-ng %oneapi: add -Wno-implicit-function-declaration (#32080) 2022-08-14 08:48:24 -07:00
eugeneswalker
4d31b6bf8b mpifileutils %oneapi: add -Wno-implicit-function-declaration (#32067) 2022-08-14 07:44:25 -04:00
eugeneswalker
b43104acab openblas@0.3.20 %openblas: -Wno-implicit-function-declaration (#32065) 2022-08-14 07:43:51 -04:00
eugeneswalker
d192e6f88b hdf5 flag_handler for icx: add -Wno-implicit-function-declaration (#32066) 2022-08-14 07:42:58 -04:00
eugeneswalker
a56e779071 superlu-dist %oneapi: add -Wno-implicit-function-declaration (#32081) 2022-08-14 07:32:19 -04:00
Wouter Deconinck
e250371ee2 root: fix setup_dependent_build_environment regression (#32115)
`setup_dependent_build_environment(self, env, dependent_spec)` does not have a variable `spec`.

This causes several issues right now:
```console
==> Installing gaudi-36.6-cjjrpjwpcqrtojyrdqml3jpzkbn55hpb
==> No binary for gaudi-36.6-cjjrpjwpcqrtojyrdqml3jpzkbn55hpb found: installing from source
==> Error: NameError: name 'spec' is not defined

/home/wdconinc/git/spack/var/spack/repos/builtin/packages/root/package.py:614, in setup_dependent_build_environment:
        611        env.prepend_path("ROOT_INCLUDE_PATH", dependent_spec.prefix.include)
        612        if "+rpath" not in self.spec:
        613            env.prepend_path("LD_LIBRARY_PATH", self.prefix.lib.root)
  >>    614        if "platform=darwin" in spec:
        615            # Newer deployment targets cause fatal errors in rootcling
        616            env.unset("MACOSX_DEPLOYMENT_TARGET")
```
2022-08-14 07:19:09 -04:00
renjithravindrankannath
b32cb5765c Add new dependencies for rocm variant for py-torch recipe (#32100)
* Cmake module path updated for ROCm 5.2

* nccl is already set below for PyTorch 1.6+

* Threadpool is set below for PyTorch 1.6+
2022-08-13 01:17:20 -05:00
eugeneswalker
4ec31003aa e4s oneapi ci: enable hpx due to merged PR #32097 (#32117) 2022-08-12 23:41:53 -06:00
eugeneswalker
e0a03d07de boost@1.76:1.79 %oneapi: patch according to Intel guide for building Boost (#32097) 2022-08-12 20:02:00 -07:00
eugeneswalker
ffb63ca933 e4s oneapi: build tau %oneapi ^binutils%gcc (#32106) 2022-08-12 20:01:04 -07:00
Vanessasaurus
f00152a54f do not require docs (py-docutils) if not +docs (#32099)
Signed-off-by: vsoch <vsoch@users.noreply.github.com>

Signed-off-by: vsoch <vsoch@users.noreply.github.com>
Co-authored-by: vsoch <vsoch@users.noreply.github.com>
2022-08-12 21:32:50 +00:00
Scott Wittenburg
cb19ca2471 gitlab ci: Make sure PR pipelines can push to buildcache (#32014)
On PR pipelines we need to override the buildcache destination to
point to the "spack-binaries-prs" bucket, otherwise, those pipelines
try to push to the default mirror in a bucket for which they don't
have write permission.
2022-08-12 16:53:59 +00:00
Mikael Simberg
aa1ae5250a Use llvm13-thread.patch for all compilers when building llvm (#31661) 2022-08-12 10:33:53 -06:00
Olivier Cessenat
54ac5bdb42 perl-fth: add v0.527 (#32032) 2022-08-12 07:13:51 -06:00
Olivier Cessenat
30991ccee4 keepassxc: add 'docs' variant (#32049)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-08-12 15:06:59 +02:00
renjithravindrankannath
08e75f7a3e rocm: add v5.2 for the entire stack (#31591) 2022-08-12 09:20:47 +02:00
kwryankrattiger
3c9daa3ef8 VTK-m: Constrain gcc compiler after 11 updates. (#32059) 2022-08-11 22:29:54 -06:00
Massimiliano Culpo
1913dc2da3 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)
2022-08-11 16:51:01 -07:00
Jen Herting
a550b8ce30 New package: py-pynndescent (#32076)
* [py-pynndescent] New package

* [py-pynndescent] Removed white space

* [py-pynndescent] fixed dependencies

* [py-pynndescent] flake8

* [py-pynndescent] Import update

Co-authored-by: James A Zilberman <jazrc@rit.edu>
2022-08-11 17:41:54 -06:00
Chris White
8c23545a3a CachedCMakePackage: Port over logic from CMake build system for ldlibs and ldflags (#31750)
* port over logic from cmake build system for ldlibs and ldflags

* follow new style standards

* escape quotes

* escape quotes

* nevermind going back
2022-08-11 14:55:43 -07:00
Satish Balay
6ab6058ab4 petsc, py-petsc4py: add 3.17.4 (#32071) 2022-08-11 14:46:33 -06:00
Swann Perarnau
25da1052f7 aml: add v0.2, cuda,opencl,hip support (#30701)
- [x] Add release v0.2 of the AML package, deprecate v0.1, and add support for
      OpenCL, HIP, and CUDA variants of the library. Also update repo and
      release URL, as the previous one is not accessible anymore.
- [x] aml: add oneapi-level-zero support
- [x] Change openmp flags to force compatibility when compiling with
      intel-oneapi compilers.
2022-08-11 15:34:04 -05:00
snehring
29ee89b28b pasta: updating to latest version (#32077)
* pasta: updating to latest version

* pasta: fixing missing 's' from maintainers
2022-08-11 19:23:12 +00:00
Wouter Deconinck
02a5996d24 podio, edm4hep: new versions (#32063)
* podio, edm4hep: new versions

* edm4hep: new version

* edm4hep: @0.6: depends_on podio@0.15:
2022-08-11 10:50:01 -07:00
Brian Spilner
8cf5e829d9 release cdo-2.0.6 (#32069) 2022-08-11 17:36:38 +00:00
Olivier Cessenat
2d3db71729 pwgen: add new package (#32053)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-08-11 17:36:12 +02:00
Erik Schnetter
714a211e25 hwloc: add v2.8.0 (#32042) 2022-08-11 08:45:59 -06:00
Harmen Stoppels
ceda5fb46c Don't set LD_LIBRARY_PATH by default on Linux (#28354)
`LD_LIBRARY_PATH` can break system executables (e.g., when an enviornment is loaded) and isn't necessary thanks to `RPATH`s.  Packages that require `LD_LIBRARY_PATH` can set this in `setup_run_environment`.

- [x] Prefix inspections no longer set `LD_LIBRARY_PATH` by default
- [x] Document changes and workarounds for people who want `LD_LIBRARY_PATH`
2022-08-11 09:33:08 -05:00
Harmen Stoppels
e4d296dfc5 cmake: add v3.23.3 and v3.22.6 (#31926) 2022-08-11 14:51:28 +02:00
Robert Cohn
f84fa41cd1 Pin tbb version for salmon & dyninst (#32026) 2022-08-11 14:45:25 +02:00
Adam J. Stewart
975ebaaec7 py-matplotlib: add v3.5.3 (#32051) 2022-08-11 06:29:47 -06:00
Andrew W Elble
d60aa995a9 py-tensorflow-estimator: new versions (#32029)
* py-tensorflow-estimator: new versions

* [@spackbot] updating style on behalf of aweits

Co-authored-by: aweits <aweits@users.noreply.github.com>
2022-08-11 06:25:58 -06:00
Chris Green
46c8962e91 Add missing info to diagnostic for circular provides (#32027) 2022-08-11 14:20:17 +02:00
Olivier Cessenat
76d8376fea gxsview: gcc11 compilation rule for std::numeric_limits (#31970)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-08-11 14:18:01 +02:00
Tamara Dahlgren
f96b54b0a6 info: properly report default when for overridden variants (#32040) 2022-08-11 14:09:53 +02:00
Adam J. Stewart
5e57677140 py-scipy: 1.4.0:1.4.1 conflict on ppc64le (#32050) 2022-08-11 13:53:05 +02:00
Harmen Stoppels
6503652bc3 bubblewrap: add v0.6.2 (#32055) 2022-08-11 13:46:35 +02:00
David Schneider
2165d7205a precice: add v2.5.0 (#32052) 2022-08-11 13:44:50 +02:00
Brian Van Essen
0d5437ea4e Add support for using Spdlog in LBANN (#32034) 2022-08-11 11:39:40 +02:00
Brian Van Essen
ce59b33bcf Updated the RDKit dependencies for Boost variants. (#32033) 2022-08-11 11:39:07 +02:00
Glenn Johnson
4d06dcd62f bazel: add patches to compile with gcc-11 (#28548) 2022-08-10 19:04:18 -07:00
Harmen Stoppels
e3fe56abae llvm: fix LLDB_ENABLE_[N]CURSES (#32006) 2022-08-10 19:21:45 -06:00
Richarda Butler
ef818339db Update tests so /tmp/store can be accessed (#32003) 2022-08-10 20:53:48 +00:00
Thomas Gruber
98a540c793 Add LIKWID 5.2.2 (#32031) 2022-08-10 16:49:15 +00:00
Mikael Simberg
f237e669f2 Patch /usr/bin/file to file when on nixos (#30718)
These changes make many packages build on nixos where nearly nothing
comes from /bin or /usr/bin (the only things in "system locations" are
/bin/sh and /usr/bin/env, all the rest is found through PATH).

Many configuration scripts hardcode /usr/bin/file instead of using the
one from PATH. This patches them to use file from PATH.
2022-08-10 17:54:09 +02:00
Eric Brugger
9df2c7190f VisIt: fix missing link libs patch for parallel. (#32018) 2022-08-10 17:51:19 +02:00
Robert Cohn
19bebae931 intel-tbb add 2021.4, 2021.5, 2021.6.0-rc and master branch (#31997) 2022-08-10 07:07:26 -07:00
Richard Berger
1cb4b2337f singularity-eos: add dependency to py-pybind11 (#31907) 2022-08-10 04:20:39 -06:00
Filippo Spiga
623eee9a53 arm: add a dependency on "ncurses abi=5' (#31942)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
Co-authored-by: fspiga <fspiga@users.noreply.github.com>
2022-08-10 12:15:41 +02:00
Wouter Deconinck
acc848a0f8 gaudi: disentangle variant 'optional' (#31801) 2022-08-10 12:11:13 +02:00
Adam J. Stewart
47b1138ef2 libgta: add new package (#31981) 2022-08-10 11:04:56 +02:00
Seth R. Johnson
5d6ab9a76c core: add a helpful long message for UnknownPackageError (#31996)
```
Error: Package 'armpl' not found.
```
is pretty useless after an upgrade unless you're a spack pro. I've
recently hit this on multiple machines. See
https://github.com/spack/spack/issues/31453 ,
https://github.com/spack/spack/issues/31489  .
2022-08-10 11:01:07 +02:00
Jim Edwards
13bcf82851 parallelio: update config (#31868) 2022-08-10 10:53:04 +02:00
Adam J. Stewart
b7358cc6d6 py-pytorch-lightning: add v1.7.1 (#32020) 2022-08-10 02:25:56 -06:00
Axel Huebl
b6ed343b18 WarpX: add v22.08 (#31849) 2022-08-10 10:25:26 +02:00
Harmen Stoppels
857a798aed modules: add missing Python imports (#32012) 2022-08-10 10:00:33 +02:00
Adam J. Stewart
03a91df81a libjxl: add new package (#31983) 2022-08-10 09:20:07 +02:00
Axel Huebl
e7d8a7765b ADIOS2: ZFP<1.0 (#32015)
* ADIOS2: ZFP<1.0

The tagged ADIOS2 releases in Spack (and develop) do not yet
work with ZFP 1.0. Express valid depedency range before someone
updates the ZFP package and triggers the incompatibility.

* Use semver
2022-08-10 00:35:03 -06:00
iarspider
ddb83ed776 Add checksum for py-setuptools-rust 1.2.0 and 1.4.1 (#32009)
* Add checksum for py-setuptools-rust 1.2.0 and 1.4.1

* Update var/spack/repos/builtin/packages/py-setuptools-rust/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* Update package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-08-09 16:53:57 -06:00
iarspider
6a30a5c8d7 Add checksum for py-pynacl 1.5.0 (#31988)
* Add checksum for py-pynacl 1.5.0

* Update package.py
2022-08-09 10:25:28 -07:00
iarspider
0d97d05ccb Add checksum for new py-semantic-version versions (#32010) 2022-08-09 10:24:48 -07:00
Tamara Dahlgren
3320c983a7 Reduce installation noise: filter path padding and make some details debug level 2 (#31998) 2022-08-09 19:22:09 +02:00
Adam J. Stewart
d29d5462c6 PythonPackage: add --config-settings support (#31823) 2022-08-09 10:09:51 -07:00
Adam J. Stewart
bc32b2c22c py-gpytorch: add v1.8.1 (#32001) 2022-08-09 09:45:35 -07:00
Jose E. Roman
bce3369325 New patch release SLEPc 3.17.2 (#32007) 2022-08-09 09:44:34 -07:00
iarspider
8598da337d Add checksum for py-pyjwt 2.4.0 (#31987) 2022-08-09 08:05:53 -06:00
Harmen Stoppels
f53b522572 Add base class for directory visitor (#32008) 2022-08-09 15:43:30 +02:00
Massimiliano Culpo
b61187455a Update release procedure, keep CHANGELOG up-to-date (#31969)
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2022-08-09 12:10:49 +00:00
Ryan Marcellino
d475306b6e rdma-core: add v22.4 (#31888) 2022-08-09 08:12:57 +02:00
eugeneswalker
9215d59599 axom@0.6.1 %oneapi: patch examples (#31991)
* axom@0.6.1 %oneapi: patch examples

* uncomment axom%oneapi ci build now that it is fixed
2022-08-08 19:39:32 +00:00
iarspider
522fda0a48 Add checksum for py-lxml 4.9.0 and 4.9.1 (#31986)
* Add checksum for py-lxml 4.9.0 and 4.9.1

* Update package.py
2022-08-08 18:53:07 +00:00
Adam J. Stewart
c0493f92af TensorFlow: add versions 2.8–2.9 (#31615) 2022-08-08 11:30:56 -07:00
iarspider
4a5af1a3d3 py-uproot: Add checksums for new versions (#31989)
* Add checksums for new uproot versions

* Update package.py
2022-08-08 18:13:06 +00:00
Olivier Cessenat
1d4925387e swig: support external find (#31990) 2022-08-08 11:41:41 -06:00
Maciej Wójcik
b24a068f3d gromacs: add CP2K (#31836) 2022-08-08 18:13:31 +02:00
Valentin Volkl
1841e947f6 acts: add v19.6.0 (#31922) 2022-08-08 15:03:04 +00:00
Wouter Deconinck
0b2ab33dee acts: add v19.4.0 and v19.5.0 (#31773) 2022-08-08 16:27:13 +02:00
Adam J. Stewart
739883027e py-scikit-learn: add v1.1.2 (#31957) 2022-08-08 16:24:00 +02:00
haralmha
bfd058db24 crmc: add necessary boost variants and allow argument mismatch for clang (#31928) 2022-08-08 16:23:27 +02:00
Niclas Jansson
f99e5e4295 neko: add v0.4.3, v0.4.2 and fixed package recipe (#31984) 2022-08-08 16:20:39 +02:00
Wouter Deconinck
8e50db1680 qt: new version 5.15.5 (#31973) 2022-08-08 07:40:22 -04:00
Alberto Invernizzi
32a31d01af sirius: inherit from rocmpackage (#31207)
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2022-08-08 11:40:37 +02:00
Adam J. Stewart
b02cbaad44 Update PyTorch ecosystem (#31960) 2022-08-08 10:51:55 +02:00
dependabot[bot]
5c5c194a6e build(deps): bump docker/build-push-action from 3.0.0 to 3.1.1 (#31964)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3.0.0 to 3.1.1.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](e551b19e49...c84f382811)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-08 10:51:13 +02:00
Olivier Cessenat
49bd4f6e0c perl-cgi: adding v4.54 (#31971) 2022-08-08 09:27:40 +02:00
Olivier Cessenat
26258ebb5b perl-tk: adding v804.036 (#31972) 2022-08-08 09:26:51 +02:00
eugeneswalker
e5eabe0cf6 e4s oneapi ci: unify when possible (#31965) 2022-08-08 09:22:32 +02:00
Wouter Deconinck
e31b4cdf33 herwig3: add v7.2.2 (#28233) 2022-08-08 09:11:12 +02:00
Erik Schnetter
93eb8be43c hpx: add v1.8.1 (#31977) 2022-08-08 09:01:33 +02:00
Olivier Cessenat
9b0bd7c536 hypre: update homepage (#31976) 2022-08-08 08:58:24 +02:00
Adam J. Stewart
0e3418887b py-tbparse: add new package (#31979)
Co-authored-by: adamjstewart <adamjstewart@users.noreply.github.com>
2022-08-08 08:57:36 +02:00
Adam J. Stewart
a00951137f libheif: add new package (#31982) 2022-08-08 08:50:49 +02:00
Melven Roehrig-Zoellner
67154a1088 cudnn: adjust version dependency on CUDA (#31763) 2022-08-07 08:27:51 -07:00
Vanessasaurus
86be4666fc flux packages used in a spack view will already be unshallow (#31955)
* flux packages used in a spack view will already be unshallow
and this particular command will error and break the entire build. Instead
we want to catch the ProcessError and allow for a regular fetch.
* final tweaks to add missing sqlite and fallback to fetch

Signed-off-by: vsoch <vsoch@users.noreply.github.com>
2022-08-06 12:05:29 -07:00
Ryan Marcellino
75d1cb469f py-simpleeval: new package (#31968) 2022-08-06 12:48:09 -05:00
eugeneswalker
0efadcae16 curl@7.84.0: patch easy_lock.h (https://github.com/curl/curl/pull/9054) (#31950) 2022-08-06 18:13:12 +02:00
Adam J. Stewart
7966e9bfb6 py-jaxlib: bazel 5 not yet supported (#31962) 2022-08-06 09:12:13 -07:00
Adam J. Stewart
6d021a9878 Perl: set PERL5LIB for test deps (#31685) 2022-08-05 15:31:56 -07:00
牟展佑
c5fb023c41 python: add @3.10.6 (#31951) 2022-08-05 15:29:59 -06:00
iarspider
8ca2ee2bbd Add checksum for py-numexprt 2.8.3 (#31900) 2022-08-05 15:29:46 -06:00
Luke Diorio-Toth
baf3b7299b py-flye: added v2.7-2.9 (#31956) 2022-08-05 14:17:31 -07:00
Jen Herting
42de3ff968 jxrlib-debian: new package (#31877)
Co-authored-by: James A Zilberman <jazrc@rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-08-05 11:49:46 -06:00
Massimiliano Culpo
65a4125dd0 spack mirror: skip non-concretizable specs (#31897)
fixes #31736

Catch errors when concretizing specs and report them as
debug messages. The corresponding spec is skipped.

Co-authored-by: Greg Becker <becker33@llnl.gov>
2022-08-05 19:19:51 +02:00
Eric Brugger
fefab26f01 Add vtkm variant to visit spack package. (#31887) 2022-08-05 10:25:56 -06:00
downloadico
e30a8e70ce seq-gen: add new package (#31916) 2022-08-05 15:12:06 +00:00
Harmen Stoppels
519a2d2b15 rdma-core: latest (patch) releases (#31943) 2022-08-05 07:28:11 -07:00
Harmen Stoppels
b07b017dc5 patchelf: 0.15.0 (#31946) 2022-08-05 07:27:00 -07:00
dunatotatos
235f27a815 krakenuniq: add new package. (#31944) 2022-08-05 14:31:41 +02:00
Massimiliano Culpo
5bf6b7e6a5 Refactor cmd/install.py for better readability (#31936)
* Extracted two functions in cmd/install.py

* Extracted a function to perform installation from the active environment

* Rename a few functions, remove args from their arguments

* Rework conditional in install_from_active_environment to reduce nesting in the function

* Extract functions to parsespecs from cli and files

* Extract functions to getuser confirmation for overwrite

* Extract functions to install specs inside and outside environments

* Rename a couple of functions

* Fix outdated comment

* Add missing imports

* Split conditional to dedent one level

* Invert check and exit early to dedent one level when requiring user confirmation
2022-08-05 12:36:33 +02:00
Luke Diorio-Toth
901e6cb5e1 bracken: added new version and removed depreciated version (#31904) 2022-08-05 09:16:14 +02:00
Frank Willmore
08f403146e wps: add mpi dependency (#31855) 2022-08-05 08:58:32 +02:00
Ryan Mulhall
4114a7f91d Add new fms version 2022.03 (#31901)
Co-authored-by: rem1776 <Ryan.Mulhall@lscamd50-d.gfdl.noaa.gov>
2022-08-05 00:17:53 -06:00
Harmen Stoppels
a80c0e0217 mbedtls, xz: add missing install_name fixes on macOS (#31919) 2022-08-05 08:10:42 +02:00
Nils Vu
bb9744213f spectre: add v2022.07.18 and v2022.08.01 (#31633) 2022-08-05 08:09:30 +02:00
dunatotatos
739d98801f qtltools: fix prefix in Makefile (#31929) 2022-08-05 08:03:25 +02:00
psakievich
ddc373b4e1 Fix doc format for code blocks: GitRef versions (#31937)
Rendering was not pretty using `console` from #31914
2022-08-05 02:01:03 +00:00
Axel Huebl
465fa7a5f6 Add: pyAMReX (#31915)
* Add: pyAMReX

Add the new pybind11 project `pyAMReX` as `py-amrex` package.

* Fix PEP8 Style
2022-08-04 16:57:29 -07:00
Jonathon Anderson
6cc5a657fb Add checksum for py-identify 2.5.3 (#31935)
* Add checksum for py-identify 2.5.3

* Update package.py
2022-08-04 16:57:48 -06:00
Jonathan R. Madsen
6970beb647 Omnitrace version 1.3.1 (#31911) 2022-08-04 15:50:16 -07:00
Olivier Cessenat
1c6830dd7a ruby-asciidoctor: adding version 2.0.17 (#31927) 2022-08-04 15:46:52 -07:00
downloadico
d458d1feb2 tassel: add version 3.0.174 (#31917)
* tassel: add version 3.0.174
fix naming of 5.2.39 from "2017-07-22"

* changed single quotes to double quotes to appease the gods ;)

* fixed style issues
2022-08-04 15:40:56 -07:00
Cameron Rutherford
68a1d558b1 HiOp: use ginkgo@glu_experimental with develop. (#31934) 2022-08-04 15:08:32 -07:00
eugeneswalker
25b1451ea9 openblas%cce: patch to support -hnofortran (#31931) 2022-08-04 21:12:53 +00:00
Chris Green
20de47a1e2 Move type hint to satisfy Python 3.6, 3.7 interpreters (#31932) 2022-08-04 20:48:05 +00:00
psakievich
d67ead5978 Add documentation for git refs as versions (#31914)
* document git commit versions

Include documentation for manually specifying associated known version

* document spack develop command

Co-authorerd-by: psakievich <psakiev@sandia.gov>
Co-authored-by: Gregory Becker <becker33@llnl.gov>
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2022-08-04 13:20:33 -07:00
psakievich
3b1401f292 Git Ref versions can be paired to defined versions in the spec (#30998)
The current use of git ref's as a version requires a search algorithm to pick the right matching version based on the tags in the git history of the package.

This is less than ideal for the use case where users already know the specific version they want the git ref to be associated with. This PR makes a new version syntax [package]@[ref]=[version] to allow the users to specify the exact hash they wish to use.
2022-08-04 13:17:34 -07:00
iarspider
19a8bb53f0 Add checksums for py-onnx 1.10.1, 1.11.0, 1.12.0 (#31891)
* Add checksums for py-onnx 1.10.1, 1.11.0, 1.12.0

* Update package.py
2022-08-04 09:56:43 -07:00
iarspider
5512adbfc7 Add checksum for py-notebook 6.4.12 (#31924) 2022-08-04 09:54:44 -07:00
iarspider
ae6734a228 Add checksum for py-ipython 7.31.1 (#31923) 2022-08-04 09:53:15 -07:00
Auriane R
5c3e4f4a92 pika: add v0.7.0 (#31906) 2022-08-04 15:20:15 +00:00
Marie Houillon
2e487a90e9 New version for openCARP packages, v11.0 (#31652)
Co-authored-by: openCARP consortium <info@opencarp.org>
2022-08-04 16:32:12 +02:00
Massimiliano Culpo
0e40804cd0 Deprecate support for Python 3.5 (by removing it from CI) (#31908)
* Deprecate support for Python 3.5 (by removing it from CI)

* Restore Python 3.9
2022-08-04 15:26:56 +02:00
Filippo Spiga
80e6b6647f Adding JUBE 2.4.1, 2.4.2 and 2.4.3 (#31921) 2022-08-04 12:10:06 +02:00
iarspider
9173e1ad28 Add checksum for py-arrow 1.2.1 and 1.2.2 (#31894)
* Add checksum for py-arror 1.2.1 and 1.2.2

* Update package.py

* Update var/spack/repos/builtin/packages/py-arrow/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update package.py

* Update package.py

* Update package.py

* Update package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-08-04 02:01:21 +00:00
Massimiliano Culpo
9a48035e49 asp: refactor low level API to permit the injection of configuration
This allows writing extension commands that can benchmark
different configurations in clingo, or try different
configurations for a single test.
2022-08-03 18:01:08 -07:00
Axel Huebl
e90ea79347 AMReX: 1D Option (#31913)
Expose 1D support in AMREX_SPACEDIM.
2022-08-03 16:54:51 -06:00
eugeneswalker
2b04c4f840 sundials@6.1.0:6.2.0 +rocm: patch nvector to use pic (#31910)
* sundials@6.1.0:6.2.0 +rocm: patch nvector to use pic

* e4s ci: add sundials +rocm
2022-08-03 16:01:59 -06:00
Cameron Rutherford
3a62f3aeae ExaGO: disable Python with rocm+ipopt. HiOp: fix umpire+raja costraints. RAJA: fix option naming for 0.14.0 (#31880) 2022-08-03 15:21:58 -06:00
Jen Herting
43be9a1ac1 New package: py-glymur (#31875)
* [py-glymur] New Package: py-glymur

* [py-glymur] fixed copyright line

* [py-glumur] update import ine

* [@spackbot] updating style on behalf of qwertos

Co-authored-by: James A Zilberman <jazrc@rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-08-03 10:13:25 -07:00
iarspider
849f01df86 Add checksum for py-smmap 3.0.5,4.0.0,5.0.0 (#31898) 2022-08-03 10:07:22 -07:00
Adam J. Stewart
6b23fe857e py-torchgeo: lock down pytorch-lightning version (#31886) 2022-08-03 10:26:38 -06:00
Glenn Johnson
26ec46e834 r-rhtslib: fix issue with git commit for v1.28 (#31653)
There is a problem with the git repo for rhtslib that apparently led to
a bad version entry during the previous round of package updates. A git
checkout on the commit also fails so use branch for most recent version.
2022-08-03 10:22:05 -06:00
Erik
d93c074491 AMReX: SYCL support (#31233)
Add SYCL support, check CUDA-HIP-SYCL mutually exclusive. Require
AMReX ver 21.06+ for SYCL.

Co-authored-by: etpalmer63 <etpalmer63@users.noreply.github.com>
2022-08-03 09:54:09 -06:00
Vicente Bolea
af0e20ba9f adios2: add v2.8.3 (#31885) 2022-08-03 07:25:52 -06:00
Harmen Stoppels
78364a6fe4 openssl: copy mozilla certs to work around symlink relocation issue (#31862) 2022-08-03 14:16:47 +02:00
Jen Herting
ba9b225ffc zopfli: add new package (#31879)
Co-authored-by: James A Zilberman <jazrc@rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-08-03 06:02:02 -06:00
Piotr Luszczek
a5d49ef77a plasma: add code generation step for develop version (#31668)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-08-03 13:30:24 +02:00
Peter Scheibel
5603b031de Also set FC when building hypre+fortran (#31850) 2022-08-03 13:12:42 +02:00
dunatotatos
a8480281d5 QTLTools: add new package (#31881) 2022-08-03 12:42:45 +02:00
dunatotatos
ab87cac63f Match documentation of spack create with actual behavior. (#31892) 2022-08-03 10:38:56 +00:00
Jen Herting
09c56255c3 libspng: add new package (#31878)
Co-authored-by: James A Zilberman <jazrc@rit.edu>
Co-authored-by: qwertos <qwertos@users.noreply.github.com>
2022-08-03 04:30:05 -06:00
Massimiliano Culpo
080a26a314 Remove macOS 10.15 from bootstrap tests (#31890)
That version of the runners have been deprecated, see:
https://github.blog/changelog/2022-07-20-github-actions-the-macos-10-15-actions-runner-image-is-being-deprecated-and-will-be-removed-by-8-30-22/
2022-08-03 12:29:29 +02:00
Yang Zongze
ad09f7a1af Make parmmg dependent on mmg and metis (#31838)
1. copy source of mmg to its install tree for parmmg's build
2. add cmake args for parmmg
3. add '+mmg' when '+parmmg' for petsc
2022-08-03 01:57:53 -06:00
Adam J. Stewart
8f55c3c34a py-pytorch-lightning: add v1.7.0 (#31871) 2022-08-03 09:44:27 +02:00
Ken Raffenetti
84073466e6 mpich: fix hwloc config option for version >= 4.0 (#31874)
In MPICH 4.0, the config option for external hwloc changed from
--with-hwloc-prefix to --with-hwloc
2022-08-03 09:21:50 +02:00
dependabot[bot]
4aaa3841b8 build(deps): bump actions/setup-python from 4.1.0 to 4.2.0 (#31882)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.1.0 to 4.2.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](c4e89fac7e...b55428b188)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-03 09:08:03 +02:00
Chris Green
4d2ed35552 black: fix bootstrap for Python 3.6 (#31872)
* py-platformdirs: sanitize UTF-8 setup.cfg on Python 3.6

* py-platformdirs: black compliance

* Minimal fix per @adamjstewart
2022-08-02 20:49:36 -06:00
Chuck Atkins
2ed03407f4 libedit: Make sure libedit linkes to the correct terminfo lib from spack (#31870) 2022-08-02 20:49:14 -06:00
eugeneswalker
0462818c2e e4s oneapi ci: build vtk-m ~openmp due to issue #31830 (#31840) 2022-08-02 14:45:58 -07:00
Harmen Stoppels
2ecec26188 ca-certificates-mozilla: add v2022-07-19 and v2022-04-26(#31863) 2022-08-02 15:30:02 -06:00
eugeneswalker
b3f221185e butterflypack %oneapi: patch CMakeLists to solve issue #31818 (#31848)
* butterflypack %oneapi: patch CMakeLists to solve issue #31818

* uncomment builds affected by failing butterflypack

Co-authored-by: e <e>
2022-08-02 14:02:00 -06:00
Andrew W Elble
e11211eec6 new package: py-alphafold (#27849)
* new package: alphafold

and related dependencies, depends on #27138

* [@spackbot] updating style on behalf of aweits

* fix

Co-authored-by: aweits <aweits@users.noreply.github.com>
2022-08-02 20:01:22 +00:00
Peter Scheibel
4e723b634e Allow building with camp@0.2.3 for raja@0.14.0 and umpire@6.0.0 (#31853) 2022-08-02 21:39:45 +02:00
Jonathon Anderson
8c50ea9dc0 spack ci rebuild: Don't install in a login shell (#31771)
On some systems the shell in login mode wipes important parts of the
environment, such as PATH. This causes the build to fail since it can't
find `spack`.

For better robustness, don't use a login shell.

In a full CI job the final spack install is run in an environment formed by scripts running in this order:

export AWS_SECRET=...                  # 1. Load environment from GitLab project variables
source spack/share/spack/setup-env.sh  # 2. Load Spack into the environment (PATH)
spack env activate -V concrete_env     # 3. Activate the concrete environment
source /etc/profile                    # 4. Bash login shell (from -l)
spack install ...
Whereas when a user launches their own container with (docker|podman) run -it, they end up running spack install in an environment formed in this order:

source /etc/bash.bashrc                # (not 4). Bash interactive shell (default with TTY)
export AWS_SECRET=...                  #~1. Manually load environment from GitLab project variables
source spack/share/spack/setup-env.sh  # 2. Load Spack into the environment (PATH)
spack env activate -V concrete_env     # 3. Activate the concrete environment
spack install ...
The big problem being that (4) has a completely different position and content (on Leap 15 and possibly other containers).

So in context, this PR removes (4) from the CI job case, leaving us with the simpler:

export AWS_SECRET=...                  # 1. Load environment from GitLab project variables
source spack/share/spack/setup-env.sh  # 2. Load Spack into the environment (PATH)
spack env activate -V concrete_env     # 3. Activate the concrete environment
spack install ...
2022-08-02 11:45:50 -07:00
Massimiliano Culpo
6e0b7959a4 Optimize reuse from buildcaches (#30806)
* database: don't sort on return from query_local

* ASP-based solver: don't build the hash-lookup dictionary twice

Building this dictionary twice and traversing all the specs
might be time-consuming for large buildcaches.
2022-08-02 11:43:14 -07:00
Massimiliano Culpo
aeac72e1e3 Style fixes 2022-08-02 10:52:52 -07:00
Massimiliano Culpo
0b832b2929 Remove line that sets non-existing attribute? 2022-08-02 10:52:52 -07:00
Massimiliano Culpo
2b3f350071 Use __slots__ for fast attribute access 2022-08-02 10:52:52 -07:00
Massimiliano Culpo
b6c8779772 Use __slots__ for fast attribute access during parsing 2022-08-02 10:52:52 -07:00
Harmen Stoppels
57e6452831 Document that reuse is higher priority than preferences in packages.yaml (#31864)
Resurrect Known issues, since users ask frequently about that.
2022-08-02 18:54:41 +02:00
Harmen Stoppels
3b4d1bdd31 py-pre-commit 2.20.0 2022-08-02 05:07:41 -07:00
Todd Gamblin
415ac29665 docs: Fix outdated pre-0.18 text on build dependencies (#31860) 2022-08-02 11:34:58 +00:00
Melven Roehrig-Zoellner
ac3b1d77fb gdb: add v12.1 (#31765) 2022-08-02 04:05:44 -06:00
Sebastian Ehlert
5533256dc6 Add mctc-lib v0.3.1 and toml-f v0.3.0 (#31847) 2022-08-02 08:03:00 +02:00
Adam J. Stewart
22d4612d94 Add meson Python build backend (#31809) 2022-08-02 07:55:41 +02:00
Adam J. Stewart
113acd4714 py-flake8: add v5.0 (#31854) 2022-08-02 07:44:02 +02:00
Adam J. Stewart
1a61252c64 spack checksum: black compliance (#31851) 2022-08-02 07:29:30 +02:00
eugeneswalker
df4e66ecde kokkos: set CMAKE_CXX_STANDARD instead of Kokkos_CXX_STANDARD (#31841)
* kokkos@develop: set CMAKE_CXX_STANDARD instead of Kokkos_CXX_STANDARD

* use CMAKE_CXX_STANDARD regardless of kokkos version
2022-08-01 23:12:32 +00:00
Peter Scheibel
c0ede0e0fa Add c++14 support flag for xl compiler (#31826) 2022-08-01 22:51:02 +00:00
Adam J. Stewart
77537fab82 lerc: add libs property (#31684) 2022-08-01 21:42:36 +00:00
Adam J. Stewart
d9d3438637 mxnet: prefer stable release (#31821) 2022-08-01 20:15:46 +00:00
Weiqun Zhang
2f34556f44 amrex: add v22.08 (#31844) 2022-08-01 19:40:02 +00:00
eugeneswalker
0fc045392b e4s oneapi stack: remove notes for now-fixed builds (#31839) 2022-08-01 12:03:39 -07:00
RichardABunt
d9c0080858 arm-forge: add v22.0.4. (#31835) 2022-08-01 19:53:30 +02:00
Adam J. Stewart
f018b869e6 Add support for macOS Ventura (#31812) 2022-08-01 16:45:56 +00:00
Adam J. Stewart
90dbfea895 python: fix clingo bootstrapping on Apple M1/M2 (#31792) 2022-08-01 15:48:07 +00:00
Seth R. Johnson
ae3c039908 celeritas: new package (#31834)
ROOT also needs updating for downstream macOS packages
2022-08-01 10:59:09 -04:00
Seth R. Johnson
2ec17288f3 py-breathe: fix version constraints to avoid concretizing old breathe (#31828) 2022-08-01 10:58:54 -04:00
Adam J. Stewart
c98d367a91 CUDA: add new GCC conflict (#31820) 2022-08-01 14:31:07 +00:00
Erik Schnetter
e985a9884a gperftools: make the "libunwind" variant conditional (#31673)
libunwind is supported on Linux only
2022-08-01 14:17:31 +00:00
Erik Schnetter
532668af29 wi4mpi: New version 3.6.0 (#31681)
* wi4mpi: New version 3.6.0
2022-07-31 22:25:35 -06:00
Todd Gamblin
ab04d697c7 tests: remove old changed_files() test
This test relied on an old version of the `flake8_package` fixture that modified
the spack repository, but it doesn't do that anymore. There are other tests for
`changed_files()` that do a better job of mocking up a git repository with
changes, so we can just delete this one.
2022-07-31 21:01:02 -07:00
Todd Gamblin
98d6862787 black: fix .git-blame-ignore-revs commit
A GitHub rebase merge seems to rewrite commits even if it would be a
fast-forward, which means that the commit merged from #24718 is wrong.

- [x] update `.git-blame-ignore-revs` with real commit from `develop`
2022-07-31 15:06:38 -07:00
Todd Gamblin
143f3f830c style: simplify arguments with --tool TOOL and --skip TOOL
`spack style` tests were annoyingly brittle because we could not easily be
specific about which tools to run (we had to use `--no-black`, `--no-isort`,
`--no-flake8`, and `--no-mypy`). We should be able to specify what to run OR
what to skip.

Now you can run, e.g.:

    spack style --tool black,flake8

or:

    spack style --skip black,isort

- [x] Remove  `--no-black`, `--no-isort`, `--no-flake8`, and `--no-mypy` args.
- [x] Add `--tool TOOL` argument.
- [x] Add `--skip TOOL` argument.
- [x] Allow either `--tool black --tool flake8` or `--tool black,flake8` syntax.
2022-07-31 13:29:20 -07:00
Todd Gamblin
76b190a624 black: ensure that spack create templates are black-compliant
- [x] remove alignment spaces from tempaltes
- [x] replace single with double quotes
- [x] Makefile template now generates parsable code
      (function body is `pass` instead of just a comment)
- [x] template checks now run black to check output
2022-07-31 13:29:20 -07:00
Todd Gamblin
b87ca6da27 black: do not align sha56's with spaces in spack checksum output 2022-07-31 13:29:20 -07:00
Todd Gamblin
e2dc4b0b60 black: add badge to README.md 2022-07-31 13:29:20 -07:00
Todd Gamblin
357968469e black: bootstrap if black in PATH is too new
Previously we'd accept any version for bootstrapping black, but we need <= 21.

- [x] modify bootstrapping code to check black version before accepting an
      executable from `PATH`.
2022-07-31 13:29:20 -07:00
Todd Gamblin
f27eeaa2e8 black: add .git-blame-ignore-revs toignore black reformatting in blame
- [x] add `.git-blame-ignore-revs` to ignore black reformatting
- [x] make `spack blame` respect `.git-blame-ignore-revs`
      (even if the user hasn't configured git to do so)
2022-07-31 13:29:20 -07:00
Todd Gamblin
c661ca248b black: fix format-sensitive tests
Some of our tests rely on single vs. double quotes, and others rely on specific
line numbers in the source. These needed fixing after the switch to Black.
2022-07-31 13:29:20 -07:00
Todd Gamblin
f52f6e99db black: reformat entire repository with black 2022-07-31 13:29:20 -07:00
Todd Gamblin
549ba1ed32 black: fix style check package and flake8 formatting for black
Black will automatically fix a lot of the exceptions we previously allowed for
directives, so we don't need them in our custom `flake8_formatter` anymore.

- [x] remove `E501` (long line) exceptions for directives from `flake8_formatter`,
      as they won't help us now.
- [x] Refine exceptions for long URLs in the `flake8_formatter`.
- [x] Adjust the mock `flake8-package` to exhibit the exceptions we still allow.
- [x] Update style tests for new `flake8-package`.
- [x] Blacken style test.
2022-07-31 13:29:20 -07:00
Todd Gamblin
156af2a60a black: clean up noqa comments from most of the code
Many noqa's in the code are no longer necessary now that the column limit is 99
characters. Others can easily be eliminated, and still more can just be made more
specific if they do not have to do with line length.

The only E501's still in the code are in the tests for `spack.util.path` and the tests
for `spack style`.
2022-07-31 13:29:20 -07:00
Todd Gamblin
3fa090f490 black: break up long strings that black cannot fix 2022-07-31 13:29:20 -07:00
Todd Gamblin
67d27841ae black: configuration
This adds necessary configuration for flake8 and black to work together.

This also sets the line length to 99, per the data here:

* https://github.com/spack/spack/pull/24718#issuecomment-876933636

Given the data and the spirit of black's 88-character limit, we set the limit to 99
characters for all of Spack, because:

* 99 is one less than 100, a nice round number, and all lines will fit in a
  100-character wide terminal (even when the text editor puts a \ at EOL).
* 99 is just past the knee the file size curve for packages, and it means that packages
  remain readable and not significantly longer than they are now.
* It doesn't seem to hurt core -- files in core might change length by a few percent but
  seem like they'll be mostly the same as before -- just a bit more roomy.

- [x] set line length to 99
- [x] remove most exceptions from `.flake8` and add the ones black cares about
- [x] add `[tool.black]` to `pyproject.toml`
- [x] make `black` run if available in `spack style --fix`

Co-Authored-By: Tom Scogland <tscogland@llnl.gov>
2022-07-31 13:29:20 -07:00
Adam J. Stewart
ec87924039 MACOSX_DEPLOYMENT_TARGET: MAJOR.MINOR (#31811) 2022-07-30 02:12:02 +00:00
Sam Reeve
d2ad58c476 cabana: new version 0.5 (#31807) 2022-07-29 22:02:00 +00:00
eugeneswalker
d360551c16 e4s oneapi ci: uncomment pdt (#31803)
* e4s oneapi ci: uncomment pdt

* load oneapi compiler module before executing `spack ci rebuild`
2022-07-29 20:57:25 +00:00
Adam J. Stewart
9d62faa239 py-segmentation-models-pytorch: add v0.3.0 (#31806) 2022-07-29 14:05:44 -06:00
iarspider
882a7455ea Add checksum for numba 0.55.2 and 0.56, py-llvmlite 0.39.0 (#31802)
* Add checksum for numba 0.55.2 and 0.56

* Add checksum for py-llvmlite 0.39.0

* Apply suggestions from code review

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-07-29 19:21:02 +00:00
eugeneswalker
9e683126f0 e4s ci: add tasmanian +rocm (#31606) 2022-07-29 11:43:34 -07:00
Chuck Atkins
57af891cb1 OpenGL restructure (#31748)
* OpenGL: Restructures the OpenGL packages

This provides concrete glx and osmesa packages which delegate to
virtual libglx and libosmesa packages provided by mesa. This was
necessary because GLX and OSMesa both provide gl implementations but
with mesa providing the girtual gl package there was no way to properly
distinguish which of the two opengl implementations was beiing requested
when querying the spec['gl'] dependency.  This additional level of
indirection allows for that.

* OpenGL: Adjust downstream dependents of OpenGL for the restructure

This implements the necessary fixes in the packages that depend on
OpenGL to work with the restructuring.  This also attempts to create a
consistent variant for specifying glx or osmesa.
2022-07-29 12:04:42 -06:00
eugeneswalker
70c849f76b e4s oneapi ci: uncomment parallel-netcdf (#31804) 2022-07-29 17:39:51 +00:00
Seth R. Johnson
e35b69ca57 vdt: add missing python dependency (#31795)
* vdt: add missing python dependency

* vdt: fix dependency and add explicit exe path
2022-07-29 09:27:19 -07:00
Wouter Deconinck
9d67d1e034 gaudi: new version 36.6 (#31799)
No build system changes. Changelog at https://gitlab.cern.ch/gaudi/Gaudi/-/tags/v36r6, comparison at https://gitlab.cern.ch/gaudi/Gaudi/-/compare/v36r5...v36r6
2022-07-29 09:01:29 -07:00
Seth R. Johnson
a9b2bd5edc iwyu: new version 0.18 (#31798) 2022-07-29 08:57:59 -07:00
eugeneswalker
ec8c8e8aa8 e4s ci: add oneapi stack (#31781)
* e4s ci: add oneapi stack

* shorten padded_length to 256

* comment out pdt and add failure note
2022-07-29 03:32:41 +00:00
Scott Wittenburg
4f57430ef3 Deprecate visit 3.3.0 because it is broken (#31790) 2022-07-28 17:36:49 -07:00
Tim Haines
dd54690097 Dyninst: add version 12.2.0 (#31789) 2022-07-28 18:21:45 -06:00
Glenn Johnson
1cb6836614 new package: r-signac (#31703)
Also includes new package depdendency for r-rcpproll.
2022-07-28 15:14:45 -07:00
Evgeny Posenitskiy
519e7e0bb0 New package: trexio (#31769)
* [WIP] first working Spack spec for TREXIO

* add patch to prepend -lhdf5_hl to LIBS

* Fix spack stype issues

* trexio: Fix hashes and hdf5 variant build

* trexio: Remove import from Spack

* trexio: Fix the isort error

* Apply suggestions from code review

By @tldahlgren

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-07-28 15:05:28 -07:00
snehring
bc555fd148 sentieon-genomics: update version to 202112.05 (#31788) 2022-07-28 15:03:40 -07:00
Harmen Stoppels
e4f0f3582e environment.py: only install root specs explicitly (#31645) 2022-07-28 12:16:35 -07:00
Sam Reeve
e8cce0f7cb Cabana: add test variants (#31776)
* Simplify Cabana build flags
* Add unit tests, examples, and performance options
2022-07-28 11:21:53 -07:00
Manuela Kuhn
fc4d74b132 py-rsatoolbox: add 0.0.4 (#31785) 2022-07-28 09:59:34 -07:00
Brent Huisman
9ec05f045f New version of Arbor package (#31660) 2022-07-28 13:11:51 +02:00
Harmen Stoppels
09a945d924 gcc: fix unstable patch urls (#31784)
the patch urls dynamically generate a diff, which includes metadata
about the git version used, meaning they are not content-addressable.

instead ship the patches with spack.
2022-07-28 11:49:56 +02:00
Filippo Spiga
9ed2d07d68 Adding NVIDIA HPC SDK 22.7 (#31770) 2022-07-28 03:25:58 -06:00
Stephen Sachs
584cc47fb3 Fix parsing of clean_url (#31783)
In #31618 the idea was to determine the file extension heuristically by dropping query params etc from a url and then consider it as a file path. That broke for URLs that only have query params like http://example.com/?patch=x as it would result in empty string as basename. This PR reverts to the old behavior of saving files as ?patch=x in that case.

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-07-28 09:24:19 +00:00
Erik Schnetter
2dd4795f56 mpitrampoline: New version 5.0.1 (#31772) 2022-07-28 02:33:45 -06:00
AMD Toolchain Support
6c0ca932aa Adding Flamemaster product (#31126)
* Adding Flamemaster product

About FlameMaster: Flamemaster is an open source C++ program package for 0D
combustion and 1D laminar flame calculations.

* Addressed review comments and style tests errors

* Addressed style tests errors

* Incorporated spack style of coding

* Fixed following spack style error

[E228] missing whitespace around modulo operator

* Update package.py

addressing style issues

* Update package.py

* Changes to maintainers entry
2022-07-27 15:44:27 -07:00
eugeneswalker
5f845f3f31 e4s ci: add slate +rocm (#31602) 2022-07-27 15:36:59 -07:00
Erik Schnetter
b86f8f41e8 c-blosc2: New version 2.2.0 (#31577) 2022-07-27 15:06:49 -07:00
Sam Reeve
180fc7cdf1 New ExaCA package (#31777) 2022-07-27 14:54:57 -07:00
David Boehme
075dd64883 Add Caliper v2.8.0 and rocm support (#31632)
* Add Caliper v2.8.0

* Add conflict for +rocm+cuda
2022-07-27 15:38:54 -06:00
Thomas Madlener
5bd44a795c lcio, podio, edm4hep: Add latest versions (#31749)
* lcio: add latest version

* edm4hep: Add latest versions

* podio: Add latest versions
2022-07-27 14:13:47 -07:00
Andrew-Dunning-NNL
5505c443bf ZSH: add lmod and local etc variants (#29651)
* zsh: add lmod and local etc support

* zsh: fix indentation
2022-07-27 14:06:07 -07:00
Eric Brugger
71657fffbd VisIt: Update to VisIt 3.3.0. (#31654) 2022-07-27 13:46:04 -07:00
kwryankrattiger
a3f8dc1874 WarpX: Add sensei insitu variant (#31542) 2022-07-27 13:17:44 -06:00
Valentin Volkl
afc044cbad dd4hep: add v1.21 (#31705) 2022-07-27 10:27:21 -07:00
Valentin Volkl
850b295ec5 herwig3, thepeg: correct lhapdfsets dependency, specify boost libs (#31744)
* herwig3: change lhapdfsets dependency type to build

These data sets are needed for a check during build, but due to the difficulty of versioning the datasets it is preferred not to keep the them in the run environment.

* herwig3: explicitly state needed boost libs

* thepeg: explicitly state needed boost libs

* style

* stylestyle
2022-07-27 10:23:03 -07:00
Pitamila
56ab4c9820 py-scipy: -fPIC appending trouble with gcc@10: (#31698)
`-fPIC` mandatory option squeezed by error, the
NPY_DISTUTILS_APPEND_FLAGS appears handy

Co-authored-by: duperrayp <duperrayp@u-un00s16835>
2022-07-27 10:20:49 -07:00
wspear
02151565e9 Tau must get GCC path from environment on Cray (#31751)
* Tau must get GCC path from environment on Cray

self.compiler doesn't provide the path to the gcc compiler when using cray cc and the spack internal compiler overrides the location in PATH. If possible get the location from the GCC_PATH variable instead.

* Fix flake8 issues

* Update package.py
2022-07-27 10:04:06 -07:00
Jonathan R. Madsen
3db87f207e Update omnitrace package with v1.3.0 (#31754) 2022-07-27 10:01:30 -07:00
Adam J. Stewart
fdd914c990 py-sphinx: add v5.1.1 (#31756) 2022-07-27 09:58:15 -07:00
Melven Roehrig-Zoellner
3d9b143296 tixi: new versions (#31761) 2022-07-27 09:51:21 -07:00
Melven Roehrig-Zoellner
179afcac4e valgrind: new version (#31762) 2022-07-27 09:48:55 -07:00
Melven Roehrig-Zoellner
1ab7f65920 itensor: new version, restrict hdf5 to :1.10 (#31764) 2022-07-27 09:44:38 -07:00
Harmen Stoppels
ade7bcd514 curl: 7.84.0 (#31725) 2022-07-26 20:37:49 -06:00
eugeneswalker
5b4c076ddb cabana: add cajita variant (#31753)
* cabana: add cajita variant

* Update var/spack/repos/builtin/packages/cabana/package.py

Co-authored-by: Sam Reeve <6740307+streeve@users.noreply.github.com>

* cabana: cannot build +cajita ~mpi

Co-authored-by: Sam Reeve <6740307+streeve@users.noreply.github.com>
2022-07-26 17:33:15 -07:00
eugeneswalker
b38a814dc9 e4s ci stack: add spec: hdf5-vol-async (#31747)
* e4s ci stack: add spec: hdf5-vol-async

* hdf5-vol-async: add e4s tag
2022-07-26 16:21:56 -06:00
eugeneswalker
3b692875d8 mpich@4.0.2 %oneapi: patch config.rpath (#31740) 2022-07-26 15:41:42 -06:00
Harmen Stoppels
1319e2d261 openmpi: +pmi implies schedulers=slurm (#31722) 2022-07-26 14:04:55 -07:00
Harmen Stoppels
cffdd86d11 libjwt: new versions, missing dep, disable examples (#31723) 2022-07-26 14:04:27 -07:00
Harmen Stoppels
43d53a032a jansson: new version, disable docs (#31724)
We don't have the build deps for the docs, so disable for now.
2022-07-26 14:04:11 -07:00
Harmen Stoppels
15ee035f97 json-c: 0.16 (#31726) 2022-07-26 13:50:23 -07:00
Harmen Stoppels
c8c46bd012 munge: 0.5.15 (#31727) 2022-07-26 13:50:08 -07:00
Harmen Stoppels
fa3808bebd libgcrypt: bump (#31728) 2022-07-26 13:49:52 -07:00
Harmen Stoppels
644cfb5197 libgpg-error: bump (#31729) 2022-07-26 13:44:12 -07:00
Harmen Stoppels
859b56a105 gnupg: bump and deprecate over cve (#31730) 2022-07-26 13:43:53 -07:00
Harmen Stoppels
ce039e4fa5 environment.py: reduce # of locks further (#31643)
* environment.py: reduce # of locks further
2022-07-26 09:00:27 -07:00
Harmen Stoppels
e2056377d0 containerize: fix concretization -> concretizer (#31594)
* containerize: fix concretization -> concretizer

* fix test
2022-07-26 08:56:24 -07:00
Harmen Stoppels
a552c27f74 cmake: missing patch releases (#31676) 2022-07-26 08:54:23 -07:00
Chuck Atkins
f38a2ebb25 llvm: Variant and dependency cleanup (#31331)
* llvm: Use variant when clauses for many of the expressed conflicts

* llvm: Remove the shared variant as it wasn't really used

* llvm: Remove unnecessary deps and make explicit the ones that are

* llvm: Cleanup patch conditions

* pocl: Update for llvm cleanup

* unit-test: update unparse package hash with the updated llvm package

* llvm: Fix ppc long double patching and add clarifying comments
2022-07-26 10:45:20 -05:00
Stephen Sachs
6a240c9b39 Fix self.extension for symlinks (#31743)
`self.archive_file` is (among others) a symlink to a tarball. `extension()` on a
symlink will result in no extension. This patch fixes the behavior introduced in
https://github.com/spack/spack/pull/31618.

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-07-26 13:05:41 +00:00
eugeneswalker
0662bbdc43 openblas %oneapi: patch f_check for proper linkage (#31737) 2022-07-25 15:38:11 -07:00
Richard Berger
7be0dac36b new package: singularity-eos (#31500) 2022-07-25 23:41:24 +02:00
snehring
885a7a1979 gdal: fixing typo for libxml2 (#31734) 2022-07-25 14:05:45 -06:00
psakievich
8cde20997d GCC: Add bootstrap conflict for M1 (#31189) 2022-07-25 15:12:54 -04:00
Paul Ferrell
babb0edf07 LLVM requires swig version > 3 (#31625) 2022-07-25 15:50:22 +02:00
haralmha
bf838fe15f llvm: Add missing include for version range 8 to 11 (#31639) 2022-07-25 11:39:12 +02:00
Harmen Stoppels
b56871dd9c Fix stage with uri params (#31618)
* don't determine extension of a url

* parse url to drop query params from filename
2022-07-25 10:31:13 +02:00
snehring
fe0643a14e wget: replacing prior workaround with proper fix (#31699)
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2022-07-25 10:29:28 +02:00
Adam J. Stewart
cd4d657c2f py-torchdata: add new package (#31704)
* py-torchdata: add new package

* third_party deps only in 0.4+
2022-07-25 10:22:53 +02:00
Adam J. Stewart
afbb4dbc88 py-torchmetrics: add v0.9.3 (#31707) 2022-07-25 10:22:25 +02:00
Adam J. Stewart
24869fd469 py-geopandas: add v0.11.1 (#31710) 2022-07-25 10:22:15 +02:00
Adam J. Stewart
d46e81798a py-sphinx: add v5.1.0 (#31711) 2022-07-25 10:21:52 +02:00
Adam J. Stewart
5850afc9dc Sphinx 5.1.0 breaks doc builds (#31709) 2022-07-24 21:45:01 +00:00
Ishaan Desai
241c7f7914 [py-pyprecice] add v2.4.0.0 (#31697)
* Add py-pyprecice v2.4.0.0

* Adding lower bound to pip dependency

* Removing when=@:2.1 from dependencies packaging and pip
2022-07-24 15:31:51 -05:00
Morten Kristensen
85b3c1d812 py-vermin: add latest version 1.4.1 (#31708) 2022-07-24 16:21:40 +02:00
Harmen Stoppels
215a99cbc3 clingo patch fixed in patch release (#31690) 2022-07-22 10:34:04 -07:00
Harmen Stoppels
517293efe0 llvm: fix patch already applied on main branch (#31694) 2022-07-22 09:46:03 -07:00
Harmen Stoppels
5cf7d8e9ef coreutils: gnulib patch (#31693)
Co-authored-by: snehring <snehring@iastate.edu>
2022-07-22 15:36:14 +02:00
Harmen Stoppels
fce861d2ac Mark external as explicit only when installing explicitly (#31665) 2022-07-22 15:20:17 +02:00
Hector Martinez-Seara
cfdfdf77e0 gromacs: Added version 2021.6 (#31692) 2022-07-22 15:18:59 +02:00
Harmen Stoppels
799553d302 autotools: add -I flag when non-standard libtool (#31677)
When
1. Spack installs libtool,
2. system libtool is installed too, and
3. system automake is used

Spack passes system automake's `-I <prefix>` flag to itself, even though
it's a default search path. This takes precedence over spack's libtool
prefix dir. This causes the wrong `libtool.m4` file to be used (since
system libtool is in the same prefix as system automake).

And that leads to error messages about incompatible libtool, something
something LT_INIT.
2022-07-22 15:11:38 +02:00
Massimiliano Culpo
5cf7bf3770 Use pkg_cls in spack.mirror.get_all_versions (#31636)
fixes #31627

spack.mirror.get_all_versions now uses the package class
instead of the package object in its implementation.

Ensure spec is concrete before staging for mirrors
2022-07-22 10:04:17 +02:00
Erik Schnetter
2b0b573827 mpitrampoline: New version 4.2.0 (#31683) 2022-07-22 09:22:24 +02:00
Nicholas Sly
0e6b57e953 py-torch: use immutable URLs for open-ce patches (#31672)
* Update open-ce patches for py-torch to us immutable URLs.  Update magma dependency specs to be more explicit.

* Address comments for PR regarding URLs and conflicting variants.

Co-authored-by: Nicholas Cameron Sly <sly1@llnl.gov>
2022-07-21 18:02:34 -06:00
Stephen Sachs
ee39fab226 [py-numpy] Newer versions do not build with icc (#31637)
* [py-numpy] Newer versions do not build with `icc`

Workaround until https://github.com/numpy/numpy/issues/22011 is solved.

* [py-numpy] Remove whitespaces
2022-07-21 12:33:41 -06:00
AMD Toolchain Support
5ffc095f63 Add version 3.2 of AMD libraries (#31538) 2022-07-21 13:32:28 +02:00
Adam J. Stewart
f85c4ec288 py-torch: ~caffe2 by default (#31656) 2022-07-21 09:43:02 +02:00
Adam J. Stewart
1af76946a4 py-torchvision: fix __version__ for stable releases (#31657) 2022-07-21 09:36:11 +02:00
Adam J. Stewart
609bc89fd9 py-gpytorch: add v1.8.0 (#31649) 2022-07-21 09:35:22 +02:00
Adam J. Stewart
de5a12c366 py-nbmake: add v1.3.3 (#31651) 2022-07-21 09:34:59 +02:00
Richard Berger
7d9c517c88 flecsi: correct version 2.x depends_on (#31658)
Propagate +shared to legion
2022-07-21 09:34:36 +02:00
Hadrien G
aa68f23177 root does not actually install libraries in /lib but in /lib/root (#31624) 2022-07-21 01:33:52 -06:00
Johannes Blaschke
15d50d81db ncdu: add v1.16 and v1.17 (#31659) 2022-07-21 09:24:25 +02:00
shanedsnyder
56f5492fc0 darshan: add v3.4.0 to runtime/util packages (#31666) 2022-07-21 09:16:41 +02:00
snehring
d8983497f7 giflib: restrict patch to darwin (#31670) 2022-07-21 08:52:50 +02:00
psakievich
22798d7540 Don't restage develop specs when a patch fails (#31593)
* make develop specs not restage when a patch fails
* add a unit test
2022-07-20 13:55:16 -07:00
Harmen Stoppels
bf8c2b05b3 py-wheel: 0.37.1 (#31619) 2022-07-20 09:05:39 -06:00
haralmha
cf3774aa46 xgboost: Add version 1.6.1 and make openmp variant compatible with clang (#31557) 2022-07-20 07:45:01 -07:00
Harmen Stoppels
e7be8dbbcf spack stage: add missing --fresh and --reuse (#31626) 2022-07-20 13:50:56 +02:00
Harmen Stoppels
e3aca44601 installer.py: require "explicit: True" in the install arguments to mark a package "explicit" (#31646) 2022-07-20 12:09:45 +02:00
Harmen Stoppels
43673fee80 py-pip: 22.x (#31621) 2022-07-18 19:13:42 -06:00
Servesh Muralidharan
918637b943 Update py-xdot to use python_purelib #31616 (#31628)
Issue discussed in https://github.com/spack/spack/issues/31616
2022-07-18 12:56:19 -07:00
Cory Bloor
5c59e9746a rocblas: tighten tensile dependencies (#31414)
* rocblas: make tensile dependencies conditional

* Remove rocm-smi from the rocblas dependency list

rocm-smi was added to the rocblas dependency list because Tensile was a
dependency of rocBLAS and rocm-smi was a dependency of Tensile. However,
that reasoning was not correct.

Tensile is composed of three components:

  1. A command-line tool for generating kernels, benchmarking them, and
     saving the parameters used for generating the best kernels
     (a.k.a. "Solutions") in YAML files.
  2. A build system component that reads YAML solution files, generates
     kernel source files, and invokes the compiler to compile then into
     code object files (*.co, *.hsco). An index of the kernels and their
     associated parameters is also generated and stored in either YAML
     or MessagePack format (TensileLibrary.yaml or TensileLibrary.dat).
  3. A runtime library that will load the TensileLibrary and code object
     files when asked to execute a GEMM and choose the ideal kernel for
     your specific input parameters.

rocBLAS developers use (1) during rocBLAS development. This is when
Tensile depends on rocm-smi. The GPU clock speed and temperature must be
controlled to ensure consistency when doing the solution benchmarking.
That control is provided by rocm-smi. When building rocBLAS, Tensile is
used for (2). However, there is no need for control of the GPU at that
point and rocm-smi is not a dependency. At runtime, the rocBLAS library
uses Tensile for (3), but there is again no dependency on rocm-smi.

tl;dr: rocm-smi is a dependency of the tensile benchmarking tool,
which is not a build dependency or runtime dependency of rocblas.
2022-07-18 12:21:40 -07:00
eugeneswalker
b065d69136 e4s ci: add ginkgo +rocm (#31603) 2022-07-18 14:19:31 +02:00
Luke Diorio-Toth
710ec58df0 kraken2: add v2.1.2 (#31613) 2022-07-18 02:45:48 -06:00
Massimiliano Culpo
70be612f43 containerize: fix missing environment activation (#31596) 2022-07-18 10:31:16 +02:00
haralmha
c589f97cf0 lhapdf: add gettext libs explicitly (#31555)
Co-authored-by: Valentin Volkl <valentin.volkl@cern.ch>
2022-07-18 10:25:08 +02:00
Adam J. Stewart
ad4f551c22 py-pyarrow: aarch64 patch no longer applies/required (#31609) 2022-07-18 09:44:58 +02:00
Adam J. Stewart
37134aa331 py-kornia: add v0.6.6 (#31611) 2022-07-18 09:43:41 +02:00
Glenn Johnson
bb1632c99d Fixes for kallisto package (#31617)
This PR contains several fixes for the kallisto package.

- create hdf5 variant as hdf5 is optional beginning with 0.46.2
- provide patch for 0.43 to link against libz
- provide patch for older versions to build again gcc-11 and up
- patch and code to use autoconf-2.70 and up
2022-07-18 09:37:21 +02:00
Jonathon Anderson
117c7cc3db Only hack botocore when needed (#31610)
Newer versions of botocore (>=1.23.47) support the full IOBase
interface, so the hacks added to supplement the missing attributes are
no longer needed. Conditionally disable the hacks if they appear to be
unnecessary based on the class hierarchy found at runtime.
2022-07-18 08:40:13 +02:00
Luke Diorio-Toth
7b95e2f050 py-phydms, py-pypdf2, and py-pyvolve: new packages (#31540)
* py-panaroo: new package

* moving panaroo to branch

* py-phydms: new package

* added dependencies and new packages

* fixed py-pypdf2 dependencies
2022-07-16 17:24:29 -07:00
Luke Diorio-Toth
03c1962252 mizani, plotnine, and pystan: added more versions and variable dependencies (#31541)
* py-panaroo: new package

* moving panaroo to branch

* updated mizani, plotnine, and pystan versions and requirements

* made suggested fixes

* adding more requested fixes

* added new versions of statsmodels and httpstan
2022-07-16 17:23:29 -07:00
FJ-NaokiMatsumura
268ec998c0 py-horovod: add versions 0.22+, fix aarch64 build (#29310)
* py-torch: add version 0.23.0 and fix to built on aarch64

* Add newer versions, fix build issues

* Fix tests

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-07-16 01:41:42 -06:00
Adam J. Stewart
caee7341dd Qhull: fix RPATH on macOS (#31586) 2022-07-15 16:14:19 -07:00
Adam J. Stewart
ac15ebec76 py-geocube: add v0.3.2 (#31588) 2022-07-15 16:03:11 -07:00
Lucas Frérot
914ce8508a tamaas: new version 2.5.0 (#31501)
* tamaas: new version 2.5.0

* tamaas: do not build/install documentation

* tamaas: hash correction for v2.5.0.post1

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-07-15 10:49:11 -07:00
haralmha
17b6bb9d06 gperftools: Add version 2.10 and add unwind to LDFLAGS (#31574)
* gperftools: Add version 2.10 and add unwind to LDFLAGS

* Make unwind flag conditional on libunwind variant
2022-07-15 10:34:47 -07:00
Harmen Stoppels
6f8d7390f1 Use lexists instead of exists during fetch (#31509) 2022-07-15 18:43:14 +02:00
牟展佑
123c405e11 openssl: add patch for @1.1.1q. fixed issues #31545 (#31575) 2022-07-14 20:29:45 -06:00
Elizabeth Sherrock
6f46345b60 blight, fparser, typing_extensions (#31566)
* Added fparser 0.0.16

* Created package

* Change from GitHub download to pypi

* py-typing-extensions: 4.3.0

* Added py-pdoc3

* Finished adding py-blight

* Fixed typos

* Fixed dependency specs

* Fixed some things after PR review

* Added @woodruffw as blight maintainer

* Removed maintainer comment block from pdoc3
2022-07-14 17:13:47 -06:00
Erik Schnetter
49ae847c6c snappy: Update to version 1.1.9 (#31578) 2022-07-14 16:53:46 -06:00
eugeneswalker
3cb6fd140c update e4s to reflect june status (#31032) 2022-07-14 22:05:57 +00:00
Joseph Snyder
64b41b012c Bug/fix credentials s3 buildcache update (#31391)
* Add connection information to buildcache update command

Ensure that the s3 connection made when attempting to update the content
of a buildcache attempts to use the extra connection information
from the mirror creation.

* Add unique help for endpoint URL argument

Fix copy/paste error for endpoint URL help which was the same as
the access token

* Re-work URL checking for S3 mirrors

Due to the fact that nested bucket URLs would never match the string used
for checking that the mirror is the same, switch the check used.

Sort all mirror URLs by length to have the most specific cases first
and see if the desired URL "starts with" the mirror URL.

* Long line style fixes

Add execptions for long lines and fix other style errors

* Use format() function to rebuild URL

Use the format command to rebuild the url instead of crafing a
formatted string out of known values

* Add early exit for URL checking

When a valid mirror is found, break from the loop
2022-07-14 20:49:46 +00:00
Todd Gamblin
3d0347ddd3 Deprecate blacklist/whitelist in favor of include/exclude (#31569)
For a long time the module configuration has had a few settings that use
`blacklist`/`whitelist` terminology. We've been asked by some of our users to replace
this with more inclusive language. In addition to being non-inclusive, `blacklist` and
`whitelist` are inconsistent with the rest of Spack, which uses `include` and `exclude`
for the same concepts.

- [x] Deprecate `blacklist`, `whitelist`, `blacklist_implicits` and `environment_blacklist`
      in favor of `exclude`, `include`, `exclude_implicits` and `exclude_env_vars` in module
      configuration, to be removed in Spack v0.20.
- [x] Print deprecation warnings if any of the deprecated names are in module config.
- [x] Update tests to test old and new names.
- [x] Update docs.
- [x] Update `spack config update` to fix this automatically, and include a note in the error
      that you can use this command.
2022-07-14 20:42:33 +00:00
Jen Herting
875b032151 [py-tensorflow-hub] full_index=1 caused checksum change (#31585) 2022-07-14 11:47:30 -07:00
snehring
c7e49ea5a0 interproscan: new version 5.56-89.0 (#31565)
* interproscan: new version 5.56-89.0

* interproscan: add maintainer
2022-07-14 09:53:12 -07:00
Adam J. Stewart
a1f07b68a8 py-statsmodels: add v0.13.2 (#31571) 2022-07-14 09:30:43 -07:00
Axel Huebl
c4efeab976 ADIOS2: 2.8.2 (#31564)
Add the latest ADIOS2 release.
2022-07-14 03:17:38 -06:00
Peter Scheibel
7741bfb7d1 Decompression: use tar exe vs. built-in Python tarfile support (#31563)
Python's built-in tarfile support doesn't address some general
cases of malformed tarfiles that are already handled by the system
'tar' utility; until these can be addressed, use that exclusively.
2022-07-13 14:12:21 -07:00
Stephen Sachs
d25315c2f6 Add package py-devito and it's dependencies (#31495)
* [py-devito] Add package

Also add dependencies:
- py-nbval
- py-cgen
- py-codepy
- py-contexttimer
- py-pyrevolve

* [py-devito] Fix some typos

* [py-devito] Fix: include examples directory

Upstream issue: https://github.com/devitocodes/devito/issues/1954

* [py-devito] clean up

* [py-devito] clean up dependency packages

* [py-devito] flake8: line too long

* Address @adamjstewart comments

* Make flake8 happy

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-07-13 13:12:28 -07:00
Jonathon Anderson
8e00aa7c79 m4: Add build dependency on diffutils (#31232) 2022-07-13 22:02:17 +02:00
Adam J. Stewart
752697add2 GDAL: CMake support and dependency variants (#31197)
Add support for CMake builds while preserving autotools support
for older versions of GDAL

* Add GDAL 3.5.0
* Remove GDAL 1
* Add support for new CMake build system
* Change defaults to build all recommended dependencies
* Simplify Autotools flag handling
* Determine version range for drivers
2022-07-13 11:58:39 -07:00
Ben Darwin
f7ed9092e5 ants: add version 2.4.0 (#31562) 2022-07-13 17:35:04 +00:00
Emil Briggs
5da8bae2a9 Add versions 4.3.0 and 4.3.1. Update boost reqs with component/versions. (#31559) 2022-07-13 10:08:29 -07:00
Erik Schnetter
a78e8bc54e mpitrampoline: New version 4.1.2 (#31560) 2022-07-13 10:06:04 -07:00
Chris White
cdf541ac4a Cppcheck: fix install and convert to cmake build system (#31488)
* fix cppcheck install and convert to cmake build system

* add white238 as a maintainer
2022-07-13 07:32:48 -07:00
Rémi Lacroix
0e783b2c47 ghostscript-fonts: fix URL (#31360) 2022-07-13 10:11:22 +02:00
H. Joe Lee
9c5ef2aafe Hermes: add v0.7.0-beta, remove older versions (#31544) 2022-07-13 09:25:45 +02:00
Vicente Bolea
1f7ee4957b vtk-m: add v1.8.0 (#31220) 2022-07-13 09:21:56 +02:00
Elizabeth Sherrock
6fbb01fe31 py-ford: add v6.1.13 (#31483) 2022-07-13 09:19:23 +02:00
Adam J. Stewart
a36c05068f Open3D: fix build with external fmt (#31547) 2022-07-13 09:17:07 +02:00
Adam J. Stewart
16e079aa52 py-pytorch-lightning: add v1.6.5 (#31548) 2022-07-13 09:07:52 +02:00
Marco De La Pierre
79f67ba92b Tower Agent / Tower CLI: new packages (#31539) 2022-07-13 09:05:03 +02:00
Massimiliano Culpo
7f2b5e8e57 spack.repo.get() can only be called on concrete specs (#31411)
The goal of this PR is to make clearer where we need a package object in Spack as opposed to a package class.

We currently instantiate a lot of package objects when we could make do with a class.  We should use the class
when we only need metadata, and we should only instantiate and us an instance of `PackageBase` at build time.

Modifications:
- [x] Remove the `spack.repo.get` convenience function (which was used in many places, and not really needed)
- [x] Use `spack.repo.path.get_pkg_class` wherever possible
- [x] Try to route most of the need for `spack.repo.path.get` through `Spec.package`
- [x] Introduce a non-data descriptor, that can be used as a decorator, to have "class level properties"
- [x] Refactor unit tests that had to be modified to reduce code duplication
- [x] `Spec.package` and `Repo.get` now require a concrete spec as input
- [x] Remove `RepoPath.all_packages` and `Repo.all_packages`
2022-07-12 19:45:24 -04:00
Seth R. Johnson
6ceb274de0 trilinos: add new release 13.4.0 and use sha256 instead of commit hashes (#31277) 2022-07-12 14:57:39 -06:00
Richard Berger
8e25fd4f16 spiner: update dependencies (#31486) 2022-07-12 11:16:34 -07:00
Adam J. Stewart
3fc8c3d18b py-nbmake: add v1.3.0; py-nbclient: add v0.6.6, 0.5.13; py-traitlets: add v5.3.0 (#31513)
* py-nbmake: add v1.3.0

* Add newer versions
2022-07-12 11:03:40 -07:00
Carlos Bederián
bfe058aa57 amdblis: add 3.2 (#31518) 2022-07-12 10:40:54 -07:00
Carlos Bederián
45b77a2215 amdlibflame: add 3.2 (#31519) 2022-07-12 10:37:26 -07:00
Carlos Bederián
7dd22e93c6 amdfftw: add 3.2 (#31520) 2022-07-12 10:24:59 -07:00
nicolas le goff
cdb7c7a1db fixed the cgal recipe and added the latest release. (#31523)
* fixed the cgal recipe and added the latest release.

* Update var/spack/repos/builtin/packages/cgal/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* updated cgal recipe to new URL for tarballs

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-07-12 09:04:51 -07:00
Harmen Stoppels
ea91e8f4ca file_cache.py: idempotent remove without races (#31477)
There's a race condition in `remove()` as the lockfile is removed after
releasing the lock, which is a problem when another process acquires a
write lock during deletion.

Also simplify life a bit in multiprocessing when a file is possibly
removed multiple times, which currently is an error on the second
deletion, so the proposed fix is to make remove(...) idempotent and not
error when deleting non-existing cache entries.

Don't tests for existence of lockfile, cause windows/linux behavior is different
2022-07-12 15:03:48 +00:00
Harmen Stoppels
74e2625dcf compression.py: buffered copy (#31533) 2022-07-12 16:49:59 +02:00
RichardABunt
a4f0522468 arm-forge: add 22.0.2 and 22.0.3. (#31432) 2022-07-12 16:21:07 +02:00
Marco De La Pierre
ff67e10f60 lammps package: added fftw_precision variant (#31459) 2022-07-12 16:14:58 +02:00
Axel Huebl
c8931e390a WarpX: 22.07 (#31508)
Update `warpx` & `py-warpx` to the latest release, `22.07`.
2022-07-12 16:13:51 +02:00
Harmen Stoppels
b2c519470b environment.py: only acquire write lock when necessary (#31493) 2022-07-12 16:12:43 +02:00
marcosmazz
9087224e04 OpenMX: add v3.9 (#31466)
Co-authored-by: Marcos Mazzini - <mmazzini@serafin.ccad.unc.edu.ar>
2022-07-12 15:44:02 +02:00
Stephen Sachs
110a35a520 py-gevent: deprecated compiler flags (#31469)
Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-07-12 15:23:26 +02:00
miheer vaidya
ea9151b2a5 abseil: add v20220623 (#31507) 2022-07-12 15:21:31 +02:00
Nicholas Brunhart-Lupo
9708afc3b3 amr-wind: add "ascent" variant (#31376) 2022-07-12 14:38:24 +02:00
Harmen Stoppels
d904a789d5 env depfile: add missing touch (#31494)
Oversight in #31433, the non-phony `env` target was missing a file being
created for it, which can cause make to infinitely loop when including
multiple generated makefiles.
2022-07-12 14:16:31 +02:00
Erik Schnetter
7917f87c63 cuda: New version 11.5.2 (#31463) 2022-07-12 13:52:12 +02:00
dependabot[bot]
e33a57ab65 build(deps): bump actions/setup-python from 4.0.0 to 4.1.0 (#31526)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.0.0 to 4.1.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](d09bd5e600...c4e89fac7e)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-12 13:50:30 +02:00
Mark W. Krentel
7f830295ae hpcviewer: add v2022.06 (#31532) 2022-07-12 13:41:13 +02:00
Massimiliano Culpo
89b8d33d05 Remove os.getcwd from function signature (#31480)
fixes #29730

This is also wrong since it binds the directory at the time
of module import, rather than the one at the time of function
call.
2022-07-12 10:08:37 +02:00
Jonathon Anderson
25f198aa91 Sanitize ownership when extracting tarfiles (#31524) 2022-07-12 09:28:24 +02:00
Adam J. Stewart
5bd1074afb py-hatchling: add new packages, document new build backend (#31512)
* py-hatchling: add new package, document new build backend

* Minor doc changes

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-07-11 16:23:28 -07:00
Michael Kuhn
18b51e19df glib: add 2.72.3 (#31516) 2022-07-11 17:09:43 -06:00
renjithravindrankannath
21822f233c Fix for sanity check failure in spack upstream code: atmi, hip-rocclr (#31454)
* Fix for sanity check failure in spack upstream code

* Style check failure correction

* Correction as per the review comments
2022-07-11 15:01:47 -07:00
Keita Iwabuchi
5f7f8ce1eb Metall package: add v0.21 (#31482)
* Metall package: add dependency to GCC for build test

* Package Metall: add v.017

* Package Metall: update the package file

* Update var/spack/repos/builtin/packages/metall/package.py

Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>

* Metall package: add v0.18 and v0.19

* Metall Package: add v0.20

* Metall package: add v0.21

Co-authored-by: Bernhard Kaindl <43588962+bernhardkaindl@users.noreply.github.com>
2022-07-11 14:54:57 -07:00
Richard Berger
ac09607a5a ports-of-call: new version 1.2.0, simplify (#31485) 2022-07-11 14:53:36 -07:00
miheer vaidya
e0bbf26f1f [cppcodec] new package (#31506) 2022-07-11 14:11:24 -07:00
Adam J. Stewart
1d827a9ff6 py-mypy: add v0.961 (#31503) 2022-07-11 12:34:09 -07:00
Adam J. Stewart
ba0cff1831 py-gpytorch: add v1.7.0 (#31504) 2022-07-11 12:30:58 -07:00
Adam J. Stewart
12699787e7 py-numpy: add v1.23.1 (#31510)
* py-numpy: add v1.23.1

* Remove packaging dep
2022-07-11 10:47:20 -07:00
Adam J. Stewart
c020894f36 py-torchgeo: add v0.3.0 (#31514) 2022-07-11 10:10:30 -07:00
Carlos Bederián
05a32b5cf5 ucx: add 1.13.0 (#31517) 2022-07-11 10:06:33 -07:00
Michael Kuhn
359d094528 julia: fix patch (#31515) 2022-07-11 16:13:47 +02:00
Harmen Stoppels
92dfe7f25b man-db: Don't use DESTDIR (#31492) 2022-07-10 21:41:55 +02:00
Erik Schnetter
2159ce036e openssl: New version 1.1.1q (#31487) 2022-07-08 13:25:43 -06:00
Adam J. Stewart
7e6dbfb185 py-setuptools: add v63.0.0 (#31444) 2022-07-08 10:41:15 -07:00
Harmen Stoppels
4043b13d59 vim: deprecate 9.0.0000, add 9.0.0045 (#31490) 2022-07-08 10:16:50 +00:00
Luke Diorio-Toth
ec7513c8b5 py-panaroo, py-edlib, and py-intbitset: new packages (#31452) 2022-07-07 18:13:39 -06:00
Erin Newcomer
44b48cfe46 Package/py phylophlan (#31422)
* py-phylophlan: new package

* py-phyloseq: new package

* py-phylophlan: style fix

* py-phylophlan: fixed dependencies

* py-phylophlan: style fix
2022-07-07 14:06:55 -07:00
Tamara Dahlgren
a12ce9fd59 OpenBabel: Make building with GUI an option (#31456) 2022-07-07 09:43:17 -07:00
Cory Bloor
bb92ea59a2 Fix spack edit message when no editor installed (#31412)
When no default editor is installed and no environment variable is set,
which_string would return None and this would be passed to os.execv
resulting in a TypeError. The message presented to the user would be:

    Error: execv: path should be string, bytes or os.PathLike,
    not NoneType

This change checks that which_string has returned successfully before
attempting to execute the result, resulting in a new error message:

    Error: No text editor found! Please set the VISUAL and/or EDITOR
    environment variable(s) to your preferred text editor.

It's not strictly necessary, but I've also changed try_exec to catch
all errors rather than just OSErrors. This would have provided slightly
more context for the original error message.
2022-07-07 17:08:15 +02:00
Stephen Sachs
626b239c96 [py-distributed] Add version 2022.2.1 (#31465) 2022-07-07 08:06:18 -07:00
Adam J. Stewart
211030cd19 py-pytorch-lightning: remove upper bounds on deps (#31443) 2022-07-07 17:05:33 +02:00
Stephen Sachs
3787f0c64c mpas-model: Overwrite compiler args in Makefile (#31431)
Use 8 byte reals only when `precision=double` is set

The pre-defined compilation targets do not follow the usual behavior of
Makefiles. Compiler flags are set as strings (not Makefile variables) and as
such are not able to be overridden by environment variables. This patch changes
the behavior to the expected behavior of a Makefile such that `fflags` etc have
the desired effect.

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-07-07 17:04:51 +02:00
Ryan Marcellino
be65e4471e speexdsp: add pkgconfig dependency (#31455) 2022-07-07 16:53:11 +02:00
Adam J. Stewart
8745009492 py-tensorboard: install from wheel (#31445) 2022-07-07 16:48:06 +02:00
Adam J. Stewart
7c5116a73a py-rasterio: add v1.3.0 (#31457) 2022-07-07 16:46:52 +02:00
Stephen Sachs
e6bdbde54e libzmq: fix issue with newer GCC and master branch (#31468)
Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-07-07 08:45:37 -06:00
Adam J. Stewart
386f08c1b4 py-torch: re-add headers/libs properties (#31446) 2022-07-07 16:31:09 +02:00
Adam J. Stewart
9c437e2a10 py-torchgeo: tiff support required (#31447) 2022-07-07 16:30:18 +02:00
Marie Houillon
d393260a11 Fix conditional dependencies for openCARP (#31478) 2022-07-07 08:21:41 -06:00
Tamara Dahlgren
1b919d306f Documentation: Add SourceforgePackage to the build systems docs (#31473) 2022-07-07 14:30:22 +02:00
Stephen Sachs
ad95b0d01d [py-ipyparallel] setuptools.config.StaticModule moved (#31467)
* [py-ipyparallel] setuptools.config.StaticModule moved

... in py-setuptools@61

* [py-ipyparallel] setuptools fix only added to release 8.2.1

https://github.com/ipython/ipyparallel/pull/680

* [py-ipyparallel] Fix typo

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-07-07 03:17:36 -06:00
Vanessasaurus
6b1e86aecc removing feature bloat: monitor and analyzers (#31130)
Signed-off-by: vsoch <vsoch@users.noreply.github.com>

Co-authored-by: vsoch <vsoch@users.noreply.github.com>
2022-07-07 00:49:40 -06:00
Stephen Hudson
3338d536f6 libEnsemble: add v0.9.2 (#31471) 2022-07-06 19:14:12 -07:00
Erik Schnetter
6cbcc94fc9 kokkos: New version 3.6.01 (#31462) 2022-07-06 14:33:48 -06:00
Erik Schnetter
c7ac0b9aa6 spiner: New version 1.5.1 (#31461) 2022-07-06 14:21:53 -06:00
Adam J. Stewart
5efe0822b8 pip bootstrap packages: add myself as maintainer (#31448) 2022-07-06 14:05:42 -06:00
Kenny Weiss
5d97c816ca Minor typo fix in mfem's package (#31470)
Pointed out by @agcapps
2022-07-06 12:52:23 -07:00
Tamara Dahlgren
e68ed3268b Testing Bugfix: refactor clean --python-cache to support all (#31449)
There were two choices: 1) remove '-p' from '-a' or 2) allow monkeypatching
the cleaning of the python cache since clean's test_function_calls isn't
supposed to be actually cleaning anything.

This commit supports the latter and adds a test case for `-p`.
2022-07-06 11:44:41 -07:00
Weiqun Zhang
9a711e6ffa amrex: add v22.07 (#31464) 2022-07-06 11:13:44 -06:00
iarspider
fcea26ca23 Add checksum for py-lazy-object-proxy 1.7.0 and 1.7.1 (#31435)
* Add checksum for py-lazy-object-proxy 1.7.0 and 1.7.1

* Update package.py
2022-07-06 10:06:37 -07:00
iarspider
687cac3a79 Add checksum for py-pylint 2.14.4; py-astroid 2.11.5, 2.11.6 (#31436)
* Add checksums for astroid 2.11.5 and 2.11.6

* Add checksum for py-pylint 2.14.4

* Update package.py

* Add checksum for py-tomlkit 0.11.0
2022-07-06 09:58:35 -07:00
otsukay
d9f49d7415 add recipe for improved-rdock (#31158)
* add recipe for improved-rdock

* style: fix format

* style: fix format again

* Fix location of the directory

* Fix copyright

* Fix according to the reviewer's comments.

* Revert "Fix according to the reviewer's comments."

This reverts commit 4877877daf.

* Fix according to the reviewer's comments.

* style: fix format

* Update var/spack/repos/builtin/packages/improved-rdock/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

Co-authored-by: Yuichi Otsuka <otsukay@riken.jp>
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-07-06 09:25:45 -07:00
Erik Schnetter
ccb5432177 readline: New version 8.1.2 (#31025) 2022-07-06 16:32:12 +02:00
Mikael Simberg
dfb0c6c51d Add pika 0.6.0 (#31458) 2022-07-06 11:55:58 +02:00
Adam J. Stewart
8d1c723576 Bazel: new versions, patches, conflicts, and java version contraints (#31402) 2022-07-05 23:28:50 -05:00
Adam J. Stewart
8037c91403 py-libclang: add v13.0.0 (#31441) 2022-07-05 17:50:07 -07:00
Adam J. Stewart
30e5828f06 llvm-openmp: add v14.0.6 (#31440) 2022-07-05 17:11:00 -07:00
Mark W. Krentel
12fb842bea hpctoolkit: add variants for gtpin and opencl (#31439)
Reorder a few options to better group them by function.
2022-07-05 12:22:00 -07:00
Matthew LeGendre
37c9974755 Add adiak version 0.2.2 (#31438) 2022-07-05 13:05:51 -06:00
Luke Diorio-Toth
86a127788d Package/ont-guppy (#31417)
* guppy: new package

* adding different hashs/urls

* working now

* guppy: new package

* ont-guppy: new package

* ont-guppy: new package

* ont-guppy: fixed style
2022-07-05 10:46:58 -07:00
Annop Wongwathanarat
613362c42d armpl: Add new versions and rename package to armpl-gcc (#31437)
Co-authored-by: Annop Wongwathanarat <annop.wongwathanarat@arm.com>
2022-07-05 10:22:12 -07:00
Richard Berger
b7fb5dbb28 flecsi: exclude caliper versions that cause aborts with Legion (#31410) 2022-07-05 09:29:47 -06:00
Harmen Stoppels
dac31ef3c4 Remove fetch from depfile (#31433) 2022-07-05 14:48:32 +02:00
Alberto Invernizzi
bb3a663392 ROCmPackage: unify amdgpu_targets (#30582)
* unify amdgpu_targets for rocsolver and rocblas

* add more archs

* adapt all roc packages to unified amdgpu_targets
2022-07-05 14:33:30 +02:00
Valentin Volkl
d05ab36ff9 bdsim: add new package (#31384)
Co-authored-by: gganis <gerardo.ganis@cern.ch>
2022-07-05 12:30:15 +02:00
Jean-Paul Pelteret
f6d701ca26 deal.II: add v9.4.0 (#31279) 2022-07-05 11:40:28 +02:00
Paul R. C. Kent
ffcd9282b5 libcint: add v5.1.3 (#31340) 2022-07-05 11:34:59 +02:00
haralmha
28c5c3285a root: set gnuinstall to True (#31209) 2022-07-05 11:27:49 +02:00
Adam J. Stewart
6dc708670c py-torchgeo: latest version of torchvision won't work (#31372) 2022-07-05 11:21:31 +02:00
Marco De La Pierre
d71bbf036f lammps: add versions and packages Feb-Jun 2022 (#31369) 2022-07-05 11:14:28 +02:00
Mikael Simberg
8cf7241b64 Build llvm-amdgpu's libcxx with cmake --build (#31403)
CMAKE_GENERATOR may be set to something other than "Unix Makefiles" in
which case the build would fail because there is no Makefile for make to
build.
2022-07-05 10:52:52 +02:00
Adam J. Stewart
f932a832ac node-js: fix build on macOS 12 (#31408) 2022-07-05 10:42:14 +02:00
Cory Bloor
a183b343b9 rocalution: add spack build test (#31415)
- rocprim is a header-only library; its amdgpu_target variant is only
  meaningful for its client executables, not the library itself
- comgr and llvm-amdgpu are merely indirect dependencies (via hip)
2022-07-05 10:02:46 +02:00
Paul R. C. Kent
08fa0c9d46 pyscf: add v2.0.1 (#31342) 2022-07-05 09:14:06 +02:00
Sergey Kosukhin
0b3a409746 nag: fix installation of man pages (#31428) 2022-07-05 09:10:45 +02:00
Marco Feder
18ab94de4b cgal: add v5.1.5 (#31429) 2022-07-05 09:10:03 +02:00
Moritz Kern
f217ca2059 py-elephant: add versions up to v0.11.1 (#30613)
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-07-05 08:59:34 +02:00
Barry Rountree
ac5fd8fa35 util-linux-uuid: Fix icc build issue (#31312) 2022-07-04 16:11:35 +02:00
Glenn Johnson
2eddf8a78d highfive: Add version 2.4.1 (#31288) 2022-07-03 14:06:41 -05:00
Adam J. Stewart
5b4927a3de py-pillow: add v9.2.0 (#31409) 2022-07-01 18:53:33 -06:00
Wouter Deconinck
d068b59856 acts: new version 19.3.0 (#31272)
* acts: new version 19.3.0

* acts: new variants +profilecpu, +profilemem
2022-07-01 13:06:55 -07:00
Adam J. Stewart
f2789fa5c5 py-cartopy: add v0.20.3 (#31354)
* py-cartopy: add v0.20.3

* Add py-setuptools-scm 7.0.3
2022-07-01 13:05:14 -07:00
Paul R. C. Kent
f5b0e264fc Add xcfun 2.1.0 (#31336)
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-07-01 13:00:53 -07:00
Paul R. C. Kent
1f696951e7 Add 5.2.3 (#31337) 2022-07-01 12:59:50 -07:00
Erik Schnetter
2508aa1ab4 ninja: New version 1.11.0 (#31400) 2022-07-01 13:57:46 -06:00
Jonathan R. Madsen
eed265f593 Initial implementation of Omnitrace package (#31381)
* Initial implementation of Omnitrace package

* Fix flake8 errors

* Fix run environment when +python

* String normalization and fix for build env when +tau

* Tweak to style
2022-07-01 12:53:33 -07:00
Simon Pintarelli
bc215c7504 qmcpack pass cuda_arch correctly to cmake (#31407)
Fix compilation of @3.14.0+cuda  (didn't check older versions).
2022-07-01 12:39:50 -07:00
Scott Wittenburg
87b8321fa9 gitlab: Fix pipeline generation for non-develop protected pipelines (#31378)
Release branches and tags run protected pipelines, and we noticed
that those pipelines were generating all jobs in the stack, even
when the mirror contained all the built specs and an up to date
index.  The problem was caused because the override mirror was
not present in spacks mirror configuration at the time when the
binary_distribution.update() method was called.  This fixes that
by always adding the mirror override, if present, to the list of
configured mirrors.
2022-07-01 11:56:36 -07:00
WuK
8b4de69f6a py-altair: new package (#31386)
* py-altair: new package

* Update var/spack/repos/builtin/packages/py-altair/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-altair/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-altair/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* py-altair: update

* Update var/spack/repos/builtin/packages/py-altair/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-07-01 10:46:35 -07:00
Harmen Stoppels
3e85d3fd03 bat, hyperfine, ripgrep: Bump versions (#31364) 2022-07-01 08:49:57 +02:00
Brian Van Essen
06f4f43915 New package: NVIDIA cuTensor (#31397) 2022-06-30 22:37:47 -07:00
Richard Berger
4a6b447465 New package: bueno (#31374) 2022-06-30 22:32:30 -07:00
Max Zeyen
43654078fc boost: do not add the context-impl option for version below 1.65.0 (#30719)
* boost: do not access the context-impl variant for versions below 1.65.0

* boost: check if spec.variants contains context-impl

* boost: improve error message when the context-impl variant causes a conflict

Executing spack solve boost@1.63.0 +context context-impl=fcontext
triggers the following error message:
==> Error: No version for 'boost' satisfies '@1.63.0' and '@1.79.0'

With this change, the error message becomes the following:
==> Error: Cannot set variant 'context-impl' for package 'boost' because the variant condition cannot be satisfied for the given spec
2022-06-30 19:27:38 -07:00
Erik Schnetter
8cd542529a libcxxwrap-julia: New version 0.9.1 (#31392) 2022-06-30 17:01:42 -07:00
Scott Wittenburg
861edcf996 gitlab: Fix mirror url to match stack name (#31399)
We adopted the convention of putting binaries for each stack into
a dedicated mirror named after the directory in which the stack
(spack.yaml file) resides.  This fixes the mirror url of the
radiuss-aws-aarch64 stack to follow that convention.
2022-06-30 15:38:58 -07:00
Luke Diorio-Toth
60c533b80b py-cmseq: new package (#31375)
* py-cmseq: new package

* py-cmseq: fixed copyright year

* py-cmseq: changed download to pi, added deps
2022-06-30 10:58:12 -07:00
Mikael Simberg
60d94f2782 Add tracy 0.8.2 (#31385) 2022-06-30 10:55:00 -07:00
Stephen Sachs
8e591f058e [mpas-model] Add optional make_target and precision variants (#31388)
`make_target` can be used to instruct Spack to build one of the pre-defined make
targets in the MPAS makefile. Spack will guess the targret based on the value of
`spack_fc`, but the user can overwrite the target as variant. E.g.
```
spack install mpas-model make_target=pgi-nersc
```

`precision` is used to set the `PRECISION` flag in the Makefile to {single,
double}. Default is double.

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-06-30 10:52:33 -07:00
Stephen Sachs
4397ec6a48 [mpas-model] Add new versions (#31390)
Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-06-30 10:50:32 -07:00
Jack Morrison
cbce77b3d9 SOS: Update to include version 1.5.1 (#31394) 2022-06-30 10:26:34 -07:00
Marco De La Pierre
03843db00f plumed: added fine grained control over optional modules (#29743) 2022-06-30 16:23:27 +02:00
Stephen Sachs
e046dc3ca4 lammps: compiler flags for Intel compiler on AMD zen+ procs (#31183)
Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-06-30 07:25:41 -06:00
Stephen Sachs
eec78f7702 lammps: fix sha256 of patch_20201029 (#31177)
Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-06-30 15:21:12 +02:00
Adam J. Stewart
abd6241978 py-torchmetrics: add v0.9.2 (#31382) 2022-06-30 09:05:20 +02:00
Adam J. Stewart
eb6564bc33 py-laspy: add v2.2.0 (#31383) 2022-06-30 09:05:04 +02:00
Peter Scheibel
abeee9e1fd Cray manifest: compiler duplicates (#31173)
* remove unhelpful comment
* Filter compiler duplicates while reading manifest
* more-specific version matching edited to use module-specific version (to avoid an issue where a user might add a compiler with the same version to the initial test configuration
2022-06-29 17:05:29 -07:00
WuK
ec89ab1c27 cutlass: new package (#31379)
* cutlass: new package

* cutlass: fix ci

* cutlass: remove `join_path`

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* cutlass: adding a message for cuda_arch

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* cutlass: simplify cmake_args

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* cutlass: fix cmake_args

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-06-29 16:39:39 -07:00
Glenn Horton-Smith
e6678e5f12 New packages: EPICS (Experimental Physics and Industrial Control System) (#28270) 2022-06-29 13:36:48 -07:00
Glenn Johnson
b200c57739 Set R_LIBS_USER='' in dependent build environment (#31287)
* Set R_LIBS_USER='' in dependent build environment

Despite R packages being installed with the --vanilla flag, which
ignores Rprofile and Renviron files, R will still set R_LIBS_USER if the
default directory exists. This could lead to pulling in packages from
that directory during the build which could cause the build to fail. To
avoid that, explicitly set R_LIB_USER='' to ensure that packages from
the HOME/R directory are not in the library path.

* Update var/spack/repos/builtin/packages/r/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-06-29 14:14:21 -06:00
Harmen Stoppels
814418db35 file: 5.41 5.42 (#31367) 2022-06-29 20:59:49 +02:00
Davide
53001cc28c Allow building octave w/ Intel compiler (#31346) 2022-06-29 11:55:39 -07:00
Adam J. Stewart
93c16f1ee3 PythonPackage: add default libs/headers attributes (#28527)
* PythonPackage: add default libs/headers attributes

* Style fix

* libs and headers should be properties

* Check both platlib and include

* Fix variable reference
2022-06-29 11:55:24 -07:00
Satish Balay
7bacde16e4 petsc, py-petsc4py: add 3.17.3 (#31356) 2022-06-29 11:51:45 -07:00
Harmen Stoppels
44d9931cdd git: 2.37.0 (#31370) 2022-06-29 20:06:01 +02:00
Nadir Román Guerrero
54b7df0bfa Adds py-websockets 10.3 (#31363) 2022-06-29 17:58:46 +00:00
Harmen Stoppels
ee680567a5 ccache: 4.6.x (#31371) 2022-06-29 10:43:42 -07:00
Sam Gillingham
6a1bbc1658 kealib: add version 1.4.15 (#31355) 2022-06-29 08:24:23 -07:00
Harmen Stoppels
6f3e61b179 vim: add v9.0.0000 (#31365) 2022-06-29 16:36:14 +02:00
Luke Diorio-Toth
a9c246ed67 amrfinder: new package (#31273) 2022-06-29 15:40:03 +02:00
Massimiliano Culpo
557abe04ec Update containerize templates to account for view indirection (#31321)
fixes #30965
2022-06-29 15:39:18 +02:00
Marco De La Pierre
58b144c0da Modify dockerfile template, so that any command can be executed (#29741) 2022-06-29 12:02:24 +00:00
Harmen Stoppels
768d3504dd tree: 2.0.2 (#31362) 2022-06-29 13:06:38 +02:00
Richard Berger
a98806bd9b new package: py-lark to replace py-lark-parser, add new versions (#31324)
* new package: py-lark to replace py-lark-parser

* update packages that need py-lark-parser and use py-lark instead
2022-06-28 22:45:30 -07:00
Wileam Y. Phan
ebf0f6281d Add version 2.0.2 (#31339) 2022-06-28 19:21:45 -07:00
Chris White
0de44a20f6 py-ats: Add new version (#31350)
* add new py-ats version

* fix copyright date
2022-06-29 01:22:09 +00:00
Chris White
62cac911e0 set CMAKE_CUDA_ARCHITECTURES for newer cmakes in camp (#31333) 2022-06-28 18:45:45 -06:00
Pranith
8bdc506579 emacs: Add option to install version 28.1 (#31348) 2022-06-28 17:30:16 -07:00
Adam J. Stewart
52eaedfca2 Add py-torch v1.12, py-torchvision v0.13 (#31335)
* Add py-torch v1.12, py-torchvision v0.13

* Style fix
2022-06-28 13:57:09 -07:00
Adam J. Stewart
5f5d6a84dc libxml2: add command property (#31296) 2022-06-28 13:29:48 -06:00
David Beckingsale
170c605d6a AWS RADIUSS builds (#31114)
* Add AWS RADIUSS builds

* Correct variable naming

* Add two more MFEM specs

* Updates to MFEM spec suggested by @v-dobrev

* Simplify MFEM specs
2022-06-28 12:15:53 -07:00
Marco De La Pierre
38dfec42b7 Update/lammps package: new variants for refactoring of code modules (#29788)
* lammps package: kokkos variant, add support for cray-fftw

* lammps package: added bugfix version 20210929.3

* lammps package: added packages molfile, plugin, user-brownian

* lammps package: package refactor at versions 20210702 and 20210728

* lammps package: fix for ml-iap variant

* lammps package: fix for conflicts of dielectric variant

* lammps package: edits for flake8 layout compliance
2022-06-28 11:22:35 -07:00
haralmha
24048e3be7 herwig3: Add version 7.2.3 and update dependency versions (thepeg and lhapdf) (#31329) 2022-06-28 10:43:16 -07:00
Michael Kuhn
f1d8b711ed gcc: add 10.4.0 (#31332) 2022-06-28 10:42:11 -07:00
genric
ee21873616 py-luigi: add v3.1.0; py-tenacity: add v8.0.1 (#31320) 2022-06-28 07:37:24 -07:00
Moritz Kern
ba6f4b3f8b Neo update (#31316) 2022-06-28 07:36:49 -07:00
Erik Schnetter
e5ceb68850 openssl: New version 1.1.1p (#31266) 2022-06-28 08:17:54 -06:00
Adam J. Stewart
505bcc5aba curl: add command property (#31293) 2022-06-28 08:01:42 -06:00
Harmen Stoppels
33fee003b8 julia: 1.8.0-rc1 (#31064) 2022-06-28 13:24:06 +02:00
Adam J. Stewart
1dfdaa1025 c-blosc: add libs property (#31290) 2022-06-28 03:49:44 -06:00
Jonathon Anderson
a8d0ef43fa krb5: Add build dependency on diffutils (#31258) 2022-06-28 11:40:05 +02:00
Valentin Volkl
f948ec07cc feynhiggs: add hep tag (#31325)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-06-28 11:05:29 +02:00
Mikael Simberg
2943d53115 mimalloc: rework package recipe, add variants (#31262) 2022-06-28 10:51:20 +02:00
Valentin Volkl
99bfd7059e ampt: add new package (#31307)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-06-28 08:46:33 +00:00
Brecht Machiels
129880d2ed Midnight Commander: add v4.8.28 (#31313)
Also, fix a build issue.
2022-06-28 02:33:48 -06:00
Wouter Deconinck
8f7f96ae2b oneAPI supports cxx17_flag and cxx20_flag (#31274) 2022-06-28 10:33:19 +02:00
Adam J. Stewart
15f736e104 rapidjson: fix Apple M1 build (#31291) 2022-06-28 02:29:46 -06:00
Adam J. Stewart
8f3aa27e25 oracle-instant-client: add macOS conflict (#31301) 2022-06-28 02:21:37 -06:00
Adam J. Stewart
cd54a3e908 py-black: add v22.6.0 (#31328) 2022-06-28 02:01:43 -06:00
Brian Van Essen
8965d8f661 lbann, aluminum, hydrogen,dihydrogen: explicit flags to pass the AMD GPU architecture into CMake (#31326) 2022-06-28 09:45:00 +02:00
Adam J. Stewart
899dfdb416 grass: add v8.2.0 (#31303) 2022-06-28 09:33:57 +02:00
Adam J. Stewart
24a03e5a50 libkml: add libs property (#31299) 2022-06-28 09:33:23 +02:00
Adam J. Stewart
662d5066f1 sfcgal: add command property (#31298) 2022-06-28 09:33:01 +02:00
Adam J. Stewart
616d7454fc geos: add command property (#31294) 2022-06-28 09:32:41 +02:00
Adam J. Stewart
2683040c09 mysql: add v8.0.29, command, libs (#31300) 2022-06-28 00:09:52 -06:00
Adam J. Stewart
63b33403db kealib: add command property (#31295)
* kealib: add command property

* Correct exe name on Windows
2022-06-28 00:06:09 -06:00
Adam J. Stewart
6a5bec8d43 Java extensions: jdk -> openjdk (#31289) 2022-06-28 00:05:55 -06:00
Adam J. Stewart
7dba08bd83 thrift: add v0.16.0 (#31302) 2022-06-28 00:05:00 -06:00
Adam J. Stewart
c533bbdfb0 unixodbc: add libs property (#31304) 2022-06-28 00:04:41 -06:00
Adam J. Stewart
4f203eb50f postgresql: add command property (#31297) 2022-06-28 00:04:26 -06:00
Luke Diorio-Toth
f6d4000e58 py-unicycler: added new versions and fixed dependencies (#31327) 2022-06-27 22:45:14 -07:00
Jen Herting
c5fc16ddd7 New package: py-aiocontextvars (#30815)
* [py-aiocontextvars] New package

* [py-aiocontextvars] Added types

* [py-aiocontextvars]

- removed test dependencies
- flake8

* [py-aiocontextvars] fixed dependency types

* [py-aiocontextvars] spack -> spack.package

* [py-aiocontextvars] depends on setuptools

Co-authored-by: James A Zilberman <jazrc@rit.edu>
2022-06-27 19:09:18 -07:00
Greg Becker
df44045fdb Feature: use git branches/tags as versions (#31200)
Building on #24639, this allows versions to be prefixed by `git.`. If a version begins `git.`, it is treated as a git ref, and handled as git commits are starting in the referenced PR.

An exception is made for versions that are `git.develop`, `git.main`, `git.master`, `git.head`, or `git.trunk`. Those are assumed to be greater than all other versions, as those prefixed strings are in other contexts.
2022-06-28 01:54:41 +00:00
iarspider
7dd2ca0207 Sherpa: add libs (shared, static, both) variant (#31318)
* Sherpa: add libs (shared, static, both) variant

* PEP-8
2022-06-27 18:09:45 -06:00
Max Zeyen
7aedf9da37 gpi-space: add new version (#31319)
* gpi-space: add new version

* gpi-space: update copyright year
2022-06-27 18:05:46 -06:00
Paul R. C. Kent
5b627a9353 llvm: add 14.0.6 (#31310) 2022-06-27 17:37:58 -06:00
Sergey Kosukhin
7fc68240fe oneapi-* packages: improve use with modules (#30981)
This commit adds some changes which improve use of Spack-installed
oneAPI packages with Spack-generated modules, but not within Spack
(e.g. if you install some of these packages with Spack, then load
their associated modules to build other packages outside of Spack).

The majority of the PR diff is refactoring. The functional changes
are:

* intel-oneapi-mkl:
  * setup_run_environment: update Intel compiler flags to RPATH the
    mkl libs
* intel-oneapi-compilers: update the compiler configuration to RPATH
  libraries installed by this package (note that Spack already handled
  this when installing dependent packages with Spack, but this is
  specifically to use the intel-oneapi-compilers package outside
  of Spack). Specifically:
  * inject_rpaths: this modifies the binaries installed as part of
    the intel-oneapi-compilers package to RPATH libraries provided
    by this package
  * extend_config_flags: this instructs the compiler executables
    provided by this package to RPATH those same libraries

Refactoring includes:

* intel-oneapi-compilers: in addition to the functional changes,
  a large portion of this diff is reorganizing the creation of
  resources/archives downloaded for the install
* The base oneAPI package renamed component_path, so several packages
  changed as a result:
  * intel-oneapi-dpl
  * intel-oneapi-dnn
  * extrae
* intel-oneapi-mpi:
  * Perform file filtering in one pass rather than two
2022-06-27 16:34:15 -07:00
Valentin Volkl
614a014948 feynhiggs: add new package (#31306)
* feynhiggs: add new package

* Update var/spack/repos/builtin/packages/feynhiggs/package.py

* Update var/spack/repos/builtin/packages/feynhiggs/package.py
2022-06-27 21:08:02 +00:00
Peter Scheibel
f7ef064bdc spack external find: handle manifest with bad permissions (#31201)
Allow `spack external find` (with no extra args) to proceed if the manifest file exists but
without sufficient permissions; in that case, print a warning. Also add a test for that behavior.

TODOs:

- [x] continue past any exception raised during manifest parsing as part of `spack external find`, 
      except for CTRL-C (and other errors that indicate immediate program termination)
- [x] Semi-unrelated but came up when discussing this with the user who reported this issue to
      me: the manifest parser now accepts older schemas 

See: https://github.com/spack/spack/issues/31191
2022-06-27 19:26:12 +00:00
Mark Olesen
0080f6b7a5 openfoam: v2206 release. v2106/2012/2006/1912 patched to 202220610 (#31317)
Co-authored-by: Mark Olesen <Mark.Olesen@esi-group.com>
2022-06-27 13:17:36 -06:00
Pariksheet Nanda
0471c1ad5d ioapi: adapt to upstream's build system changes (#28247) (#31149)
Co-authored-by: Pariksheet Nanda <pnanda@necrosis.micro.med.umich.edu>
2022-06-27 11:28:46 -07:00
sayefsakin
1ba4ea5f20 cuda 11 support for hiop (#31282)
Co-authored-by: Sayef Azad Sakin <ssakin@moonshot.cels.anl.gov>
2022-06-27 11:24:07 -07:00
Jen Herting
8be7257990 [sratoolkit] added version 3.0.0 (#31322) 2022-06-27 17:40:20 +00:00
Adam J. Stewart
6628272765 openexr: add v3.1.5, CMake support (#31292) 2022-06-27 11:09:35 -06:00
Adam J. Stewart
78882c5569 brunsli: add new package (#31240) 2022-06-27 18:44:03 +02:00
Adam J. Stewart
7bce92ad46 HDF: fix build with Apple Clang (#31235) 2022-06-27 18:37:13 +02:00
Adam J. Stewart
a6b0de3beb py-torch: add M1 GPU support (#31283) 2022-06-27 18:21:49 +02:00
Massimiliano Culpo
11d71ca85e Rename os_facts.lp to os_compatibility.lp (#31206)
Follow-up from #31170
2022-06-27 09:15:25 -07:00
Harmen Stoppels
5698846619 Fix pigz%nvhpc build (#31227)
nvc doesn't know this flag: `-Wno-unknown-pragmas`, it doesn't hurt to
remove the specific warning flags, from:

```
-O3 -Wall -Wextra -Wno-unknown-pragmas -Wcast-qual
```

to:

```
-O3 -Wall
```
2022-06-27 14:41:40 +02:00
Luke Diorio-Toth
f09f834a8f py-gtdbtk and fastani: new packages (#31268) 2022-06-24 07:49:07 -07:00
Cody Balos
147f39d7aa Fix typo in documentation note about concretizer:unify (#31246) 2022-06-24 11:31:43 +02:00
Adam J. Stewart
9fad3ed5f1 giflib: fix macOS build (#31234) 2022-06-24 11:28:44 +02:00
Adam J. Stewart
1375b1975b librttopo: add missing Autotools deps (#31252) 2022-06-24 11:28:12 +02:00
Adam J. Stewart
c533612ab6 sfcgal: fix boost build issues (#31254) 2022-06-24 10:22:56 +02:00
Adam J. Stewart
e5cc3c51d1 py-numpy: add v1.23.0 (#31250) 2022-06-24 10:20:04 +02:00
Massimiliano Culpo
70650cacbd ASP-based solver: rescale target weights so that 0 is always the best score (#31226)
fixes #30997

Instead of giving a penalty of 30 to all nodes when preferences
are not package specific, give a penalty of 100 to all targets
of a node where we have package specific preferences, if the target
is not explicitly preferred.
2022-06-23 23:33:36 -07:00
Brian Van Essen
d8a5638d9f Fixed the range on Catch2 to avoid v3.x (#31242) 2022-06-23 16:10:27 -07:00
Luke Diorio-Toth
158f6ddb14 py-instrain: adding new package (#31244)
* py-instrain: adding new package

* py-instrain: fixed style

* removed unnecessary setuptools and numba version restrictions

* fixed pandas version
2022-06-23 22:58:45 +00:00
haralmha
86d1a6f2fc hadoop-xrootd: Add clang conflict (#31215)
* hadoop-xrootd: Add clang conflict

* Flake8

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-06-23 16:45:39 -06:00
Mikael Simberg
ca10ff1649 Allow using mimalloc 2 in pika and HPX (#31260) 2022-06-23 15:33:03 -07:00
Adam J. Stewart
19175b9bab keyutils: add macOS conflict (#31236) 2022-06-23 16:13:37 -06:00
Richard Berger
7d64a8e81f add charliecloud 0.27 and fix master install (#31247)
* charliecloud: custom autoreconf and require py-pip and py-wheel for master

* charliecloud: add 0.27

* charliecloud: add minimum py-pip version
2022-06-23 15:03:03 -07:00
Adam J. Stewart
a0b68a0baa rpcsvc-proto: add v1.4.3 (#31253) 2022-06-23 14:59:55 -07:00
Harmen Stoppels
b7e0692dfa libfuse: 3.11.0 (#31259) 2022-06-23 14:55:47 -07:00
Maciej Wójcik
8cc62ef916 Add some GROMACS versions (#31264)
* gromacs: add recent version

* gromacs-swaxs: add recent versions

* gromacs-chain-coordinate: add recent version
2022-06-23 14:53:32 -07:00
Stephen Sachs
2363aba710 [lammps] Rename master -> develop branch (#31263)
https://github.com/lammps/lammps/pull/3311

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-06-23 14:40:55 -07:00
Weston Ortiz
5a0c56229c goma: update package with new version and options (#31267) 2022-06-23 14:10:14 -07:00
AMD Toolchain Support
96bb72e412 Updated sha256 value for amdlibflame (#31269) 2022-06-23 14:07:09 -07:00
Adam J. Stewart
7c977733f1 py-pandas: add v1.4.3 (#31270) 2022-06-23 14:05:49 -07:00
Brian Van Essen
d48a760837 Add the rocm tag to packages from the Radeon Open Compute Platform. (#31187)
* Add the rocm tag to packages from the Radeon Open Compute Platform.

* Added more packages from the ROCm software distribution based on
reviewer feedback.

* Updated tags based on reviewer feedback
2022-06-23 09:10:01 -07:00
Brian Van Essen
c64298a183 Enable MVAPICH2 to use the mpichversion executable to detect externals (#31245)
This is an an alternative to mpiname.
2022-06-23 07:41:25 +02:00
Ben Boeckel
31d89e80bc protobuf: add 21.1 (#31249)
Older versions have compile errors under newer compilers (e.g., gcc-12).
2022-06-22 19:33:54 -06:00
Luke Diorio-Toth
2844f1fc45 added racon conflict with new versions of gcc (#31243) 2022-06-22 18:00:27 -07:00
Vicente Bolea
8b85f8ec58 vtk-m: change smoke test (#29113) 2022-06-22 18:58:03 -06:00
eugeneswalker
7ef52acfce relocation: x-pie-executable needs relocation (#31248) 2022-06-22 23:55:28 +00:00
Nicholas Sly
c3fecfb103 Add --disable-wrapper-runpath to openmpi when ~wrapper-rpath to avoid build time error. (#31221)
Co-authored-by: Nicholas Cameron Sly <sly1@rzalastor2.llnl.gov>
2022-06-22 16:57:55 -06:00
Adam J. Stewart
ef278c601c spack create: fix for no URL (#31239) 2022-06-22 18:45:03 +00:00
JeromeDuboisPro
5e9a8d27f7 add first version of py-pyrr package (#31211)
* add first version of py-pyrr package

* added license

* update license HEADER

* Remove preferred as there is only one version available

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Better specify dependency type

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* remove useless variable license

Co-authored-by: Jérôme Dubois <jerome.dubois@cea.fr>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-06-22 10:36:49 -07:00
Manuela Kuhn
ffc90f944c py-bids-validator: add 1.9.4 (#31230) 2022-06-22 10:35:57 -07:00
Harmen Stoppels
699c0cf9a0 squashfs-mount: new package (#31225) 2022-06-22 14:31:20 +02:00
Massimiliano Culpo
55cac3b098 Remove update functions used to ease the transition in v0.16 (#31216) 2022-06-22 11:15:57 +02:00
Tamara Dahlgren
35d07a6f18 Add missing '?full_index=1' to meson 9850.patch URL (#31222)
* Add missing '?full_index=1' to meson 9850.patch URL

* Correct checksum

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-06-22 08:56:49 +02:00
Adam J. Stewart
1f42a5e598 py-geopandas: add v0.11.0 (#31218) 2022-06-21 18:14:04 -07:00
Adam J. Stewart
967463432b py-shapely: env vars always needed (#31217) 2022-06-21 18:11:36 -07:00
Howard Pritchard
bc03b5caaf meson: fix to recognize intel oneapi compiler (#30605)
Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2022-06-21 10:47:46 -07:00
Massimiliano Culpo
649760dc1a Canonicalize positional argument to spack bootstrap mirror (#31180)
fixes #31139
2022-06-21 19:25:01 +02:00
Adam J. Stewart
77118427b1 grep: add +pcre variant (#31204) 2022-06-21 10:06:42 -07:00
haralmha
1a024963a2 frontier-client: Add openssl and zlib directories to search path (#31212) 2022-06-21 09:38:24 -07:00
Massimiliano Culpo
aebb601b70 Stricter compatibility rules for OS and compiler when reusing specs (#31170)
* Stricter compatibility rules for OS and compiler when reusing specs
* Add unit test
2022-06-20 17:32:13 -07:00
Robert Cohn
d95f53e1ac New (external-only) package: oneapi-igc (#31045) 2022-06-20 13:38:41 -07:00
Christian Goll
0fe57962b3 OpenSUSE Tumbleweed: use GLIBC version as distro version (#19895)
Tumbleweed is a rolling release that would have used a date 
as a version instead.
2022-06-20 22:20:31 +02:00
Massimiliano Culpo
8ec451aa7d setuptools: add v62.4.0 (#31112) 2022-06-20 08:59:58 -07:00
Stephen Sachs
14349cb882 lammps: add lammps_sizes variant (#31182)
This is translated to CMakes LAMMS_SIZES variable. Used to select integer sizes.

Co-authored-by: Stephen Sachs <stesachs@amazon.com>
2022-06-20 09:39:03 +00:00
Pariksheet Nanda
bc438ed4e9 ome-files-cpp: add v0.6.0 (#31156) 2022-06-20 10:16:21 +02:00
Sam Broderick
760a12c440 Fix request for bzip2, since bzip was pulled due to patent issues (#31198) 2022-06-20 08:13:20 +00:00
Adam J. Stewart
9325c8e53f py-tensorboard-data-server: fix build on Apple M1 (#30908) 2022-06-20 10:12:32 +02:00
HELICS-bot
fd5b7d6cce helics: add v3.2.1 (#31190)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-06-20 09:54:57 +02:00
Cory Bloor
b19a0744f1 rocm: add master and develop to BLAS and SOLVER (#30273) 2022-06-20 09:52:47 +02:00
Sebastian Ehlert
75d0c0dff7 fpm: add v0.6.0 (#31193) 2022-06-20 09:49:21 +02:00
Adam J. Stewart
aedc41c3a0 texlive: fix and deprecate live version (#31195) 2022-06-20 09:44:36 +02:00
Valentin Churavy
1f39d6d916 Julia: add v1.7.3 (#31196) 2022-06-20 09:41:50 +02:00
Ye Luo
1bc3b0a926 quantum-espresso: Add 7.1 (#31192) 2022-06-18 23:32:28 +02:00
Ryan Marcellino
62596fb796 py-f90wrap: new version (#31174) 2022-06-17 17:09:34 -06:00
Brian Van Essen
15c35a3cff Bugfix external find --all for libraries (#31186)
* Fixed a bug in the 'external find --all' command where the call failed
to find packages by both executable and library. The bug was that the
call `path.all_packages()` incorrectly turned the variable
`packages_to_check` into a generator rather than keeping it a list.
Thus the second call to `detection.by_library` had no work to do.

* Fixed the help message for the find external and compiler commands as
well as others that used the `scopes_metavar` field to define where
the results should be stored in configuration space.  Specifically,
the fact that configuration could be added to the environment was not
mentioned in the help message.
2022-06-17 21:52:06 +00:00
Brian Van Essen
249c90f909 Added the ecp and radiuss tags to the LBANN software stack packages. (#31188) 2022-06-17 21:25:50 +00:00
Kyle Gerheiser
043b2cbb7c Fix external compiler detection for MPICH and OpenMPI (#30875)
os.path.dirname was being used to compare compilers. If two compilers
are in the same directory then it will pick up the first one it encounters.

Compare the full compiler path instead.
2022-06-17 14:01:49 -06:00
Bernhard Kaindl
aedf215b90 openssh: don't suid-install ssh-keysign (not used by default) (#31083) 2022-06-17 12:09:52 -06:00
Mikhail Titov
eed4a63be7 rct: update packages (RE, RG, RP, RS, RU) with new versions (#31172) 2022-06-17 10:44:22 -07:00
Massimiliano Culpo
13b609b4b6 docs: quote string to show valid YAML (#31178)
fixes #31167
2022-06-17 18:25:52 +02:00
Chuck Atkins
85dc20cb55 Spec: Add a new virtual-customizable home attribute (#30917)
* Spec: Add a new virtual-customizable home attribute

* java: Use the new builtin home attribute

* python: Use the new builtin home attribute
2022-06-17 10:29:08 -04:00
Massimiliano Culpo
667c39987c py-setuptools: install setuptools from wheels directly (#31131)
When installing setuptools from sources in Spack, we might
get into weird failures due to the way we use pip.

In particular, for Spack it's necessary to install in a
non-isolated pip environment to allow using PYTHONPATH as a
selection method for all the build requirements of a
Python package.

This can fail when installing setuptools since there might
be a setuptools version already installed for the Python
interpreter being used, with different entry points than
the one we want to install.

Installing from wheels both pip and setuptools should
harden our installation procedure in the context of:
- Bootstrapping Python dependencies of Spack
- Using external Python packages
2022-06-17 10:42:28 +02:00
Cyrus Harrison
f35d8c4102 vtk-h: use cmake base pkg, overhaul recipe (#28898)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-06-17 09:59:57 +02:00
Sreenivasa Murthy Kolam
6ac3186132 Support 'spack external find' for rocm packages (#30792) 2022-06-17 09:34:49 +02:00
Robert Cohn
466572dc14 Update Intel package descriptions (#31150) 2022-06-17 09:23:40 +02:00
Harmen Stoppels
1c0bf12e5b openssl package: default to mozilla certs (#31164)
On Cray systems that use Cray Data Virtualization Service (DVS),
symlinks across filesystems are not allowed, either due to a bug, or
because they're simply not POSIX compliant [1].

Spack's OpenSSL package defaults to `certs=system` which comes down to
symlinking `/etc/ssl` in the Spack install prefix, triggering this
problem, resulting in mysterious installation failures.

Instead of relying on system certs, we can just use
`ca-certificates-mozilla`, and if users really need system certs, then
they're probably better off marking OpenSSL entirely as external.

[1] https://github.com/glennklockwood/cray-dvs
2022-06-16 23:25:32 -06:00
Adam J. Stewart
bf990bc8ec py-sphinx: add v5, maintainer (#31171) 2022-06-16 20:41:31 -06:00
Massimiliano Culpo
267358a799 ASP-based solver: fix rules on version weights selection (#31153)
* ASP: sort and deduplicate version weights from installed specs

* Pick version weights according to provenance

* Add unit test
2022-06-16 14:17:40 -07:00
Peter Scheibel
392b548312 Manifest parsing: avoid irrelevant files (#31144)
* Manifest directory may not contain manifest files: exclude non-manifest files
* Manifest files use different name for rocmcc: add translation for it
2022-06-16 15:16:48 -05:00
Elizabeth Sherrock
8c3b82c140 New packages: py-ford and dependencies (#31107)
* Created package and added description

* Add py-markdown-include

* Created package

* Finished creating package

* Added py-md-environ

* Added build dependencies

* Added other deps

* Add python-markdown-math (#4)

* Created package and started to add info

* Removed unneeded global/install options

* Figured out version spec for markdown-math

* Removed type=build from unnecessary dependencies

* Removed unneeded install/global options, added version spec to dependency

* Added wscullin as interim maintainer for packages

* Fixed style issues

* Took care of trailing whitespace

* Removed comment line before imports

* Changed file charset to match other packages

* Update var/spack/repos/builtin/packages/py-ford/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Update var/spack/repos/builtin/packages/py-ford/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Removed test dependency after review feedback

* Added new 6.1.12 version to py-ford

Co-authored-by: Seth R. Johnson <johnsonsr@ornl.gov>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-06-16 12:14:40 -07:00
Qian Jianhua
2e4b533420 rpcsvc-proto: add 'cpp' path for rpcgen (#31157) 2022-06-16 18:24:28 +00:00
Mark Abraham
3b393fe0eb Add LevelZero variant to hwloc package (#31161)
* Add LevelZero variant to hwloc package

This permits the hwloc package to build with with support for the
Intel Level Zero low-level layer, analogous to CUDA, ROCm, and OpenCL.

* Fix typo
2022-06-16 12:21:36 -06:00
Massimiliano Culpo
895ceeda38 concretize.lp: impose a lower bound on the number of version facts if a solution exists (#31142)
* concretize.lp: impose a lower bound on the number of version facts if a valid version exists

fixes #30864

* Add a unit test
2022-06-16 09:25:56 -07:00
Satish Balay
6f1e3a4ad3 xsdk-examples: use 'parallel=False' with tests - as they may fail with a large '-j'[when used with +cuda] (#31138) 2022-06-16 07:50:45 -07:00
iarspider
ce41b7457b Xerces-C: Add option to disable transcoder (#31162)
* Xerces-C: Add option to disable transcoder

* Update package.py

* Apply suggestion from review

* Flake-8
2022-06-16 10:40:03 -04:00
G-Ragghianti
4f9f56630b slate, blaspp, lapackpp: new versions (#31147)
* Adding new release for slate, blaspp, and lapackpp

* Setting release tar file hashes

* New slate release
2022-06-16 08:09:42 -04:00
Rob Falgout
e216ba1520 hypre: new version 2.25.0 (#31146) 2022-06-16 08:07:30 -04:00
Massimiliano Culpo
4fd5ee1d9d CI: test binary bootstrapping of clingo on all macOS versions (#31160) 2022-06-16 07:26:20 -04:00
Mosè Giordano
89f32d51f3 grid: add new package (#31133) 2022-06-16 09:00:09 +02:00
Manuela Kuhn
3b3be70226 r-httpuv: fix zlib dependency (#31121) 2022-06-15 20:22:58 -05:00
Chuck Atkins
95888602f2 mesa: Match rtti settings with the libllvm dependency (#31145)
* llvm-amdgpu: Update the libllvm version provided

* mesa: Match configure rtti settings to the libllvm dependency
2022-06-15 17:29:33 -06:00
Wileam Y. Phan
0205fefe0c googletest: use URLs with .tar.gz extension (#31129) 2022-06-15 18:21:44 +00:00
Tom Scogland
b261b2a5ff Allow bootstrapping to work when partial or incompatible modules exist in the module path (#31035) 2022-06-15 19:09:07 +02:00
Ryan Mast
8c58c14c3d helics: add v2.8.1 (#31134) 2022-06-15 09:27:50 +02:00
SXS Bot
f7b4d488c3 spectre: add v2022.06.14 (#31135)
Co-authored-by: sxs-bot <sxs-bot@users.noreply.github.com>
2022-06-15 09:27:10 +02:00
Sreenivasa Murthy Kolam
38a8d4d2fe ROCm support to build py-torch (#31115)
* rocm support to build py-torch

* rocm support to build py-torch
2022-06-14 15:56:11 -07:00
Robert Underwood
1ceee714db sz: smoke, unit, version updates, and more oh my (#30873)
Co-authored-by: Robert Underwood <runderwood@anl.gov>
2022-06-14 16:53:47 -06:00
Brian Van Essen
5b3e4ba3f8 Fixed bad hashes for recent versions and added v8.4.0 (#31038) 2022-06-14 22:05:44 +02:00
snehring
37426e41cb wget: fixing compilation issue with gcc11+ on rhel7 (#30858) 2022-06-14 16:03:02 +00:00
Sergey Kosukhin
a05e729e1b mpich: remove libtool patches (#30769) 2022-06-14 16:29:22 +02:00
Mikael Simberg
f8a6799e67 apex: fix compilation with binutils (#30638) 2022-06-14 16:04:53 +02:00
Maciej Wójcik
633ebd149c dbcsr: add versions up to v2.2.0 (#30891)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-06-14 15:08:13 +02:00
G-Ragghianti
bf6220821b Make the IntelPackage fail successfully (#30773)
Co-authored-by: Robert Cohn <rscohn2@gmail.com>
2022-06-14 15:06:06 +02:00
Sebastian Ehlert
3db96aa892 simple-dftd3: add package and dependencies (#31046)
- add simple-dftd3 (version 0.6.0, 0.5.1)
- add mctc-lib (version 0.3.0)
- add toml-f (version 0.2.3)
- update dftd4 (version 3.4.0, use mctc-lib as actual dependency)
- update json-fortran (version 8.*, make static library PIC)
2022-06-14 15:05:01 +02:00
Jim Galarowicz
c7628d768a survey: add v1.0.5 (#31053) 2022-06-14 14:56:51 +02:00
haralmha
e1ad926189 vectorclass-version2: move files to include folder (#31105) 2022-06-14 14:54:16 +02:00
dlkuehn
8705735c74 gemma: add new package. (#31078)
Co-authored-by: David Kuehn <las_dkuehn@iastate.edu>
2022-06-14 12:53:14 +00:00
Hadrien G
d82fa045d5 acts: add v19.2 (#31108) 2022-06-14 12:45:03 +00:00
Richard Berger
c72d51cb3a legion: add HIP support (#31080) 2022-06-14 13:49:33 +02:00
Qian Jianhua
d76f184430 hybrid-lambda: fix build tests (#30214) 2022-06-14 13:46:23 +02:00
Seth R. Johnson
19ea24d2bd hdf5: add conflict for broken @1.8.22+fortran+mpi (#31111) 2022-06-14 13:42:48 +02:00
Bernhard Kaindl
83efea32f4 openssh: enable authentication via Kerberos through GSSAPI (#31086)
Add variant +gssapi to enable authentication via Kerberos through GSSAPI

When openssh is installed at sites using Kerberos, openssh needs to auth
via Kerberos through GSSAPI in order to work in such environments.
2022-06-14 13:41:32 +02:00
Mark Olesen
bc577f2dee openfoam: update v2112 to latest patch (#31113)
Co-authored-by: Mark Olesen <Mark.Olesen@esi-group.com>
2022-06-13 21:21:42 -06:00
Jean Luca Bez
04529fbe80 Update HDF5 VOL async (#31011)
* Update h5bench maintainers and versions

* Include version 1.1 for h5bench

* Correct release hash and set default version

* Update .tar.gz version

* Update HDF5 VOL async version and environment variable syntax
2022-06-13 21:58:16 -05:00
Wouter Deconinck
cdfbe2c25d root: new version 6.26.04 (#31116)
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-06-13 17:45:37 -07:00
Manuela Kuhn
8305742d75 exempi: add 2.6.1 and fix boost dependency (#31120) 2022-06-13 15:20:31 -07:00
Greg Sjaardema
e0137b1566 SEACAS: Clean up, add new versions (#31119) 2022-06-13 16:22:43 -04:00
iarspider
be95699a55 Add checksum for pacparser 1.4.0 (#31110) 2022-06-13 14:17:33 -06:00
Massimiliano Culpo
7d96a0aa5a Pin setuptools version in Github Action Workflows (#31118)
fixes #31109
2022-06-13 21:09:16 +02:00
Qian Jianhua
874b713edf netpbm: run custom test command (#31072)
* netpbm: run custom test command

* fix styles

* change method name
2022-06-13 11:26:54 -07:00
iarspider
3c0a98c5ab sloccount: add build-time dependency on flex (#31106) 2022-06-13 09:39:44 -07:00
Elsa Gonsiorowski, PhD
998bf90b35 SCR release v3.0, including components (#29924) 2022-06-13 18:17:17 +02:00
liuyangzhuan
2ca32fbc8c Remove filter operation for superlu-dist to avoid permission issues on read-only systems (#30970)
* added package gptune with all its dependencies: adding py-autotune, pygmo, py-pyaml, py-autotune, py-gpy, py-lhsmdu, py-hpbandster, pagmo2, py-opentuner; modifying superlu-dist, py-scikit-optimize

* adding gptune package

* minor fix for macos spack test

* update patch for py-scikit-optimize; update test files for gptune

* fixing gptune package style error

* fixing unit tests

* a few changes reviewed in the PR

* improved gptune package.py with a few newly added/improved dependencies

* fixed a few style errors

* minor fix on package name py-pyro4

* fixing more style errors

* Update var/spack/repos/builtin/packages/py-scikit-optimize/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* resolved a few issues in the PR

* fixing file permissions

* a few minor changes

* style correction

* minor correction to jq package file

* Update var/spack/repos/builtin/packages/py-pyro4/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* fixing a few issues in the PR

* adding py-selectors34 required by py-pyro4

* improved the superlu-dist package

* improved the superlu-dist package

* moree changes to gptune and py-selectors34 based on the PR

* Update var/spack/repos/builtin/packages/py-selectors34/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* improved gptune package: 1. addressing comments of tldahlgren in PR 26936; 2. adding variant openmpi

* fixing style issue of gptune

* changing file mode

* improved gptune package: add variant mpispawn which depends on openmpi; add variant superlu and hypre for installing the drivers; modified hypre package file to add a gptune variant

* fixing style error

* corrected pddrive_spawn path in gptune test; enforcing gcc>7

* fixing style error

* setting environment variables when loading gptune

* removing debug print in hypre/package.py

* adding superlu-dist v7.2.0; fixing an issue with CMAKE_INSTALL_LIBDIR

* changing site_packages_dir to python_platlib

* not using python3.9 for py-gpy, which causes due to dropped support of tp_print

* more replacement of site_packages_dir

* fixing a few dependencies in gptune; added a gptune version

* adding url for gptune

* minor correction of gptune

* updating versions in butterflypack

* added a version for openturns

* added a url for openturns

* minor fix for openturns

* Update var/spack/repos/builtin/packages/openturns/package.py

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>

* added version2.1.1 for butterflypack

* fixing a tag in butterflypack

* minor fix for superlu-dist

* removed file filter for superlu-dist

* Update var/spack/repos/builtin/packages/superlu-dist/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* superlu-dist: add version detection for the testing; removing unused lines

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-06-13 08:48:55 -07:00
Jordan Galby
e50d08ce48 Fix spack style arbitrary git rev as base (#31019)
Allow `spack style -b @` or `spack style -b origin/develop` to work as
expected.

Regression since spack 0.17 #25085
2022-06-13 15:22:35 +00:00
Sergey Kosukhin
696d81513d nvhpc: conflict with all compilers except for gcc (#31073) 2022-06-13 16:47:28 +02:00
Mark Grondona
b38afa7528 Add flux-core v0.39.0 and v0.40.0 and flux-sched v0.23.0 (#31061) 2022-06-13 16:15:25 +02:00
Mikael Simberg
0f2786c9d3 Fix tracy-client package (#31076) 2022-06-13 16:11:00 +02:00
Carson Woods
f72c2ab583 Fix download URL for pcre package (#31077) 2022-06-13 16:05:25 +02:00
Adam J. Stewart
f6e6403fd1 Fix packages that will break with PIL 10 (#31071) 2022-06-13 16:04:13 +02:00
Simon Pintarelli
5550271ead atompaw: add v4.2.0.1 (#31087)
apply ifort patch including v4.2.0.0, but not for 4.2.0.1 anymore
2022-06-13 15:15:59 +02:00
Jack Morrison
a1b19345b1 opa-psm2: add v11.2.228 (#31089) 2022-06-13 14:58:25 +02:00
Erik Schnetter
e2aeb06c91 adios2: add v2.8.1 (#31090) 2022-06-13 14:55:09 +02:00
Brice Videau
14ae0e0d94 py-py-spy: fix dependency on libunwind (#31013)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2022-06-13 14:16:26 +02:00
Seth R. Johnson
516587a1da py-breathe: new version 4.33.1 and fix dependencies (#31098)
* py-breathe: new version 4.33.1 and fix dependencies

* remove unused dependencies
2022-06-12 18:06:39 -05:00
Paul R. C. Kent
dc36fd87bb Addllvmv1405 (#31099) 2022-06-12 11:24:31 -07:00
marcosmazz
06b5141d01 Limit Jasper version for WPS (#31088)
* Limit Jasper version for WPS

Jasper@3: changed API and does not support interfaces used by WPS.
This prevented ungrib.exe build and failed silently.
2022-06-12 19:02:07 +02:00
Seth R. Johnson
27610838dd py-sphinxcontrib-bibtex: new version 2.4.2 (#31097) 2022-06-12 09:24:46 -07:00
Danny McClanahan
0c7fd9bd8c fix doubly shell quoting args to spack spec (#29282)
* add test to verify fix works
* fix spec cflags/variants parsing test (breaking change)
* fix `spack spec` arg quoting issue
* add error report for deprecated cflags coalescing
* use .group(n) vs subscript regex group extraction for 3.5 compat
* add random test for untested functionality to pass codecov
* fix new test failure since rebase
2022-06-11 12:35:46 -07:00
Todd Gamblin
bf2b30a5f5 bugfix: preserve dict order for Spec.dag_hash() in Python 2 (#31092)
Fix a bug introduced in #21720. `spack_json.dump()` calls `_strify()` on dictionaries to
convert `unicode` to `str`, but it constructs `dict` objects instead of
`collections.OrderedDict` objects, so in Python 2 (or earlier versions of 3) it can
scramble dictionary order.

This can cause hashes to differ between Python 2 and Python 3, or between Python 3.7
and earlier Python 3's.

- [x] use `OrderedDict` in `_strify`
- [x] add a regression test
2022-06-10 20:32:35 -07:00
Asher Mancinelli
f42680b785 ripgrep: remove need for llvm (#31062) 2022-06-10 11:45:53 -07:00
Sergey Kosukhin
a2afd5b82f clingo: fix string formatting in error messages (#31084) 2022-06-10 16:24:27 +00:00
Cyrus Harrison
11f1b371f7 babelflow: fix conditional constraint in "when" decorator (#31057) 2022-06-10 18:07:22 +02:00
Valentin Churavy
cfc46504ac enzyme: new version 0.0.32 (#31081)
Add LLDEnzyme to libs list
2022-06-10 11:48:35 +02:00
dependabot[bot]
163251aa65 build(deps): bump actions/setup-python from 3.1.2 to 4 (#31059)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 3.1.2 to 4.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](98f2ad02fd...d09bd5e600)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-10 11:03:36 +02:00
eugeneswalker
6ab9f3a290 exago@1.4.1: : needs py-pytest (#31060) 2022-06-09 16:55:04 -07:00
Gregory Lee
45043bcdf5 py-xdot requires explicit dependency on harfbuzz (#30968) 2022-06-09 13:53:32 -06:00
Adam J. Stewart
7642fa3d99 py-kornia: add v0.6.5 (#31067) 2022-06-09 12:13:51 -07:00
Adam J. Stewart
1689f7fcbe py-pillow: add v9.1.1 (#31068) 2022-06-09 12:12:02 -07:00
Adam J. Stewart
4f67afeb5f py-pytorch-lightning: add v1.6.4 (#31069) 2022-06-09 12:09:05 -07:00
Adam J. Stewart
9d8ecffed0 py-timm: add v0.5.4 (#31070) 2022-06-09 12:06:58 -07:00
Cyrus Harrison
1ada7ea809 add fix for implicit includes with newer vers of gcc (#31056) 2022-06-09 09:40:08 -07:00
Martin Lang
4a8db00691 nfft, pnfft: fix detection of fftw variants (precision) (#30935)
* nfft, pnfft: fix detection of fftw variants (precision)

* nfft, pnfft: use fftw's selected_precisions; avoid repetitive calls to spec

Co-authored-by: Martin Lang <martin.lang@mpsd.mpg.de>
2022-06-09 08:47:12 -07:00
Tim Fuller
01f8236bf5 Allow more fine-grained control over what submodules are updated (#27293)
The "submodules" argument of the "version" directive can now accept
a callable that returns a list of submodules, in addition to the usual
Boolean values
2022-06-09 07:45:49 +02:00
Adam J. Stewart
57822d3014 clingo: fix ~python build (#30824) 2022-06-09 07:33:56 +02:00
Massimiliano Culpo
3fdb3f832a Cancel running workflows automatically on PR update (#31044)
* Cancel running workflows automatically on PR update
* Add the last update later to check cancellation is working
* Use github.run_number instead of github.sha
2022-06-08 15:46:46 -07:00
Asher Mancinelli
bedad508a9 lua-mpack: build with -fPIC always (#31054) 2022-06-08 21:37:55 +00:00
Adam J. Stewart
31f6dedecd py-memray: add new package (#31033)
* py-memray: add new package

* Link to Python

* Add missing non-Python deps
2022-06-08 13:52:38 -07:00
Adam J. Stewart
dc0c4959db cuDNN: add v8.4.0.27-11.6 (#31034) 2022-06-08 13:48:12 -07:00
Mark W. Krentel
8550b6cf49 hpctoolkit: adjust dependencies for develop (#31050)
The develop branch now uses libiberty, but not binutils or libdwarf.
2022-06-08 13:42:32 -07:00
Jen Herting
0e5c4c9cbf Draft: Pending #29806 [py-sentry-sdk] added version 1.5.5 (#29143)
* [py-sentry-sdk] audited dependencies and relisted extras as variants

* [py-sentry-sdk] added version 1.5.5

* [py-sentry-sdk] flake8

* [py-sentry-sdk]

- added "descriptions" to variants
- removed conflicts
  - replaced with when statements in varients
2022-06-08 20:41:44 +00:00
Jen Herting
9bac72e818 New package: py-colossialai (#30807)
* colossalai is dependency for deepoffense

* [py-colossalai] added homepage

* [py-colossalai] added dependencies and removed older versions

* [py-colossalai] updated pypi url to match listed version

* [py-colossalai] spack -> spack.package

Co-authored-by: Sid Pendelberry <sid@rit.edu>
2022-06-08 20:34:34 +00:00
Brice Videau
a65a217c54 py-ytopt: add v0.0.4 (#31029) 2022-06-08 19:43:20 +00:00
Ryan Marcellino
26e6aae8d4 new package: py-pytest-asyncio (#31040) 2022-06-08 11:31:31 -07:00
Manuela Kuhn
d6fabd1533 py-glmsingle: add new package (#31043) 2022-06-08 10:03:18 -07:00
Massimiliano Culpo
d245c46487 bootstrap: account for disabled sources (#31042)
* bootstrap: account for disabled sources

Fix a bug introduced in #30192, which effectively skips
any prescription on disabled bootstrapping sources.

* Add unit test to avoid regression
2022-06-08 07:17:37 -06:00
Adam J. Stewart
3eba28e383 OpenCV: add v4.6.0 (#31022) 2022-06-08 14:31:55 +02:00
Adam J. Stewart
0d91cb58dc py-pympler: add v1.0.1 (#31031) 2022-06-08 14:27:56 +02:00
Adam J. Stewart
5f55abeecb Python: add v3.10.5 (#31039) 2022-06-08 14:22:51 +02:00
psakievich
c3c2416672 Nalu-Wind: allow for lowest order infinity version (#31036)
This will allow us to pin trilinos in our repo
2022-06-08 14:22:10 +02:00
Adam J. Stewart
9e2bc41e45 libtiff: add v4.4.0 (#31008) 2022-06-07 15:49:56 -06:00
Axel Huebl
8f80c5e6f7 openPMD-api: 0.14.5 (#31023)
Add the latest release.
2022-06-07 14:32:43 -07:00
Erik Schnetter
a5e1367882 meson: add version 0.62.2 (#31005) 2022-06-07 15:13:40 -06:00
Peter Scheibel
c724e26ba9 Staging: determine extensions from nonstandard URLs (#31027)
Fixes #31021

With #25185, we no longer default to using tar when we can't
determine the extension type, opting to fail instead.

This broke fetching for the pcre package, where we couldn't determine
the extension. To determine the extension, we were attempting to
extract it from the destination filename; however, this file name
may omit details of the origin URL that are required to determine the
extension, so instead we examine the URL directly.

This also updates the decompressor_for method not to set ext=None
by default: it must now always be set by the caller.
2022-06-07 14:12:08 -07:00
Glenn Johnson
1b9a1992fb Update Spack Bioconductor packages to Bioconductor 3.15 (#30984) 2022-06-07 20:10:01 +02:00
Graeme A Stewart
815764bdef Update prmon recipe, v3.0.2 (#30979)
* Update prmon recipe, v3.0.2

Update recipe to v3.0.2, using external dependency
option for the build (as these are satisfied so easily with Spack)

* Remove "broken" 3.0.1 version

This one could not build properly with Spack, due to
missing submodule sources
2022-06-07 17:17:25 +00:00
Bitllion
adf073b53c Add New Package:PSCMC (#30944)
* add some new version of abacus and fix bug on mkl

* Add Package:PSCMC

* update maintainer

* rebase

* update maintainers

* Update var/spack/repos/builtin/packages/pscmc/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-06-07 10:11:14 -07:00
Axel Huebl
449e885d4c WarpX: 22.06 (#31012)
* WarpX: 22.06

Update `warpx` & `py-warpx` to the latest release, `22.06`.

* Patch: Fix 1D CUDA Builds
2022-06-07 09:49:35 -06:00
Brice Videau
560472ce3a Fix py-deap py-setuptools dependency (#31014) 2022-06-07 08:57:44 -06:00
Brice Videau
0c66446437 Add py-ytopt-autotune version v1.0.0 (#31015) 2022-06-07 08:49:44 -06:00
Massimiliano Culpo
6b4b1dacd9 docs: update the list of Docker images with Spack preinstalled (#31003)
Also, update the image in the docs and use ghcr.io
2022-06-07 16:43:04 +02:00
Gregory Lee
3e90134e14 json-glib depends on gobject-introspection (#30963) 2022-06-07 08:29:38 -06:00
Asher Mancinelli
4ad0594c7b fd: add new package (#31010) 2022-06-07 08:21:59 -06:00
kwryankrattiger
f13b760f10 Visit: Allow building without rendering (#31006)
This is important for HPC systems.
2022-06-07 08:21:36 -06:00
Carlos Bederián
0f6fb1a706 gmsh: +petsc requires ~int64 variant (#30969) 2022-06-07 16:21:07 +02:00
Jordan Galby
e74d85a524 Fix empty install prefix post-install sanity check (#30983) 2022-06-07 16:17:33 +02:00
Glenn Johnson
ffd63c5de1 R ecosystem: cran updates (#31004) 2022-06-07 16:12:51 +02:00
Axel Huebl
ed263615d7 AMReX: update the CMake requirements for v22.06+ (#31018) 2022-06-07 16:01:13 +02:00
Morten Kristensen
b4e775a11a py-vermin: add latest version 1.4.0 (#31009) 2022-06-07 06:09:39 -06:00
Mosè Giordano
6a2844fdee libint: add Python as build dependency (#30870)
Installation process of libint runs a Python script:
<69cc7b9bc6/export/cmake/CMakeLists.txt.export (L410)>.
If Python isn't explicitly listed as build dependency, system Python will be
picked up, which can cause troubles.
2022-06-07 06:01:53 -06:00
Manuela Kuhn
44d670a8ce git-annex: fix source urls (#30789) 2022-06-07 05:45:40 -06:00
Massimiliano Culpo
4a0ac87d07 archspec: bump to v0.1.4 (#30856)
Fixes compiler flags for oneapi and dpcpp
2022-06-07 08:51:34 +00:00
Michael Kuhn
2c6898c717 glib: add v2.72.2 (#31001) 2022-06-07 02:45:51 -06:00
Brice Videau
0a8083c604 Fix py-ray dependencies and build system (#31016)
* Fix py-ray dependencies and build system

* Update var/spack/repos/builtin/packages/py-ray/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Added documentation for unusual dependencies.

* Fixed npm preinstall script per @adamjstewart suggestion.

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2022-06-07 01:36:24 +00:00
John W. Parent
5b45df5269 Update decompression support on Windows (#25185)
Most package installations include compressed source files. This
adds support for common archive types on Windows:

* Add support for using system 7zip functionality to decompress .Z
  files when available (and on Windows, use 7zip for .xz archives)
* Default to using built-in Python support for tar/bz2 decompression
  (note that Python tar documentation mentions preservation of file
  permissions)
* Add tests for decompression support
* Extract logic for handling exploding archives (i.e. compressed
  archives that expand to more than one base file) into an
  exploding_archive_catch context manager in the filesystem module
2022-06-06 18:14:43 -07:00
Chuck Atkins
9d7cc43673 Package: Don't warn for missing source on bundle packages without code (#30913) 2022-06-06 15:33:03 -07:00
miheer vaidya
932065beca Update package rtags (#30890)
* Update backage bear

Newer versions of rtags aren't available via older url

* Fix sha256 as download link has changed

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-06-06 15:30:35 -07:00
Massimiliano Culpo
360192cbfe atompow: remove again misplaced duplicate package (#30992)
Regression re-introduced in #30404
2022-06-06 14:59:22 -07:00
Jen Herting
7bc349c041 New package: py-numpy-quaternion (#29452)
* first build of numpy-quaternion and spherical-functions

* [py-numpy-quaternion] removed python restriction

* [py-numpy-quaternion] added scipy and numba variants

* [py-numpy-quaternion] fixing unicode

Co-authored-by: Sid Pendelberry <sid@rit.edu>
2022-06-06 14:42:33 -07:00
Jen Herting
603ec40ab1 [py-httpx] added version 0.22.0 (#29806)
* [py-httpx] python dependencies are type=('build', 'run')

* [py-httpx] py-wheel is now implied by PythonPackage

* [py-httpx] fixed older version dependencies

* [py-httpx] added version 0.22.0
2022-06-06 14:34:11 -07:00
renjithravindrankannath
ed6695b9c9 Correcting library path of hsakmt-roct for Centos7 and cleaning up the patch file. (#30885)
* Correcting library path of hsakmt-roct and cleaning up the patch file.

* Delete 007-library-path.patch
2022-06-06 13:50:41 -07:00
Adam J. Stewart
fb173f80b2 py-torchmetrics: add v0.9.0 (#31000) 2022-06-06 16:28:11 +02:00
Ye Luo
15d4262b9b quantum-espresso: no need of patch and hdf5 is optional for pw2qmcpack (#30884) 2022-06-06 15:47:10 +02:00
Daniel Arndt
7116fb1b70 Kokkos SYCL AOT flags (#30723)
* Kokkos SYCL AOT flags

* Improve selecting the Intel GPU arch
2022-06-06 15:41:13 +02:00
Adam J. Stewart
9b713fa6a6 py-black: new version/variants/maintainer (#30999) 2022-06-06 07:09:39 -06:00
Adam J. Stewart
8d4a5cb247 GCC: add Apple M1 support (#30825)
Co-authored-by: Seth R. Johnson <johnsonsr@ornl.gov>
2022-06-06 14:46:43 +02:00
Filippo Spiga
bf2d44c87e nvhpc: add v22.5 (#30845) 2022-06-06 14:44:39 +02:00
Brian Van Essen
926e311f3c dihydrogen: propagate cuda_arch to nvshmem (#30886) 2022-06-06 14:38:58 +02:00
Simon Pintarelli
8ef937032c quantum-espresso: support libxc also for autotools build (#30895) 2022-06-06 14:26:07 +02:00
Erik
73ce789390 amrvis: add configuration file and default color palette (#30942) 2022-06-06 14:01:57 +02:00
Jianshen Liu
e4f3cfcc3a cppcheck: add v2.8 (#30993) 2022-06-06 13:42:42 +02:00
Erik Schnetter
7ac05485c6 cmake: New version 3.23.2 (#30994) 2022-06-05 14:01:18 +02:00
John W. Parent
13b0e73a4e Sanitize filepath from URL (#30625)
Spack's staging logic constructs a file path based on a URL. The URL
may contain characters which are not allowed in valid file paths on
the system (e.g. Windows prohibits ':' and '?' among others). This
commit adds a function to remove such offending characters (but
otherwise preserves the URL string when constructing a file path).
2022-06-04 15:06:43 -07:00
Tom Scogland
03c54aebdd luajit: use GC64 on darwin (#30971) 2022-06-04 14:44:45 +02:00
G-Ragghianti
f4a4b3fa87 Intel oneAPI DPCPP compatibility toolkit: add new package (#30986) 2022-06-04 14:31:41 +02:00
Adam J. Stewart
6b3607287a py-botorch: add new package (#30989) 2022-06-04 14:29:33 +02:00
Carlos Bederián
b4b2585d67 protobuf: patch build error when @3.20 %gcc@12.1.0 (#30973) 2022-06-03 21:32:13 +02:00
Satish Balay
29855ae31e petsc, py-petsc4py: add 3.17.2 (#30982) 2022-06-03 09:39:52 -07:00
Michael Kuhn
44b9efa132 rocksdb: add 7.2.2 (#30977) 2022-06-03 08:56:28 -07:00
Michael Kuhn
f21e26b904 doxygen: add 1.9.4 (#30975) 2022-06-03 08:54:34 -07:00
Jacob Merson
73865c38f9 Include new versions of model-traits package (#30972) 2022-06-03 08:51:43 -07:00
Martin Diehl
38ccefbe84 mpicxx does not work with icpx (#30098) 2022-06-03 08:40:02 -07:00
Adam J. Stewart
1bd33d88bd py-protobuf: pin dependents to @:3 (#30880) 2022-06-03 00:32:02 -04:00
Seth R. Johnson
67ad23cc11 geant4: enable building against spack-built geant outside of spack (#30936) 2022-06-02 21:09:41 -06:00
Adam J. Stewart
8640b50258 Rust: Apple M1 support (#30823) 2022-06-02 20:57:40 -04:00
Adam J. Stewart
043cc688ef py-torch: fix Apple M1 support (#30833) 2022-06-02 20:51:18 -04:00
Adam J. Stewart
e52527029a OpenJDK: fix Apple M1 support (#30826) 2022-06-02 20:48:55 -04:00
Alex Hedges
a7d2f76ac5 git: add v2.36.1 (#30966) 2022-06-02 13:21:37 -07:00
Derek Ryan Strong
fbb134b1af Add lftp 4.9.2 (#30967) 2022-06-02 19:34:46 +00:00
Bitllion
548e9ae88c Abacus (#30933)
* add pacakge: abacus

* rename

* fix some style bugs

* update package:abacus

* fix some style bugs

* format code

* Delete a line of useless comments

* updatee abacus

* Update package.py

add new version info and fix a bug on mkl

* update version info and fix a bug on mkl

* Update package.py

* fix style bugs

* trailing whitespace
2022-06-02 12:09:53 -07:00
Adam J. Stewart
5728ba0122 Use stable URLs for patch-diff GitHub patches (#30953) 2022-06-02 12:52:05 -04:00
Adam J. Stewart
2bda10edb5 Fix typo in GitHub Actions step name (#30924) 2022-06-02 16:33:39 +00:00
miheer vaidya
bd15ca4f16 Update bear to v3.0.0 (#30835) 2022-06-02 09:31:10 -07:00
Jakub Krajniak
f9dfd5fcb8 Add flag to enable WRF-Chem module (#30950)
* Add flag to enable WRF-Chem module

* Update var/spack/repos/builtin/packages/wrf/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* Set chem variant only for v4+

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2022-06-02 09:11:45 -07:00
Glenn Johnson
f3c4e1adbb texlive: add 20220321 distribution (#30955) 2022-06-02 09:05:24 -07:00
Seth R. Johnson
b2d3ed9096 pmix: add explicit hwloc dependency (#30897)
pmix@:2 uses hwloc if it's available (e.g. in homebrew) which can break
the installation.
2022-06-02 14:47:53 +02:00
Mikael Simberg
dac5fec255 Add pika 0.5.0 (#30960) 2022-06-02 13:56:05 +02:00
Axel Huebl
9784b8f926 Prepare: openPMD-api 0.15.0-dev (#29484)
Anticipate openPMD-api changes in the next major release that are
already in `dev` (aka Spack `develop`):
- C++17 requirement
- drop: `mpark-variant` public dependency
- add: `toml11` private dependency

Also add @franzpoeschel as co-maintainer for the Spack package.
2022-06-01 19:13:33 -06:00
Axel Huebl
adef8f6ca7 WarpX: Patch no-MPI & Lib Install (#30866)
Fixes WarpX issues:
- https://github.com/ECP-WarpX/WarpX/pull/3134
- https://github.com/ECP-WarpX/WarpX/pull/3141

and uses GitHub patch URLs directly instead of storing
patch copies.
2022-06-01 18:49:25 -06:00
Larry Knox
c36f15e29e hdf5: new version version 1.10.9 (#30903) 2022-06-01 16:37:37 -06:00
Carlos Bederián
03531ed904 openmpi: add 4.1.4 (#30947) 2022-06-01 16:21:38 -06:00
Carlos Bederián
54332b2d83 python: add 3.9.13 (#30948) 2022-06-01 15:37:31 -06:00
Xavier Delaruelle
165f42b7ce environment-modules: add version 5.1.1 (#30946) 2022-06-01 12:17:48 -06:00
Sreenivasa Murthy Kolam
1190d03b0f Bump up the version for ROCm-5.1.3 release (#30819)
* Bump up the version for ROCm-5.1.3 release

* remove extra comma from hashes for device-libs of rocm-openmp-extras
2022-06-01 10:57:10 -07:00
kwryankrattiger
5faa927fe6 Ascent: Patch find conduit python (#30949)
Some systems have trouble when using the python on the login node so
this should provide an option to build that doesn't require running
python.
2022-06-01 10:36:33 -07:00
Adam J. Stewart
c60d220f81 py-jupyterlab: add v3.4.2 (#30867) 2022-06-01 10:18:47 -07:00
Hartmut Kaiser
61d3d60414 Update HPX recipe for HPX V1.8.0 (#30896) 2022-06-01 11:06:03 -06:00
rashawnLK
174258c09a Updated intel-gtpin package.py for most recent version, GTPin 3.0. (#30877)
* Updated intel-gtpin package.py for  most recent version, GTPin 3.0.

* Fixed style issues in package.py -- removed trailing whitespace on two
lines.
2022-06-01 11:05:41 -06:00
Erik
73c6a8f73d Version updates for SUNDIALS and CUDA (#30874) 2022-06-01 11:01:32 -06:00
Olivier Cessenat
86dc904080 ngspice: adding version 37 (#30925) 2022-06-01 10:50:02 -06:00
Weiqun Zhang
9e1c87409d amrex: add v22.06 (#30951) 2022-06-01 10:49:46 -06:00
Sergey Kosukhin
2b30dc2e30 nag: add new version (#30927)
* nag: add new version

* nag: update maintainers
2022-06-01 10:49:32 -06:00
Ben Darwin
b1ce756d69 minc-toolkit: add version 1.9.18.2 (#30926) 2022-06-01 10:45:34 -06:00
Ida Mjelde
1194ac6985 Adding a libunwind variant to libzmq (#30932)
* Adding a libunwind variant to libzmq

* Remove whitespace line 46
2022-06-01 10:29:56 -06:00
Asher Mancinelli
954f961208 tmux: support building from master and utf8 opts (#30928)
* tmux: support building from master and utf8 opts

* Fix style errors
2022-06-01 10:29:35 -06:00
Zack Galbreath
47ac710796 CPU & memory requests for jobs that generate GitLab CI pipelines (#30940)
gitlab ci: make sure pipeline generation isn't resource starved
2022-06-01 09:43:23 -06:00
Derek Ryan Strong
d7fb5a6db4 rclone: add 1.58 (#30887)
* Add rclone 1.58

* Update rclone git repo path
2022-05-31 19:35:12 -07:00
Maciej Wójcik
e0624b9278 gromacs: Add recent releases (#30892)
* gromacs: Add recent releases

* gromacs: Update branch name

* gromacs: Update links
2022-05-31 19:27:23 -07:00
Olivier Cessenat
e86614f7b8 gmsh: adding version 4.10.3 (#30923) 2022-05-31 18:53:03 -07:00
Garth N. Wells
d166b948ce fenics-dolfinx: dependency updates (#30919)
* Add pugixml dependency

* Dependency updates

* Fix Spack Numpy verion

* Test more generous NumPy constraint

* Fix NumPy requirment
2022-05-31 18:49:49 -07:00
lorddavidiii
9cc3a2942d cfitsio: add 4.1.0 (#30920) 2022-05-31 18:46:07 -07:00
Marie Houillon
5d685f9ff6 New version for openCARP packages (#30931)
Co-authored-by: openCARP consortium <info@opencarp.org>
2022-05-31 18:21:55 -07:00
Paul Kuberry
9ddf45964d xyce: add sha for version 7.5.0 (#30941) 2022-05-31 17:59:13 -07:00
iarspider
b88cc77f16 xpmem package: add patches for building on FC 35 with kernel 5.16.18-200 (#29945) 2022-05-31 15:55:51 -07:00
Robert Cohn
f3af38ba9b Fix module support for oneapi compilers (#28901)
Updates to improve Spack-generated modules for Intel oneAPI compilers:

* intel-oneapi-compilers set CC etc.
* Add a new package intel-oneapi-compilers-classic which can be used to
  generate a module which sets CC etc. to older compilers (e.g. icc)
* lmod module logic now updated to treat the intel-oneapi-compilers*
  packages as compilers
2022-05-31 15:02:25 -07:00
Wouter Deconinck
adc9f887ea acts-dd4hep: new package; acts: new version (#30850)
* acts-dd4hep: new package, separated from new acts@19.1.0

* acts-dd4hep: improved versioning

* acts-dd4hep: don't use curl | sha256sum

* acts: new variant `odd` for Open Data Detector

* acts-dd4hep: style changes
2022-05-31 11:30:36 -07:00
Wouter Deconinck
9461f482d9 assimp: new version 5.2.4 (#30929) 2022-05-31 12:25:24 -06:00
Paul Kuberry
e014b889c6 xyce: remove python packages as +pymi dependencies and hdf5 from trilinos dependency (#30938) 2022-05-31 14:04:57 -04:00
snehring
181ac574bb sentieon-genomics: adding version 202112.04 (#30876) 2022-05-31 10:05:27 -06:00
Adam J. Stewart
055c9d125d CUDA: make cuda_arch sticky (#30910) 2022-05-30 12:53:15 -07:00
Evan Bollig
a94438b1f5 Added AWS-AHUG alinux2 pipeline (#24601)
Add spack stacks targeted at Spack + AWS + ARM HPC User Group hackathon.  Includes
a list of miniapps and full-apps that are ready to run on both x86_64 and aarch64.

Co-authored-by: Scott Wittenburg <scott.wittenburg@kitware.com>
2022-05-30 10:26:39 -06:00
Joseph Wang
f583e471b8 pass CC variable to make (#30912)
Set CC to cc
2022-05-30 08:44:31 +02:00
Brian Van Essen
f67f3b1796 Add new versions of protobuf and py-protobuf (#30503)
* Add new versions

* Updated the hashes to match the published pypi.org hashes.  Added version constraints for Python.
2022-05-30 01:23:26 -05:00
Jean Luca Bez
77c86c759c HDF5 VOL-ASYNC update versions (#30900) 2022-05-29 17:49:52 -04:00
Adam J. Stewart
8084259bd3 protobuf: fix spack versions (#30879) 2022-05-28 14:53:24 -06:00
Evan Bollig
98860c6a5f Alinux isc buildcache (#30462)
Add two new stacks targeted at x86_64 and arm, representing an initial list of packages 
used by current and planned AWS Workshops, and built in conjunction with the ISC22
announcement of the spack public binary cache.

Co-authored-by: Scott Wittenburg <scott.wittenburg@kitware.com>
2022-05-28 11:32:53 -06:00
Todd Gamblin
e6929b9ff9 0.18.0.dev0 -> 0.19.0.dev0 (#30907) 2022-05-28 17:23:01 +00:00
Tom Scogland
18c2f1a57a refactor: packages import spack.package explicitly (#30404)
Explicitly import package utilities in all packages, and corresponding fallout.

This includes:

* rename `spack.package` to `spack.package_base`
* rename `spack.pkgkit` to `spack.package`
* update all packages in builtin, builtin_mock and tutorials to include `from spack.package import *`
* update spack style
  * ensure packages include the import
  * automatically add the new import and remove any/all imports of `spack` and `spack.pkgkit`
    from packages when using `--fix`
  * add support for type-checking packages with mypy when SPACK_MYPY_CHECK_PACKAGES
    is set in the environment
* fix all type checking errors in packages in spack upstream
* update spack create to include the new imports
* update spack repo to inject the new import, injection persists to allow for a deprecation period

Original message below:
 
As requested @adamjstewart, update all packages to use pkgkit.  I ended up using isort to do this,
so repro is easy:

```console
$ isort -a 'from spack.pkgkit import *' --rm 'spack' ./var/spack/repos/builtin/packages/*/package.py
$ spack style --fix
```

There were several line spacing fixups caused either by space manipulation in isort or by packages
that haven't been touched since we added requirements, but there are no functional changes in here.

* [x] add config to isort to make sure this is maintained going forward
2022-05-28 12:55:44 -04:00
Todd Gamblin
3054cd0eff update changelog for v0.18.0 (#30905) 2022-05-28 17:33:20 +02:00
JDBetteridge
9016b79270 Additional BLAS/LAPACK library configuration for Numpy (#30817)
* Add amdblis and amdlibflame as BLAS/LAPACK options

* Add Cray-libsci as BLAS/LAPACK option

* Use Netlib config for Cray-libsci
2022-05-28 03:33:31 -06:00
Erik Schnetter
9f5c6fb398 hpx: New version 1.8.0 (#30848) 2022-05-28 09:40:20 +02:00
Greg Becker
19087c9d35 target optimization: re-norm optimization scale so that 0 is best. (#29926)
referred targets are currently the only minimization criteria for Spack for which we allow
negative values. That means Spack may be incentivized to add nodes to the DAG if they
match the preferred target.

This PR re-norms the minimization criteria so that preferred targets are weighted from 0,
and default target weights are offset by the number of preferred targets per-package to
calculate node_target_weight.

Also fixes a bug in the test for preferred targets that was making the test easier to pass
than it should be.
2022-05-27 22:49:41 -07:00
Greg Becker
4116b04368 update tutorial command for v0.18.0 and new gpg key (#30904) 2022-05-28 02:36:20 +00:00
JDBetteridge
1485931695 Ensure same BLAS/LAPACK config from Numpy used in Scipy (#30818)
* Call Numpy package's set_blas_lapack() and setup_build_environment() in Scipy package

* Remove broken link from comment

* Use .package attribute of spec to avoid import
2022-05-27 10:46:21 -07:00
Derek Ryan Strong
78cac4d840 Add R 4.2.0 (#30859) 2022-05-27 08:24:28 -05:00
Michael Kuhn
2f628c3a97 gcc: add 9.5.0 (#30893) 2022-05-27 12:18:57 +02:00
Adam J. Stewart
a3a8710cbe Python: fix clingo bootstrapping on Apple M1 (#30834)
This PR fixes several issues I noticed while trying to get Spack working on Apple M1.

- [x] `build_environment.py` attempts to add `spec['foo'].libs` and `spec['foo'].headers` to our compiler wrappers for all dependencies using a try-except that ignores `NoLibrariesError` and `NoHeadersError` respectively. However, The `libs` and `headers` attributes of the Python package were erroneously using `RuntimeError` instead.
- [x] `spack external find python` (used during bootstrapping) currently has no way to determine whether or not an installation is `+shared`, so previously we would only search for static Python libs. However, most distributions including XCode/Conda/Intel ship shared Python libs. I updated `libs` to search for both shared and static (order based on variant) as a fallback.
- [x] The `headers` attribute was recursively searching in `prefix.include` for `pyconfig.h`, but this could lead to non-deterministic behavior if multiple versions of Python are installed and `pyconfig.h` files exist in multiple `<prefix>/include/pythonX.Y` locations. It's safer to search in `sysconfig.get_path('include')` instead.
- [x] The Python installation that comes with XCode is broken, and `sysconfig.get_paths` is hard-coded to return specific directories. This meant that our logic for `platlib`/`purelib`/`include` where we replace `platbase`/`base`/`installed_base` with `prefix` wasn't working and the `mkdirp` in `setup_dependent_package` was trying to create a directory in root, giving permissions issues. Even if you commented out those `mkdirp` calls, Spack would add the wrong directories to `PYTHONPATH`. Added a fallback hard-coded to `lib/pythonX.Y/site-packages` if sysconfig is broken (this is what distutils always did).
2022-05-27 03:18:20 -07:00
Paul R. C. Kent
0bf3a9c2af llvm: 14.0.3 and 14.0.4 (#30888) 2022-05-27 09:51:54 +02:00
Severin Strobl
cff955f7bd otf2/scorep: add versions 3.0/7.1 (#28631) 2022-05-27 00:43:58 +02:00
Scott Wittenburg
3d43ebec72 Revert "strip -Werror: all specific or none (#30284)" (#30878)
This reverts commit 330832c22c.
2022-05-26 14:17:01 -07:00
Robert Pavel
6fd07479e3 Updated mfem constraints in laghos spackage (#30851)
Updated mfme constraints in laghos spackage to better match comments and
support legacy builds of `laghos@1.0:2.0`
2022-05-26 10:20:42 -07:00
Simon Pintarelli
03bc36f8b0 q-e-sirius: remove ~apps constraint (#30857) 2022-05-26 10:18:37 -07:00
Brian Van Essen
93e1b283b7 Added hash for new versions (#30860) 2022-05-26 10:15:59 -07:00
Derek Ryan Strong
df2c0fbfbd Add new versions of GNU parallel (#30862) 2022-05-26 10:09:43 -07:00
Derek Ryan Strong
54a69587c3 Add newer nano versions (#30865) 2022-05-26 10:04:50 -07:00
Hans Johansen
294312f02b Adding new package bricks for x86, cuda (#30863)
* Adding new package bricks for x86, cuda

* Fixed complaints from "spack style" that CI found

* add license comment at top

Co-authored-by: drhansj <drhansj@berkeley.edu>
Co-authored-by: eugeneswalker <38933153+eugeneswalker@users.noreply.github.com>
2022-05-26 07:40:11 -07:00
Massimiliano Culpo
0636fdbfef Remove the warning that Spack prints at each spec (#30872)
Add instead a warning box in the documentation
2022-05-26 14:35:20 +00:00
Scott Wittenburg
85e13260cf ci: Support secure binary signing on protected pipelines (#30753)
This PR supports the creation of securely signed binaries built from spack
develop as well as release branches and tags. Specifically:

- remove internal pr mirror url generation logic in favor of buildcache destination
on command line
    - with a single mirror url specified in the spack.yaml, this makes it clearer where 
    binaries from various pipelines are pushed
- designate some tags as reserved: ['public', 'protected', 'notary']
    - these tags are stripped from all jobs by default and provisioned internally
    based on pipeline type
- update gitlab ci yaml to include pipelines on more protected branches than just
develop (so include releases and tags)
    - binaries from all protected pipelines are pushed into mirrors including the
    branch name so releases, tags, and develop binaries are kept separate
- update rebuild jobs running on protected pipelines to run on special runners
provisioned with an intermediate signing key
    - protected rebuild jobs no longer use "SPACK_SIGNING_KEY" env var to
    obtain signing key (in fact, final signing key is nowhere available to rebuild jobs)
    - these intermediate signatures are verified at the end of each pipeline by a new
    signing job to ensure binaries were produced by a protected pipeline
- optionallly schedule a signing/notary job at the end of the pipeline to sign all
packges in the mirror
    - add signing-job-attributes to gitlab-ci section of spack environment to allow
    configuration
    - signing job runs on special runner (separate from protected rebuild runners)
    provisioned with public intermediate key and secret signing key
2022-05-26 08:31:22 -06:00
Adam J. Stewart
b5a519fa51 py-tensorboard: add v2.9.0 (#30832) 2022-05-26 07:43:40 -04:00
Adam J. Stewart
2e2d0b3211 libtiff: remove extra dependencies/patch (#30854) 2022-05-25 23:37:45 -06:00
9016 changed files with 341175 additions and 257636 deletions

45
.flake8
View File

@@ -1,43 +1,25 @@
# -*- conf -*-
# flake8 settings for Spack core files.
# flake8 settings for Spack.
#
# These exceptions are for Spack core files. We're slightly more lenient
# with packages. See .flake8_packages for that.
#
# E1: Indentation
# - E129: visually indented line with same indent as next logical line
#
# E2: Whitespace
# - E221: multiple spaces before operator
# - E241: multiple spaces after ','
# - E272: multiple spaces before keyword
#
# E7: Statement
# This is the only flake8 rule Spack violates somewhat flagrantly
# - E731: do not assign a lambda expression, use a def
#
# W5: Line break warning
# - W503: line break before binary operator
# - W504: line break after binary operator
#
# These are required to get the package.py files to test clean:
# - F999: syntax error in doctest
#
# N8: PEP8-naming
# - N801: class names should use CapWords convention
# - N813: camelcase imported as lowercase
# - N814: camelcase imported as constant
#
# F4: pyflakes import checks, these are now checked by mypy more precisely
# - F403: from module import *
# - F405: undefined name or from *
#
# Black ignores, these are incompatible with black style and do not follow PEP-8
# This is the only flake8 exception needed when using Black.
# - E203: white space around slice operators can be required, ignore : warn
# - W503: see above, already ignored for line-breaks
#
# We still allow these in packages (Would like to get rid of them or rely on mypy
# in the future)
# - F403: from/import * used; unable to detect undefined names
# - F405: undefined name or from *
# - F821: undefined name (needed with from/import *)
#
[flake8]
ignore = E129,E221,E241,E272,E731,W503,W504,F999,N801,N813,N814,F403,F405
max-line-length = 88
#ignore = E129,,W503,W504,F999,N801,N813,N814,F403,F405,E203
extend-ignore = E731,E203
max-line-length = 99
# F4: Import
# - F405: `name` may be undefined, or undefined from star imports: `module`
@@ -46,7 +28,8 @@ max-line-length = 88
# - F821: undefined name `name`
#
per-file-ignores =
var/spack/repos/*/package.py:F405,F821
var/spack/repos/*/package.py:F403,F405,F821
*-ci-package.py:F403,F405,F821
# exclude things we usually do not want linting for.
# These still get linted when passed explicitly, as when spack flake8 passes

5
.git-blame-ignore-revs Normal file
View File

@@ -0,0 +1,5 @@
# .git-blame-ignore-revs
# Formatted entire codebase with black 23
603569e321013a1a63a637813c94c2834d0a0023
# Formatted entire codebase with black 22
f52f6e99dbf1131886a80112b8c79dfc414afb7c

1
.gitattributes vendored
View File

@@ -1,3 +1,4 @@
*.py diff=python
*.lp linguist-language=Prolog
lib/spack/external/* linguist-vendored
*.bat text eol=crlf

View File

@@ -9,7 +9,7 @@ body:
Thanks for taking the time to report this build failure. To proceed with the report please:
1. Title the issue `Installation issue: <name-of-the-package>`.
2. Provide the information required below.
We encourage you to try, as much as possible, to reduce your problem to the minimal example that still reproduces the issue. That would help us a lot in fixing it quickly and effectively!
- type: textarea
id: reproduce
@@ -29,7 +29,9 @@ body:
description: |
Please post the error message from spack inside the `<details>` tag below:
value: |
<details><summary>Error message</summary><pre>
<details><summary>Error message</summary>
<pre>
...
</pre></details>
validations:
@@ -53,7 +55,7 @@ body:
Please upload the following files:
* **`spack-build-out.txt`**
* **`spack-build-env.txt`**
They should be present in the stage directory of the failing build. Also upload any `config.log` or similar file if one exists.
- type: markdown
attributes:

View File

@@ -1,4 +1,4 @@
name: "\U0001F38A Feature request"
name: "\U0001F38A Feature request"
description: Suggest adding a feature that is not yet in Spack
labels: [feature]
body:
@@ -29,13 +29,11 @@ body:
attributes:
label: General information
options:
- label: I have run `spack --version` and reported the version of Spack
required: true
- label: I have searched the issues of this repo and believe this is not a duplicate
required: true
- type: markdown
attributes:
value: |
If you want to ask a question about the tool (how to use it, what it can currently do, etc.), try the `#general` channel on [our Slack](https://slack.spack.io/) first. We have a welcoming community and chances are you'll get your reply faster and without opening an issue.
Other than that, thanks for taking the time to contribute to Spack!

64
.github/ISSUE_TEMPLATE/test_error.yml vendored Normal file
View File

@@ -0,0 +1,64 @@
name: "\U0001F4A5 Tests error"
description: Some package in Spack had stand-alone tests that didn't pass
title: "Testing issue: "
labels: [test-error]
body:
- type: textarea
id: reproduce
attributes:
label: Steps to reproduce the failure(s) or link(s) to test output(s)
description: |
Fill in the test output from the exact spec that is having stand-alone test failures. Links to test outputs (e.g., CDash) can also be provided.
value: |
```console
$ spack spec -I <spec>
...
```
- type: textarea
id: error
attributes:
label: Error message
description: |
Please post the error message from spack inside the `<details>` tag below:
value: |
<details><summary>Error message</summary>
<pre>
...
</pre></details>
validations:
required: true
- type: textarea
id: information
attributes:
label: Information on your system or the test runner
description: Please include the output of `spack debug report` for your system.
validations:
required: true
- type: markdown
attributes:
value: |
If you have any relevant configuration detail (custom `packages.yaml` or `modules.yaml`, etc.) you can add that here as well.
- type: textarea
id: additional_information
attributes:
label: Additional information
description: |
Please upload test logs or any additional information about the problem.
- type: markdown
attributes:
value: |
Some packages have maintainers who have volunteered to debug build failures. Run `spack maintainers <name-of-the-package>` and **@mention** them here if they exist.
- type: checkboxes
id: checks
attributes:
label: General information
options:
- label: I have reported the version of Spack/Python/Platform/Runner
required: true
- label: I have run `spack maintainers <name-of-the-package>` and **@mentioned** any maintainers
required: true
- label: I have uploaded any available logs
required: true
- label: I have searched the issues of this repo and believe this is not a duplicate
required: true

View File

@@ -5,3 +5,8 @@ updates:
directory: "/"
schedule:
interval: "daily"
# Requirements to build documentation
- package-ecosystem: "pip"
directory: "/lib/spack/docs"
schedule:
interval: "daily"

44
.github/workflows/audit.yaml vendored Normal file
View File

@@ -0,0 +1,44 @@
name: audit
on:
workflow_call:
inputs:
with_coverage:
required: true
type: string
python_version:
required: true
type: string
concurrency:
group: audit-${{inputs.python_version}}-${{github.ref}}-${{github.event.pull_request.number || github.run_number}}
cancel-in-progress: true
jobs:
# Run audits on all the packages in the built-in repository
package-audits:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # @v2
- uses: actions/setup-python@57ded4d7d5e986d7296eab16560982c6dd7c923b # @v2
with:
python-version: ${{inputs.python_version}}
- name: Install Python packages
run: |
pip install --upgrade pip setuptools pytest coverage[toml]
- name: Package audits (with coverage)
if: ${{ inputs.with_coverage == 'true' }}
run: |
. share/spack/setup-env.sh
coverage run $(which spack) audit packages
coverage combine
coverage xml
- name: Package audits (without coverage)
if: ${{ inputs.with_coverage == 'false' }}
run: |
. share/spack/setup-env.sh
$(which spack) audit packages
- uses: codecov/codecov-action@894ff025c7b54547a9a2a1e9f228beae737ad3c2 # @v2.1.0
if: ${{ inputs.with_coverage == 'true' }}
with:
flags: unittests,linux,audits

7
.github/workflows/bootstrap-test.sh vendored Executable file
View File

@@ -0,0 +1,7 @@
#!/bin/bash
set -ex
source share/spack/setup-env.sh
$PYTHON bin/spack bootstrap disable spack-install
$PYTHON bin/spack -d solve zlib
tree $BOOTSTRAP/store
exit 0

View File

@@ -3,28 +3,19 @@ name: Bootstrapping
on:
# This Workflow can be triggered manually
workflow_dispatch:
pull_request:
branches:
- develop
- releases/**
paths-ignore:
# Don't run if we only modified packages in the
# built-in repository or documentation
- 'var/spack/repos/builtin/**'
- '!var/spack/repos/builtin/packages/clingo-bootstrap/**'
- '!var/spack/repos/builtin/packages/python/**'
- '!var/spack/repos/builtin/packages/re2c/**'
- 'lib/spack/docs/**'
workflow_call:
schedule:
# nightly at 2:16 AM
- cron: '16 2 * * *'
jobs:
concurrency:
group: bootstrap-${{github.ref}}-${{github.event.pull_request.number || github.run_number}}
cancel-in-progress: true
jobs:
fedora-clingo-sources:
runs-on: ubuntu-latest
container: "fedora:latest"
if: github.repository == 'spack/spack'
steps:
- name: Install dependencies
run: |
@@ -33,7 +24,9 @@ jobs:
make patch unzip which xz python3 python3-devel tree \
cmake bison bison-devel libstdc++-static
- name: Checkout
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
with:
fetch-depth: 0
- name: Setup non-root user
run: |
# See [1] below
@@ -44,13 +37,13 @@ jobs:
shell: runuser -u spack-test -- bash {0}
run: |
git --version
git fetch --unshallow
. .github/workflows/setup_git.sh
- name: Bootstrap clingo
shell: runuser -u spack-test -- bash {0}
run: |
source share/spack/setup-env.sh
spack bootstrap untrust github-actions-v0.2
spack bootstrap disable github-actions-v0.4
spack bootstrap disable github-actions-v0.3
spack external find cmake bison
spack -d solve zlib
tree ~/.spack/bootstrap/store/
@@ -58,7 +51,6 @@ jobs:
ubuntu-clingo-sources:
runs-on: ubuntu-latest
container: "ubuntu:latest"
if: github.repository == 'spack/spack'
steps:
- name: Install dependencies
env:
@@ -70,7 +62,9 @@ jobs:
make patch unzip xz-utils python3 python3-dev tree \
cmake bison
- name: Checkout
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
with:
fetch-depth: 0
- name: Setup non-root user
run: |
# See [1] below
@@ -81,13 +75,13 @@ jobs:
shell: runuser -u spack-test -- bash {0}
run: |
git --version
git fetch --unshallow
. .github/workflows/setup_git.sh
- name: Bootstrap clingo
shell: runuser -u spack-test -- bash {0}
run: |
source share/spack/setup-env.sh
spack bootstrap untrust github-actions-v0.2
spack bootstrap disable github-actions-v0.4
spack bootstrap disable github-actions-v0.3
spack external find cmake bison
spack -d solve zlib
tree ~/.spack/bootstrap/store/
@@ -95,7 +89,6 @@ jobs:
ubuntu-clingo-binaries-and-patchelf:
runs-on: ubuntu-latest
container: "ubuntu:latest"
if: github.repository == 'spack/spack'
steps:
- name: Install dependencies
env:
@@ -106,7 +99,9 @@ jobs:
bzip2 curl file g++ gcc gfortran git gnupg2 gzip \
make patch unzip xz-utils python3 python3-dev tree
- name: Checkout
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
with:
fetch-depth: 0
- name: Setup non-root user
run: |
# See [1] below
@@ -117,7 +112,6 @@ jobs:
shell: runuser -u spack-test -- bash {0}
run: |
git --version
git fetch --unshallow
. .github/workflows/setup_git.sh
- name: Bootstrap clingo
shell: runuser -u spack-test -- bash {0}
@@ -129,7 +123,6 @@ jobs:
opensuse-clingo-sources:
runs-on: ubuntu-latest
container: "opensuse/leap:latest"
if: github.repository == 'spack/spack'
steps:
- name: Install dependencies
run: |
@@ -140,90 +133,110 @@ jobs:
make patch unzip which xz python3 python3-devel tree \
cmake bison
- name: Checkout
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
with:
fetch-depth: 0
- name: Setup repo
run: |
# See [1] below
git config --global --add safe.directory /__w/spack/spack
git --version
git fetch --unshallow
. .github/workflows/setup_git.sh
- name: Bootstrap clingo
run: |
source share/spack/setup-env.sh
spack bootstrap untrust github-actions-v0.2
spack bootstrap disable github-actions-v0.4
spack bootstrap disable github-actions-v0.3
spack external find cmake bison
spack -d solve zlib
tree ~/.spack/bootstrap/store/
macos-clingo-sources:
runs-on: macos-latest
if: github.repository == 'spack/spack'
steps:
- name: Install dependencies
run: |
brew install cmake bison@2.7 tree
- name: Checkout
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
- name: Bootstrap clingo
run: |
source share/spack/setup-env.sh
export PATH=/usr/local/opt/bison@2.7/bin:$PATH
spack bootstrap untrust github-actions-v0.2
spack bootstrap disable github-actions-v0.4
spack bootstrap disable github-actions-v0.3
spack external find --not-buildable cmake bison
spack -d solve zlib
tree ~/.spack/bootstrap/store/
macos-clingo-binaries:
runs-on: macos-latest
runs-on: ${{ matrix.macos-version }}
strategy:
matrix:
python-version: ['3.5', '3.6', '3.7', '3.8', '3.9', '3.10']
if: github.repository == 'spack/spack'
macos-version: ['macos-11', 'macos-12']
steps:
- name: Install dependencies
run: |
brew install tree
- name: Checkout
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6
with:
python-version: ${{ matrix.python-version }}
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
- name: Bootstrap clingo
run: |
source share/spack/setup-env.sh
spack bootstrap untrust spack-install
spack -d solve zlib
tree ~/.spack/bootstrap/store/
set -ex
for ver in '3.7' '3.8' '3.9' '3.10' '3.11' ; do
not_found=1
ver_dir="$(find $RUNNER_TOOL_CACHE/Python -wholename "*/${ver}.*/*/bin" | grep . || true)"
echo "Testing $ver_dir"
if [[ -d "$ver_dir" ]] ; then
if $ver_dir/python --version ; then
export PYTHON="$ver_dir/python"
not_found=0
old_path="$PATH"
export PATH="$ver_dir:$PATH"
./bin/spack-tmpconfig -b ./.github/workflows/bootstrap-test.sh
export PATH="$old_path"
fi
fi
# NOTE: test all pythons that exist, not all do on 12
done
ubuntu-clingo-binaries:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['2.7', '3.5', '3.6', '3.7', '3.8', '3.9', '3.10']
if: github.repository == 'spack/spack'
runs-on: ubuntu-20.04
steps:
- name: Checkout
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
with:
python-version: ${{ matrix.python-version }}
fetch-depth: 0
- name: Setup repo
run: |
git --version
git fetch --unshallow
. .github/workflows/setup_git.sh
- name: Bootstrap clingo
run: |
source share/spack/setup-env.sh
spack bootstrap untrust spack-install
spack -d solve zlib
tree ~/.spack/bootstrap/store/
set -ex
for ver in '3.7' '3.8' '3.9' '3.10' '3.11' ; do
not_found=1
ver_dir="$(find $RUNNER_TOOL_CACHE/Python -wholename "*/${ver}.*/*/bin" | grep . || true)"
echo "Testing $ver_dir"
if [[ -d "$ver_dir" ]] ; then
if $ver_dir/python --version ; then
export PYTHON="$ver_dir/python"
not_found=0
old_path="$PATH"
export PATH="$ver_dir:$PATH"
./bin/spack-tmpconfig -b ./.github/workflows/bootstrap-test.sh
export PATH="$old_path"
fi
fi
if (($not_found)) ; then
echo Required python version $ver not found in runner!
exit 1
fi
done
ubuntu-gnupg-binaries:
runs-on: ubuntu-latest
container: "ubuntu:latest"
if: github.repository == 'spack/spack'
steps:
- name: Install dependencies
env:
@@ -234,7 +247,9 @@ jobs:
bzip2 curl file g++ gcc patchelf gfortran git gzip \
make patch unzip xz-utils python3 python3-dev tree
- name: Checkout
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
with:
fetch-depth: 0
- name: Setup non-root user
run: |
# See [1] below
@@ -245,20 +260,18 @@ jobs:
shell: runuser -u spack-test -- bash {0}
run: |
git --version
git fetch --unshallow
. .github/workflows/setup_git.sh
- name: Bootstrap GnuPG
shell: runuser -u spack-test -- bash {0}
run: |
source share/spack/setup-env.sh
spack bootstrap untrust spack-install
spack bootstrap disable spack-install
spack -d gpg list
tree ~/.spack/bootstrap/store/
ubuntu-gnupg-sources:
runs-on: ubuntu-latest
container: "ubuntu:latest"
if: github.repository == 'spack/spack'
steps:
- name: Install dependencies
env:
@@ -270,7 +283,9 @@ jobs:
make patch unzip xz-utils python3 python3-dev tree \
gawk
- name: Checkout
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
with:
fetch-depth: 0
- name: Setup non-root user
run: |
# See [1] below
@@ -281,20 +296,19 @@ jobs:
shell: runuser -u spack-test -- bash {0}
run: |
git --version
git fetch --unshallow
. .github/workflows/setup_git.sh
- name: Bootstrap GnuPG
shell: runuser -u spack-test -- bash {0}
run: |
source share/spack/setup-env.sh
spack solve zlib
spack bootstrap untrust github-actions-v0.2
spack bootstrap disable github-actions-v0.4
spack bootstrap disable github-actions-v0.3
spack -d gpg list
tree ~/.spack/bootstrap/store/
macos-gnupg-binaries:
runs-on: macos-latest
if: github.repository == 'spack/spack'
steps:
- name: Install dependencies
run: |
@@ -302,17 +316,16 @@ jobs:
# Remove GnuPG since we want to bootstrap it
sudo rm -rf /usr/local/bin/gpg
- name: Checkout
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
- name: Bootstrap GnuPG
run: |
source share/spack/setup-env.sh
spack bootstrap untrust spack-install
spack bootstrap disable spack-install
spack -d gpg list
tree ~/.spack/bootstrap/store/
macos-gnupg-sources:
runs-on: macos-latest
if: github.repository == 'spack/spack'
steps:
- name: Install dependencies
run: |
@@ -320,12 +333,13 @@ jobs:
# Remove GnuPG since we want to bootstrap it
sudo rm -rf /usr/local/bin/gpg
- name: Checkout
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
- name: Bootstrap GnuPG
run: |
source share/spack/setup-env.sh
spack solve zlib
spack bootstrap untrust github-actions-v0.2
spack bootstrap disable github-actions-v0.4
spack bootstrap disable github-actions-v0.3
spack -d gpg list
tree ~/.spack/bootstrap/store/

View File

@@ -13,12 +13,16 @@ on:
paths:
- '.github/workflows/build-containers.yml'
- 'share/spack/docker/*'
- 'share/templates/container/*'
- 'share/spack/templates/container/*'
- 'lib/spack/spack/container/*'
# Let's also build & tag Spack containers on releases.
release:
types: [published]
concurrency:
group: build_containers-${{github.ref}}-${{github.event.pull_request.number || github.run_number}}
cancel-in-progress: true
jobs:
deploy-images:
runs-on: ubuntu-latest
@@ -41,12 +45,18 @@ jobs:
[leap15, 'linux/amd64,linux/arm64,linux/ppc64le', 'opensuse/leap:15'],
[ubuntu-bionic, 'linux/amd64,linux/arm64,linux/ppc64le', 'ubuntu:18.04'],
[ubuntu-focal, 'linux/amd64,linux/arm64,linux/ppc64le', 'ubuntu:20.04'],
[ubuntu-jammy, 'linux/amd64,linux/arm64,linux/ppc64le', 'ubuntu:22.04']]
[ubuntu-jammy, 'linux/amd64,linux/arm64,linux/ppc64le', 'ubuntu:22.04'],
[almalinux8, 'linux/amd64,linux/arm64,linux/ppc64le', 'almalinux:8'],
[almalinux9, 'linux/amd64,linux/arm64,linux/ppc64le', 'almalinux:9'],
[rockylinux8, 'linux/amd64,linux/arm64', 'rockylinux:8'],
[rockylinux9, 'linux/amd64,linux/arm64,linux/ppc64le', 'rockylinux:9'],
[fedora37, 'linux/amd64,linux/arm64,linux/ppc64le', 'fedora:37'],
[fedora38, 'linux/amd64,linux/arm64,linux/ppc64le', 'fedora:38']]
name: Build ${{ matrix.dockerfile[0] }}
if: github.repository == 'spack/spack'
steps:
- name: Checkout
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # @v2
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # @v2
- name: Set Container Tag Normal (Nightly)
run: |
@@ -76,19 +86,19 @@ jobs:
fi
- name: Upload Dockerfile
uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8
uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce
with:
name: dockerfiles
path: dockerfiles
- name: Set up QEMU
uses: docker/setup-qemu-action@8b122486cedac8393e77aa9734c3528886e4a1a8 # @v1
uses: docker/setup-qemu-action@e81a89b1732b9c48d79cd809d8d81d79c4647a18 # @v1
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@dc7b9719a96d48369863986a06765841d7ea23f6 # @v1
uses: docker/setup-buildx-action@4b4e9c3e2d4531116a6f8ba8e71fc6e2cb6e6c8c # @v1
- name: Log in to GitHub Container Registry
uses: docker/login-action@49ed152c8eca782a232dede0303416e8f356c37b # @v1
uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a # @v1
with:
registry: ghcr.io
username: ${{ github.actor }}
@@ -96,13 +106,13 @@ jobs:
- name: Log in to DockerHub
if: github.event_name != 'pull_request'
uses: docker/login-action@49ed152c8eca782a232dede0303416e8f356c37b # @v1
uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a # @v1
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build & Deploy ${{ matrix.dockerfile[0] }}
uses: docker/build-push-action@e551b19e49efd4e98792db7592c17c09b89db8d8 # @v2
uses: docker/build-push-action@3b5e8027fcad23fda98b2e3ac259d8d67585f671 # @v2
with:
context: dockerfiles/${{ matrix.dockerfile[0] }}
platforms: ${{ matrix.dockerfile[1] }}

86
.github/workflows/ci.yaml vendored Normal file
View File

@@ -0,0 +1,86 @@
name: ci
on:
push:
branches:
- develop
- releases/**
pull_request:
branches:
- develop
- releases/**
concurrency:
group: ci-${{github.ref}}-${{github.event.pull_request.number || github.run_number}}
cancel-in-progress: true
jobs:
prechecks:
needs: [ changes ]
uses: ./.github/workflows/valid-style.yml
with:
with_coverage: ${{ needs.changes.outputs.core }}
all-prechecks:
needs: [ prechecks ]
runs-on: ubuntu-latest
steps:
- name: Success
run: "true"
# Check which files have been updated by the PR
changes:
runs-on: ubuntu-latest
# Set job outputs to values from filter step
outputs:
bootstrap: ${{ steps.filter.outputs.bootstrap }}
core: ${{ steps.filter.outputs.core }}
packages: ${{ steps.filter.outputs.packages }}
steps:
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # @v2
if: ${{ github.event_name == 'push' }}
with:
fetch-depth: 0
# For pull requests it's not necessary to checkout the code
- uses: dorny/paths-filter@4512585405083f25c027a35db413c2b3b9006d50
id: filter
with:
# See https://github.com/dorny/paths-filter/issues/56 for the syntax used below
# Don't run if we only modified packages in the
# built-in repository or documentation
filters: |
bootstrap:
- 'var/spack/repos/builtin/packages/clingo-bootstrap/**'
- 'var/spack/repos/builtin/packages/clingo/**'
- 'var/spack/repos/builtin/packages/python/**'
- 'var/spack/repos/builtin/packages/re2c/**'
- 'lib/spack/**'
- 'share/spack/**'
- '.github/workflows/bootstrap.yml'
- '.github/workflows/ci.yaml'
core:
- './!(var/**)/**'
packages:
- 'var/**'
# Some links for easier reference:
#
# "github" context: https://docs.github.com/en/actions/reference/context-and-expression-syntax-for-github-actions#github-context
# job outputs: https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idoutputs
# setting environment variables from earlier steps: https://docs.github.com/en/actions/reference/workflow-commands-for-github-actions#setting-an-environment-variable
#
bootstrap:
if: ${{ github.repository == 'spack/spack' && needs.changes.outputs.bootstrap == 'true' }}
needs: [ prechecks, changes ]
uses: ./.github/workflows/bootstrap.yml
unit-tests:
if: ${{ github.repository == 'spack/spack' && needs.changes.outputs.core == 'true' }}
needs: [ prechecks, changes ]
uses: ./.github/workflows/unit_tests.yaml
windows:
if: ${{ github.repository == 'spack/spack' && needs.changes.outputs.core == 'true' }}
needs: [ prechecks ]
uses: ./.github/workflows/windows_python.yml
all:
needs: [ windows, unit-tests, bootstrap ]
runs-on: ubuntu-latest
steps:
- name: Success
run: "true"

View File

@@ -1,67 +0,0 @@
# These are nightly package tests for macOS
# focus areas:
# - initial user experience
# - scientific python stack
name: macOS builds nightly
on:
schedule:
# nightly at 1 AM
- cron: '0 1 * * *'
pull_request:
branches:
- develop
paths:
# Run if we modify this yaml file
- '.github/workflows/macos_python.yml'
# TODO: run if we touch any of the recipes involved in this
# GitHub Action Limits
# https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions
jobs:
install_gcc:
name: gcc with clang
if: github.repository == 'spack/spack'
runs-on: macos-latest
steps:
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # @v2
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6 # @v2
with:
python-version: 3.9
- name: spack install
run: |
. .github/workflows/install_spack.sh
# 9.2.0 is the latest version on which we apply homebrew patch
spack install -v --fail-fast gcc@11.2.0 %apple-clang
install_jupyter_clang:
name: jupyter
if: github.repository == 'spack/spack'
runs-on: macos-latest
timeout-minutes: 700
steps:
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # @v2
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6 # @v2
with:
python-version: 3.9
- name: spack install
run: |
. .github/workflows/install_spack.sh
spack install -v --fail-fast py-jupyterlab %apple-clang
install_scipy_clang:
name: scipy, mpl, pd
if: github.repository == 'spack/spack'
runs-on: macos-latest
steps:
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # @v2
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6 # @v2
with:
python-version: 3.9
- name: spack install
run: |
. .github/workflows/install_spack.sh
spack install -v --fail-fast py-scipy %apple-clang
spack install -v --fail-fast py-matplotlib %apple-clang
spack install -v --fail-fast py-pandas %apple-clang

View File

@@ -1,6 +1,4 @@
# (c) 2021 Lawrence Livermore National Laboratory
Set-Location spack
# (c) 2022 Lawrence Livermore National Laboratory
git config --global user.email "spack@example.com"
git config --global user.name "Test User"

View File

@@ -1,115 +1,56 @@
name: linux tests
name: unit tests
on:
push:
branches:
- develop
- releases/**
pull_request:
branches:
- develop
- releases/**
jobs:
# Validate that the code can be run on all the Python versions
# supported by Spack
validate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # @v2
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6 # @v2
with:
python-version: '3.10'
- name: Install Python Packages
run: |
pip install --upgrade pip
pip install --upgrade vermin
- name: vermin (Spack's Core)
run: vermin --backport argparse --violations --backport typing -t=2.7- -t=3.5- -vvv lib/spack/spack/ lib/spack/llnl/ bin/
- name: vermin (Repositories)
run: vermin --backport argparse --violations --backport typing -t=2.7- -t=3.5- -vvv var/spack/repos
# Run style checks on the files that have been changed
style:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # @v2
with:
fetch-depth: 0
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6 # @v2
with:
python-version: '3.10'
- name: Install Python packages
run: |
pip install --upgrade pip six setuptools types-six
- name: Setup git configuration
run: |
# Need this for the git tests to succeed.
git --version
. .github/workflows/setup_git.sh
- name: Run style tests
run: |
share/spack/qa/run-style-tests
# Check which files have been updated by the PR
changes:
runs-on: ubuntu-latest
# Set job outputs to values from filter step
outputs:
core: ${{ steps.filter.outputs.core }}
packages: ${{ steps.filter.outputs.packages }}
with_coverage: ${{ steps.coverage.outputs.with_coverage }}
steps:
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # @v2
if: ${{ github.event_name == 'push' }}
with:
fetch-depth: 0
# For pull requests it's not necessary to checkout the code
- uses: dorny/paths-filter@b2feaf19c27470162a626bd6fa8438ae5b263721
id: filter
with:
# See https://github.com/dorny/paths-filter/issues/56 for the syntax used below
filters: |
core:
- './!(var/**)/**'
packages:
- 'var/**'
# Some links for easier reference:
#
# "github" context: https://docs.github.com/en/actions/reference/context-and-expression-syntax-for-github-actions#github-context
# job outputs: https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idoutputs
# setting environment variables from earlier steps: https://docs.github.com/en/actions/reference/workflow-commands-for-github-actions#setting-an-environment-variable
#
- id: coverage
# Run the subsequent jobs with coverage if core has been modified,
# regardless of whether this is a pull request or a push to a branch
run: |
echo Core changes: ${{ steps.filter.outputs.core }}
echo Event name: ${{ github.event_name }}
if [ "${{ steps.filter.outputs.core }}" == "true" ]
then
echo "::set-output name=with_coverage::true"
else
echo "::set-output name=with_coverage::false"
fi
workflow_dispatch:
workflow_call:
concurrency:
group: unit_tests-${{github.ref}}-${{github.event.pull_request.number || github.run_number}}
cancel-in-progress: true
jobs:
# Run unit tests with different configurations on linux
unittests:
needs: [ validate, style, changes ]
runs-on: ubuntu-latest
ubuntu:
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: ['2.7', '3.5', '3.6', '3.7', '3.8', '3.9', '3.10']
os: [ubuntu-latest]
python-version: ['3.7', '3.8', '3.9', '3.10', '3.11']
concretizer: ['clingo']
on_develop:
- ${{ github.ref == 'refs/heads/develop' }}
include:
- python-version: 2.7
concretizer: original
- python-version: 3.6
concretizer: original
- python-version: 3.9
- python-version: '3.11'
os: ubuntu-latest
concretizer: original
on_develop: ${{ github.ref == 'refs/heads/develop' }}
- python-version: '3.6'
os: ubuntu-20.04
concretizer: clingo
on_develop: ${{ github.ref == 'refs/heads/develop' }}
exclude:
- python-version: '3.7'
os: ubuntu-latest
concretizer: 'clingo'
on_develop: false
- python-version: '3.8'
os: ubuntu-latest
concretizer: 'clingo'
on_develop: false
- python-version: '3.9'
os: ubuntu-latest
concretizer: 'clingo'
on_develop: false
- python-version: '3.10'
os: ubuntu-latest
concretizer: 'clingo'
on_develop: false
steps:
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # @v2
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # @v2
with:
fetch-depth: 0
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6 # @v2
- uses: actions/setup-python@57ded4d7d5e986d7296eab16560982c6dd7c923b # @v2
with:
python-version: ${{ matrix.python-version }}
- name: Install System packages
@@ -118,19 +59,11 @@ jobs:
# Needed for unit tests
sudo apt-get -y install \
coreutils cvs gfortran graphviz gnupg2 mercurial ninja-build \
patchelf cmake bison libbison-dev kcov
cmake bison libbison-dev kcov
- name: Install Python packages
run: |
pip install --upgrade pip six setuptools pytest codecov "coverage[toml]<=6.2"
# ensure style checks are not skipped in unit tests for python >= 3.6
# note that true/false (i.e., 1/0) are opposite in conditions in python and bash
if python -c 'import sys; sys.exit(not sys.version_info >= (3, 6))'; then
pip install --upgrade flake8 isort>=4.3.5 mypy>=0.900 black
fi
- name: Pin pathlib for Python 2.7
if: ${{ matrix.python-version == 2.7 }}
run: |
pip install -U pathlib2==2.3.6
pip install --upgrade pip setuptools pytest pytest-xdist pytest-cov
pip install --upgrade flake8 "isort>=4.3.5" "mypy>=0.900" "click" "black"
- name: Setup git configuration
run: |
# Need this for the git tests to succeed.
@@ -142,41 +75,31 @@ jobs:
SPACK_PYTHON: python
run: |
. share/spack/setup-env.sh
spack bootstrap untrust spack-install
spack bootstrap disable spack-install
spack bootstrap now
spack -v solve zlib
- name: Run unit tests (full suite with coverage)
if: ${{ needs.changes.outputs.with_coverage == 'true' }}
- name: Run unit tests
env:
SPACK_PYTHON: python
SPACK_TEST_SOLVER: ${{ matrix.concretizer }}
SPACK_TEST_PARALLEL: 2
COVERAGE: true
SPACK_TEST_SOLVER: ${{ matrix.concretizer }}
UNIT_TEST_COVERAGE: ${{ matrix.python-version == '3.11' }}
run: |
share/spack/qa/run-unit-tests
coverage combine
coverage xml
- name: Run unit tests (reduced suite without coverage)
if: ${{ needs.changes.outputs.with_coverage == 'false' }}
env:
SPACK_PYTHON: python
ONLY_PACKAGES: true
SPACK_TEST_SOLVER: ${{ matrix.concretizer }}
run: |
share/spack/qa/run-unit-tests
- uses: codecov/codecov-action@81cd2dc8148241f03f5839d295e000b8f761e378 # @v2.1.0
if: ${{ needs.changes.outputs.with_coverage == 'true' }}
- uses: codecov/codecov-action@894ff025c7b54547a9a2a1e9f228beae737ad3c2
with:
flags: unittests,linux,${{ matrix.concretizer }}
# Test shell integration
shell:
needs: [ validate, style, changes ]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # @v2
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # @v2
with:
fetch-depth: 0
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6 # @v2
- uses: actions/setup-python@57ded4d7d5e986d7296eab16560982c6dd7c923b # @v2
with:
python-version: '3.10'
python-version: '3.11'
- name: Install System packages
run: |
sudo apt-get -y update
@@ -184,33 +107,25 @@ jobs:
sudo apt-get install -y coreutils kcov csh zsh tcsh fish dash bash
- name: Install Python packages
run: |
pip install --upgrade pip six setuptools pytest codecov coverage[toml]==6.2
pip install --upgrade pip setuptools pytest coverage[toml] pytest-xdist
- name: Setup git configuration
run: |
# Need this for the git tests to succeed.
git --version
. .github/workflows/setup_git.sh
- name: Run shell tests (without coverage)
if: ${{ needs.changes.outputs.with_coverage == 'false' }}
run: |
share/spack/qa/run-shell-tests
- name: Run shell tests (with coverage)
if: ${{ needs.changes.outputs.with_coverage == 'true' }}
- name: Run shell tests
env:
COVERAGE: true
run: |
share/spack/qa/run-shell-tests
- uses: codecov/codecov-action@81cd2dc8148241f03f5839d295e000b8f761e378 # @v2.1.0
if: ${{ needs.changes.outputs.with_coverage == 'true' }}
- uses: codecov/codecov-action@894ff025c7b54547a9a2a1e9f228beae737ad3c2
with:
flags: shelltests,linux
# Test RHEL8 UBI with platform Python. This job is run
# only on PRs modifying core Spack
rhel8-platform-python:
needs: [ validate, style, changes ]
runs-on: ubuntu-latest
if: ${{ needs.changes.outputs.with_coverage == 'true' }}
container: registry.access.redhat.com/ubi8/ubi
steps:
- name: Install dependencies
@@ -218,10 +133,11 @@ jobs:
dnf install -y \
bzip2 curl file gcc-c++ gcc gcc-gfortran git gnupg2 gzip \
make patch tcl unzip which xz
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # @v2
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # @v2
- name: Setup repo and non-root user
run: |
git --version
git config --global --add safe.directory /__w/spack/spack
git fetch --unshallow
. .github/workflows/setup_git.sh
useradd spack-test
@@ -230,127 +146,71 @@ jobs:
shell: runuser -u spack-test -- bash {0}
run: |
source share/spack/setup-env.sh
spack -d solve zlib
spack -d bootstrap now --dev
spack unit-test -k 'not cvs and not svn and not hg' -x --verbose
# Test for the clingo based solver (using clingo-cffi)
clingo-cffi:
needs: [ validate, style, changes ]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # @v2
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # @v2
with:
fetch-depth: 0
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6 # @v2
- uses: actions/setup-python@57ded4d7d5e986d7296eab16560982c6dd7c923b # @v2
with:
python-version: '3.10'
python-version: '3.11'
- name: Install System packages
run: |
sudo apt-get -y update
# Needed for unit tests
sudo apt-get -y install \
coreutils cvs gfortran graphviz gnupg2 mercurial ninja-build \
patchelf kcov
sudo apt-get -y install coreutils cvs gfortran graphviz gnupg2 mercurial ninja-build kcov
- name: Install Python packages
run: |
pip install --upgrade pip six setuptools pytest codecov coverage[toml]==6.2 clingo
pip install --upgrade pip setuptools pytest coverage[toml] pytest-cov clingo pytest-xdist
- name: Setup git configuration
run: |
# Need this for the git tests to succeed.
git --version
. .github/workflows/setup_git.sh
- name: Run unit tests (full suite with coverage)
if: ${{ needs.changes.outputs.with_coverage == 'true' }}
env:
COVERAGE: true
SPACK_TEST_SOLVER: clingo
run: |
share/spack/qa/run-unit-tests
coverage combine
coverage xml
- name: Run unit tests (reduced suite without coverage)
if: ${{ needs.changes.outputs.with_coverage == 'false' }}
env:
ONLY_PACKAGES: true
SPACK_TEST_SOLVER: clingo
run: |
share/spack/qa/run-unit-tests
- uses: codecov/codecov-action@81cd2dc8148241f03f5839d295e000b8f761e378 # @v2.1.0
if: ${{ needs.changes.outputs.with_coverage == 'true' }}
- uses: codecov/codecov-action@894ff025c7b54547a9a2a1e9f228beae737ad3c2 # @v2.1.0
with:
flags: unittests,linux,clingo
# Run unit tests on MacOS
build:
needs: [ validate, style, changes ]
macos:
runs-on: macos-latest
strategy:
matrix:
python-version: [3.8]
python-version: ["3.10"]
steps:
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # @v2
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # @v2
with:
fetch-depth: 0
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6 # @v2
- uses: actions/setup-python@57ded4d7d5e986d7296eab16560982c6dd7c923b # @v2
with:
python-version: ${{ matrix.python-version }}
- name: Install Python packages
run: |
pip install --upgrade pip six setuptools
pip install --upgrade pytest codecov coverage[toml]==6.2
pip install --upgrade pip setuptools
pip install --upgrade pytest coverage[toml] pytest-xdist pytest-cov
- name: Setup Homebrew packages
run: |
brew install dash fish gcc gnupg2 kcov
- name: Run unit tests
env:
SPACK_TEST_SOLVER: clingo
SPACK_TEST_PARALLEL: 4
run: |
git --version
. .github/workflows/setup_git.sh
. share/spack/setup-env.sh
$(which spack) bootstrap untrust spack-install
$(which spack) bootstrap disable spack-install
$(which spack) solve zlib
if [ "${{ needs.changes.outputs.with_coverage }}" == "true" ]
then
coverage run $(which spack) unit-test -x
coverage combine
coverage xml
# Delete the symlink going from ./lib/spack/docs/_spack_root back to
# the initial directory, since it causes ELOOP errors with codecov/actions@2
rm lib/spack/docs/_spack_root
else
echo "ONLY PACKAGE RECIPES CHANGED [skipping coverage]"
$(which spack) unit-test -x -m "not maybeslow" -k "package_sanity"
fi
- uses: codecov/codecov-action@81cd2dc8148241f03f5839d295e000b8f761e378 # @v2.1.0
if: ${{ needs.changes.outputs.with_coverage == 'true' }}
common_args=(--dist loadfile --tx '4*popen//python=./bin/spack-tmpconfig python -u ./bin/spack python' -x)
$(which spack) unit-test --cov --cov-config=pyproject.toml --cov-report=xml:coverage.xml "${common_args[@]}"
- uses: codecov/codecov-action@894ff025c7b54547a9a2a1e9f228beae737ad3c2
with:
files: ./coverage.xml
flags: unittests,macos
# Run audits on all the packages in the built-in repository
package-audits:
needs: [ validate, style, changes ]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # @v2
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6 # @v2
with:
python-version: '3.10'
- name: Install Python packages
run: |
pip install --upgrade pip six setuptools pytest codecov coverage[toml]==6.2
- name: Package audits (with coverage)
if: ${{ needs.changes.outputs.with_coverage == 'true' }}
run: |
. share/spack/setup-env.sh
coverage run $(which spack) audit packages
coverage combine
coverage xml
- name: Package audits (wwithout coverage)
if: ${{ needs.changes.outputs.with_coverage == 'false' }}
run: |
. share/spack/setup-env.sh
$(which spack) audit packages
- uses: codecov/codecov-action@81cd2dc8148241f03f5839d295e000b8f761e378 # @v2.1.0
if: ${{ needs.changes.outputs.with_coverage == 'true' }}
with:
flags: unittests,linux,audits

86
.github/workflows/valid-style.yml vendored Normal file
View File

@@ -0,0 +1,86 @@
name: style
on:
workflow_call:
inputs:
with_coverage:
required: true
type: string
concurrency:
group: style-${{github.ref}}-${{github.event.pull_request.number || github.run_number}}
cancel-in-progress: true
jobs:
# Validate that the code can be run on all the Python versions
# supported by Spack
validate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # @v2
- uses: actions/setup-python@57ded4d7d5e986d7296eab16560982c6dd7c923b # @v2
with:
python-version: '3.11'
cache: 'pip'
- name: Install Python Packages
run: |
pip install --upgrade pip
pip install --upgrade vermin
- name: vermin (Spack's Core)
run: vermin --backport importlib --backport argparse --violations --backport typing -t=3.6- -vvv lib/spack/spack/ lib/spack/llnl/ bin/
- name: vermin (Repositories)
run: vermin --backport importlib --backport argparse --violations --backport typing -t=3.6- -vvv var/spack/repos
# Run style checks on the files that have been changed
style:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # @v2
with:
fetch-depth: 0
- uses: actions/setup-python@57ded4d7d5e986d7296eab16560982c6dd7c923b # @v2
with:
python-version: '3.11'
cache: 'pip'
- name: Install Python packages
run: |
python3 -m pip install --upgrade pip setuptools types-six black==23.1.0 mypy isort clingo flake8==6.0.0
- name: Setup git configuration
run: |
# Need this for the git tests to succeed.
git --version
. .github/workflows/setup_git.sh
- name: Run style tests
run: |
share/spack/qa/run-style-tests
audit:
uses: ./.github/workflows/audit.yaml
with:
with_coverage: ${{ inputs.with_coverage }}
python_version: '3.11'
# Check that spack can bootstrap the development environment on Python 3.6 - RHEL8
bootstrap-dev-rhel8:
runs-on: ubuntu-latest
container: registry.access.redhat.com/ubi8/ubi
steps:
- name: Install dependencies
run: |
dnf install -y \
bzip2 curl file gcc-c++ gcc gcc-gfortran git gnupg2 gzip \
make patch tcl unzip which xz
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # @v2
- name: Setup repo and non-root user
run: |
git --version
git config --global --add safe.directory /__w/spack/spack
git fetch --unshallow
. .github/workflows/setup_git.sh
useradd spack-test
chown -R spack-test .
- name: Bootstrap Spack development environment
shell: runuser -u spack-test -- bash {0}
run: |
source share/spack/setup-env.sh
spack -d bootstrap now --dev
spack style -t black
spack unit-test -V

View File

@@ -1,188 +1,80 @@
name: windows tests
name: windows
on:
push:
branches:
- develop
- releases/**
pull_request:
branches:
- develop
- releases/**
workflow_call:
concurrency:
group: windows-${{github.ref}}-${{github.event.pull_request.number || github.run_number}}
cancel-in-progress: true
defaults:
run:
shell:
powershell Invoke-Expression -Command ".\share\spack\qa\windows_test_setup.ps1"; {0}
powershell Invoke-Expression -Command "./share/spack/qa/windows_test_setup.ps1"; {0}
jobs:
validate:
unit-tests:
runs-on: windows-latest
steps:
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6
with:
python-version: 3.9
- name: Install Python Packages
run: |
python -m pip install --upgrade pip
python -m pip install --upgrade vermin
- name: vermin (Spack's Core)
run: vermin --backport argparse --backport typing -t='2.7-' -t='3.5-' -v spack/lib/spack/spack/ spack/lib/spack/llnl/ spack/bin/
- name: vermin (Repositories)
run: vermin --backport argparse --backport typing -t='2.7-' -t='3.5-' -v spack/var/spack/repos
# Run style checks on the files that have been changed
style:
runs-on: windows-latest
steps:
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
with:
fetch-depth: 0
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6
- uses: actions/setup-python@57ded4d7d5e986d7296eab16560982c6dd7c923b
with:
python-version: 3.9
- name: Install Python packages
run: |
python -m pip install --upgrade pip six setuptools flake8 isort>=4.3.5 mypy>=0.800 black pywin32 types-python-dateutil
python -m pip install --upgrade pip pywin32 setuptools pytest-cov clingo
- name: Create local develop
run: |
.\spack\.github\workflows\setup_git.ps1
- name: Run style tests
run: |
spack style
- name: Verify license headers
run: |
python spack\bin\spack license verify
unittest:
needs: [ validate, style ]
runs-on: windows-latest
steps:
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
with:
fetch-depth: 0
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6
with:
python-version: 3.9
- name: Install Python packages
run: |
python -m pip install --upgrade pip six pywin32 setuptools codecov coverage
- name: Create local develop
run: |
.\spack\.github\workflows\setup_git.ps1
./.github/workflows/setup_git.ps1
- name: Unit Test
run: |
echo F|xcopy .\spack\share\spack\qa\configuration\windows_config.yaml $env:USERPROFILE\.spack\windows\config.yaml
spack unit-test --verbose --ignore=lib/spack/spack/test/cmd
unittest-cmd:
needs: [ validate, style ]
spack unit-test -x --verbose --cov --cov-config=pyproject.toml --ignore=lib/spack/spack/test/cmd
./share/spack/qa/validate_last_exit.ps1
coverage combine -a
coverage xml
- uses: codecov/codecov-action@894ff025c7b54547a9a2a1e9f228beae737ad3c2
with:
flags: unittests,windows
unit-tests-cmd:
runs-on: windows-latest
steps:
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
with:
fetch-depth: 0
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6
- uses: actions/setup-python@57ded4d7d5e986d7296eab16560982c6dd7c923b
with:
python-version: 3.9
- name: Install Python packages
run: |
python -m pip install --upgrade pip six pywin32 setuptools codecov coverage
python -m pip install --upgrade pip pywin32 setuptools coverage pytest-cov clingo
- name: Create local develop
run: |
.\spack\.github\workflows\setup_git.ps1
./.github/workflows/setup_git.ps1
- name: Command Unit Test
run: |
echo F|xcopy .\spack\share\spack\qa\configuration\windows_config.yaml $env:USERPROFILE\.spack\windows\config.yaml
spack unit-test lib/spack/spack/test/cmd --verbose
buildtest:
needs: [ validate, style ]
spack unit-test -x --verbose --cov --cov-config=pyproject.toml lib/spack/spack/test/cmd
./share/spack/qa/validate_last_exit.ps1
coverage combine -a
coverage xml
- uses: codecov/codecov-action@894ff025c7b54547a9a2a1e9f228beae737ad3c2
with:
flags: unittests,windows
build-abseil:
runs-on: windows-latest
steps:
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
with:
fetch-depth: 0
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6
- uses: actions/setup-python@57ded4d7d5e986d7296eab16560982c6dd7c923b
with:
python-version: 3.9
- name: Install Python packages
run: |
python -m pip install --upgrade pip six pywin32 setuptools codecov coverage
python -m pip install --upgrade pip pywin32 setuptools coverage
- name: Build Test
run: |
spack compiler find
echo F|xcopy .\spack\share\spack\qa\configuration\windows_config.yaml $env:USERPROFILE\.spack\windows\config.yaml
spack external find cmake
spack external find ninja
spack install abseil-cpp
generate-installer-test:
needs: [ validate, style ]
runs-on: windows-latest
steps:
- name: Disable Windows Symlinks
run: |
git config --global core.symlinks false
shell:
powershell
- uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
with:
fetch-depth: 0
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6
with:
python-version: 3.9
- name: Install Python packages
run: |
python -m pip install --upgrade pip six pywin32 setuptools codecov coverage
- name: Add Light and Candle to Path
run: |
$env:WIX >> $GITHUB_PATH
- name: Run Installer
run: |
.\spack\share\spack\qa\setup_spack.ps1
spack make-installer -s spack -g SILENT pkg
echo "installer_root=$((pwd).Path)" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
env:
ProgressPreference: SilentlyContinue
- uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8
with:
name: Windows Spack Installer Bundle
path: ${{ env.installer_root }}\pkg\Spack.exe
- uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8
with:
name: Windows Spack Installer
path: ${{ env.installer_root}}\pkg\Spack.msi
execute-installer:
needs: generate-installer-test
runs-on: windows-latest
defaults:
run:
shell: pwsh
steps:
- uses: actions/setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6
with:
python-version: 3.9
- name: Install Python packages
run: |
python -m pip install --upgrade pip six pywin32 setuptools codecov coverage
- name: Setup installer directory
run: |
mkdir -p spack_installer
echo "spack_installer=$((pwd).Path)\spack_installer" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
- uses: actions/download-artifact@v3
with:
name: Windows Spack Installer Bundle
path: ${{ env.spack_installer }}
- name: Execute Bundled Installer
run: |
$proc = Start-Process ${{ env.spack_installer }}\spack.exe "/install /quiet" -Passthru
$handle = $proc.Handle # cache proc.Handle
$proc.WaitForExit();
$LASTEXITCODE
env:
ProgressPreference: SilentlyContinue
- uses: actions/download-artifact@v3
with:
name: Windows Spack Installer
path: ${{ env.spack_installer }}
- name: Execute MSI
run: |
$proc = Start-Process ${{ env.spack_installer }}\spack.msi "/quiet" -Passthru
$handle = $proc.Handle # cache proc.Handle
$proc.WaitForExit();
$LASTEXITCODE
spack -d install abseil-cpp

View File

@@ -1,10 +1,16 @@
version: 2
build:
os: "ubuntu-22.04"
apt_packages:
- graphviz
tools:
python: "3.11"
sphinx:
configuration: lib/spack/docs/conf.py
fail_on_warning: true
python:
version: 3.7
install:
- requirements: lib/spack/docs/requirements.txt

View File

@@ -1,3 +1,782 @@
# v0.20.2 (2023-10-03)
## Features in this release
Spack now supports Python 3.12 (#40155)
## Bugfixes
- Improve escaping in Tcl module files (#38375)
- Make repo cache work on repositories with zero mtime (#39214)
- Ignore errors for newer, incompatible buildcache version (#40279)
- Print an error when git is required, but missing (#40254)
- Ensure missing build dependencies get installed when using `spack install --overwrite` (#40252)
- Fix an issue where Spack freezes when the build process unexpectedly exits (#39015)
- Fix a bug where installation failures cause an unrelated `NameError` to be thrown (#39017)
- Fix an issue where Spack package versions would be incorrectly derived from git tags (#39414)
- Fix a bug triggered when file locking fails internally (#39188)
- Prevent "spack external find" to error out when a directory cannot be accessed (#38755)
- Fix multiple performance regressions in environments (#38771)
- Add more ignored modules to `pyproject.toml` for `mypy` (#38769)
# v0.20.1 (2023-07-10)
## Spack Bugfixes
- Spec removed from an environment where not actually removed if `--force` was not given (#37877)
- Speed-up module file generation (#37739)
- Hotfix for a few recipes that treat CMake as a link dependency (#35816)
- Fix re-running stand-alone test a second time, which was getting a trailing spurious failure (#37840)
- Fixed reading JSON manifest on Cray, reporting non-concrete specs (#37909)
- Fixed a few bugs when generating Dockerfiles from Spack (#37766,#37769)
- Fixed a few long-standing bugs when generating module files (#36678,#38347,#38465,#38455)
- Fixed issues with building Python extensions using an external Python (#38186)
- Fixed compiler removal from command line (#38057)
- Show external status as [e] (#33792)
- Backported `archspec` fixes (#37793)
- Improved a few error messages (#37791)
# v0.20.0 (2023-05-21)
`v0.20.0` is a major feature release.
## Features in this release
1. **`requires()` directive and enhanced package requirements**
We've added some more enhancements to requirements in Spack (#36286).
There is a new `requires()` directive for packages. `requires()` is the opposite of
`conflicts()`. You can use it to impose constraints on this package when certain
conditions are met:
```python
requires(
"%apple-clang",
when="platform=darwin",
msg="This package builds only with clang on macOS"
)
```
More on this in [the docs](
https://spack.rtfd.io/en/latest/packaging_guide.html#conflicts-and-requirements).
You can also now add a `when:` clause to `requires:` in your `packages.yaml`
configuration or in an environment:
```yaml
packages:
openmpi:
require:
- any_of: ["%gcc"]
when: "@:4.1.4"
message: "Only OpenMPI 4.1.5 and up can build with fancy compilers"
```
More details can be found [here](
https://spack.readthedocs.io/en/latest/build_settings.html#package-requirements)
2. **Exact versions**
Spack did not previously have a way to distinguish a version if it was a prefix of
some other version. For example, `@3.2` would match `3.2`, `3.2.1`, `3.2.2`, etc. You
can now match *exactly* `3.2` with `@=3.2`. This is useful, for example, if you need
to patch *only* the `3.2` version of a package. The new syntax is described in [the docs](
https://spack.readthedocs.io/en/latest/basic_usage.html#version-specifier).
Generally, when writing packages, you should prefer to use ranges like `@3.2` over
the specific versions, as this allows the concretizer more leeway when selecting
versions of dependencies. More details and recommendations are in the [packaging guide](
https://spack.readthedocs.io/en/latest/packaging_guide.html#ranges-versus-specific-versions).
See #36273 for full details on the version refactor.
3. **New testing interface**
Writing package tests is now much simpler with a new [test interface](
https://spack.readthedocs.io/en/latest/packaging_guide.html#stand-alone-tests).
Writing a test is now as easy as adding a method that starts with `test_`:
```python
class MyPackage(Package):
...
def test_always_fails(self):
"""use assert to always fail"""
assert False
def test_example(self):
"""run installed example"""
example = which(self.prefix.bin.example)
example()
```
You can use Python's native `assert` statement to implement your checks -- no more
need to fiddle with `run_test` or other test framework methods. Spack will
introspect the class and run `test_*` methods when you run `spack test`,
4. **More stable concretization**
* Now, `spack concretize` will *only* concretize the new portions of the environment
and will not change existing parts of an environment unless you specify `--force`.
This has always been true for `unify:false`, but not for `unify:true` and
`unify:when_possible` environments. Now it is true for all of them (#37438, #37681).
* The concretizer has a new `--reuse-deps` argument that *only* reuses dependencies.
That is, it will always treat the *roots* of your environment as it would with
`--fresh`. This allows you to upgrade just the roots of your environment while
keeping everything else stable (#30990).
5. **Weekly develop snapshot releases**
Since last year, we have maintained a buildcache of `develop` at
https://binaries.spack.io/develop, but the cache can grow to contain so many builds
as to be unwieldy. When we get a stable `develop` build, we snapshot the release and
add a corresponding tag the Spack repository. So, you can use a stack from a specific
day. There are now tags in the spack repository like:
* `develop-2023-05-14`
* `develop-2023-05-18`
that correspond to build caches like:
* https://binaries.spack.io/develop-2023-05-14/e4s
* https://binaries.spack.io/develop-2023-05-18/e4s
We plan to store these snapshot releases weekly.
6. **Specs in buildcaches can be referenced by hash.**
* Previously, you could run `spack buildcache list` and see the hashes in
buildcaches, but referring to them by hash would fail.
* You can now run commands like `spack spec` and `spack install` and refer to
buildcache hashes directly, e.g. `spack install /abc123` (#35042)
7. **New package and buildcache index websites**
Our public websites for searching packages have been completely revamped and updated.
You can check them out here:
* *Package Index*: https://packages.spack.io
* *Buildcache Index*: https://cache.spack.io
Both are searchable and more interactive than before. Currently major releases are
shown; UI for browsing `develop` snapshots is coming soon.
8. **Default CMake and Meson build types are now Release**
Spack has historically defaulted to building with optimization and debugging, but
packages like `llvm` can be enormous with debug turned on. Our default build type for
all Spack packages is now `Release` (#36679, #37436). This has a number of benefits:
* much smaller binaries;
* higher default optimization level; and
* defining `NDEBUG` disables assertions, which may lead to further speedups.
You can still get the old behavior back through requirements and package preferences.
## Other new commands and directives
* `spack checksum` can automatically add new versions to package (#24532)
* new command: `spack pkg grep` to easily search package files (#34388)
* New `maintainers` directive (#35083)
* Add `spack buildcache push` (alias to `buildcache create`) (#34861)
* Allow using `-j` to control the parallelism of concretization (#37608)
* Add `--exclude` option to 'spack external find' (#35013)
## Other new features of note
* editing: add higher-precedence `SPACK_EDITOR` environment variable
* Many YAML formatting improvements from updating `ruamel.yaml` to the latest version
supporting Python 3.6. (#31091, #24885, #37008).
* Requirements and preferences should not define (non-git) versions (#37687, #37747)
* Environments now store spack version/commit in `spack.lock` (#32801)
* User can specify the name of the `packages` subdirectory in repositories (#36643)
* Add container images supporting RHEL alternatives (#36713)
* make version(...) kwargs explicit (#36998)
## Notable refactors
* buildcache create: reproducible tarballs (#35623)
* Bootstrap most of Spack dependencies using environments (#34029)
* Split `satisfies(..., strict=True/False)` into two functions (#35681)
* spack install: simplify behavior when inside environments (#35206)
## Binary cache and stack updates
* Major simplification of CI boilerplate in stacks (#34272, #36045)
* Many improvements to our CI pipeline's reliability
## Removals, Deprecations, and disablements
* Module file generation is disabled by default; you'll need to enable it to use it (#37258)
* Support for Python 2 was deprecated in `v0.19.0` and has been removed. `v0.20.0` only
supports Python 3.6 and higher.
* Deprecated target names are no longer recognized by Spack. Use generic names instead:
* `graviton` is now `cortex_a72`
* `graviton2` is now `neoverse_n1`
* `graviton3` is now `neoverse_v1`
* `blacklist` and `whitelist` in module configuration were deprecated in `v0.19.0` and are
removed in this release. Use `exclude` and `include` instead.
* The `ignore=` parameter of the `extends()` directive has been removed. It was not used by
any builtin packages and is no longer needed to avoid conflicts in environment views (#35588).
* Support for the old YAML buildcache format has been removed. It was deprecated in `v0.19.0` (#34347).
* `spack find --bootstrap` has been removed. It was deprecated in `v0.19.0`. Use `spack
--bootstrap find` instead (#33964).
* `spack bootstrap trust` and `spack bootstrap untrust` are now removed, having been
deprecated in `v0.19.0`. Use `spack bootstrap enable` and `spack bootstrap disable`.
* The `--mirror-name`, `--mirror-url`, and `--directory` options to buildcache and
mirror commands were deprecated in `v0.19.0` and have now been removed. They have been
replaced by positional arguments (#37457).
* Deprecate `env:` as top level environment key (#37424)
* deprecate buildcache create --rel, buildcache install --allow-root (#37285)
* Support for very old perl-like spec format strings (e.g., `$_$@$%@+$+$=`) has been
removed (#37425). This was deprecated in in `v0.15` (#10556).
## Notable Bugfixes
* bugfix: don't fetch package metadata for unknown concrete specs (#36990)
* Improve package source code context display on error (#37655)
* Relax environment manifest filename requirements and lockfile identification criteria (#37413)
* `installer.py`: drop build edges of installed packages by default (#36707)
* Bugfix: package requirements with git commits (#35057, #36347)
* Package requirements: allow single specs in requirement lists (#36258)
* conditional variant values: allow boolean (#33939)
* spack uninstall: follow run/link edges on --dependents (#34058)
## Spack community stats
* 7,179 total packages, 499 new since `v0.19.0`
* 329 new Python packages
* 31 new R packages
* 336 people contributed to this release
* 317 committers to packages
* 62 committers to core
# v0.19.1 (2023-02-07)
### Spack Bugfixes
* `buildcache create`: make "file exists" less verbose (#35019)
* `spack mirror create`: don't change paths to urls (#34992)
* Improve error message for requirements (#33988)
* uninstall: fix accidental cubic complexity (#34005)
* scons: fix signature for `install_args` (#34481)
* Fix `combine_phase_logs` text encoding issues (#34657)
* Use a module-like object to propagate changes in the MRO, when setting build env (#34059)
* PackageBase should not define builder legacy attributes (#33942)
* Forward lookup of the "run_tests" attribute (#34531)
* Bugfix for timers (#33917, #33900)
* Fix path handling in prefix inspections (#35318)
* Fix libtool filter for Fujitsu compilers (#34916)
* Bug fix for duplicate rpath errors on macOS when creating build caches (#34375)
* FileCache: delete the new cache file on exception (#34623)
* Propagate exceptions from Spack python console (#34547)
* Tests: Fix a bug/typo in a `config_values.py` fixture (#33886)
* Various CI fixes (#33953, #34560, #34560, #34828)
* Docs: remove monitors and analyzers, typos (#34358, #33926)
* bump release version for tutorial command (#33859)
# v0.19.0 (2022-11-11)
`v0.19.0` is a major feature release.
## Major features in this release
1. **Package requirements**
Spack's traditional [package preferences](
https://spack.readthedocs.io/en/latest/build_settings.html#package-preferences)
are soft, but we've added hard requriements to `packages.yaml` and `spack.yaml`
(#32528, #32369). Package requirements use the same syntax as specs:
```yaml
packages:
libfabric:
require: "@1.13.2"
mpich:
require:
- one_of: ["+cuda", "+rocm"]
```
More details in [the docs](
https://spack.readthedocs.io/en/latest/build_settings.html#package-requirements).
2. **Environment UI Improvements**
* Fewer surprising modifications to `spack.yaml` (#33711):
* `spack install` in an environment will no longer add to the `specs:` list; you'll
need to either use `spack add <spec>` or `spack install --add <spec>`.
* Similarly, `spack uninstall` will not remove from your environment's `specs:`
list; you'll need to use `spack remove` or `spack uninstall --remove`.
This will make it easier to manage an environment, as there is clear separation
between the stack to be installed (`spack.yaml`/`spack.lock`) and which parts of
it should be installed (`spack install` / `spack uninstall`).
* `concretizer:unify:true` is now the default mode for new environments (#31787)
We see more users creating `unify:true` environments now. Users who need
`unify:false` can add it to their environment to get the old behavior. This will
concretize every spec in the environment independently.
* Include environment configuration from URLs (#29026, [docs](
https://spack.readthedocs.io/en/latest/environments.html#included-configurations))
You can now include configuration in your environment directly from a URL:
```yaml
spack:
include:
- https://github.com/path/to/raw/config/compilers.yaml
```
4. **Multiple Build Systems**
An increasing number of packages in the ecosystem need the ability to support
multiple build systems (#30738, [docs](
https://spack.readthedocs.io/en/latest/packaging_guide.html#multiple-build-systems)),
either across versions, across platforms, or within the same version of the software.
This has been hard to support through multiple inheritance, as methods from different
build system superclasses would conflict. `package.py` files can now define separate
builder classes with installation logic for different build systems, e.g.:
```python
class ArpackNg(CMakePackage, AutotoolsPackage):
build_system(
conditional("cmake", when="@0.64:"),
conditional("autotools", when="@:0.63"),
default="cmake",
)
class CMakeBuilder(spack.build_systems.cmake.CMakeBuilder):
def cmake_args(self):
pass
class Autotoolsbuilder(spack.build_systems.autotools.AutotoolsBuilder):
def configure_args(self):
pass
```
5. **Compiler and variant propagation**
Currently, compiler flags and variants are inconsistent: compiler flags set for a
package are inherited by its dependencies, while variants are not. We should have
these be consistent by allowing for inheritance to be enabled or disabled for both
variants and compiler flags.
Example syntax:
- `package ++variant`:
enabled variant that will be propagated to dependencies
- `package +variant`:
enabled variant that will NOT be propagated to dependencies
- `package ~~variant`:
disabled variant that will be propagated to dependencies
- `package ~variant`:
disabled variant that will NOT be propagated to dependencies
- `package cflags==-g`:
`cflags` will be propagated to dependencies
- `package cflags=-g`:
`cflags` will NOT be propagated to dependencies
Syntax for non-boolan variants is similar to compiler flags. More in the docs for
[variants](
https://spack.readthedocs.io/en/latest/basic_usage.html#variants) and [compiler flags](
https://spack.readthedocs.io/en/latest/basic_usage.html#compiler-flags).
6. **Enhancements to git version specifiers**
* `v0.18.0` added the ability to use git commits as versions. You can now use the
`git.` prefix to specify git tags or branches as versions. All of these are valid git
versions in `v0.19` (#31200):
```console
foo@abcdef1234abcdef1234abcdef1234abcdef1234 # raw commit
foo@git.abcdef1234abcdef1234abcdef1234abcdef1234 # commit with git prefix
foo@git.develop # the develop branch
foo@git.0.19 # use the 0.19 tag
```
* `v0.19` also gives you more control over how Spack interprets git versions, in case
Spack cannot detect the version from the git repository. You can suffix a git
version with `=<version>` to force Spack to concretize it as a particular version
(#30998, #31914, #32257):
```console
# use mybranch, but treat it as version 3.2 for version comparison
foo@git.mybranch=3.2
# use the given commit, but treat it as develop for version comparison
foo@git.abcdef1234abcdef1234abcdef1234abcdef1234=develop
```
More in [the docs](
https://spack.readthedocs.io/en/latest/basic_usage.html#version-specifier)
7. **Changes to Cray EX Support**
Cray machines have historically had their own "platform" within Spack, because we
needed to go through the module system to leverage compilers and MPI installations on
these machines. The Cray EX programming environment now provides standalone `craycc`
executables and proper `mpicc` wrappers, so Spack can treat EX machines like Linux
with extra packages (#29392).
We expect this to greatly reduce bugs, as external packages and compilers can now be
used by prefix instead of through modules. We will also no longer be subject to
reproducibility issues when modules change from Cray PE release to release and from
site to site. This also simplifies dealing with the underlying Linux OS on cray
systems, as Spack will properly model the machine's OS as either SuSE or RHEL.
8. **Improvements to tests and testing in CI**
* `spack ci generate --tests` will generate a `.gitlab-ci.yml` file that not only does
builds but also runs tests for built packages (#27877). Public GitHub pipelines now
also run tests in CI.
* `spack test run --explicit` will only run tests for packages that are explicitly
installed, instead of all packages.
9. **Experimental binding link model**
You can add a new option to `config.yaml` to make Spack embed absolute paths to
needed shared libraries in ELF executables and shared libraries on Linux (#31948, [docs](
https://spack.readthedocs.io/en/latest/config_yaml.html#shared-linking-bind)):
```yaml
config:
shared_linking:
type: rpath
bind: true
```
This can improve launch time at scale for parallel applications, and it can make
installations less susceptible to environment variables like `LD_LIBRARY_PATH`, even
especially when dealing with external libraries that use `RUNPATH`. You can think of
this as a faster, even higher-precedence version of `RPATH`.
## Other new features of note
* `spack spec` prints dependencies more legibly. Dependencies in the output now appear
at the *earliest* level of indentation possible (#33406)
* You can override `package.py` attributes like `url`, directly in `packages.yaml`
(#33275, [docs](
https://spack.readthedocs.io/en/latest/build_settings.html#assigning-package-attributes))
* There are a number of new architecture-related format strings you can use in Spack
configuration files to specify paths (#29810, [docs](
https://spack.readthedocs.io/en/latest/configuration.html#config-file-variables))
* Spack now supports bootstrapping Clingo on Windows (#33400)
* There is now support for an `RPATH`-like library model on Windows (#31930)
## Performance Improvements
* Major performance improvements for installation from binary caches (#27610, #33628,
#33636, #33608, #33590, #33496)
* Test suite can now be parallelized using `xdist` (used in GitHub Actions) (#32361)
* Reduce lock contention for parallel builds in environments (#31643)
## New binary caches and stacks
* We now build nearly all of E4S with `oneapi` in our buildcache (#31781, #31804,
#31804, #31803, #31840, #31991, #32117, #32107, #32239)
* Added 3 new machine learning-centric stacks to binary cache: `x86_64_v3`, CUDA, ROCm
(#31592, #33463)
## Removals and Deprecations
* Support for Python 3.5 is dropped (#31908). Only Python 2.7 and 3.6+ are officially
supported.
* This is the last Spack release that will support Python 2 (#32615). Spack `v0.19`
will emit a deprecation warning if you run it with Python 2, and Python 2 support will
soon be removed from the `develop` branch.
* `LD_LIBRARY_PATH` is no longer set by default by `spack load` or module loads.
Setting `LD_LIBRARY_PATH` in Spack environments/modules can cause binaries from
outside of Spack to crash, and Spack's own builds use `RPATH` and do not need
`LD_LIBRARY_PATH` set in order to run. If you still want the old behavior, you
can run these commands to configure Spack to set `LD_LIBRARY_PATH`:
```console
spack config add modules:prefix_inspections:lib64:[LD_LIBRARY_PATH]
spack config add modules:prefix_inspections:lib:[LD_LIBRARY_PATH]
```
* The `spack:concretization:[together|separately]` has been removed after being
deprecated in `v0.18`. Use `concretizer:unify:[true|false]`.
* `config:module_roots` is no longer supported after being deprecated in `v0.18`. Use
configuration in module sets instead (#28659, [docs](
https://spack.readthedocs.io/en/latest/module_file_support.html)).
* `spack activate` and `spack deactivate` are no longer supported, having been
deprecated in `v0.18`. Use an environment with a view instead of
activating/deactivating ([docs](
https://spack.readthedocs.io/en/latest/environments.html#configuration-in-spack-yaml)).
* The old YAML format for buildcaches is now deprecated (#33707). If you are using an
old buildcache with YAML metadata you will need to regenerate it with JSON metadata.
* `spack bootstrap trust` and `spack bootstrap untrust` are deprecated in favor of
`spack bootstrap enable` and `spack bootstrap disable` and will be removed in `v0.20`.
(#33600)
* The `graviton2` architecture has been renamed to `neoverse_n1`, and `graviton3`
is now `neoverse_v1`. Buildcaches using the old architecture names will need to be rebuilt.
* The terms `blacklist` and `whitelist` have been replaced with `include` and `exclude`
in all configuration files (#31569). You can use `spack config update` to
automatically fix your configuration files.
## Notable Bugfixes
* Permission setting on installation now handles effective uid properly (#19980)
* `buildable:true` for an MPI implementation now overrides `buildable:false` for `mpi` (#18269)
* Improved error messages when attempting to use an unconfigured compiler (#32084)
* Do not punish explicitly requested compiler mismatches in the solver (#30074)
* `spack stage`: add missing --fresh and --reuse (#31626)
* Fixes for adding build system executables like `cmake` to package scope (#31739)
* Bugfix for binary relocation with aliased strings produced by newer `binutils` (#32253)
## Spack community stats
* 6,751 total packages, 335 new since `v0.18.0`
* 141 new Python packages
* 89 new R packages
* 303 people contributed to this release
* 287 committers to packages
* 57 committers to core
# v0.18.1 (2022-07-19)
### Spack Bugfixes
* Fix several bugs related to bootstrapping (#30834,#31042,#31180)
* Fix a regression that was causing spec hashes to differ between
Python 2 and Python 3 (#31092)
* Fixed compiler flags for oneAPI and DPC++ (#30856)
* Fixed several issues related to concretization (#31142,#31153,#31170,#31226)
* Improved support for Cray manifest file and `spack external find` (#31144,#31201,#31173,#31186)
* Assign a version to openSUSE Tumbleweed according to the GLIBC version
in the system (#19895)
* Improved Dockerfile generation for `spack containerize` (#29741,#31321)
* Fixed a few bugs related to concurrent execution of commands (#31509,#31493,#31477)
### Package updates
* WarpX: add v22.06, fixed libs property (#30866,#31102)
* openPMD: add v0.14.5, update recipe for @develop (#29484,#31023)
# v0.18.0 (2022-05-28)
`v0.18.0` is a major feature release.
## Major features in this release
1. **Concretizer now reuses by default**
`spack install --reuse` was introduced in `v0.17.0`, and `--reuse`
is now the default concretization mode. Spack will try hard to
resolve dependencies using installed packages or binaries (#30396).
To avoid reuse and to use the latest package configurations, (the
old default), you can use `spack install --fresh`, or add
configuration like this to your environment or `concretizer.yaml`:
```yaml
concretizer:
reuse: false
```
2. **Finer-grained hashes**
Spack hashes now include `link`, `run`, *and* `build` dependencies,
as well as a canonical hash of package recipes. Previously, hashes
only included `link` and `run` dependencies (though `build`
dependencies were stored by environments). We coarsened the hash to
reduce churn in user installations, but the new default concretizer
behavior mitigates this concern and gets us reuse *and* provenance.
You will be able to see the build dependencies of new installations
with `spack find`. Old installations will not change and their
hashes will not be affected. (#28156, #28504, #30717, #30861)
3. **Improved error messages**
Error handling with the new concretizer is now done with
optimization criteria rather than with unsatisfiable cores, and
Spack reports many more details about conflicting constraints.
(#30669)
4. **Unify environments when possible**
Environments have thus far supported `concretization: together` or
`concretization: separately`. These have been replaced by a new
preference in `concretizer.yaml`:
```yaml
concretizer:
unify: [true|false|when_possible]
```
`concretizer:unify:when_possible` will *try* to resolve a fully
unified environment, but if it cannot, it will create multiple
configurations of some packages where it has to. For large
environments that previously had to be concretized separately, this
can result in a huge speedup (40-50x). (#28941)
5. **Automatically find externals on Cray machines**
Spack can now automatically discover installed packages in the Cray
Programming Environment by running `spack external find` (or `spack
external read-cray-manifest` to *only* query the PE). Packages from
the PE (e.g., `cray-mpich` are added to the database with full
dependency information, and compilers from the PE are added to
`compilers.yaml`. Available with the June 2022 release of the Cray
Programming Environment. (#24894, #30428)
6. **New binary format and hardened signing**
Spack now has an updated binary format, with improvements for
security. The new format has a detached signature file, and Spack
verifies the signature before untarring or decompressing the binary
package. The previous format embedded the signature in a `tar`
file, which required the client to run `tar` *before* verifying
(#30750). Spack can still install from build caches using the old
format, but we encourage users to switch to the new format going
forward.
Production GitLab pipelines have been hardened to securely sign
binaries. There is now a separate signing stage so that signing
keys are never exposed to build system code, and signing keys are
ephemeral and only live as long as the signing pipeline stage.
(#30753)
7. **Bootstrap mirror generation**
The `spack bootstrap mirror` command can automatically create a
mirror for bootstrapping the concretizer and other needed
dependencies in an air-gapped environment. (#28556)
8. **Nascent Windows support**
Spack now has initial support for Windows. Spack core has been
refactored to run in the Windows environment, and a small number of
packages can now build for Windows. More details are
[in the documentation](https://spack.rtfd.io/en/latest/getting_started.html#spack-on-windows)
(#27021, #28385, many more)
9. **Makefile generation**
`spack env depfile` can be used to generate a `Makefile` from an
environment, which can be used to build packages the environment
in parallel on a single node. e.g.:
```console
spack -e myenv env depfile > Makefile
make
```
Spack propagates `gmake` jobserver information to builds so that
their jobs can share cores. (#30039, #30254, #30302, #30526)
10. **New variant features**
In addition to being conditional themselves, variants can now have
[conditional *values*](https://spack.readthedocs.io/en/latest/packaging_guide.html#conditional-possible-values)
that are only possible for certain configurations of a package. (#29530)
Variants can be
[declared "sticky"](https://spack.readthedocs.io/en/latest/packaging_guide.html#sticky-variants),
which prevents them from being enabled or disabled by the
concretizer. Sticky variants must be set explicitly by users
on the command line or in `packages.yaml`. (#28630)
* Allow conditional possible values in variants
* Add a "sticky" property to variants
## Other new features of note
* Environment views can optionally link only `run` dependencies
with `link:run` (#29336)
* `spack external find --all` finds library-only packages in
addition to build dependencies (#28005)
* Customizable `config:license_dir` option (#30135)
* `spack external find --path PATH` takes a custom search path (#30479)
* `spack spec` has a new `--format` argument like `spack find` (#27908)
* `spack concretize --quiet` skips printing concretized specs (#30272)
* `spack info` now has cleaner output and displays test info (#22097)
* Package-level submodule option for git commit versions (#30085, #30037)
* Using `/hash` syntax to refer to concrete specs in an environment
now works even if `/hash` is not installed. (#30276)
## Major internal refactors
* full hash (see above)
* new develop versioning scheme `0.19.0-dev0`
* Allow for multiple dependencies/dependents from the same package (#28673)
* Splice differing virtual packages (#27919)
## Performance Improvements
* Concretization of large environments with `unify: when_possible` is
much faster than concretizing separately (#28941, see above)
* Single-pass view generation algorithm is 2.6x faster (#29443)
## Archspec improvements
* `oneapi` and `dpcpp` flag support (#30783)
* better support for `M1` and `a64fx` (#30683)
## Removals and Deprecations
* Spack no longer supports Python `2.6` (#27256)
* Removed deprecated `--run-tests` option of `spack install`;
use `spack test` (#30461)
* Removed deprecated `spack flake8`; use `spack style` (#27290)
* Deprecate `spack:concretization` config option; use
`concretizer:unify` (#30038)
* Deprecate top-level module configuration; use module sets (#28659)
* `spack activate` and `spack deactivate` are deprecated in favor of
environments; will be removed in `0.19.0` (#29430; see also `link:run`
in #29336 above)
## Notable Bugfixes
* Fix bug that broke locks with many parallel builds (#27846)
* Many bugfixes and consistency improvements for the new concretizer
and `--reuse` (#30357, #30092, #29835, #29933, #28605, #29694, #28848)
## Packages
* `CMakePackage` uses `CMAKE_INSTALL_RPATH_USE_LINK_PATH` (#29703)
* Refactored `lua` support: `lua-lang` virtual supports both
`lua` and `luajit` via new `LuaPackage` build system(#28854)
* PythonPackage: now installs packages with `pip` (#27798)
* Python: improve site_packages_dir handling (#28346)
* Extends: support spec, not just package name (#27754)
* `find_libraries`: search for both .so and .dylib on macOS (#28924)
* Use stable URLs and `?full_index=1` for all github patches (#29239)
## Spack community stats
* 6,416 total packages, 458 new since `v0.17.0`
* 219 new Python packages
* 60 new R packages
* 377 people contributed to this release
* 337 committers to packages
* 85 committers to core
# v0.17.3 (2022-07-14)
### Spack bugfixes
* Fix missing chgrp on symlinks in package installations (#30743)
* Allow having non-existing upstreams (#30744, #30746)
* Fix `spack stage` with custom paths (#30448)
* Fix failing call for `spack buildcache save-specfile` (#30637)
* Fix globbing in compiler wrapper (#30699)
# v0.17.2 (2022-04-13)
### Spack bugfixes
@@ -11,7 +790,7 @@
* Fixed a few bugs affecting the spack ci command (#29518, #29419)
* Fix handling of Intel compiler environment (#29439)
* Fix a few edge cases when reindexing the DB (#28764)
* Remove "Known issues" from documentation (#29664)
* Remove "Known issues" from documentation (#29664)
* Other miscellaneous bugfixes (0b72e070583fc5bcd016f5adc8a84c99f2b7805f, #28403, #29261)
# v0.17.1 (2021-12-23)

View File

@@ -1,6 +1,6 @@
MIT License
Copyright (c) 2013-2022 LLNS, LLC and other Spack Project Developers.
Copyright (c) 2013-2023 LLNS, LLC and other Spack Project Developers.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

View File

@@ -2,10 +2,10 @@
[![Unit Tests](https://github.com/spack/spack/workflows/linux%20tests/badge.svg)](https://github.com/spack/spack/actions)
[![Bootstrapping](https://github.com/spack/spack/actions/workflows/bootstrap.yml/badge.svg)](https://github.com/spack/spack/actions/workflows/bootstrap.yml)
[![macOS Builds (nightly)](https://github.com/spack/spack/workflows/macOS%20builds%20nightly/badge.svg?branch=develop)](https://github.com/spack/spack/actions?query=workflow%3A%22macOS+builds+nightly%22)
[![codecov](https://codecov.io/gh/spack/spack/branch/develop/graph/badge.svg)](https://codecov.io/gh/spack/spack)
[![Containers](https://github.com/spack/spack/actions/workflows/build-containers.yml/badge.svg)](https://github.com/spack/spack/actions/workflows/build-containers.yml)
[![Read the Docs](https://readthedocs.org/projects/spack/badge/?version=latest)](https://spack.readthedocs.io)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Slack](https://slack.spack.io/badge.svg)](https://slack.spack.io)
Spack is a multi-platform package manager that builds and installs
@@ -62,6 +62,7 @@ Resources:
* **Slack workspace**: [spackpm.slack.com](https://spackpm.slack.com).
To get an invitation, visit [slack.spack.io](https://slack.spack.io).
* [**Github Discussions**](https://github.com/spack/spack/discussions): not just for discussions, also Q&A.
* **Mailing list**: [groups.google.com/d/forum/spack](https://groups.google.com/d/forum/spack)
* **Twitter**: [@spackpm](https://twitter.com/spackpm). Be sure to
`@mention` us!

View File

@@ -10,8 +10,8 @@ For more on Spack's release structure, see
| Version | Supported |
| ------- | ------------------ |
| develop | :white_check_mark: |
| 0.17.x | :white_check_mark: |
| 0.16.x | :white_check_mark: |
| 0.19.x | :white_check_mark: |
| 0.18.x | :white_check_mark: |
## Reporting a Vulnerability

View File

@@ -1,4 +1,4 @@
# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,13 +8,12 @@
def getpywin():
try:
import win32con # noqa
import win32con # noqa: F401
except ImportError:
subprocess.check_call(
[sys.executable, "-m", "pip", "-q", "install", "--upgrade", "pip"])
subprocess.check_call(
[sys.executable, "-m", "pip", "-q", "install", "pywin32"])
print("pyWin32 not installed but is required...\nInstalling via pip:")
subprocess.check_call([sys.executable, "-m", "pip", "-q", "install", "--upgrade", "pip"])
subprocess.check_call([sys.executable, "-m", "pip", "-q", "install", "pywin32"])
if __name__ == '__main__':
if __name__ == "__main__":
getpywin()

View File

@@ -1,6 +1,6 @@
#!/bin/sh
#
# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
# sbang project developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)

View File

@@ -1,7 +1,7 @@
#!/bin/sh
# -*- python -*-
#
# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -31,13 +31,11 @@ import os
import os.path
import sys
min_python3 = (3, 5)
min_python3 = (3, 6)
if sys.version_info[:2] < (2, 7) or (
sys.version_info[:2] >= (3, 0) and sys.version_info[:2] < min_python3
):
if sys.version_info[:2] < min_python3:
v_info = sys.version_info[:3]
msg = "Spack requires Python 2.7 or %d.%d or higher " % min_python3
msg = "Spack requires Python %d.%d or higher " % min_python3
msg += "You are running spack with Python %d.%d.%d." % v_info
sys.exit(msg)
@@ -49,50 +47,8 @@ spack_prefix = os.path.dirname(os.path.dirname(spack_file))
spack_lib_path = os.path.join(spack_prefix, "lib", "spack")
sys.path.insert(0, spack_lib_path)
# Add external libs
spack_external_libs = os.path.join(spack_lib_path, "external")
if sys.version_info[:2] <= (2, 7):
sys.path.insert(0, os.path.join(spack_external_libs, "py2"))
sys.path.insert(0, spack_external_libs)
# Here we delete ruamel.yaml in case it has been already imported from site
# (see #9206 for a broader description of the issue).
#
# Briefly: ruamel.yaml produces a .pth file when installed with pip that
# makes the site installed package the preferred one, even though sys.path
# is modified to point to another version of ruamel.yaml.
if "ruamel.yaml" in sys.modules:
del sys.modules["ruamel.yaml"]
if "ruamel" in sys.modules:
del sys.modules["ruamel"]
# The following code is here to avoid failures when updating
# the develop version, due to spurious argparse.pyc files remaining
# in the libs/spack/external directory, see:
# https://github.com/spack/spack/pull/25376
# TODO: Remove in v0.18.0 or later
try:
import argparse
except ImportError:
argparse_pyc = os.path.join(spack_external_libs, 'argparse.pyc')
if not os.path.exists(argparse_pyc):
raise
try:
os.remove(argparse_pyc)
import argparse # noqa
except Exception:
msg = ('The file\n\n\t{0}\n\nis corrupted and cannot be deleted by Spack. '
'Either delete it manually or ask some administrator to '
'delete it for you.')
print(msg.format(argparse_pyc))
sys.exit(1)
import spack.main # noqa
from spack_installable.main import main # noqa: E402
# Once we've set up the system path, run the spack main method
if __name__ == "__main__":
sys.exit(spack.main.main())
sys.exit(main())

View File

@@ -1,6 +1,6 @@
#!/bin/sh
#
# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)

96
bin/spack-tmpconfig Executable file
View File

@@ -0,0 +1,96 @@
#!/bin/bash
set -euo pipefail
[[ -n "${TMPCONFIG_DEBUG:=}" ]] && set -x
DIR="$(cd -P "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
mkdir -p "${XDG_RUNTIME_DIR:=/tmp}/spack-tests"
export TMPDIR="${XDG_RUNTIME_DIR}"
export TMP_DIR="$(mktemp -d -t spack-test-XXXXX)"
clean_up() {
[[ -n "$TMPCONFIG_DEBUG" ]] && printf "cleaning up: $TMP_DIR\n"
rm -rf "$TMP_DIR"
}
trap clean_up EXIT
trap clean_up ERR
[[ -n "$TMPCONFIG_DEBUG" ]] && printf "Redirecting TMP_DIR and spack directories to $TMP_DIR\n"
export BOOTSTRAP="${SPACK_USER_CACHE_PATH:=$HOME/.spack}/bootstrap"
export SPACK_USER_CACHE_PATH="$TMP_DIR/user_cache"
mkdir -p "$SPACK_USER_CACHE_PATH"
private_bootstrap="$SPACK_USER_CACHE_PATH/bootstrap"
use_spack=''
use_bwrap=''
# argument handling
while (($# >= 1)) ; do
case "$1" in
-b) # privatize bootstrap too, useful for CI but not always cheap
shift
export BOOTSTRAP="$private_bootstrap"
;;
-B) # use specified bootstrap dir
export BOOTSTRAP="$2"
shift 2
;;
-s) # run spack directly with remaining args
shift
use_spack=1
;;
--contain=bwrap)
if bwrap --help 2>&1 > /dev/null ; then
use_bwrap=1
else
echo Bubblewrap containment requested, but no bwrap command found
exit 1
fi
shift
;;
--)
shift
break
;;
*)
break
;;
esac
done
typeset -a CMD
if [[ -n "$use_spack" ]] ; then
CMD=("$DIR/spack" "$@")
else
CMD=("$@")
fi
mkdir -p "$BOOTSTRAP"
export SPACK_SYSTEM_CONFIG_PATH="$TMP_DIR/sys_conf"
export SPACK_USER_CONFIG_PATH="$TMP_DIR/user_conf"
mkdir -p "$SPACK_USER_CONFIG_PATH"
cat >"$SPACK_USER_CONFIG_PATH/config.yaml" <<EOF
config:
install_tree:
root: $TMP_DIR/install
misc_cache: $$user_cache_path/cache
source_cache: $$user_cache_path/source
environments_root: $TMP_DIR/envs
EOF
cat >"$SPACK_USER_CONFIG_PATH/bootstrap.yaml" <<EOF
bootstrap:
root: $BOOTSTRAP
EOF
if [[ -n "$use_bwrap" ]] ; then
CMD=(
bwrap
--dev-bind / /
--ro-bind "$DIR/.." "$DIR/.." # do not touch spack root
--ro-bind $HOME/.spack $HOME/.spack # do not touch user config/cache dir
--bind "$TMP_DIR" "$TMP_DIR"
--bind "$BOOTSTRAP" "$BOOTSTRAP"
--die-with-parent
"${CMD[@]}"
)
fi
(( ${TMPCONFIG_DEBUG:=0} > 1)) && echo "Running: ${CMD[@]}"
"${CMD[@]}"

View File

@@ -1,4 +1,4 @@
:: Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
:: Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
:: Spack Project Developers. See the top-level COPYRIGHT file for details.
::
:: SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -50,24 +50,69 @@ setlocal enabledelayedexpansion
:: flags will always start with '-', e.g. --help or -V
:: subcommands will never start with '-'
:: everything after the subcommand is an arg
for %%x in (%*) do (
set t="%%~x"
:: we cannot allow batch "for" loop to directly process CL args
:: a number of batch reserved characters are commonly passed to
:: spack and allowing batch's "for" method to process the raw inputs
:: results in a large number of formatting issues
:: instead, treat the entire CLI as one string
:: and split by space manually
:: capture cl args in variable named cl_args
set cl_args=%*
:process_cl_args
rem tokens=1* returns the first processed token produced
rem by tokenizing the input string cl_args on spaces into
rem the named variable %%g
rem While this make look like a for loop, it only
rem executes a single time for each of the cl args
rem the actual iterative loop is performed by the
rem goto process_cl_args stanza
rem we are simply leveraging the "for" method's string
rem tokenization
for /f "tokens=1*" %%g in ("%cl_args%") do (
set t=%%~g
rem remainder of string is composed into %%h
rem these are the cl args yet to be processed
rem assign cl_args var to only the args to be processed
rem effectively discarding the current arg %%g
rem this will be nul when we have no further tokens to process
set cl_args=%%h
rem process the first space delineated cl arg
rem of this iteration
if "!t:~0,1!" == "-" (
if defined _sp_subcommand (
:: We already have a subcommand, processing args now
set "_sp_args=!_sp_args! !t!"
rem We already have a subcommand, processing args now
if not defined _sp_args (
set "_sp_args=!t!"
) else (
set "_sp_args=!_sp_args! !t!"
)
) else (
set "_sp_flags=!_sp_flags! !t!"
shift
if not defined _sp_flags (
set "_sp_flags=!t!"
shift
) else (
set "_sp_flags=!_sp_flags! !t!"
shift
)
)
) else if not defined _sp_subcommand (
set "_sp_subcommand=!t!"
shift
) else (
set "_sp_args=!_sp_args! !t!"
shift
if not defined _sp_args (
set "_sp_args=!t!"
shift
) else (
set "_sp_args=!_sp_args! !t!"
shift
)
)
)
rem if this is not nil, we have more tokens to process
rem start above process again with remaining unprocessed cl args
if defined cl_args goto :process_cl_args
:: --help, -h and -V flags don't require further output parsing.
:: If we encounter, execute and exit
@@ -83,24 +128,24 @@ if defined _sp_flags (
exit /B 0
)
)
if not defined _sp_subcommand (
if not defined _sp_args (
if not defined _sp_flags (
python "%spack%" --help
exit /B 0
)
)
)
:: pass parsed variables outside of local scope. Need to do
:: this because delayedexpansion can only be set by setlocal
echo %_sp_flags%>flags
echo %_sp_args%>args
echo %_sp_subcommand%>subcmd
endlocal
set /p _sp_subcommand=<subcmd
set /p _sp_flags=<flags
set /p _sp_args=<args
set str_subcommand=%_sp_subcommand:"='%
set str_flags=%_sp_flags:"='%
set str_args=%_sp_args:"='%
if "%str_subcommand%"=="ECHO is off." (set "_sp_subcommand=")
if "%str_flags%"=="ECHO is off." (set "_sp_flags=")
if "%str_args%"=="ECHO is off." (set "_sp_args=")
del subcmd
del flags
del args
endlocal & (
set "_sp_flags=%_sp_flags%"
set "_sp_args=%_sp_args%"
set "_sp_subcommand=%_sp_subcommand%"
)
:: Filter out some commands. For any others, just run the command.
if "%_sp_subcommand%" == "cd" (
@@ -143,7 +188,9 @@ goto :end_switch
:: If no args or args contain --bat or -h/--help: just execute.
if NOT defined _sp_args (
goto :default_case
)else if NOT "%_sp_args%"=="%_sp_args:--help=%" (
)
if NOT "%_sp_args%"=="%_sp_args:--help=%" (
goto :default_case
) else if NOT "%_sp_args%"=="%_sp_args: -h=%" (
goto :default_case
@@ -151,11 +198,11 @@ if NOT defined _sp_args (
goto :default_case
) else if NOT "%_sp_args%"=="%_sp_args:deactivate=%" (
for /f "tokens=* USEBACKQ" %%I in (
`call python "%spack%" %_sp_flags% env deactivate --bat %_sp_args:deactivate=%`
`call python %spack% %_sp_flags% env deactivate --bat %_sp_args:deactivate=%`
) do %%I
) else if NOT "%_sp_args%"=="%_sp_args:activate=%" (
for /f "tokens=* USEBACKQ" %%I in (
`call python "%spack%" %_sp_flags% env activate --bat %_sp_args:activate=%`
`python %spack% %_sp_flags% env activate --bat %_sp_args:activate=%`
) do %%I
) else (
goto :default_case
@@ -176,7 +223,7 @@ if defined _sp_args (
for /f "tokens=* USEBACKQ" %%I in (
`python "%spack%" %_sp_flags% %_sp_subcommand% --bat %_sp_args%`) do %%I
)
goto :end_switch
:case_unload
@@ -214,10 +261,10 @@ for %%Z in ("%_pa_new_path%") do if EXIST %%~sZ\NUL (
exit /b 0
:: set module system roots
:_sp_multi_pathadd
:_sp_multi_pathadd
for %%I in (%~2) do (
for %%Z in (%_sp_compatible_sys_types%) do (
:pathadd "%~1" "%%I\%%Z"
)
)
exit /B %ERRORLEVEL%
exit /B %ERRORLEVEL%

View File

@@ -52,7 +52,6 @@ if defined py_path (
if defined py_exe (
"%py_exe%" "%SPACK_ROOT%\bin\haspywin.py"
"%py_exe%" "%SPACK_ROOT%\bin\spack" external find python >NUL
)
set "EDITOR=notepad"

View File

@@ -1,4 +1,4 @@
# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)

View File

@@ -9,14 +9,15 @@ bootstrap:
# may not be able to bootstrap all the software that Spack needs,
# depending on its type.
sources:
- name: 'github-actions-v0.2'
metadata: $spack/share/spack/bootstrap/github-actions-v0.2
- name: 'github-actions-v0.1'
metadata: $spack/share/spack/bootstrap/github-actions-v0.1
- name: 'github-actions-v0.4'
metadata: $spack/share/spack/bootstrap/github-actions-v0.4
- name: 'github-actions-v0.3'
metadata: $spack/share/spack/bootstrap/github-actions-v0.3
- name: 'spack-install'
metadata: $spack/share/spack/bootstrap/spack-install
trusted:
# By default we trust bootstrapping from sources and from binaries
# produced on Github via the workflow
github-actions-v0.2: true
github-actions-v0.4: true
github-actions-v0.3: true
spack-install: true

View File

@@ -13,16 +13,18 @@ concretizer:
# Whether to consider installed packages or packages from buildcaches when
# concretizing specs. If `true`, we'll try to use as many installs/binaries
# as possible, rather than building. If `false`, we'll always give you a fresh
# concretization.
reuse: true
# concretization. If `dependencies`, we'll only reuse dependencies but
# give you a fresh concretization for your root specs.
reuse: dependencies
# Options that tune which targets are considered for concretization. The
# concretization process is very sensitive to the number targets, and the time
# needed to reach a solution increases noticeably with the number of targets
# considered.
targets:
# Determine whether we want to target specific or generic microarchitectures.
# An example of the first kind might be for instance "skylake" or "bulldozer",
# while generic microarchitectures are for instance "aarch64" or "x86_64_v4".
# Determine whether we want to target specific or generic
# microarchitectures. Valid values are: "microarchitectures" or "generic".
# An example of "microarchitectures" would be "skylake" or "bulldozer",
# while an example of "generic" would be "aarch64" or "x86_64_v4".
granularity: microarchitectures
# If "false" allow targets that are incompatible with the current host (for
# instance concretize with target "icelake" while running on "haswell").
@@ -33,4 +35,4 @@ concretizer:
# environments can always be activated. When "false" perform concretization separately
# on each root spec, allowing different versions and variants of the same package in
# an environment.
unify: false
unify: true

View File

@@ -19,7 +19,7 @@ config:
install_tree:
root: $spack/opt/spack
projections:
all: "${ARCHITECTURE}/${COMPILERNAME}-${COMPILERVER}/${PACKAGE}-${VERSION}-${HASH}"
all: "{architecture}/{compiler.name}-{compiler.version}/{name}-{version}-{hash}"
# install_tree can include an optional padded length (int or boolean)
# default is False (do not pad)
# if padded_length is True, Spack will pad as close to the system max path
@@ -54,6 +54,11 @@ config:
# are that it precludes its use as a system package and its ability to be
# pip installable.
#
# In Spack environment files, chaining onto existing system Spack
# installations, the $env variable can be used to download, cache and build
# into user-writable paths that are relative to the currently active
# environment.
#
# In any case, if the username is not already in the path, Spack will append
# the value of `$user` in an attempt to avoid potential conflicts between
# users in shared temporary spaces.
@@ -76,6 +81,10 @@ config:
source_cache: $spack/var/spack/cache
## Directory where spack managed environments are created and stored
# environments_root: $spack/var/spack/environments
# Cache directory for miscellaneous files, like the package index.
# This can be purged with `spack clean --misc-cache`
misc_cache: $user_cache_path/cache
@@ -176,7 +185,7 @@ config:
# when Spack needs to manage its own package metadata and all operations are
# expected to complete within the default time limit. The timeout should
# therefore generally be left untouched.
db_lock_timeout: 3
db_lock_timeout: 60
# How long to wait when attempting to modify a package (e.g. to install it).
@@ -187,10 +196,20 @@ config:
package_lock_timeout: null
# Control whether Spack embeds RPATH or RUNPATH attributes in ELF binaries.
# Has no effect on macOS. DO NOT MIX these within the same install tree.
# See the Spack documentation for details.
shared_linking: 'rpath'
# Control how shared libraries are located at runtime on Linux. See the
# the Spack documentation for details.
shared_linking:
# Spack automatically embeds runtime search paths in ELF binaries for their
# dependencies. Their type can either be "rpath" or "runpath". For glibc, rpath is
# inherited and has precedence over LD_LIBRARY_PATH; runpath is not inherited
# and of lower precedence. DO NOT MIX these within the same install tree.
type: rpath
# (Experimental) Embed absolute paths of dependent libraries directly in ELF
# binaries to avoid runtime search. This can improve startup time of
# executables with many dependencies, in particular on slow filesystems.
bind: false
# Set to 'false' to allow installation on filesystems that doesn't allow setgid bit
@@ -201,3 +220,11 @@ config:
# building and installing packages. This gives information about Spack's
# current progress as well as the current and total number of packages.
terminal_title: false
# Number of seconds a buildcache's index.json is cached locally before probing
# for updates, within a single Spack invocation. Defaults to 10 minutes.
binary_index_ttl: 600
flags:
# Whether to keep -Werror flags active in package builds.
keep_werror: 'none'

View File

@@ -13,9 +13,4 @@
# Per-user settings (overrides default and site settings):
# ~/.spack/modules.yaml
# -------------------------------------------------------------------------
modules:
prefix_inspections:
lib:
- LD_LIBRARY_PATH
lib64:
- LD_LIBRARY_PATH
modules: {}

View File

@@ -15,7 +15,7 @@
# -------------------------------------------------------------------------
modules:
prefix_inspections:
lib:
./lib:
- DYLD_FALLBACK_LIBRARY_PATH
lib64:
./lib64:
- DYLD_FALLBACK_LIBRARY_PATH

View File

@@ -23,8 +23,20 @@ packages:
providers:
elf: [libelf]
fuse: [macfuse]
gl: [apple-gl]
glu: [apple-glu]
unwind: [apple-libunwind]
uuid: [apple-libuuid]
apple-gl:
buildable: false
externals:
- spec: apple-gl@4.1.0
prefix: /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
apple-glu:
buildable: false
externals:
- spec: apple-glu@1.3.0
prefix: /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
apple-libunwind:
buildable: false
externals:

View File

@@ -13,9 +13,4 @@
# Per-user settings (overrides default and site settings):
# ~/.spack/modules.yaml
# -------------------------------------------------------------------------
modules:
prefix_inspections:
lib:
- LD_LIBRARY_PATH
lib64:
- LD_LIBRARY_PATH
modules: {}

View File

@@ -14,23 +14,24 @@
# ~/.spack/modules.yaml
# -------------------------------------------------------------------------
modules:
# Paths to check when creating modules for all module sets
# This maps paths in the package install prefix to environment variables
# they should be added to. For example, <prefix>/bin should be in PATH.
prefix_inspections:
bin:
./bin:
- PATH
man:
./man:
- MANPATH
share/man:
./share/man:
- MANPATH
share/aclocal:
./share/aclocal:
- ACLOCAL_PATH
lib/pkgconfig:
./lib/pkgconfig:
- PKG_CONFIG_PATH
lib64/pkgconfig:
./lib64/pkgconfig:
- PKG_CONFIG_PATH
share/pkgconfig:
./share/pkgconfig:
- PKG_CONFIG_PATH
'':
./:
- CMAKE_PREFIX_PATH
# These are configurations for the module set named "default"
@@ -39,13 +40,12 @@ modules:
roots:
tcl: $spack/share/spack/modules
lmod: $spack/share/spack/lmod
# What type of modules to use
enable:
- tcl
# What type of modules to use ("tcl" and/or "lmod")
enable: []
tcl:
all:
autoload: none
autoload: direct
# Default configurations if lmod is enabled
lmod:

View File

@@ -20,31 +20,32 @@ packages:
awk: [gawk]
blas: [openblas, amdblis]
D: [ldc]
daal: [intel-daal]
daal: [intel-oneapi-daal]
elf: [elfutils]
fftw-api: [fftw, amdfftw]
flame: [libflame, amdlibflame]
fuse: [libfuse]
gl: [mesa+opengl, mesa18, opengl]
gl: [glx, osmesa]
glu: [mesa-glu, openglu]
glx: [mesa+glx, mesa18+glx, opengl]
golang: [gcc]
golang: [go, gcc]
go-or-gccgo-bootstrap: [go-bootstrap, gcc]
iconv: [libiconv]
ipp: [intel-ipp]
ipp: [intel-oneapi-ipp]
java: [openjdk, jdk, ibm-java]
jpeg: [libjpeg-turbo, libjpeg]
lapack: [openblas, amdlibflame]
libllvm: [llvm, llvm-amdgpu]
libglx: [mesa+glx, mesa18+glx]
libllvm: [llvm]
libosmesa: [mesa+osmesa, mesa18+osmesa]
lua-lang: [lua, lua-luajit-openresty, lua-luajit]
luajit: [lua-luajit-openresty, lua-luajit]
mariadb-client: [mariadb-c-client, mariadb]
mkl: [intel-mkl]
mkl: [intel-oneapi-mkl]
mpe: [mpe2]
mpi: [openmpi, mpich]
mysql-client: [mysql, mariadb-c-client]
opencl: [pocl]
onedal: [intel-oneapi-dal]
osmesa: [mesa+osmesa, mesa18+osmesa]
pbs: [openpbs, torque]
pil: [py-pillow]
pkgconfig: [pkgconf, pkg-config]

View File

@@ -1,5 +1,6 @@
config:
locks: false
concretizer: original
concretizer: clingo
build_stage::
- '$spack/.staging'
stage_name: '{name}-{version}-{hash:7}'

View File

@@ -0,0 +1,22 @@
# -------------------------------------------------------------------------
# This file controls default concretization preferences for Spack.
#
# Settings here are versioned with Spack and are intended to provide
# sensible defaults out of the box. Spack maintainers should edit this
# file to keep it current.
#
# Users can override these settings by editing the following files.
#
# Per-spack-instance settings (overrides defaults):
# $SPACK_ROOT/etc/spack/packages.yaml
#
# Per-user settings (overrides default and site settings):
# ~/.spack/packages.yaml
# -------------------------------------------------------------------------
packages:
all:
compiler:
- msvc
providers:
mpi: [msmpi]
gl: [wgl]

View File

@@ -5,3 +5,4 @@ llnl*.rst
_build
.spack-env
spack.lock
_spack_root

View File

@@ -0,0 +1,16 @@
# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
# The name of the Pygments (syntax highlighting) style to use.
# We use our own extension of the default style with a few modifications
from pygments.styles.default import DefaultStyle
from pygments.token import Generic
class SpackStyle(DefaultStyle):
styles = DefaultStyle.styles.copy()
background_color = "#f4f4f8"
styles[Generic.Output] = "#355"
styles[Generic.Prompt] = "bold #346ec9"

View File

@@ -1 +0,0 @@
../../..

View File

@@ -1,162 +0,0 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _analyze:
=======
Analyze
=======
The analyze command is a front-end to various tools that let us analyze
package installations. Each analyzer is a module for a different kind
of analysis that can be done on a package installation, including (but not
limited to) binary, log, or text analysis. Thus, the analyze command group
allows you to take an existing package install, choose an analyzer,
and extract some output for the package using it.
-----------------
Analyzer Metadata
-----------------
For all analyzers, we write to an ``analyzers`` folder in ``~/.spack``, or the
value that you specify in your spack config at ``config:analyzers_dir``.
For example, here we see the results of running an analysis on zlib:
.. code-block:: console
$ tree ~/.spack/analyzers/
└── linux-ubuntu20.04-skylake
└── gcc-9.3.0
└── zlib-1.2.11-sl7m27mzkbejtkrajigj3a3m37ygv4u2
├── environment_variables
│   └── spack-analyzer-environment-variables.json
├── install_files
│   └── spack-analyzer-install-files.json
└── libabigail
└── spack-analyzer-libabigail-libz.so.1.2.11.xml
This means that you can always find analyzer output in this folder, and it
is organized with the same logic as the package install it was run for.
If you want to customize this top level folder, simply provide the ``--path``
argument to ``spack analyze run``. The nested organization will be maintained
within your custom root.
-----------------
Listing Analyzers
-----------------
If you aren't familiar with Spack's analyzers, you can quickly list those that
are available:
.. code-block:: console
$ spack analyze list-analyzers
install_files : install file listing read from install_manifest.json
environment_variables : environment variables parsed from spack-build-env.txt
config_args : config args loaded from spack-configure-args.txt
libabigail : Application Binary Interface (ABI) features for objects
In the above, the first three are fairly simple - parsing metadata files from
a package install directory to save
-------------------
Analyzing a Package
-------------------
The analyze command, akin to install, will accept a package spec to perform
an analysis for. The package must be installed. Let's walk through an example
with zlib. We first ask to analyze it. However, since we have more than one
install, we are asked to disambiguate:
.. code-block:: console
$ spack analyze run zlib
==> Error: zlib matches multiple packages.
Matching packages:
fz2bs56 zlib@1.2.11%gcc@7.5.0 arch=linux-ubuntu18.04-skylake
sl7m27m zlib@1.2.11%gcc@9.3.0 arch=linux-ubuntu20.04-skylake
Use a more specific spec.
We can then specify the spec version that we want to analyze:
.. code-block:: console
$ spack analyze run zlib/fz2bs56
If you don't provide any specific analyzer names, by default all analyzers
(shown in the ``list-analyzers`` subcommand list) will be run. If an analyzer does not
have any result, it will be skipped. For example, here is a result running for
zlib:
.. code-block:: console
$ ls ~/.spack/analyzers/linux-ubuntu20.04-skylake/gcc-9.3.0/zlib-1.2.11-sl7m27mzkbejtkrajigj3a3m37ygv4u2/
spack-analyzer-environment-variables.json
spack-analyzer-install-files.json
spack-analyzer-libabigail-libz.so.1.2.11.xml
If you want to run a specific analyzer, ask for it with `--analyzer`. Here we run
spack analyze on libabigail (already installed) _using_ libabigail1
.. code-block:: console
$ spack analyze run --analyzer abigail libabigail
.. _analyze_monitoring:
----------------------
Monitoring An Analysis
----------------------
For any kind of analysis, you can
use a `spack monitor <https://github.com/spack/spack-monitor>`_ "Spackmon"
as a server to upload the same run metadata to. You can
follow the instructions in the `spack monitor documentation <https://spack-monitor.readthedocs.org>`_
to first create a server along with a username and token for yourself.
You can then use this guide to interact with the server.
You should first export our spack monitor token and username to the environment:
.. code-block:: console
$ export SPACKMON_TOKEN=50445263afd8f67e59bd79bff597836ee6c05438
$ export SPACKMON_USER=spacky
By default, the host for your server is expected to be at ``http://127.0.0.1``
with a prefix of ``ms1``, and if this is the case, you can simply add the
``--monitor`` flag to the install command:
.. code-block:: console
$ spack analyze run --monitor wget
If you need to customize the host or the prefix, you can do that as well:
.. code-block:: console
$ spack analyze run --monitor --monitor-prefix monitor --monitor-host https://monitor-service.io wget
If your server doesn't have authentication, you can skip it:
.. code-block:: console
$ spack analyze run --monitor --monitor-disable-auth wget
Regardless of your choice, when you run analyze on an installed package (whether
it was installed with ``--monitor`` or not, you'll see the results generating as they did
before, and a message that the monitor server was pinged:
.. code-block:: console
$ spack analyze --monitor wget
...
==> Sending result for wget bin/wget to monitor.

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -85,7 +85,7 @@ All packages whose names or descriptions contain documentation:
To get more information on a particular package from `spack list`, use
`spack info`. Just supply the name of a package:
.. command-output:: spack info mpich
.. command-output:: spack info --all mpich
Most of the information is self-explanatory. The *safe versions* are
versions that Spack knows the checksum for, and it will use the
@@ -896,8 +896,8 @@ your path:
$ which mpicc
~/spack/opt/linux-debian7-x86_64/gcc@4.4.7/mpich@3.0.4/bin/mpicc
These commands will add appropriate directories to your ``PATH``,
``MANPATH``, ``CPATH``, and ``LD_LIBRARY_PATH`` according to the
These commands will add appropriate directories to your ``PATH``
and ``MANPATH`` according to the
:ref:`prefix inspections <customize-env-modifications>` defined in your
modules configuration.
When you no longer want to use a package, you can type unload or
@@ -942,7 +942,7 @@ first ``libelf`` above, you would run:
$ spack load /qmm4kso
To see which packages that you have loaded to your enviornment you would
To see which packages that you have loaded to your environment you would
use ``spack find --loaded``.
.. code-block:: console
@@ -998,11 +998,15 @@ More formally, a spec consists of the following pieces:
* ``%`` Optional compiler specifier, with an optional compiler version
(``gcc`` or ``gcc@4.7.3``)
* ``+`` or ``-`` or ``~`` Optional variant specifiers (``+debug``,
``-qt``, or ``~qt``) for boolean variants
``-qt``, or ``~qt``) for boolean variants. Use ``++`` or ``--`` or
``~~`` to propagate variants through the dependencies (``++debug``,
``--qt``, or ``~~qt``).
* ``name=<value>`` Optional variant specifiers that are not restricted to
boolean variants
boolean variants. Use ``name==<value>`` to propagate variant through the
dependencies.
* ``name=<value>`` Optional compiler flag specifiers. Valid flag names are
``cflags``, ``cxxflags``, ``fflags``, ``cppflags``, ``ldflags``, and ``ldlibs``.
Use ``name==<value>`` to propagate compiler flags through the dependencies.
* ``target=<value> os=<value>`` Optional architecture specifier
(``target=haswell os=CNL10``)
* ``^`` Dependency specs (``^callpath@1.1``)
@@ -1093,26 +1097,73 @@ could depend on ``mpich@1.2:`` if it can only build with version
Below are more details about the specifiers that you can add to specs.
.. _version-specifier:
^^^^^^^^^^^^^^^^^
Version specifier
^^^^^^^^^^^^^^^^^
A version specifier comes somewhere after a package name and starts
with ``@``. It can be a single version, e.g. ``@1.0``, ``@3``, or
``@1.2a7``. Or, it can be a range of versions, such as ``@1.0:1.5``
(all versions between ``1.0`` and ``1.5``, inclusive). Version ranges
can be open, e.g. ``:3`` means any version up to and including ``3``.
This would include ``3.4`` and ``3.4.2``. ``4.2:`` means any version
above and including ``4.2``. Finally, a version specifier can be a
set of arbitrary versions, such as ``@1.0,1.5,1.7`` (``1.0``, ``1.5``,
or ``1.7``). When you supply such a specifier to ``spack install``,
it constrains the set of versions that Spack will install.
A version specifier ``pkg@<specifier>`` comes after a package name
and starts with ``@``. It can be something abstract that matches
multiple known versions, or a specific version. During concretization,
Spack will pick the optimal version within the spec's constraints
according to policies set for the particular Spack installation.
If the version spec is not provided, then Spack will choose one
according to policies set for the particular spack installation. If
the spec is ambiguous, i.e. it could match multiple versions, Spack
will choose a version within the spec's constraints according to
policies set for the particular Spack installation.
The version specifier can be *a specific version*, such as ``@=1.0.0`` or
``@=1.2a7``. Or, it can be *a range of versions*, such as ``@1.0:1.5``.
Version ranges are inclusive, so this example includes both ``1.0``
and any ``1.5.x`` version. Version ranges can be unbounded, e.g. ``@:3``
means any version up to and including ``3``. This would include ``3.4``
and ``3.4.2``. Similarly, ``@4.2:`` means any version above and including
``4.2``. As a short-hand, ``@3`` is equivalent to the range ``@3:3`` and
includes any version with major version ``3``.
Notice that you can distinguish between the specific version ``@=3.2`` and
the range ``@3.2``. This is useful for packages that follow a versioning
scheme that omits the zero patch version number: ``3.2``, ``3.2.1``,
``3.2.2``, etc. In general it is preferable to use the range syntax
``@3.2``, since ranges also match versions with one-off suffixes, such as
``3.2-custom``.
A version specifier can also be a list of ranges and specific versions,
separated by commas. For example, ``@1.0:1.5,=1.7.1`` matches any version
in the range ``1.0:1.5`` and the specific version ``1.7.1``.
For packages with a ``git`` attribute, ``git`` references
may be specified instead of a numerical version i.e. branches, tags
and commits. Spack will stage and build based off the ``git``
reference provided. Acceptable syntaxes for this are:
.. code-block:: sh
# commit hashes
foo@abcdef1234abcdef1234abcdef1234abcdef1234 # 40 character hashes are automatically treated as git commits
foo@git.abcdef1234abcdef1234abcdef1234abcdef1234
# branches and tags
foo@git.develop # use the develop branch
foo@git.0.19 # use the 0.19 tag
Spack always needs to associate a Spack version with the git reference,
which is used for version comparison. This Spack version is heuristically
taken from the closest valid git tag among ancestors of the git ref.
Once a Spack version is associated with a git ref, it always printed with
the git ref. For example, if the commit ``@git.abcdefg`` is tagged
``0.19``, then the spec will be shown as ``@git.abcdefg=0.19``.
If the git ref is not exactly a tag, then the distance to the nearest tag
is also part of the resolved version. ``@git.abcdefg=0.19.git.8`` means
that the commit is 8 commits away from the ``0.19`` tag.
In cases where Spack cannot resolve a sensible version from a git ref,
users can specify the Spack version to use for the git ref. This is done
by appending ``=`` and the Spack version to the git ref. For example:
.. code-block:: sh
foo@git.my_ref=3.2 # use the my_ref tag or branch, but treat it as version 3.2 for version comparisons
foo@git.abcdef1234abcdef1234abcdef1234abcdef1234=develop # use the given commit, but treat it as develop for version comparisons
Details about how versions are compared and how Spack determines if
one version is less than another are discussed in the developer guide.
@@ -1193,6 +1244,23 @@ variants using the backwards compatibility syntax and uses only ``~``
for disabled boolean variants. The ``-`` and spaces on the command
line are provided for convenience and legibility.
Spack allows variants to propagate their value to the package's
dependency by using ``++``, ``--``, and ``~~`` for boolean variants.
For example, for a ``debug`` variant:
.. code-block:: sh
mpileaks ++debug # enabled debug will be propagated to dependencies
mpileaks +debug # only mpileaks will have debug enabled
To propagate the value of non-boolean variants Spack uses ``name==value``.
For example, for the ``stackstart`` variant:
.. code-block:: sh
mpileaks stackstart==4 # variant will be propagated to dependencies
mpileaks stackstart=4 # only mpileaks will have this variant value
^^^^^^^^^^^^^^
Compiler Flags
^^^^^^^^^^^^^^
@@ -1200,10 +1268,15 @@ Compiler Flags
Compiler flags are specified using the same syntax as non-boolean variants,
but fulfill a different purpose. While the function of a variant is set by
the package, compiler flags are used by the compiler wrappers to inject
flags into the compile line of the build. Additionally, compiler flags are
inherited by dependencies. ``spack install libdwarf cppflags="-g"`` will
install both libdwarf and libelf with the ``-g`` flag injected into their
compile line.
flags into the compile line of the build. Additionally, compiler flags can
be inherited by dependencies by using ``==``.
``spack install libdwarf cppflags=="-g"`` will install both libdwarf and
libelf with the ``-g`` flag injected into their compile line.
.. note::
versions of spack prior to 0.19.0 will propagate compiler flags using
the ``=`` syntax.
Notice that the value of the compiler flags must be quoted if it
contains any spaces. Any of ``cppflags=-O3``, ``cppflags="-O3"``,
@@ -1405,7 +1478,7 @@ built.
You can see what virtual packages a particular package provides by
getting info on it:
.. command-output:: spack info mpich
.. command-output:: spack info --virtuals mpich
Spack is unique in that its virtual packages can be versioned, just
like regular packages. A particular version of a package may provide
@@ -1613,9 +1686,13 @@ own install prefix. However, certain packages are typically installed
`Python <https://www.python.org>`_ packages are typically installed in the
``$prefix/lib/python-2.7/site-packages`` directory.
Spack has support for this type of installation as well. In Spack,
a package that can live inside the prefix of another package is called
an *extension*. Suppose you have Python installed like so:
In Spack, installation prefixes are immutable, so this type of installation
is not directly supported. However, it is possible to create views that
allow you to merge install prefixes of multiple packages into a single new prefix.
Views are a convenient way to get a more traditional filesystem structure.
Using *extensions*, you can ensure that Python packages always share the
same prefix in the view as Python itself. Suppose you have
Python installed like so:
.. code-block:: console
@@ -1653,8 +1730,6 @@ You can find extensions for your Python installation like this:
py-ipython@2.3.1 py-pygments@2.0.1 py-setuptools@11.3.1
py-matplotlib@1.4.2 py-pyparsing@2.0.3 py-six@1.9.0
==> None activated.
The extensions are a subset of what's returned by ``spack list``, and
they are packages like any other. They are installed into their own
prefixes, and you can see this with ``spack find --paths``:
@@ -1682,32 +1757,72 @@ directly when you run ``python``:
ImportError: No module named numpy
>>>
^^^^^^^^^^^^^^^^
Using Extensions
^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Using Extensions in Environments
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
There are four ways to get ``numpy`` working in Python. The first is
to use :ref:`shell-support`. You can simply ``load`` the extension,
and it will be added to the ``PYTHONPATH`` in your current shell:
The recommended way of working with extensions such as ``py-numpy``
above is through :ref:`Environments <environments>`. For example,
the following creates an environment in the current working directory
with a filesystem view in the ``./view`` directory:
.. code-block:: console
$ spack load python
$ spack load py-numpy
$ spack env create --with-view view --dir .
$ spack -e . add py-numpy
$ spack -e . concretize
$ spack -e . install
We recommend environments for two reasons. Firstly, environments
can be activated (requires :ref:`shell-support`):
.. code-block:: console
$ spack env activate .
which sets all the right environment variables such as ``PATH`` and
``PYTHONPATH``. This ensures that
.. code-block:: console
$ python
>>> import numpy
works. Secondly, even without shell support, the view ensures
that Python can locate its extensions:
.. code-block:: console
$ ./view/bin/python
>>> import numpy
See :ref:`environments` for a more in-depth description of Spack
environments and customizations to views.
^^^^^^^^^^^^^^^^^^^^
Using ``spack load``
^^^^^^^^^^^^^^^^^^^^
A more traditional way of using Spack and extensions is ``spack load``
(requires :ref:`shell-support`). This will add the extension to ``PYTHONPATH``
in your current shell, and Python itself will be available in the ``PATH``:
.. code-block:: console
$ spack load py-numpy
$ python
>>> import numpy
Now ``import numpy`` will succeed for as long as you keep your current
session open.
The loaded packages can be checked using ``spack find --loaded``
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Loading Extensions via Modules
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Instead of using Spack's environment modification capabilities through
the ``spack load`` command, you can load numpy through your
environment modules (using ``environment-modules`` or ``lmod``). This
will also add the extension to the ``PYTHONPATH`` in your current
shell.
Apart from ``spack env activate`` and ``spack load``, you can load numpy
through your environment modules (using ``environment-modules`` or
``lmod``). This will also add the extension to the ``PYTHONPATH`` in
your current shell.
.. code-block:: console
@@ -1717,130 +1832,6 @@ If you do not know the name of the specific numpy module you wish to
load, you can use the ``spack module tcl|lmod loads`` command to get
the name of the module from the Spack spec.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Activating Extensions in a View
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Another way to use extensions is to create a view, which merges the
python installation along with the extensions into a single prefix.
See :ref:`configuring_environment_views` for a more in-depth description
of views.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Activating Extensions Globally
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
As an alternative to creating a merged prefix with Python and its extensions,
and prior to support for views, Spack has provided a means to install the
extension into the Spack installation prefix for the extendee. This has
typically been useful since extendable packages typically search their own
installation path for addons by default.
Global activations are performed with the ``spack activate`` command:
.. _cmd-spack-activate:
^^^^^^^^^^^^^^^^^^
``spack activate``
^^^^^^^^^^^^^^^^^^
.. code-block:: console
$ spack activate py-numpy
==> Activated extension py-setuptools@11.3.1%gcc@4.4.7 arch=linux-debian7-x86_64-3c74eb69 for python@2.7.8%gcc@4.4.7.
==> Activated extension py-nose@1.3.4%gcc@4.4.7 arch=linux-debian7-x86_64-5f70f816 for python@2.7.8%gcc@4.4.7.
==> Activated extension py-numpy@1.9.1%gcc@4.4.7 arch=linux-debian7-x86_64-66733244 for python@2.7.8%gcc@4.4.7.
Several things have happened here. The user requested that
``py-numpy`` be activated in the ``python`` installation it was built
with. Spack knows that ``py-numpy`` depends on ``py-nose`` and
``py-setuptools``, so it activated those packages first. Finally,
once all dependencies were activated in the ``python`` installation,
``py-numpy`` was activated as well.
If we run ``spack extensions`` again, we now see the three new
packages listed as activated:
.. code-block:: console
$ spack extensions python
==> python@2.7.8%gcc@4.4.7 arch=linux-debian7-x86_64-703c7a96
==> 36 extensions:
geos py-ipython py-pexpect py-pyside py-sip
py-basemap py-libxml2 py-pil py-pytz py-six
py-biopython py-mako py-pmw py-rpy2 py-sympy
py-cython py-matplotlib py-pychecker py-scientificpython py-virtualenv
py-dateutil py-mpi4py py-pygments py-scikit-learn
py-epydoc py-mx py-pylint py-scipy
py-gnuplot py-nose py-pyparsing py-setuptools
py-h5py py-numpy py-pyqt py-shiboken
==> 12 installed:
-- linux-debian7-x86_64 / gcc@4.4.7 --------------------------------
py-dateutil@2.4.0 py-nose@1.3.4 py-pyside@1.2.2
py-dateutil@2.4.0 py-numpy@1.9.1 py-pytz@2014.10
py-ipython@2.3.1 py-pygments@2.0.1 py-setuptools@11.3.1
py-matplotlib@1.4.2 py-pyparsing@2.0.3 py-six@1.9.0
==> 3 currently activated:
-- linux-debian7-x86_64 / gcc@4.4.7 --------------------------------
py-nose@1.3.4 py-numpy@1.9.1 py-setuptools@11.3.1
Now, when a user runs python, ``numpy`` will be available for import
*without* the user having to explicitly load it. ``python@2.7.8`` now
acts like a system Python installation with ``numpy`` installed inside
of it.
Spack accomplishes this by symbolically linking the *entire* prefix of
the ``py-numpy`` package into the prefix of the ``python`` package. To the
python interpreter, it looks like ``numpy`` is installed in the
``site-packages`` directory.
The only limitation of global activation is that you can only have a *single*
version of an extension activated at a time. This is because multiple
versions of the same extension would conflict if symbolically linked
into the same prefix. Users who want a different version of a package
can still get it by using environment modules or views, but they will have to
explicitly load their preferred version.
^^^^^^^^^^^^^^^^^^^^^^^^^^
``spack activate --force``
^^^^^^^^^^^^^^^^^^^^^^^^^^
If, for some reason, you want to activate a package *without* its
dependencies, you can use ``spack activate --force``:
.. code-block:: console
$ spack activate --force py-numpy
==> Activated extension py-numpy@1.9.1%gcc@4.4.7 arch=linux-debian7-x86_64-66733244 for python@2.7.8%gcc@4.4.7.
.. _cmd-spack-deactivate:
^^^^^^^^^^^^^^^^^^^^
``spack deactivate``
^^^^^^^^^^^^^^^^^^^^
We've seen how activating an extension can be used to set up a default
version of a Python module. Obviously, you may want to change that at
some point. ``spack deactivate`` is the command for this. There are
several variants:
* ``spack deactivate <extension>`` will deactivate a single
extension. If another activated extension depends on this one,
Spack will warn you and exit with an error.
* ``spack deactivate --force <extension>`` deactivates an extension
regardless of packages that depend on it.
* ``spack deactivate --all <extension>`` deactivates an extension and
all of its dependencies. Use ``--force`` to disregard dependents.
* ``spack deactivate --all <extendee>`` deactivates *all* activated
extensions of a package. For example, to deactivate *all* python
extensions, use:
.. code-block:: console
$ spack deactivate --all python
-----------------------
Filesystem requirements
-----------------------

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,42 +13,51 @@ Some sites may encourage users to set up their own test environments
before carrying out central installations, or some users may prefer to set
up these environments on their own motivation. To reduce the load of
recompiling otherwise identical package specs in different installations,
installed packages can be put into build cache tarballs, uploaded to
installed packages can be put into build cache tarballs, pushed to
your Spack mirror and then downloaded and installed by others.
Whenever a mirror provides prebuilt packages, Spack will take these packages
into account during concretization and installation, making ``spack install``
significantly faster.
--------------------------
Creating build cache files
--------------------------
A compressed tarball of an installed package is created. Tarballs are created
for all of its link and run dependency packages as well. Compressed tarballs are
signed with gpg and signature and tarball and put in a ``.spack`` file. Optionally,
the rpaths (and ids and deps on macOS) can be changed to paths relative to
the Spack install tree before the tarball is created.
.. note::
We use the terms "build cache" and "mirror" often interchangeably. Mirrors
are used during installation both for sources and prebuilt packages. Build
caches refer to mirrors that provide prebuilt packages.
----------------------
Creating a build cache
----------------------
Build caches are created via:
.. code-block:: console
$ spack buildcache create <spec>
$ spack buildcache push <path/url/mirror name> <spec>
This command takes the locally installed spec and its dependencies, and
creates tarballs of their install prefixes. It also generates metadata files,
signed with GPG. These tarballs and metadata files are then pushed to the
provided binary cache, which can be a local directory or a remote URL.
If you wanted to create a build cache in a local directory, you would provide
the ``-d`` argument to target that directory, again also specifying the spec.
Here is an example creating a local directory, "spack-cache" and creating
build cache files for the "ninja" spec:
Here is an example where a build cache is created in a local directory named
"spack-cache", to which we push the "ninja" spec:
.. code-block:: console
$ mkdir -p ./spack-cache
$ spack buildcache create -d ./spack-cache ninja
==> Buildcache files will be output to file:///home/spackuser/spack/spack-cache/build_cache
gpgconf: socketdir is '/run/user/1000/gnupg'
gpg: using "E6DF6A8BD43208E4D6F392F23777740B7DBD643D" as default secret key for signing
$ spack buildcache push --allow-root ./spack-cache ninja
==> Pushing binary packages to file:///home/spackuser/spack/spack-cache/build_cache
Note that the targeted spec must already be installed. Once you have a build cache,
you can add it as a mirror, discussed next.
Not that ``ninja`` must be installed locally for this to work.
We're using the ``--allow-root`` flag to tell Spack that is OK when any of
the binaries we're pushing contain references to the local Spack install
directory.
Once you have a build cache, you can add it as a mirror, discussed next.
---------------------------------------
Finding or installing build cache files
@@ -59,10 +68,10 @@ with:
.. code-block:: console
$ spack mirror add <name> <url>
$ spack mirror add <name> <url or path>
Note that the url can be a web url _or_ a local filesystem location. In the previous
Both web URLs and local paths on the filesystem can be specified. In the previous
example, you might add the directory "spack-cache" and call it ``mymirror``:
@@ -87,7 +96,7 @@ this new build cache as follows:
.. code-block:: console
$ spack buildcache update-index -d spack-cache/
$ spack buildcache update-index ./spack-cache
Now you can use list:
@@ -98,46 +107,38 @@ Now you can use list:
-- linux-ubuntu20.04-skylake / gcc@9.3.0 ------------------------
ninja@1.10.2
Great! So now let's say you have a different spack installation, or perhaps just
a different environment for the same one, and you want to install a package from
that build cache. Let's first uninstall the actual library "ninja" to see if we can
re-install it from the cache.
With ``mymirror`` configured and an index available, Spack will automatically
use it during concretization and installation. That means that you can expect
``spack install ninja`` to fetch prebuilt packages from the mirror. Let's
verify by re-installing ninja:
.. code-block:: console
$ spack uninstall ninja
And now reinstall from the buildcache
.. code-block:: console
$ spack buildcache install ninja
==> buildcache spec(s) matching ninja
==> Fetching file:///home/spackuser/spack/spack-cache/build_cache/linux-ubuntu20.04-skylake/gcc-9.3.0/ninja-1.10.2/linux-ubuntu20.04-skylake-gcc-9.3.0-ninja-1.10.2-i4e5luour7jxdpc3bkiykd4imke3mkym.spack
####################################################################################################################################### 100.0%
==> Installing buildcache for spec ninja@1.10.2%gcc@9.3.0 arch=linux-ubuntu20.04-skylake
gpgconf: socketdir is '/run/user/1000/gnupg'
gpg: Signature made Tue 23 Mar 2021 10:16:29 PM MDT
gpg: using RSA key E6DF6A8BD43208E4D6F392F23777740B7DBD643D
gpg: Good signature from "spackuser (GPG created for Spack) <spackuser@noreply.users.github.com>" [ultimate]
$ spack install ninja
==> Installing ninja-1.11.1-yxferyhmrjkosgta5ei6b4lqf6bxbscz
==> Fetching file:///home/spackuser/spack/spack-cache/build_cache/linux-ubuntu20.04-skylake-gcc-9.3.0-ninja-1.10.2-yxferyhmrjkosgta5ei6b4lqf6bxbscz.spec.json.sig
gpg: Signature made Do 12 Jan 2023 16:01:04 CET
gpg: using RSA key 61B82B2B2350E171BD17A1744E3A689061D57BF6
gpg: Good signature from "example (GPG created for Spack) <example@example.com>" [ultimate]
==> Fetching file:///home/spackuser/spack/spack-cache/build_cache/linux-ubuntu20.04-skylake/gcc-9.3.0/ninja-1.10.2/linux-ubuntu20.04-skylake-gcc-9.3.0-ninja-1.10.2-yxferyhmrjkosgta5ei6b4lqf6bxbscz.spack
==> Extracting ninja-1.10.2-yxferyhmrjkosgta5ei6b4lqf6bxbscz from binary cache
==> ninja: Successfully installed ninja-1.11.1-yxferyhmrjkosgta5ei6b4lqf6bxbscz
Search: 0.00s. Fetch: 0.17s. Install: 0.12s. Total: 0.29s
[+] /home/harmen/spack/opt/spack/linux-ubuntu20.04-skylake/gcc-9.3.0/ninja-1.11.1-yxferyhmrjkosgta5ei6b4lqf6bxbscz
It worked! You've just completed a full example of creating a build cache with
a spec of interest, adding it as a mirror, updating it's index, listing the contents,
a spec of interest, adding it as a mirror, updating its index, listing the contents,
and finally, installing from it.
Note that the above command is intended to install a particular package to a
build cache you have created, and not to install a package from a build cache.
For the latter, once a mirror is added, by default when you do ``spack install`` the ``--use-cache``
flag is set, and you will install a package from a build cache if it is available.
If you want to always use the cache, you can do:
By default Spack falls back to building from sources when the mirror is not available
or when the package is simply not already available. To force Spack to only install
prebuilt packages, you can use
.. code-block:: console
$ spack install --cache-only <package>
$ spack install --use-buildcache only <package>
For example, to combine all of the commands above to add the E4S build cache
and then install from it exclusively, you would do:
@@ -146,7 +147,7 @@ and then install from it exclusively, you would do:
$ spack mirror add E4S https://cache.e4s.io
$ spack buildcache keys --install --trust
$ spack install --cache-only <package>
$ spack install --use-buildache only <package>
We use ``--install`` and ``--trust`` to say that we are installing keys to our
keyring, and trusting all downloaded keys.
@@ -176,7 +177,7 @@ need to be adjusted for better re-locatability.
--------------------
^^^^^^^^^^^^^^^^^^^^^^^^^^^
``spack buildcache create``
``spack buildcache push``
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Create tarball of installed Spack package and all dependencies.

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,15 +15,13 @@ is an entire command dedicated to the management of every aspect of bootstrappin
.. command-output:: spack bootstrap --help
The first thing to know to understand bootstrapping in Spack is that each of
Spack's dependencies is bootstrapped lazily; i.e. the first time it is needed and
can't be found. You can readily check if any prerequisite for using Spack
is missing by running:
Spack is configured to bootstrap its dependencies lazily by default; i.e. the first time they are needed and
can't be found. You can readily check if any prerequisite for using Spack is missing by running:
.. code-block:: console
% spack bootstrap status
Spack v0.17.1 - python@3.8
Spack v0.19.0 - python@3.8
[FAIL] Core Functionalities
[B] MISSING "clingo": required to concretize specs
@@ -48,6 +46,21 @@ they can be bootstrapped. Running a command that concretize a spec, like:
triggers the bootstrapping of clingo from pre-built binaries as expected.
Users can also bootstrap all the dependencies needed by Spack in a single command, which
might be useful to setup containers or other similar environments:
.. code-block:: console
$ spack bootstrap now
==> Bootstrapping clingo from pre-built binaries
==> Fetching https://mirror.spack.io/bootstrap/github-actions/v0.3/build_cache/linux-centos7-x86_64-gcc-10.2.1-clingo-bootstrap-spack-shqedxgvjnhiwdcdrvjhbd73jaevv7wt.spec.json
==> Fetching https://mirror.spack.io/bootstrap/github-actions/v0.3/build_cache/linux-centos7-x86_64/gcc-10.2.1/clingo-bootstrap-spack/linux-centos7-x86_64-gcc-10.2.1-clingo-bootstrap-spack-shqedxgvjnhiwdcdrvjhbd73jaevv7wt.spack
==> Installing "clingo-bootstrap@spack%gcc@10.2.1~docs~ipo+python+static_libstdcpp build_type=Release arch=linux-centos7-x86_64" from a buildcache
==> Bootstrapping patchelf from pre-built binaries
==> Fetching https://mirror.spack.io/bootstrap/github-actions/v0.3/build_cache/linux-centos7-x86_64-gcc-10.2.1-patchelf-0.15.0-htk62k7efo2z22kh6kmhaselru7bfkuc.spec.json
==> Fetching https://mirror.spack.io/bootstrap/github-actions/v0.3/build_cache/linux-centos7-x86_64/gcc-10.2.1/patchelf-0.15.0/linux-centos7-x86_64-gcc-10.2.1-patchelf-0.15.0-htk62k7efo2z22kh6kmhaselru7bfkuc.spack
==> Installing "patchelf@0.15.0%gcc@10.2.1 ldflags="-static-libstdc++ -static-libgcc" arch=linux-centos7-x86_64" from a buildcache
-----------------------
The Bootstrapping store
-----------------------
@@ -107,19 +120,19 @@ If need be, you can disable bootstrapping altogether by running:
in which case it's your responsibility to ensure Spack runs in an
environment where all its prerequisites are installed. You can
also configure Spack to skip certain bootstrapping methods by *untrusting*
them. For instance:
also configure Spack to skip certain bootstrapping methods by disabling
them specifically:
.. code-block:: console
% spack bootstrap untrust github-actions
==> "github-actions" is now untrusted and will not be used for bootstrapping
% spack bootstrap disable github-actions
==> "github-actions" is now disabled and will not be used for bootstrapping
tells Spack to skip trying to bootstrap from binaries. To add the "github-actions" method back you can:
.. code-block:: console
% spack bootstrap trust github-actions
% spack bootstrap enable github-actions
There is also an option to reset the bootstrapping configuration to Spack's defaults:

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -49,9 +49,8 @@ packages rather than building its own packages. This may be desirable
if machines ship with system packages, such as a customized MPI
that should be used instead of Spack building its own MPI.
External packages are configured through the ``packages.yaml`` file found
in a Spack installation's ``etc/spack/`` or a user's ``~/.spack/``
directory. Here's an example of an external configuration:
External packages are configured through the ``packages.yaml`` file.
Here's an example of an external configuration:
.. code-block:: yaml
@@ -97,11 +96,14 @@ Each package version and compiler listed in an external should
have entries in Spack's packages and compiler configuration, even
though the package and compiler may not ever be built.
The packages configuration can tell Spack to use an external location
for certain package versions, but it does not restrict Spack to using
external packages. In the above example, since newer versions of OpenMPI
are available, Spack will choose to start building and linking with the
latest version rather than continue using the pre-installed OpenMPI versions.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Prevent packages from being built from sources
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Adding an external spec in ``packages.yaml`` allows Spack to use an external location,
but it does not prevent Spack from building packages from sources. In the above example,
Spack might choose for many valid reasons to start building and linking with the
latest version of OpenMPI rather than continue using the pre-installed OpenMPI versions.
To prevent this, the ``packages.yaml`` configuration also allows packages
to be flagged as non-buildable. The previous example could be modified to
@@ -121,9 +123,15 @@ be:
buildable: False
The addition of the ``buildable`` flag tells Spack that it should never build
its own version of OpenMPI, and it will instead always rely on a pre-built
OpenMPI. Similar to ``paths``, ``buildable`` is specified as a property under
a package name.
its own version of OpenMPI from sources, and it will instead always rely on a pre-built
OpenMPI.
.. note::
If ``concretizer:reuse`` is on (see :ref:`concretizer-options` for more information on that flag)
pre-built specs include specs already available from a local store, an upstream store, a registered
buildcache or specs marked as externals in ``packages.yaml``. If ``concretizer:reuse`` is off, only
external specs in ``packages.yaml`` are included in the list of pre-built specs.
If an external module is specified as not buildable, then Spack will load the
external module into the build environment which can be used for linking.
@@ -132,6 +140,10 @@ The ``buildable`` does not need to be paired with external packages.
It could also be used alone to forbid packages that may be
buggy or otherwise undesirable.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Non-buildable virtual packages
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Virtual packages in Spack can also be specified as not buildable, and
external implementations can be provided. In the example above,
OpenMPI is configured as not buildable, but Spack will often prefer
@@ -153,21 +165,37 @@ but more conveniently:
- spec: "openmpi@1.6.5%intel@10.1 arch=linux-debian7-x86_64"
prefix: /opt/openmpi-1.6.5-intel
Implementations can also be listed immediately under the virtual they provide:
Spack can then use any of the listed external implementations of MPI
to satisfy a dependency, and will choose depending on the compiler and
architecture.
In cases where the concretizer is configured to reuse specs, and other ``mpi`` providers
(available via stores or buildcaches) are not wanted, Spack can be configured to require
specs matching only the available externals:
.. code-block:: yaml
packages:
mpi:
buildable: False
openmpi@1.4.3%gcc@4.4.7 arch=linux-debian7-x86_64: /opt/openmpi-1.4.3
openmpi@1.4.3%gcc@4.4.7 arch=linux-debian7-x86_64+debug: /opt/openmpi-1.4.3-debug
openmpi@1.6.5%intel@10.1 arch=linux-debian7-x86_64: /opt/openmpi-1.6.5-intel
mpich@3.3 %clang@9.0.0 arch=linux-debian7-x86_64: /opt/mpich-3.3-intel
require:
- one_of: [
"openmpi@1.4.3%gcc@4.4.7 arch=linux-debian7-x86_64",
"openmpi@1.4.3%gcc@4.4.7 arch=linux-debian7-x86_64+debug",
"openmpi@1.6.5%intel@10.1 arch=linux-debian7-x86_64"
]
openmpi:
externals:
- spec: "openmpi@1.4.3%gcc@4.4.7 arch=linux-debian7-x86_64"
prefix: /opt/openmpi-1.4.3
- spec: "openmpi@1.4.3%gcc@4.4.7 arch=linux-debian7-x86_64+debug"
prefix: /opt/openmpi-1.4.3-debug
- spec: "openmpi@1.6.5%intel@10.1 arch=linux-debian7-x86_64"
prefix: /opt/openmpi-1.6.5-intel
Spack can then use any of the listed external implementations of MPI
to satisfy a dependency, and will choose depending on the compiler and
architecture.
This configuration prevents any spec using MPI and originating from stores or buildcaches to be reused,
unless it matches the requirements under ``packages:mpi:require``. For more information on requirements see
:ref:`package-requirements`.
.. _cmd-spack-external-find:
@@ -194,11 +222,6 @@ Specific limitations include:
* Packages are not discoverable by default: For a package to be
discoverable with ``spack external find``, it needs to add special
logic. See :ref:`here <make-package-findable>` for more details.
* The current implementation only collects and examines executable files,
so it is typically only useful for build/run dependencies (in some cases
if a library package also provides an executable, it may be possible to
extract a meaningful Spec by running the executable - for example the
compiler wrappers in MPI implementations).
* The logic does not search through module files, it can only detect
packages with executables defined in ``PATH``; you can help Spack locate
externals which use module files by loading any associated modules for
@@ -249,7 +272,7 @@ Selection of the target microarchitectures
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The options under the ``targets`` attribute control which targets are considered during a solve.
Currently the options in this section are only configurable from the ``concretization.yaml`` file
Currently the options in this section are only configurable from the ``concretizer.yaml`` file
and there are no corresponding command line arguments to enable them for a single solve.
The ``granularity`` option can take two possible values: ``microarchitectures`` and ``generic``.
@@ -279,17 +302,207 @@ microarchitectures considered during the solve are constrained to be compatible
host Spack is currently running on. For instance, if this option is set to ``true``, a
user cannot concretize for ``target=icelake`` while running on an Haswell node.
.. _package-requirements:
--------------------
Package Requirements
--------------------
Spack can be configured to always use certain compilers, package
versions, and variants during concretization through package
requirements.
Package requirements are useful when you find yourself repeatedly
specifying the same constraints on the command line, and wish that
Spack respects these constraints whether you mention them explicitly
or not. Another use case is specifying constraints that should apply
to all root specs in an environment, without having to repeat the
constraint everywhere.
Apart from that, requirements config is more flexible than constraints
on the command line, because it can specify constraints on packages
*when they occur* as a dependency. In contrast, on the command line it
is not possible to specify constraints on dependencies while also keeping
those dependencies optional.
^^^^^^^^^^^^^^^^^^^
Requirements syntax
^^^^^^^^^^^^^^^^^^^
The package requirements configuration is specified in ``packages.yaml``,
keyed by package name and expressed using the Spec syntax. In the simplest
case you can specify attributes that you always want the package to have
by providing a single spec string to ``require``:
.. code-block:: yaml
packages:
libfabric:
require: "@1.13.2"
In the above example, ``libfabric`` will always build with version 1.13.2. If you
need to compose multiple configuration scopes ``require`` accepts a list of
strings:
.. code-block:: yaml
packages:
libfabric:
require:
- "@1.13.2"
- "%gcc"
In this case ``libfabric`` will always build with version 1.13.2 **and** using GCC
as a compiler.
For more complex use cases, require accepts also a list of objects. These objects
must have either a ``any_of`` or a ``one_of`` field, containing a list of spec strings,
and they can optionally have a ``when`` and a ``message`` attribute:
.. code-block:: yaml
packages:
openmpi:
require:
- any_of: ["@4.1.5", "%gcc"]
message: "in this example only 4.1.5 can build with other compilers"
``any_of`` is a list of specs. One of those specs must be satisfied
and it is also allowed for the concretized spec to match more than one.
In the above example, that means you could build ``openmpi@4.1.5%gcc``,
``openmpi@4.1.5%clang`` or ``openmpi@3.9%gcc``, but
not ``openmpi@3.9%clang``.
If a custom message is provided, and the requirement is not satisfiable,
Spack will print the custom error message:
.. code-block:: console
$ spack spec openmpi@3.9%clang
==> Error: in this example only 4.1.5 can build with other compilers
We could express a similar requirement using the ``when`` attribute:
.. code-block:: yaml
packages:
openmpi:
require:
- any_of: ["%gcc"]
when: "@:4.1.4"
message: "in this example only 4.1.5 can build with other compilers"
In the example above, if the version turns out to be 4.1.4 or less, we require the compiler to be GCC.
For readability, Spack also allows a ``spec`` key accepting a string when there is only a single
constraint:
.. code-block:: yaml
packages:
openmpi:
require:
- spec: "%gcc"
when: "@:4.1.4"
message: "in this example only 4.1.5 can build with other compilers"
This code snippet and the one before it are semantically equivalent.
Finally, instead of ``any_of`` you can use ``one_of`` which also takes a list of specs. The final
concretized spec must match one and only one of them:
.. code-block:: yaml
packages:
mpich:
require:
- one_of: ["+cuda", "+rocm"]
In the example above, that means you could build ``mpich+cuda`` or ``mpich+rocm`` but not ``mpich+cuda+rocm``.
.. note::
For ``any_of`` and ``one_of``, the order of specs indicates a
preference: items that appear earlier in the list are preferred
(note that these preferences can be ignored in favor of others).
.. note::
When using a conditional requirement, Spack is allowed to actively avoid the triggering
condition (the ``when=...`` spec) if that leads to a concrete spec with better scores in
the optimization criteria. To check the current optimization criteria and their
priorities you can run ``spack solve zlib``.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Setting default requirements
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
You can also set default requirements for all packages under ``all``
like this:
.. code-block:: yaml
packages:
all:
require: '%clang'
which means every spec will be required to use ``clang`` as a compiler.
Note that in this case ``all`` represents a *default set of requirements* -
if there are specific package requirements, then the default requirements
under ``all`` are disregarded. For example, with a configuration like this:
.. code-block:: yaml
packages:
all:
require: '%clang'
cmake:
require: '%gcc'
Spack requires ``cmake`` to use ``gcc`` and all other nodes (including ``cmake``
dependencies) to use ``clang``.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Setting requirements on virtual specs
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
A requirement on a virtual spec applies whenever that virtual is present in the DAG.
This can be useful for fixing which virtual provider you want to use:
.. code-block:: yaml
packages:
mpi:
require: 'mvapich2 %gcc'
With the configuration above the only allowed ``mpi`` provider is ``mvapich2 %gcc``.
Requirements on the virtual spec and on the specific provider are both applied, if
present. For instance with a configuration like:
.. code-block:: yaml
packages:
mpi:
require: 'mvapich2 %gcc'
mvapich2:
require: '~cuda'
you will use ``mvapich2~cuda %gcc`` as an ``mpi`` provider.
.. _package-preferences:
-------------------
Package Preferences
-------------------
Spack can be configured to prefer certain compilers, package
versions, dependencies, and variants during concretization.
The preferred configuration can be controlled via the
``~/.spack/packages.yaml`` file for user configurations, or the
``etc/spack/packages.yaml`` site configuration.
In some cases package requirements can be too strong, and package
preferences are the better option. Package preferences do not impose
constraints on packages for particular versions or variants values,
they rather only set defaults -- the concretizer is free to change
them if it must due to other constraints. Also note that package
preferences are of lower priority than reuse of already installed
packages.
Here's an example ``packages.yaml`` file that sets preferred packages:
@@ -307,7 +520,7 @@ Here's an example ``packages.yaml`` file that sets preferred packages:
providers:
mpi: [mvapich2, mpich, openmpi]
At a high level, this example is specifying how packages should be
At a high level, this example is specifying how packages are preferably
concretized. The opencv package should prefer using GCC 4.9 and
be built with debug options. The gperftools package should prefer version
2.2 over 2.4. Every package on the system should prefer mvapich2 for
@@ -315,13 +528,11 @@ its MPI and GCC 4.4.7 (except for opencv, which overrides this by preferring GCC
These options are used to fill in implicit defaults. Any of them can be overwritten
on the command line if explicitly requested.
Each ``packages.yaml`` file begins with the string ``packages:`` and
package names are specified on the next level. The special string ``all``
applies settings to *all* packages. Underneath each package name is one
or more components: ``compiler``, ``variants``, ``version``,
``providers``, and ``target``. Each component has an ordered list of
spec ``constraints``, with earlier entries in the list being preferred
over later entries.
Package preferences accept the follow keys or components under
the specific package (or ``all``) section: ``compiler``, ``variants``,
``version``, ``providers``, and ``target``. Each component has an
ordered list of spec ``constraints``, with earlier entries in the
list being preferred over later entries.
Sometimes a package installation may have constraints that forbid
the first concretization rule, in which case Spack will use the first
@@ -336,10 +547,9 @@ gcc to pgi will thus be preferred over the xlc compiler.
The syntax for the ``provider`` section differs slightly from other
concretization rules. A provider lists a value that packages may
``depend_on`` (e.g, MPI) and a list of rules for fulfilling that
``depends_on`` (e.g, MPI) and a list of rules for fulfilling that
dependency.
.. _package_permissions:
-------------------
@@ -388,3 +598,25 @@ directories inside the install prefix. This will ensure that even
manually placed files within the install prefix are owned by the
assigned group. If no group is assigned, Spack will allow the OS
default behavior to go as expected.
----------------------------
Assigning Package Attributes
----------------------------
You can assign class-level attributes in the configuration:
.. code-block:: yaml
packages:
mpileaks:
# Override existing attributes
url: http://www.somewhereelse.com/mpileaks-1.0.tar.gz
# ... or add new ones
x: 1
Attributes set this way will be accessible to any method executed
in the package.py file (e.g. the ``install()`` method). Values for these
attributes may be any value parseable by yaml.
These can only be applied to specific packages, not "all" or
virtual packages.

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -62,11 +62,11 @@ on these ideas for each distinct build system that Spack supports:
build_systems/bundlepackage
build_systems/cudapackage
build_systems/custompackage
build_systems/inteloneapipackage
build_systems/intelpackage
build_systems/rocmpackage
build_systems/custompackage
build_systems/multiplepackage
build_systems/sourceforgepackage
For reference, the :py:mod:`Build System API docs <spack.build_systems>`
provide a list of build systems and methods/attributes that can be

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _autotoolspackage:
----------------
AutotoolsPackage
----------------
---------
Autotools
---------
Autotools is a GNU build system that provides a build-script generator.
By running the platform-independent ``./configure`` script that comes
@@ -17,7 +17,7 @@ with the package, you can generate a platform-dependent Makefile.
Phases
^^^^^^
The ``AutotoolsPackage`` base class comes with the following phases:
The ``AutotoolsBuilder`` and ``AutotoolsPackage`` base classes come with the following phases:
#. ``autoreconf`` - generate the configure script
#. ``configure`` - generate the Makefiles

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _bundlepackage:
-------------
BundlePackage
-------------
------
Bundle
------
``BundlePackage`` represents a set of packages that are expected to work well
together, such as a collection of commonly used software libraries. The

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _cachedcmakepackage:
------------------
CachedCMakePackage
------------------
-----------
CachedCMake
-----------
The CachedCMakePackage base class is used for CMake-based workflows
that create a CMake cache file prior to running ``cmake``. This is

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _cmakepackage:
------------
CMakePackage
------------
-----
CMake
-----
Like Autotools, CMake is a widely-used build-script generator. Designed
by Kitware, CMake is the most popular build system for new C, C++, and
@@ -21,7 +21,7 @@ whereas Autotools is Unix-only.
Phases
^^^^^^
The ``CMakePackage`` base class comes with the following phases:
The ``CMakeBuilder`` and ``CMakePackage`` base classes come with the following phases:
#. ``cmake`` - generate the Makefile
#. ``build`` - build the package
@@ -130,8 +130,8 @@ Adding flags to cmake
To add additional flags to the ``cmake`` call, simply override the
``cmake_args`` function. The following example defines values for the flags
``WHATEVER``, ``ENABLE_BROKEN_FEATURE``, ``DETECT_HDF5``, and ``THREADS`` with
and without the :meth:`~spack.build_systems.cmake.CMakePackage.define` and
:meth:`~spack.build_systems.cmake.CMakePackage.define_from_variant` helper functions:
and without the :meth:`~spack.build_systems.cmake.CMakeBuilder.define` and
:meth:`~spack.build_systems.cmake.CMakeBuilder.define_from_variant` helper functions:
.. code-block:: python

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _cudapackage:
-----------
CudaPackage
-----------
----
Cuda
----
Different from other packages, ``CudaPackage`` does not represent a build system.
Instead its goal is to simplify and unify usage of ``CUDA`` in other packages by providing a `mixin-class <https://en.wikipedia.org/wiki/Mixin>`_.
@@ -28,11 +28,14 @@ This package provides the following variants:
* **cuda_arch**
This variant supports the optional specification of the architecture.
This variant supports the optional specification of one or multiple architectures.
Valid values are maintained in the ``cuda_arch_values`` property and
are the numeric character equivalent of the compute capability version
(e.g., '10' for version 1.0). Each provided value affects associated
``CUDA`` dependencies and compiler conflicts.
The variant builds both PTX code for the _virtual_ architecture
(e.g. ``compute_10``) and binary code for the _real_ architecture (e.g. ``sm_10``).
GPUs and their compute capability versions are listed at
https://developer.nvidia.com/cuda-gpus .
@@ -80,7 +83,7 @@ standard CUDA compiler flags.
**cuda_flags**
This built-in static method returns a list of command line flags
This built-in static method returns a list of command line flags
for the chosen ``cuda_arch`` value(s). The flags are intended to
be passed to the CUDA compiler driver (i.e., ``nvcc``).

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,9 +6,9 @@
.. _inteloneapipackage:
====================
IntelOneapiPackage
====================
===========
IntelOneapi
===========
.. contents::
@@ -32,11 +32,11 @@ oneAPI packages or use::
For more information on a specific package, do::
spack info <package-name>
spack info --all <package-name>
Intel no longer releases new versions of Parallel Studio, which can be
used in Spack via the :ref:`intelpackage`. All of its components can
now be found in oneAPI.
now be found in oneAPI.
Examples
========
@@ -84,8 +84,8 @@ build ``hdf5`` with Intel oneAPI MPI do::
spack install hdf5 +mpi ^intel-oneapi-mpi
Using an Externally Installed oneAPI
====================================
Using Externally Installed oneAPI Tools
=======================================
Spack can also use oneAPI tools that are manually installed with
`Intel Installers`_. The procedures for configuring Spack to use
@@ -110,7 +110,7 @@ Another option is to manually add the configuration to
Libraries
---------
If you want Spack to use MKL that you have installed without Spack in
If you want Spack to use oneMKL that you have installed without Spack in
the default location, then add the following to
``~/.spack/packages.yaml``, adjusting the version as appropriate::
@@ -124,7 +124,7 @@ Using oneAPI Tools Installed by Spack
=====================================
Spack can be a convenient way to install and configure compilers and
libaries, even if you do not intend to build a Spack package. If you
libraries, even if you do not intend to build a Spack package. If you
want to build a Makefile project using Spack-installed oneAPI compilers,
then use spack to configure your environment::
@@ -139,7 +139,7 @@ You can also use Spack-installed libraries. For example::
spack load intel-oneapi-mkl
Will update your environment CPATH, LIBRARY_PATH, and other
environment variables for building an application with MKL.
environment variables for building an application with oneMKL.
More information
================

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _intelpackage:
------------
IntelPackage
------------
-----
Intel
-----
.. contents::
@@ -15,6 +15,9 @@ IntelPackage
Intel packages in Spack
^^^^^^^^^^^^^^^^^^^^^^^^
This is an earlier version of Intel software development tools and has
now been replaced by Intel oneAPI Toolkits.
Spack can install and use several software development products offered by Intel.
Some of these are available under no-cost terms, others require a paid license.
All share the same basic steps for configuration, installation, and, where
@@ -394,7 +397,7 @@ for specifics and examples for ``packages.yaml`` files.
.. If your system administrator did not provide modules for pre-installed Intel
tools, you could do well to ask for them, because installing multiple copies
of the Intel tools, as is wont to happen once Spack is in the picture, is
of the Intel tools, as is won't to happen once Spack is in the picture, is
bound to stretch disk space and patience thin. If you *are* the system
administrator and are still new to modules, then perhaps it's best to follow
the `next section <Installing Intel tools within Spack_>`_ and install the tools
@@ -650,7 +653,7 @@ follow `the next section <intel-install-libs_>`_ instead.
* If you specified a custom variant (for example ``+vtune``) you may want to add this as your
preferred variant in the packages configuration for the ``intel-parallel-studio`` package
as described in :ref:`package-preferences`. Otherwise you will have to specify
the variant everytime ``intel-parallel-studio`` is being used as ``mkl``, ``fftw`` or ``mpi``
the variant every time ``intel-parallel-studio`` is being used as ``mkl``, ``fftw`` or ``mpi``
implementation to avoid pulling in a different variant.
* To set the Intel compilers for default use in Spack, instead of the usual ``%gcc``,

View File

@@ -1,15 +1,15 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _luapackage:
------------
LuaPackage
------------
---
Lua
---
LuaPackage is a helper for the common case of Lua packages that provide
The ``Lua`` build-system is a helper for the common case of Lua packages that provide
a rockspec file. This is not meant to take a rock archive, but to build
a source archive or repository that provides a rockspec, which should cover
most lua packages. In the case a Lua package builds by Make rather than
@@ -19,7 +19,7 @@ luarocks, prefer MakefilePackage.
Phases
^^^^^^
The ``LuaPackage`` base class comes with the following phases:
The ``LuaBuilder`` and `LuaPackage`` base classes come with the following phases:
#. ``unpack`` - if using a rock, unpacks the rock and moves into the source directory
#. ``preprocess`` - adjust sources or rockspec to fix build

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _makefilepackage:
---------------
MakefilePackage
---------------
--------
Makefile
--------
The most primitive build system a package can use is a plain Makefile.
Makefiles are simple to write for small projects, but they usually
@@ -18,7 +18,7 @@ variables.
Phases
^^^^^^
The ``MakefilePackage`` base class comes with 3 phases:
The ``MakefileBuilder`` and ``MakefilePackage`` base classes come with 3 phases:
#. ``edit`` - edit the Makefile
#. ``build`` - build the project

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _mavenpackage:
------------
MavenPackage
------------
-----
Maven
-----
Apache Maven is a general-purpose build system that does not rely
on Makefiles to build software. It is designed for building and
@@ -17,7 +17,7 @@ managing and Java-based project.
Phases
^^^^^^
The ``MavenPackage`` base class comes with the following phases:
The ``MavenBuilder`` and ``MavenPackage`` base classes come with the following phases:
#. ``build`` - compile code and package into a JAR file
#. ``install`` - copy to installation prefix

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _mesonpackage:
------------
MesonPackage
------------
-----
Meson
-----
Much like Autotools and CMake, Meson is a build system. But it is
meant to be both fast and as user friendly as possible. GNOME's goal
@@ -17,7 +17,7 @@ is to port modules to use the Meson build system.
Phases
^^^^^^
The ``MesonPackage`` base class comes with the following phases:
The ``MesonBuilder`` and ``MesonPackage`` base classes come with the following phases:
#. ``meson`` - generate ninja files
#. ``build`` - build the project

View File

@@ -1,350 +0,0 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _multiplepackage:
----------------------
Multiple Build Systems
----------------------
Quite frequently, a package will change build systems from one version to the
next. For example, a small project that once used a single Makefile to build
may now require Autotools to handle the increased number of files that need to
be compiled. Or, a package that once used Autotools may switch to CMake for
Windows support. In this case, it becomes a bit more challenging to write a
single build recipe for this package in Spack.
There are several ways that this can be handled in Spack:
#. Subclass the new build system, and override phases as needed (preferred)
#. Subclass ``Package`` and implement ``install`` as needed
#. Create separate ``*-cmake``, ``*-autotools``, etc. packages for each build system
#. Rename the old package to ``*-legacy`` and create a new package
#. Move the old package to a ``legacy`` repository and create a new package
#. Drop older versions that only support the older build system
Of these options, 1 is preferred, and will be demonstrated in this
documentation. Options 3-5 have issues with concretization, so shouldn't be
used. Options 4-5 also don't support more than two build systems. Option 6 only
works if the old versions are no longer needed. Option 1 is preferred over 2
because it makes it easier to drop the old build system entirely.
The exact syntax of the package depends on which build systems you need to
support. Below are a couple of common examples.
^^^^^^^^^^^^^^^^^^^^^
Makefile -> Autotools
^^^^^^^^^^^^^^^^^^^^^
Let's say we have the following package:
.. code-block:: python
class Foo(MakefilePackage):
version("1.2.0", sha256="...")
def edit(self, spec, prefix):
filter_file("CC=", "CC=" + spack_cc, "Makefile")
def install(self, spec, prefix):
install_tree(".", prefix)
The package subclasses from :ref:`makefilepackage`, which has three phases:
#. ``edit`` (does nothing by default)
#. ``build`` (runs ``make`` by default)
#. ``install`` (runs ``make install`` by default)
In this case, the ``install`` phase needed to be overridden because the
Makefile did not have an install target. We also modify the Makefile to use
Spack's compiler wrappers. The default ``build`` phase is not changed.
Starting with version 1.3.0, we want to use Autotools to build instead.
:ref:`autotoolspackage` has four phases:
#. ``autoreconf`` (does not if a configure script already exists)
#. ``configure`` (runs ``./configure --prefix=...`` by default)
#. ``build`` (runs ``make`` by default)
#. ``install`` (runs ``make install`` by default)
If the only version we need to support is 1.3.0, the package would look as
simple as:
.. code-block:: python
class Foo(AutotoolsPackage):
version("1.3.0", sha256="...")
def configure_args(self):
return ["--enable-shared"]
In this case, we use the default methods for each phase and only override
``configure_args`` to specify additional flags to pass to ``./configure``.
If we wanted to write a single package that supports both versions 1.2.0 and
1.3.0, it would look something like:
.. code-block:: python
class Foo(AutotoolsPackage):
version("1.3.0", sha256="...")
version("1.2.0", sha256="...", deprecated=True)
def configure_args(self):
return ["--enable-shared"]
# Remove the following once version 1.2.0 is dropped
@when("@:1.2")
def patch(self):
filter_file("CC=", "CC=" + spack_cc, "Makefile")
@when("@:1.2")
def autoreconf(self, spec, prefix):
pass
@when("@:1.2")
def configure(self, spec, prefix):
pass
@when("@:1.2")
def install(self, spec, prefix):
install_tree(".", prefix)
There are a few interesting things to note here:
* We added ``deprecated=True`` to version 1.2.0. This signifies that version
1.2.0 is deprecated and shouldn't be used. However, if a user still relies
on version 1.2.0, it's still there and builds just fine.
* We moved the contents of the ``edit`` phase to the ``patch`` function. Since
``AutotoolsPackage`` doesn't have an ``edit`` phase, the only way for this
step to be executed is to move it to the ``patch`` function, which always
gets run.
* The ``autoreconf`` and ``configure`` phases become no-ops. Since the old
Makefile-based build system doesn't use these, we ignore these phases when
building ``foo@1.2.0``.
* The ``@when`` decorator is used to override these phases only for older
versions. The default methods are used for ``foo@1.3:``.
Once a new Spack release comes out, version 1.2.0 and everything below the
comment can be safely deleted. The result is the same as if we had written a
package for version 1.3.0 from scratch.
^^^^^^^^^^^^^^^^^^
Autotools -> CMake
^^^^^^^^^^^^^^^^^^
Let's say we have the following package:
.. code-block:: python
class Bar(AutotoolsPackage):
version("1.2.0", sha256="...")
def configure_args(self):
return ["--enable-shared"]
The package subclasses from :ref:`autotoolspackage`, which has four phases:
#. ``autoreconf`` (does not if a configure script already exists)
#. ``configure`` (runs ``./configure --prefix=...`` by default)
#. ``build`` (runs ``make`` by default)
#. ``install`` (runs ``make install`` by default)
In this case, we use the default methods for each phase and only override
``configure_args`` to specify additional flags to pass to ``./configure``.
Starting with version 1.3.0, we want to use CMake to build instead.
:ref:`cmakepackage` has three phases:
#. ``cmake`` (runs ``cmake ...`` by default)
#. ``build`` (runs ``make`` by default)
#. ``install`` (runs ``make install`` by default)
If the only version we need to support is 1.3.0, the package would look as
simple as:
.. code-block:: python
class Bar(CMakePackage):
version("1.3.0", sha256="...")
def cmake_args(self):
return [self.define("BUILD_SHARED_LIBS", True)]
In this case, we use the default methods for each phase and only override
``cmake_args`` to specify additional flags to pass to ``cmake``.
If we wanted to write a single package that supports both versions 1.2.0 and
1.3.0, it would look something like:
.. code-block:: python
class Bar(CMakePackage):
version("1.3.0", sha256="...")
version("1.2.0", sha256="...", deprecated=True)
def cmake_args(self):
return [self.define("BUILD_SHARED_LIBS", True)]
# Remove the following once version 1.2.0 is dropped
def configure_args(self):
return ["--enable-shared"]
@when("@:1.2")
def cmake(self, spec, prefix):
configure("--prefix=" + prefix, *self.configure_args())
There are a few interesting things to note here:
* We added ``deprecated=True`` to version 1.2.0. This signifies that version
1.2.0 is deprecated and shouldn't be used. However, if a user still relies
on version 1.2.0, it's still there and builds just fine.
* Since CMake and Autotools are so similar, we only need to override the
``cmake`` phase, we can use the default ``build`` and ``install`` phases.
* We override ``cmake`` to run ``./configure`` for older versions.
``configure_args`` remains the same.
* The ``@when`` decorator is used to override these phases only for older
versions. The default methods are used for ``bar@1.3:``.
Once a new Spack release comes out, version 1.2.0 and everything below the
comment can be safely deleted. The result is the same as if we had written a
package for version 1.3.0 from scratch.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Multiple build systems for the same version
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
During the transition from one build system to another, developers often
support multiple build systems at the same time. Spack can only use a single
build system for a single version. To decide which build system to use for a
particular version, take the following things into account:
1. If the developers explicitly state that one build system is preferred over
another, use that one.
2. If one build system is considered "experimental" while another is considered
"stable", use the stable build system.
3. Otherwise, use the newer build system.
The developer preference for which build system to use can change over time as
a newer build system becomes stable/recommended.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Dropping support for old build systems
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
When older versions of a package don't support a newer build system, it can be
tempting to simply delete them from a package. This significantly reduces
package complexity and makes the build recipe much easier to maintain. However,
other packages or Spack users may rely on these older versions. The recommended
approach is to first support both build systems (as demonstrated above),
:ref:`deprecate <deprecate>` versions that rely on the old build system, and
remove those versions and any phases that needed to be overridden in the next
Spack release.
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Three or more build systems
^^^^^^^^^^^^^^^^^^^^^^^^^^^
In rare cases, a package may change build systems multiple times. For example,
a package may start with Makefiles, then switch to Autotools, then switch to
CMake. The same logic used above can be extended to any number of build systems.
For example:
.. code-block:: python
class Baz(CMakePackage):
version("1.4.0", sha256="...") # CMake
version("1.3.0", sha256="...") # Autotools
version("1.2.0", sha256="...") # Makefile
def cmake_args(self):
return [self.define("BUILD_SHARED_LIBS", True)]
# Remove the following once version 1.3.0 is dropped
def configure_args(self):
return ["--enable-shared"]
@when("@1.3")
def cmake(self, spec, prefix):
configure("--prefix=" + prefix, *self.configure_args())
# Remove the following once version 1.2.0 is dropped
@when("@:1.2")
def patch(self):
filter_file("CC=", "CC=" + spack_cc, "Makefile")
@when("@:1.2")
def cmake(self, spec, prefix):
pass
@when("@:1.2")
def install(self, spec, prefix):
install_tree(".", prefix)
^^^^^^^^^^^^^^^^^^^
Additional examples
^^^^^^^^^^^^^^^^^^^
When writing new packages, it often helps to see examples of existing packages.
Here is an incomplete list of existing Spack packages that have changed build
systems before:
================ ===================== ================
Package Previous Build System New Build System
================ ===================== ================
amber custom CMake
arpack-ng Autotools CMake
atk Autotools Meson
blast None Autotools
dyninst Autotools CMake
evtgen Autotools CMake
fish Autotools CMake
gdk-pixbuf Autotools Meson
glib Autotools Meson
glog Autotools CMake
gmt Autotools CMake
gtkplus Autotools Meson
hpl Makefile Autotools
interproscan Perl Maven
jasper Autotools CMake
kahip SCons CMake
kokkos Makefile CMake
kokkos-kernels Makefile CMake
leveldb Makefile CMake
libdrm Autotools Meson
libjpeg-turbo Autotools CMake
mesa Autotools Meson
metis None CMake
mpifileutils Autotools CMake
muparser Autotools CMake
mxnet Makefile CMake
nest Autotools CMake
neuron Autotools CMake
nsimd CMake nsconfig
opennurbs Makefile CMake
optional-lite None CMake
plasma Makefile CMake
preseq Makefile Autotools
protobuf Autotools CMake
py-pygobject Autotools Python
singularity Autotools Makefile
span-lite None CMake
ssht Makefile CMake
string-view-lite None CMake
superlu Makefile CMake
superlu-dist Makefile CMake
uncrustify Autotools CMake
================ ===================== ================
Packages that support multiple build systems can be a bit confusing to write.
Don't hesitate to open an issue or draft pull request and ask for advice from
other Spack developers!

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _octavepackage:
-------------
OctavePackage
-------------
------
Octave
------
Octave has its own build system for installing packages.
@@ -15,7 +15,7 @@ Octave has its own build system for installing packages.
Phases
^^^^^^
The ``OctavePackage`` base class has a single phase:
The ``OctaveBuilder`` and ``OctavePackage`` base classes have a single phase:
#. ``install`` - install the package

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _perlpackage:
-----------
PerlPackage
-----------
----
Perl
----
Much like Octave, Perl has its own language-specific
build system.
@@ -16,7 +16,7 @@ build system.
Phases
^^^^^^
The ``PerlPackage`` base class comes with 3 phases that can be overridden:
The ``PerlBuilder`` and ``PerlPackage`` base classes come with 3 phases that can be overridden:
#. ``configure`` - configure the package
#. ``build`` - build the package

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _pythonpackage:
-------------
PythonPackage
-------------
------
Python
------
Python packages and modules have their own special build system. This
documentation covers everything you'll need to know in order to write
@@ -48,8 +48,11 @@ important to understand.
**build backend**
Libraries used to define how to build a wheel. Examples
include `setuptools <https://setuptools.pypa.io/>`__,
`flit <https://flit.readthedocs.io/>`_, and
`poetry <https://python-poetry.org/>`_.
`flit <https://flit.pypa.io/>`_,
`poetry <https://python-poetry.org/>`_,
`hatchling <https://hatch.pypa.io/latest/>`_,
`meson <https://meson-python.readthedocs.io/>`_, and
`pdm <https://pdm.fming.dev/latest/>`_.
^^^^^^^^^^^
Downloading
@@ -173,9 +176,9 @@ package. The "Project description" tab may also contain a longer
description of the package. Either of these can be used to populate
the package docstring.
^^^^^^^^^^^^^
Build backend
^^^^^^^^^^^^^
^^^^^^^^^^^^
Dependencies
^^^^^^^^^^^^
Once you've determined the basic metadata for a package, the next
step is to determine the build backend. ``PythonPackage`` uses
@@ -213,12 +216,33 @@ Note that ``py-wheel`` is already listed as a build dependency in the
need to specify a specific version requirement or change the
dependency type.
See `PEP 517 <https://www.python.org/dev/peps/pep-0517/>`_ and
See `PEP 517 <https://www.python.org/dev/peps/pep-0517/>`__ and
`PEP 518 <https://www.python.org/dev/peps/pep-0518/>`_ for more
information on the design of ``pyproject.toml``.
Depending on which build backend a project uses, there are various
places that run-time dependencies can be listed.
places that run-time dependencies can be listed. Most modern build
backends support listing dependencies directly in ``pyproject.toml``.
Look for dependencies under the following keys:
* ``requires-python`` under ``[project]``
This specifies the version of Python that is required
* ``dependencies`` under ``[project]``
These packages are required for building and installation. You can
add them with ``type=('build', 'run')``.
* ``[project.optional-dependencies]``
This section includes keys with lists of optional dependencies
needed to enable those features. You should add a variant that
optionally adds these dependencies. This variant should be ``False``
by default.
Some build backends may have additional locations where dependencies
can be found.
"""""""""
distutils
@@ -244,9 +268,9 @@ If the ``pyproject.toml`` lists ``setuptools.build_meta`` as a
``build-backend``, or if the package has a ``setup.py`` that imports
``setuptools``, or if the package has a ``setup.cfg`` file, then it
uses setuptools to build. Setuptools is a replacement for the
distutils library, and has almost the exact same API. Dependencies
can be listed in the ``setup.py`` or ``setup.cfg`` file. Look for the
following arguments:
distutils library, and has almost the exact same API. In addition to
``pyproject.toml``, dependencies can be listed in the ``setup.py`` or
``setup.cfg`` file. Look for the following arguments:
* ``python_requires``
@@ -291,25 +315,22 @@ listed directly in the ``pyproject.toml`` file. Older versions of
flit used to store this info in a ``flit.ini`` file, so check for
this too.
Either of these files may contain keys like:
In addition to the default ``pyproject.toml`` keys listed above,
older versions of flit may use the following keys:
* ``requires-python``
This specifies the version of Python that is required
* ``dependencies`` or ``requires``
* ``requires`` under ``[tool.flit.metadata]``
These packages are required for building and installation. You can
add them with ``type=('build', 'run')``.
* ``project.optional-dependencies`` or ``requires-extra``
* ``[tool.flit.metadata.requires-extra]``
This section includes keys with lists of optional dependencies
needed to enable those features. You should add a variant that
optionally adds these dependencies. This variant should be False
by default.
See https://flit.readthedocs.io/en/latest/pyproject_toml.html for
See https://flit.pypa.io/en/latest/pyproject_toml.html for
more information.
""""""
@@ -326,6 +347,38 @@ for specifying the version requirements. Note that ``~=`` works
differently in poetry than in setuptools and flit for versions that
start with a zero.
"""""""""
hatchling
"""""""""
If the ``pyproject.toml`` lists ``hatchling.build`` as the
``build-backend``, it uses the hatchling build system. Hatchling
uses the default ``pyproject.toml`` keys to list dependencies.
See https://hatch.pypa.io/latest/config/dependency/ for more
information.
"""""
meson
"""""
If the ``pyproject.toml`` lists ``mesonpy`` as the ``build-backend``,
it uses the meson build system. Meson uses the default
``pyproject.toml`` keys to list dependencies.
See https://meson-python.readthedocs.io/en/latest/tutorials/introduction.html
for more information.
"""
pdm
"""
If the ``pyproject.toml`` lists ``pdm.pep517.api`` as the ``build-backend``,
it uses the PDM build system. PDM uses the default ``pyproject.toml``
keys to list dependencies.
See https://pdm.fming.dev/latest/ for more information.
""""""
wheels
""""""
@@ -370,6 +423,34 @@ packages. However, the installation instructions for a package may
suggest passing certain flags to the ``setup.py`` call. The
``PythonPackage`` class has two techniques for doing this.
"""""""""""""""
Config settings
"""""""""""""""
These settings are passed to
`PEP 517 <https://peps.python.org/pep-0517/>`__ build backends.
For example, ``py-scipy`` package allows you to specify the name of
the BLAS/LAPACK library you want pkg-config to search for:
.. code-block:: python
depends_on('py-pip@22.1:', type='build')
def config_settings(self, spec, prefix):
return {
'blas': spec['blas'].libs.names[0],
'lapack': spec['lapack'].libs.names[0],
}
.. note::
This flag only works for packages that define a ``build-backend``
in ``pyproject.toml``. Also, it is only supported by pip 22.1+,
which requires Python 3.7+. For packages that still support Python
3.6 and older, ``install_options`` should be used instead.
""""""""""""""
Global options
""""""""""""""
@@ -389,6 +470,16 @@ has an optional dependency on ``libyaml`` that can be enabled like so:
return options
.. note::
Direct invocation of ``setup.py`` is
`deprecated <https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html>`_.
This flag forces pip to use a deprecated installation procedure.
It should only be used in packages that don't define a
``build-backend`` in ``pyproject.toml`` or packages that still
support Python 3.6 and older.
"""""""""""""""
Install options
"""""""""""""""
@@ -409,6 +500,16 @@ allows you to specify the directories to search for ``libyaml``:
return options
.. note::
Direct invocation of ``setup.py`` is
`deprecated <https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html>`_.
This flag forces pip to use a deprecated installation procedure.
It should only be used in packages that don't define a
``build-backend`` in ``pyproject.toml`` or packages that still
support Python 3.6 and older.
^^^^^^^
Testing
^^^^^^^
@@ -481,6 +582,19 @@ libraries. Make sure not to add modules/packages containing the word
"test", as these likely won't end up in the installation directory,
or may require test dependencies like pytest to be installed.
Instead of defining the ``import_modules`` explicitly, only the subset
of module names to be skipped can be defined by using ``skip_modules``.
If a defined module has submodules, they are skipped as well, e.g.,
in case the ``plotting`` modules should be excluded from the
automatically detected ``import_modules`` ``['nilearn', 'nilearn.surface',
'nilearn.plotting', 'nilearn.plotting.data']`` set:
.. code-block:: python
skip_modules = ['nilearn.plotting']
This will set ``import_modules`` to ``['nilearn', 'nilearn.surface']``
Import tests can be run during the installation using ``spack install
--test=root`` or at any time after the installation using
``spack test run``.
@@ -610,10 +724,9 @@ extends vs. depends_on
This is very similar to the naming dilemma above, with a slight twist.
As mentioned in the :ref:`Packaging Guide <packaging_extensions>`,
``extends`` and ``depends_on`` are very similar, but ``extends`` adds
the ability to *activate* the package. Activation involves symlinking
everything in the installation prefix of the package to the installation
prefix of Python. This allows the user to import a Python module without
``extends`` and ``depends_on`` are very similar, but ``extends`` ensures
that the extension and extendee share the same prefix in views.
This allows the user to import a Python module without
having to add that module to ``PYTHONPATH``.
When deciding between ``extends`` and ``depends_on``, the best rule of
@@ -621,7 +734,7 @@ thumb is to check the installation prefix. If Python libraries are
installed to ``<prefix>/lib/pythonX.Y/site-packages``, then you
should use ``extends``. If Python libraries are installed elsewhere
or the only files that get installed reside in ``<prefix>/bin``, then
don't use ``extends``, as symlinking the package wouldn't be useful.
don't use ``extends``.
^^^^^^^^^^^^^^^^^^^^^
Alternatives to Spack
@@ -664,5 +777,8 @@ For more information on build and installation frontend tools, see:
For more information on build backend tools, see:
* setuptools: https://setuptools.pypa.io/
* flit: https://flit.readthedocs.io/
* flit: https://flit.pypa.io/
* poetry: https://python-poetry.org/
* hatchling: https://hatch.pypa.io/latest/
* meson: https://meson-python.readthedocs.io/
* pdm: https://pdm.fming.dev/latest/

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _qmakepackage:
------------
QMakePackage
------------
-----
QMake
-----
Much like Autotools and CMake, QMake is a build-script generator
designed by the developers of Qt. In its simplest form, Spack's
@@ -29,7 +29,7 @@ variables or edit ``*.pro`` files to get things working properly.
Phases
^^^^^^
The ``QMakePackage`` base class comes with the following phases:
The ``QMakeBuilder`` and ``QMakePackage`` base classes come with the following phases:
#. ``qmake`` - generate Makefiles
#. ``build`` - build the project

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _racketpackage:
-------------
RacketPackage
-------------
------
Racket
------
Much like Python, Racket packages and modules have their own special build system.
To learn more about the specifics of Racket package system, please refer to the
@@ -17,7 +17,7 @@ To learn more about the specifics of Racket package system, please refer to the
Phases
^^^^^^
The ``RacketPackage`` base class provides an ``install`` phase that
The ``RacketBuilder`` and ``RacketPackage`` base classes provides an ``install`` phase that
can be overridden, corresponding to the use of:
.. code-block:: console

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _rocmpackage:
-----------
ROCmPackage
-----------
----
ROCm
----
The ``ROCmPackage`` is not a build system but a helper package. Like ``CudaPackage``,
it provides standard variants, dependencies, and conflicts to facilitate building
@@ -25,7 +25,7 @@ This package provides the following variants:
* **rocm**
This variant is used to enable/disable building with ``rocm``.
This variant is used to enable/disable building with ``rocm``.
The default is disabled (or ``False``).
* **amdgpu_target**

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _rpackage:
--------
RPackage
--------
--
R
--
Like Python, R has its own built-in build system.
@@ -19,7 +19,7 @@ new Spack packages for.
Phases
^^^^^^
The ``RPackage`` base class has a single phase:
The ``RBuilder`` and ``RPackage`` base classes have a single phase:
#. ``install`` - install the package
@@ -193,10 +193,10 @@ Build system dependencies
As an extension of the R ecosystem, your package will obviously depend
on R to build and run. Normally, we would use ``depends_on`` to express
this, but for R packages, we use ``extends``. ``extends`` is similar to
``depends_on``, but adds an additional feature: the ability to "activate"
the package by symlinking it to the R installation directory. Since
every R package needs this, the ``RPackage`` base class contains:
this, but for R packages, we use ``extends``. This implies a special
dependency on R, which is used to set environment variables such as
``R_LIBS`` uniformly. Since every R package needs this, the ``RPackage``
base class contains:
.. code-block:: python

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _rubypackage:
-----------
RubyPackage
-----------
----
Ruby
----
Like Perl, Python, and R, Ruby has its own build system for
installing Ruby gems.
@@ -16,7 +16,7 @@ installing Ruby gems.
Phases
^^^^^^
The ``RubyPackage`` base class provides the following phases that
The ``RubyBuilder`` and ``RubyPackage`` base classes provide the following phases that
can be overridden:
#. ``build`` - build everything needed to install

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _sconspackage:
------------
SConsPackage
------------
-----
SCons
-----
SCons is a general-purpose build system that does not rely on
Makefiles to build software. SCons is written in Python, and handles
@@ -42,7 +42,7 @@ As previously mentioned, SCons allows developers to add subcommands like
$ scons install
To facilitate this, the ``SConsPackage`` base class provides the
To facilitate this, the ``SConsBuilder`` and ``SconsPackage`` base classes provide the
following phases:
#. ``build`` - build the package

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _sippackage:
----------
SIPPackage
----------
---
SIP
---
SIP is a tool that makes it very easy to create Python bindings for C and C++
libraries. It was originally developed to create PyQt, the Python bindings for
@@ -22,7 +22,7 @@ provides support functions to the automatically generated code.
Phases
^^^^^^
The ``SIPPackage`` base class comes with the following phases:
The ``SIPBuilder`` and ``SIPPackage`` base classes come with the following phases:
#. ``configure`` - configure the package
#. ``build`` - build the package

View File

@@ -0,0 +1,55 @@
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _sourceforgepackage:
-----------
Sourceforge
-----------
``SourceforgePackage`` is a
`mixin-class <https://en.wikipedia.org/wiki/Mixin>`_. It automatically
sets the URL based on a list of Sourceforge mirrors listed in
`sourceforge_mirror_path`, which defaults to a half dozen known mirrors.
Refer to the package source
(`<https://github.com/spack/spack/blob/develop/lib/spack/spack/build_systems/sourceforge.py>`__) for the current list of mirrors used by Spack.
^^^^^^^
Methods
^^^^^^^
This package provides a method for populating mirror URLs.
**urls**
This method returns a list of possible URLs for package source.
It is decorated with `property` so its results are treated as
a package attribute.
Refer to
`<https://spack.readthedocs.io/en/latest/packaging_guide.html#mirrors-of-the-main-url>`__
for information on how Spack uses the `urls` attribute during
fetching.
^^^^^
Usage
^^^^^
This helper package can be added to your package by adding it as a base
class of your package and defining the relative location of an archive
file for one version of your software.
.. code-block:: python
:emphasize-lines: 1,3
class MyPackage(AutotoolsPackage, SourceforgePackage):
...
sourceforge_mirror_path = "my-package/mypackage.1.0.0.tar.gz"
...
Over 40 packages are using ``SourceforcePackage`` this mix-in as of
July 2022 so there are multiple packages to choose from if you want
to see a real example.

View File

@@ -1,13 +1,13 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _wafpackage:
----------
WafPackage
----------
---
Waf
---
Like SCons, Waf is a general-purpose build system that does not rely
on Makefiles to build software.
@@ -16,7 +16,7 @@ on Makefiles to build software.
Phases
^^^^^^
The ``WafPackage`` base class comes with the following phases:
The ``WafBuilder`` and ``WafPackage`` base classes come with the following phases:
#. ``configure`` - configure the project
#. ``build`` - build the project
@@ -58,9 +58,7 @@ Testing
``WafPackage`` also provides ``test`` and ``installtest`` methods,
which are run after the ``build`` and ``install`` phases, respectively.
By default, these phases do nothing, but you can override them to
run package-specific unit tests. For example, the
`py-py2cairo <https://github.com/spack/spack/blob/develop/var/spack/repos/builtin/packages/py-py2cairo/package.py>`_
package uses:
run package-specific unit tests.
.. code-block:: python

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)

View File

@@ -1,4 +1,4 @@
# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -32,37 +32,36 @@
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
sys.path.insert(0, os.path.abspath('_spack_root/lib/spack/external'))
sys.path.insert(0, os.path.abspath('_spack_root/lib/spack/external/pytest-fallback'))
if sys.version_info[0] < 3:
sys.path.insert(
0, os.path.abspath('_spack_root/lib/spack/external/yaml/lib'))
else:
sys.path.insert(
0, os.path.abspath('_spack_root/lib/spack/external/yaml/lib3'))
sys.path.append(os.path.abspath('_spack_root/lib/spack/'))
link_name = os.path.abspath("_spack_root")
if not os.path.exists(link_name):
os.symlink(os.path.abspath("../../.."), link_name, target_is_directory=True)
sys.path.insert(0, os.path.abspath("_spack_root/lib/spack/external"))
sys.path.insert(0, os.path.abspath("_spack_root/lib/spack/external/_vendoring"))
sys.path.append(os.path.abspath("_spack_root/lib/spack/"))
# Add the Spack bin directory to the path so that we can use its output in docs.
os.environ['SPACK_ROOT'] = os.path.abspath('_spack_root')
os.environ['PATH'] += "%s%s" % (os.pathsep, os.path.abspath('_spack_root/bin'))
os.environ["SPACK_ROOT"] = os.path.abspath("_spack_root")
os.environ["PATH"] += "%s%s" % (os.pathsep, os.path.abspath("_spack_root/bin"))
# Set an environment variable so that colify will print output like it would to
# a terminal.
os.environ['COLIFY_SIZE'] = '25x120'
os.environ['COLUMNS'] = '120'
os.environ["COLIFY_SIZE"] = "25x120"
os.environ["COLUMNS"] = "120"
# Generate full package list if needed
subprocess.call([
'spack', 'list', '--format=html', '--update=package_list.html'])
subprocess.call(["spack", "list", "--format=html", "--update=package_list.html"])
# Generate a command index if an update is needed
subprocess.call([
'spack', 'commands',
'--format=rst',
'--header=command_index.in',
'--update=command_index.rst'] + glob('*rst'))
subprocess.call(
[
"spack",
"commands",
"--format=rst",
"--header=command_index.in",
"--update=command_index.rst",
]
+ glob("*rst")
)
#
# Run sphinx-apidoc
@@ -72,25 +71,36 @@
# Without this, the API Docs will never actually update
#
apidoc_args = [
'--force', # Overwrite existing files
'--no-toc', # Don't create a table of contents file
'--output-dir=.', # Directory to place all output
"--force", # Overwrite existing files
"--no-toc", # Don't create a table of contents file
"--output-dir=.", # Directory to place all output
"--module-first", # emit module docs before submodule docs
]
sphinx_apidoc(apidoc_args + ['_spack_root/lib/spack/spack'])
sphinx_apidoc(apidoc_args + ['_spack_root/lib/spack/llnl'])
sphinx_apidoc(
apidoc_args
+ [
"_spack_root/lib/spack/spack",
"_spack_root/lib/spack/spack/test/*.py",
"_spack_root/lib/spack/spack/test/cmd/*.py",
]
)
sphinx_apidoc(apidoc_args + ["_spack_root/lib/spack/llnl"])
# Enable todo items
todo_include_todos = True
#
# Disable duplicate cross-reference warnings.
#
class PatchedPythonDomain(PythonDomain):
def resolve_xref(self, env, fromdocname, builder, typ, target, node, contnode):
if 'refspecific' in node:
del node['refspecific']
if "refspecific" in node:
del node["refspecific"]
return super(PatchedPythonDomain, self).resolve_xref(
env, fromdocname, builder, typ, target, node, contnode)
env, fromdocname, builder, typ, target, node, contnode
)
#
# Disable tabs to space expansion in code blocks
@@ -103,51 +113,57 @@ def parse(self, inputstring, document):
inputstring = StringList(lines, document.current_source)
super().parse(inputstring, document)
def setup(sphinx):
sphinx.add_domain(PatchedPythonDomain, override=True)
sphinx.add_source_parser(NoTabExpansionRSTParser, override=True)
# -- General configuration -----------------------------------------------------
# If your documentation needs a minimal Sphinx version, state it here.
needs_sphinx = '3.4'
needs_sphinx = "3.4"
# Add any Sphinx extension module names here, as strings. They can be extensions
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
extensions = [
'sphinx.ext.autodoc',
'sphinx.ext.graphviz',
'sphinx.ext.intersphinx',
'sphinx.ext.napoleon',
'sphinx.ext.todo',
'sphinx.ext.viewcode',
'sphinxcontrib.programoutput',
"sphinx.ext.autodoc",
"sphinx.ext.graphviz",
"sphinx.ext.intersphinx",
"sphinx.ext.napoleon",
"sphinx.ext.todo",
"sphinx.ext.viewcode",
"sphinx_design",
"sphinxcontrib.programoutput",
]
# Set default graphviz options
graphviz_dot_args = [
'-Grankdir=LR', '-Gbgcolor=transparent',
'-Nshape=box', '-Nfontname=monaco', '-Nfontsize=10']
"-Grankdir=LR",
"-Gbgcolor=transparent",
"-Nshape=box",
"-Nfontname=monaco",
"-Nfontsize=10",
]
# Get nice vector graphics
graphviz_output_format = "svg"
# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']
templates_path = ["_templates"]
# The suffix of source filenames.
source_suffix = '.rst'
source_suffix = ".rst"
# The encoding of source files.
source_encoding = 'utf-8-sig'
source_encoding = "utf-8-sig"
# The master toctree document.
master_doc = 'index'
master_doc = "index"
# General information about the project.
project = u'Spack'
copyright = u'2013-2021, Lawrence Livermore National Laboratory.'
project = "Spack"
copyright = "2013-2023, Lawrence Livermore National Laboratory."
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
@@ -156,16 +172,16 @@ def setup(sphinx):
# The short X.Y version.
import spack
version = '.'.join(str(s) for s in spack.spack_version_info[:2])
version = ".".join(str(s) for s in spack.spack_version_info[:2])
# The full version, including alpha/beta/rc tags.
release = spack.spack_version
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#language = None
# language = None
# Places to look for .po/.mo files for doc translations
#locale_dirs = []
# locale_dirs = []
# Sphinx gettext settings
gettext_compact = True
@@ -173,201 +189,179 @@ def setup(sphinx):
# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
#today = ''
# today = ''
# Else, today_fmt is used as the format for a strftime call.
#today_fmt = '%B %d, %Y'
# today_fmt = '%B %d, %Y'
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
exclude_patterns = ['_build', '_spack_root', '.spack-env']
exclude_patterns = ["_build", "_spack_root", ".spack-env"]
nitpicky = True
nitpick_ignore = [
# Python classes that intersphinx is unable to resolve
('py:class', 'argparse.HelpFormatter'),
('py:class', 'contextlib.contextmanager'),
('py:class', 'module'),
('py:class', '_io.BufferedReader'),
('py:class', 'unittest.case.TestCase'),
('py:class', '_frozen_importlib_external.SourceFileLoader'),
("py:class", "argparse.HelpFormatter"),
("py:class", "contextlib.contextmanager"),
("py:class", "module"),
("py:class", "_io.BufferedReader"),
("py:class", "unittest.case.TestCase"),
("py:class", "_frozen_importlib_external.SourceFileLoader"),
("py:class", "clingo.Control"),
("py:class", "six.moves.urllib.parse.ParseResult"),
("py:class", "TextIO"),
# Spack classes that are private and we don't want to expose
('py:class', 'spack.provider_index._IndexBase'),
('py:class', 'spack.repo._PrependFileLoader'),
("py:class", "spack.provider_index._IndexBase"),
("py:class", "spack.repo._PrependFileLoader"),
("py:class", "spack.build_systems._checks.BaseBuilder"),
# Spack classes that intersphinx is unable to resolve
("py:class", "spack.version.StandardVersion"),
("py:class", "spack.spec.DependencySpec"),
("py:class", "spack.install_test.Pb"),
]
# The reST default role (used for this markup: `text`) to use for all documents.
#default_role = None
# default_role = None
# If true, '()' will be appended to :func: etc. cross-reference text.
#add_function_parentheses = True
# add_function_parentheses = True
# If true, the current module name will be prepended to all description
# unit titles (such as .. function::).
#add_module_names = True
# add_module_names = True
# If true, sectionauthor and moduleauthor directives will be shown in the
# output. They are ignored by default.
#show_authors = False
# The name of the Pygments (syntax highlighting) style to use.
# We use our own extension of the default style with a few modifications
from pygments.style import Style
from pygments.styles.default import DefaultStyle
from pygments.token import Comment, Generic, Text
class SpackStyle(DefaultStyle):
styles = DefaultStyle.styles.copy()
background_color = "#f4f4f8"
styles[Generic.Output] = "#355"
styles[Generic.Prompt] = "bold #346ec9"
import pkg_resources
dist = pkg_resources.Distribution(__file__)
sys.path.append('.') # make 'conf' module findable
ep = pkg_resources.EntryPoint.parse('spack = conf:SpackStyle', dist=dist)
dist._ep_map = {'pygments.styles': {'plugin1': ep}}
pkg_resources.working_set.add(dist)
pygments_style = 'spack'
# show_authors = False
sys.path.append("./_pygments")
pygments_style = "style.SpackStyle"
# A list of ignored prefixes for module index sorting.
#modindex_common_prefix = []
# modindex_common_prefix = []
# -- Options for HTML output ---------------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
html_theme = 'sphinx_rtd_theme'
html_theme = "sphinx_rtd_theme"
# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# documentation.
html_theme_options = { 'logo_only' : True }
html_theme_options = {"logo_only": True}
# Add any paths that contain custom themes here, relative to this directory.
# html_theme_path = ["_themes"]
# The name for this set of Sphinx documents. If None, it defaults to
# "<project> v<release> documentation".
#html_title = None
# html_title = None
# A shorter title for the navigation bar. Default is the same as html_title.
#html_short_title = None
# html_short_title = None
# The name of an image file (relative to this directory) to place at the top
# of the sidebar.
html_logo = '_spack_root/share/spack/logo/spack-logo-white-text.svg'
html_logo = "_spack_root/share/spack/logo/spack-logo-white-text.svg"
# The name of an image file (within the static path) to use as favicon of the
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
# pixels large.
html_favicon = '_spack_root/share/spack/logo/favicon.ico'
html_favicon = "_spack_root/share/spack/logo/favicon.ico"
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']
html_static_path = ["_static"]
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
# using the given strftime format.
html_last_updated_fmt = '%b %d, %Y'
html_last_updated_fmt = "%b %d, %Y"
# If true, SmartyPants will be used to convert quotes and dashes to
# typographically correct entities.
#html_use_smartypants = True
# html_use_smartypants = True
# Custom sidebar templates, maps document names to template names.
#html_sidebars = {}
# html_sidebars = {}
# Additional templates that should be rendered to pages, maps page names to
# template names.
#html_additional_pages = {}
# html_additional_pages = {}
# If false, no module index is generated.
#html_domain_indices = True
# html_domain_indices = True
# If false, no index is generated.
#html_use_index = True
# html_use_index = True
# If true, the index is split into individual pages for each letter.
#html_split_index = False
# html_split_index = False
# If true, links to the reST sources are added to the pages.
#html_show_sourcelink = True
# html_show_sourcelink = True
# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
#html_show_sphinx = False
# html_show_sphinx = False
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
#html_show_copyright = True
# html_show_copyright = True
# If true, an OpenSearch description file will be output, and all pages will
# contain a <link> tag referring to it. The value of this option must be the
# base URL from which the finished HTML is served.
#html_use_opensearch = ''
# html_use_opensearch = ''
# This is the file name suffix for HTML files (e.g. ".xhtml").
#html_file_suffix = None
# html_file_suffix = None
# Output file base name for HTML help builder.
htmlhelp_basename = 'Spackdoc'
htmlhelp_basename = "Spackdoc"
# -- Options for LaTeX output --------------------------------------------------
latex_elements = {
# The paper size ('letterpaper' or 'a4paper').
#'papersize': 'letterpaper',
# The font size ('10pt', '11pt' or '12pt').
#'pointsize': '10pt',
# Additional stuff for the LaTeX preamble.
#'preamble': '',
# The paper size ('letterpaper' or 'a4paper').
# 'papersize': 'letterpaper',
# The font size ('10pt', '11pt' or '12pt').
# 'pointsize': '10pt',
# Additional stuff for the LaTeX preamble.
# 'preamble': '',
}
# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title, author, documentclass [howto/manual]).
latex_documents = [
('index', 'Spack.tex', u'Spack Documentation',
u'Todd Gamblin', 'manual'),
]
latex_documents = [("index", "Spack.tex", "Spack Documentation", "Todd Gamblin", "manual")]
# The name of an image file (relative to this directory) to place at the top of
# the title page.
#latex_logo = None
# latex_logo = None
# For "manual" documents, if this is true, then toplevel headings are parts,
# not chapters.
#latex_use_parts = False
# latex_use_parts = False
# If true, show page references after internal links.
#latex_show_pagerefs = False
# latex_show_pagerefs = False
# If true, show URL addresses after external links.
#latex_show_urls = False
# latex_show_urls = False
# Documents to append as an appendix to all manuals.
#latex_appendices = []
# latex_appendices = []
# If false, no module index is generated.
#latex_domain_indices = True
# latex_domain_indices = True
# -- Options for manual page output --------------------------------------------
# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
man_pages = [
('index', 'spack', u'Spack Documentation',
[u'Todd Gamblin'], 1)
]
man_pages = [("index", "spack", "Spack Documentation", ["Todd Gamblin"], 1)]
# If true, show URL addresses after external links.
#man_show_urls = False
# man_show_urls = False
# -- Options for Texinfo output ------------------------------------------------
@@ -376,24 +370,28 @@ class SpackStyle(DefaultStyle):
# (source start file, target name, title, author,
# dir menu entry, description, category)
texinfo_documents = [
('index', 'Spack', u'Spack Documentation',
u'Todd Gamblin', 'Spack', 'One line description of project.',
'Miscellaneous'),
(
"index",
"Spack",
"Spack Documentation",
"Todd Gamblin",
"Spack",
"One line description of project.",
"Miscellaneous",
)
]
# Documents to append as an appendix to all manuals.
#texinfo_appendices = []
# texinfo_appendices = []
# If false, no module index is generated.
#texinfo_domain_indices = True
# texinfo_domain_indices = True
# How to display URL addresses: 'footnote', 'no', or 'inline'.
#texinfo_show_urls = 'footnote'
# texinfo_show_urls = 'footnote'
# -- Extension configuration -------------------------------------------------
# sphinx.ext.intersphinx
intersphinx_mapping = {
"python": ("https://docs.python.org/3", None),
}
intersphinx_mapping = {"python": ("https://docs.python.org/3", None)}

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,9 +19,9 @@ see the default settings by looking at
These settings can be overridden in ``etc/spack/config.yaml`` or
``~/.spack/config.yaml``. See :ref:`configuration-scopes` for details.
--------------------
``install_tree``
--------------------
---------------------
``install_tree:root``
---------------------
The location where Spack will install packages and their dependencies.
Default is ``$spack/opt/spack``.
@@ -222,11 +222,11 @@ and location. (See the *Configuration settings* section of ``man
ccache`` to learn more about the default settings and how to change
them). Please note that we currently disable ccache's ``hash_dir``
feature to avoid an issue with the stage directory (see
https://github.com/LLNL/spack/pull/3761#issuecomment-294352232).
https://github.com/spack/spack/pull/3761#issuecomment-294352232).
------------------
``shared_linking``
------------------
-----------------------
``shared_linking:type``
-----------------------
Control whether Spack embeds ``RPATH`` or ``RUNPATH`` attributes in ELF binaries
so that they can find their dependencies. Has no effect on macOS.
@@ -245,6 +245,52 @@ the loading object.
DO NOT MIX the two options within the same install tree.
-----------------------
``shared_linking:bind``
-----------------------
This is an *experimental option* that controls whether Spack embeds absolute paths
to needed shared libraries in ELF executables and shared libraries on Linux. Setting
this option to ``true`` has two advantages:
1. **Improved startup time**: when running an executable, the dynamic loader does not
have to perform a search for needed libraries, they are loaded directly.
2. **Reliability**: libraries loaded at runtime are those that were linked to. This
minimizes the risk of accidentally picking up system libraries.
In the current implementation, Spack sets the soname (shared object name) of
libraries to their install path upon installation. This has two implications:
1. binding does not apply to libraries installed *before* the option was enabled;
2. toggling the option off does *not* prevent binding of libraries installed when
the option was still enabled.
It is also worth noting that:
1. Applications relying on ``dlopen(3)`` will continue to work, even when they open
a library by name. This is because ``RPATH``\s are retained in binaries also
when ``bind`` is enabled.
2. ``LD_PRELOAD`` continues to work for the typical use case of overriding
symbols, such as preloading a library with a more efficient ``malloc``.
However, the preloaded library will be loaded *additionally to*, instead of
*in place of* another library with the same name --- this can be problematic
in very rare cases where libraries rely on a particular ``init`` or ``fini``
order.
.. note::
In some cases packages provide *stub libraries* that only contain an interface
for linking, but lack an implementation for runtime. An example of this is
``libcuda.so``, provided by the CUDA toolkit; it can be used to link against,
but the library needed at runtime is the one installed with the CUDA driver.
To avoid binding those libraries, they can be marked as non-bindable using
a property in the package:
.. code-block:: python
class Example(Package):
non_bindable_shared_objects = ["libinterface.so"]
----------------------
``terminal_title``
----------------------

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,8 +20,9 @@ case you want to skip directly to specific docs:
* :ref:`packages.yaml <build-settings>`
* :ref:`repos.yaml <repositories>`
You can also add any of these as inline configuration in ``spack.yaml``
in an :ref:`environment <environment-configuration>`.
You can also add any of these as inline configuration in the YAML
manifest file (``spack.yaml``) describing an :ref:`environment
<environment-configuration>`.
-----------
YAML Format
@@ -227,6 +228,9 @@ You can get the name to use for ``<platform>`` by running ``spack arch
--platform``. The system config scope has a ``<platform>`` section for
sites at which ``/etc`` is mounted on multiple heterogeneous machines.
.. _config-scope-precedence:
----------------
Scope Precedence
----------------
@@ -239,6 +243,11 @@ lower-precedence settings. Completely ignoring higher-level configuration
options is supported with the ``::`` notation for keys (see
:ref:`config-overrides` below).
There are also special notations for string concatenation and precendense override.
Using the ``+:`` notation can be used to force *prepending* strings or lists. For lists, this is identical
to the default behavior. Using the ``-:`` works similarly, but for *appending* values.
:ref:`config-prepend-append`
^^^^^^^^^^^
Simple keys
^^^^^^^^^^^
@@ -279,6 +288,47 @@ command:
- ~/.spack/stage
.. _config-prepend-append:
^^^^^^^^^^^^^^^^^^^^
String Concatenation
^^^^^^^^^^^^^^^^^^^^
Above, the user ``config.yaml`` *completely* overrides specific settings in the
default ``config.yaml``. Sometimes, it is useful to add a suffix/prefix
to a path or name. To do this, you can use the ``-:`` notation for *append*
string concatenation at the end of a key in a configuration file. For example:
.. code-block:: yaml
:emphasize-lines: 1
:caption: ~/.spack/config.yaml
config:
install_tree-: /my/custom/suffix/
Spack will then append to the lower-precedence configuration under the
``install_tree-:`` section:
.. code-block:: console
$ spack config get config
config:
install_tree: /some/other/directory/my/custom/suffix
build_stage:
- $tempdir/$user/spack-stage
- ~/.spack/stage
Similarly, ``+:`` can be used to *prepend* to a path or name:
.. code-block:: yaml
:emphasize-lines: 1
:caption: ~/.spack/config.yaml
config:
install_tree+: /my/custom/suffix/
.. _config-overrides:
^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -394,7 +444,7 @@ are indicated at the start of the path with ``~`` or ``~user``.
Spack-specific variables
^^^^^^^^^^^^^^^^^^^^^^^^
Spack understands several special variables. These are:
Spack understands over a dozen special variables. These are:
* ``$env``: name of the currently active :ref:`environment <environments>`
* ``$spack``: path to the prefix of this Spack installation
@@ -405,6 +455,19 @@ Spack understands several special variables. These are:
* ``$user``: name of the current user
* ``$user_cache_path``: user cache directory (``~/.spack`` unless
:ref:`overridden <local-config-overrides>`)
* ``$architecture``: the architecture triple of the current host, as
detected by Spack.
* ``$arch``: alias for ``$architecture``.
* ``$platform``: the platform of the current host, as detected by Spack.
* ``$operating_system``: the operating system of the current host, as
detected by the ``distro`` python module.
* ``$os``: alias for ``$operating_system``.
* ``$target``: the ISA target for the current host, as detected by
ArchSpec. E.g. ``skylake`` or ``neoverse-n1``.
* ``$target_family``. The target family for the current host, as
detected by ArchSpec. E.g. ``x86_64`` or ``aarch64``.
* ``$date``: the current date in the format YYYY-MM-DD
Note that, as with shell variables, you can write these as ``$varname``
or with braces to distinguish the variable from surrounding characters:
@@ -549,7 +612,7 @@ down the problem:
You can see above that the ``build_jobs`` and ``debug`` settings are
built in and are not overridden by a configuration file. The
``verify_ssl`` setting comes from the ``--insceure`` option on the
``verify_ssl`` setting comes from the ``--insecure`` option on the
command line. ``dirty`` and ``install_tree`` come from the custom
scopes ``./my-scope`` and ``./my-scope-2``, and all other configuration
options come from the default configuration files that ship with Spack.

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -59,7 +59,7 @@ other techniques to minimize the size of the final image:
&& echo " specs:" \
&& echo " - gromacs+mpi" \
&& echo " - mpich" \
&& echo " concretizer: together" \
&& echo " concretizer:" \
&& echo " unify: true" \
&& echo " config:" \
&& echo " install_tree: /opt/software" \
@@ -109,9 +109,10 @@ Spack Images on Docker Hub
--------------------------
Docker images with Spack preinstalled and ready to be used are
built on `Docker Hub <https://hub.docker.com/u/spack>`_
at every push to ``develop`` or to a release branch. The OS that
are currently supported are summarized in the table below:
built when a release is tagged, or nightly on ``develop``. The images
are then pushed both to `Docker Hub <https://hub.docker.com/u/spack>`_
and to `GitHub Container Registry <https://github.com/orgs/spack/packages?repo_name=spack>`_.
The OS that are currently supported are summarized in the table below:
.. _containers-supported-os:
@@ -121,22 +122,31 @@ are currently supported are summarized in the table below:
* - Operating System
- Base Image
- Spack Image
* - Ubuntu 16.04
- ``ubuntu:16.04``
- ``spack/ubuntu-xenial``
* - Ubuntu 18.04
- ``ubuntu:18.04``
- ``spack/ubuntu-bionic``
* - Ubuntu 20.04
- ``ubuntu:20.04``
- ``spack/ubuntu-focal``
* - Ubuntu 22.04
- ``ubuntu:22.04``
- ``spack/ubuntu-jammy``
* - CentOS 7
- ``centos:7``
- ``spack/centos7``
* - CentOS Stream
- ``quay.io/centos/centos:stream``
- ``spack/centos-stream``
* - openSUSE Leap
- ``opensuse/leap``
- ``spack/leap15``
* - Amazon Linux 2
- ``amazonlinux:2``
- ``spack/amazon-linux``
All the images are tagged with the corresponding release of Spack:
.. image:: dockerhub_spack.png
.. image:: images/ghcr_spack.png
with the exception of the ``latest`` tag that points to the HEAD
of the ``develop`` branch. These images are available for anyone
@@ -434,6 +444,120 @@ attribute:
The minimum version of Singularity required to build a SIF (Singularity Image Format)
image from the recipes generated by Spack is ``3.5.3``.
------------------------------
Extending the Jinja2 Templates
------------------------------
The Dockerfile and the Singularity definition file that Spack can generate are based on
a few Jinja2 templates that are rendered according to the environment being containerized.
Even though Spack allows a great deal of customization by just setting appropriate values for
the configuration options, sometimes that is not enough.
In those cases, a user can directly extend the template that Spack uses to render the image
to e.g. set additional environment variables or perform specific operations either before or
after a given stage of the build. Let's consider as an example the following structure:
.. code-block:: console
$ tree /opt/environment
/opt/environment
├── data
│ └── data.csv
├── spack.yaml
├── data
└── templates
└── container
└── CustomDockerfile
containing both the custom template extension and the environment manifest file. To use a custom
template, the environment must register the directory containing it, and declare its use under the
``container`` configuration:
.. code-block:: yaml
:emphasize-lines: 7-8,12
spack:
specs:
- hdf5~mpi
concretizer:
unify: true
config:
template_dirs:
- /opt/environment/templates
container:
format: docker
depfile: true
template: container/CustomDockerfile
The template extension can override two blocks, named ``build_stage`` and ``final_stage``, similarly to
the example below:
.. code-block::
:emphasize-lines: 3,8
{% extends "container/Dockerfile" %}
{% block build_stage %}
RUN echo "Start building"
{{ super() }}
{% endblock %}
{% block final_stage %}
{{ super() }}
COPY data /share/myapp/data
{% endblock %}
The recipe that gets generated contains the two extra instruction that we added in our template extension:
.. code-block:: Dockerfile
:emphasize-lines: 4,43
# Build stage with Spack pre-installed and ready to be used
FROM spack/ubuntu-jammy:latest as builder
RUN echo "Start building"
# What we want to install and how we want to install it
# is specified in a manifest file (spack.yaml)
RUN mkdir /opt/spack-environment \
&& (echo "spack:" \
&& echo " specs:" \
&& echo " - hdf5~mpi" \
&& echo " concretizer:" \
&& echo " unify: true" \
&& echo " config:" \
&& echo " template_dirs:" \
&& echo " - /tmp/environment/templates" \
&& echo " install_tree: /opt/software" \
&& echo " view: /opt/view") > /opt/spack-environment/spack.yaml
# Install the software, remove unnecessary deps
RUN cd /opt/spack-environment && spack env activate . && spack concretize && spack env depfile -o Makefile && make -j $(nproc) && spack gc -y
# Strip all the binaries
RUN find -L /opt/view/* -type f -exec readlink -f '{}' \; | \
xargs file -i | \
grep 'charset=binary' | \
grep 'x-executable\|x-archive\|x-sharedlib' | \
awk -F: '{print $1}' | xargs strip -s
# Modifications to the environment that are necessary to run
RUN cd /opt/spack-environment && \
spack env activate --sh -d . >> /etc/profile.d/z10_spack_environment.sh
# Bare OS image to run the installed executables
FROM ubuntu:22.04
COPY --from=builder /opt/spack-environment /opt/spack-environment
COPY --from=builder /opt/software /opt/software
COPY --from=builder /opt/._view /opt/._view
COPY --from=builder /opt/view /opt/view
COPY --from=builder /etc/profile.d/z10_spack_environment.sh /etc/profile.d/z10_spack_environment.sh
COPY data /share/myapp/data
ENTRYPOINT ["/bin/bash", "--rcfile", "/etc/profile", "-l", "-c", "$*", "--" ]
CMD [ "/bin/bash" ]
.. _container_config_options:
-----------------------
@@ -454,6 +578,10 @@ to customize the generation of container recipes:
- The format of the recipe
- ``docker`` or ``singularity``
- Yes
* - ``depfile``
- Whether to use a depfile for installation, or not
- True or False (default)
- No
* - ``images:os``
- Operating system used as a base for the image
- See :ref:`containers-supported-os`
@@ -488,7 +616,7 @@ to customize the generation of container recipes:
- No
* - ``os_packages:command``
- Tool used to manage system packages
- ``apt``, ``yum``
- ``apt``, ``yum``, ``dnf``, ``dnf_epel``, ``zypper``, ``apk``, ``yum_amazon``
- Only with custom base images
* - ``os_packages:update``
- Whether or not to update the list of available packages
@@ -502,14 +630,6 @@ to customize the generation of container recipes:
- System packages needed at run-time
- Valid packages for the current OS
- No
* - ``extra_instructions:build``
- Extra instructions (e.g. `RUN`, `COPY`, etc.) at the end of the ``build`` stage
- Anything understood by the current ``format``
- No
* - ``extra_instructions:final``
- Extra instructions (e.g. `RUN`, `COPY`, etc.) at the end of the ``final`` stage
- Anything understood by the current ``format``
- No
* - ``labels``
- Labels to tag the image
- Pairs of key-value strings

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -71,7 +71,7 @@ locally to speed up the review process.
new release that is causing problems. If this is the case, please file an issue.
We currently test against Python 2.7 and 3.5-3.9 on both macOS and Linux and
We currently test against Python 2.7 and 3.6-3.10 on both macOS and Linux and
perform 3 types of tests:
.. _cmd-spack-unit-test:
@@ -118,7 +118,7 @@ make another change, test that change, etc. We use `pytest
<http://pytest.org/>`_ as our tests framework, and these types of
arguments are just passed to the ``pytest`` command underneath. See `the
pytest docs
<http://doc.pytest.org/en/latest/usage.html#specifying-tests-selecting-tests>`_
<https://doc.pytest.org/en/latest/how-to/usage.html#specifying-which-tests-to-run>`_
for more details on test selection syntax.
``spack unit-test`` has a few special options that can help you
@@ -147,7 +147,7 @@ you want to know about. For example, to see just the tests in
You can also combine any of these options with a ``pytest`` keyword
search. See the `pytest usage docs
<https://docs.pytest.org/en/stable/usage.html#specifying-tests-selecting-tests>`_:
<https://doc.pytest.org/en/latest/how-to/usage.html#specifying-which-tests-to-run>`_
for more details on test selection syntax. For example, to see the names of all tests that have "spec"
or "concretize" somewhere in their names:
@@ -253,27 +253,6 @@ to update them.
multiple runs of ``spack style`` just to re-compute line numbers and
makes it much easier to fix errors directly off of the CI output.
.. warning::
Flake8 and ``pep8-naming`` require a number of dependencies in order
to run. If you installed ``py-flake8`` and ``py-pep8-naming``, the
easiest way to ensure the right packages are on your ``PYTHONPATH`` is
to run::
spack activate py-flake8
spack activate pep8-naming
so that all of the dependencies are symlinked to a central
location. If you see an error message like:
.. code-block:: console
Traceback (most recent call last):
File: "/usr/bin/flake8", line 5, in <module>
from pkg_resources import load_entry_point
ImportError: No module named pkg_resources
that means Flake8 couldn't find setuptools in your ``PYTHONPATH``.
^^^^^^^^^^^^^^^^^^^
Documentation Tests
@@ -309,13 +288,9 @@ All of these can be installed with Spack, e.g.
.. code-block:: console
$ spack activate py-sphinx
$ spack activate py-sphinx-rtd-theme
$ spack activate py-sphinxcontrib-programoutput
$ spack load py-sphinx py-sphinx-rtd-theme py-sphinxcontrib-programoutput
so that all of the dependencies are symlinked into that Python's
tree. Alternatively, you could arrange for their library
directories to be added to PYTHONPATH. If you see an error message
so that all of the dependencies are added to PYTHONPATH. If you see an error message
like:
.. code-block:: console

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -107,7 +107,6 @@ with a high level view of Spack's directory structure:
llnl/ <- some general-use libraries
spack/ <- spack module; contains Python code
analyzers/ <- modules to run analysis on installed packages
build_systems/ <- modules for different build systems
cmd/ <- each file in here is a spack subcommand
compilers/ <- compiler description files
@@ -150,11 +149,9 @@ grouped by functionality.
Package-related modules
^^^^^^^^^^^^^^^^^^^^^^^
:mod:`spack.package`
Contains the :class:`~spack.package.Package` class, which
is the superclass for all packages in Spack. Methods on ``Package``
implement all phases of the :ref:`package lifecycle
<package-lifecycle>` and manage the build process.
:mod:`spack.package_base`
Contains the :class:`~spack.package_base.PackageBase` class, which
is the superclass for all packages in Spack.
:mod:`spack.util.naming`
Contains functions for mapping between Spack package names,
@@ -178,14 +175,11 @@ Spec-related modules
^^^^^^^^^^^^^^^^^^^^
:mod:`spack.spec`
Contains :class:`~spack.spec.Spec` and :class:`~spack.spec.SpecParser`.
Also implements most of the logic for normalization and concretization
Contains :class:`~spack.spec.Spec`. Also implements most of the logic for concretization
of specs.
:mod:`spack.parse`
Contains some base classes for implementing simple recursive descent
parsers: :class:`~spack.parse.Parser` and :class:`~spack.parse.Lexer`.
Used by :class:`~spack.spec.SpecParser`.
:mod:`spack.parser`
Contains :class:`~spack.parser.SpecParser` and functions related to parsing specs.
:mod:`spack.concretize`
Contains :class:`~spack.concretize.Concretizer` implementation,
@@ -238,26 +232,10 @@ Spack Subcommands
Unit tests
^^^^^^^^^^
:mod:`spack.test`
``spack.test``
Implements Spack's test suite. Add a module and put its name in
the test suite in ``__init__.py`` to add more unit tests.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Research and Monitoring Modules
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
:mod:`spack.monitor`
Contains :class:`~spack.monitor.SpackMonitorClient`. This is accessed from
the ``spack install`` and ``spack analyze`` commands to send build and
package metadata up to a `Spack Monitor
<https://github.com/spack/spack-monitor>`_ server.
:mod:`spack.analyzers`
A module folder with a :class:`~spack.analyzers.analyzer_base.AnalyzerBase`
that provides base functions to run, save, and (optionally) upload analysis
results to a `Spack Monitor <https://github.com/spack/spack-monitor>`_ server.
^^^^^^^^^^^^^
Other Modules
@@ -301,240 +279,6 @@ Most spack commands look something like this:
The information in Package files is used at all stages in this
process.
Conceptually, packages are overloaded. They contain:
-------------
Stage objects
-------------
.. _writing-analyzers:
-----------------
Writing analyzers
-----------------
To write an analyzer, you should add a new python file to the
analyzers module directory at ``lib/spack/spack/analyzers`` .
Your analyzer should be a subclass of the :class:`AnalyzerBase <spack.analyzers.analyzer_base.AnalyzerBase>`. For example, if you want
to add an analyzer class ``Myanalyzer`` you would write to
``spack/analyzers/myanalyzer.py`` and import and
use the base as follows:
.. code-block:: python
from .analyzer_base import AnalyzerBase
class Myanalyzer(AnalyzerBase):
Note that the class name is your module file name, all lowercase
except for the first capital letter. You can look at other analyzers in
that analyzer directory for examples. The guide here will tell you about the basic functions needed.
^^^^^^^^^^^^^^^^^^^^^^^^^
Analyzer Output Directory
^^^^^^^^^^^^^^^^^^^^^^^^^
By default, when you run ``spack analyze run`` an analyzer output directory will
be created in your spack user directory in your ``$HOME``. The reason we output here
is because the install directory might not always be writable.
.. code-block:: console
~/.spack/
analyzers
Result files will be written here, organized in subfolders in the same structure
as the package, with each analyzer owning it's own subfolder. for example:
.. code-block:: console
$ tree ~/.spack/analyzers/
/home/spackuser/.spack/analyzers/
└── linux-ubuntu20.04-skylake
└── gcc-9.3.0
└── zlib-1.2.11-sl7m27mzkbejtkrajigj3a3m37ygv4u2
├── environment_variables
│   └── spack-analyzer-environment-variables.json
├── install_files
│   └── spack-analyzer-install-files.json
└── libabigail
└── lib
└── spack-analyzer-libabigail-libz.so.1.2.11.xml
Notice that for the libabigail analyzer, since results are generated per object,
we honor the object's folder in case there are equivalently named files in
different folders. The result files are typically written as json so they can be easily read and uploaded in a future interaction with a monitor.
^^^^^^^^^^^^^^^^^
Analyzer Metadata
^^^^^^^^^^^^^^^^^
Your analyzer is required to have the class attributes ``name``, ``outfile``,
and ``description``. These are printed to the user with they use the subcommand
``spack analyze list-analyzers``. Here is an example.
As we mentioned above, note that this analyzer would live in a module named
``libabigail.py`` in the analyzers folder so that the class can be discovered.
.. code-block:: python
class Libabigail(AnalyzerBase):
name = "libabigail"
outfile = "spack-analyzer-libabigail.json"
description = "Application Binary Interface (ABI) features for objects"
This means that the name and output file should be unique for your analyzer.
Note that "all" cannot be the name of an analyzer, as this key is used to indicate
that the user wants to run all analyzers.
.. _analyzer_run_function:
^^^^^^^^^^^^^^^^^^^^^^^^
An analyzer run Function
^^^^^^^^^^^^^^^^^^^^^^^^
The core of an analyzer is its ``run()`` function, which should accept no
arguments. You can assume your analyzer has the package spec of interest at ``self.spec``
and it's up to the run function to generate whatever analysis data you need,
and then return the object with a key as the analyzer name. The result data
should be a list of objects, each with a name, ``analyzer_name``, ``install_file``,
and one of ``value`` or ``binary_value``. The install file should be for a relative
path, and not the absolute path. For example, let's say we extract a metric called
``metric`` for ``bin/wget`` using our analyzer ``thebest-analyzer``.
We might have data that looks like this:
.. code-block:: python
result = {"name": "metric", "analyzer_name": "thebest-analyzer", "value": "1", "install_file": "bin/wget"}
We'd then return it as follows - note that they key is the analyzer name at ``self.name``.
.. code-block:: python
return {self.name: result}
This will save the complete result to the analyzer metadata folder, as described
previously. If you want support for adding a different kind of metadata (e.g.,
not associated with an install file) then the monitor server would need to be updated
to support this first.
^^^^^^^^^^^^^^^^^^^^^^^^^
An analyzer init Function
^^^^^^^^^^^^^^^^^^^^^^^^^
If you don't need any extra dependencies or checks, you can skip defining an analyzer
init function, as the base class will handle it. Typically, it will accept
a spec, and an optional output directory (if the user does not want the default
metadata folder for analyzer results). The analyzer init function should call
it's parent init, and then do any extra checks or validation that are required to
work. For example:
.. code-block:: python
def __init__(self, spec, dirname=None):
super(Myanalyzer, self).__init__(spec, dirname)
# install extra dependencies, do extra preparation and checks here
At the end of the init, you will have available to you:
- **self.spec**: the spec object
- **self.dirname**: an optional directory name the user as provided at init to save
- **self.output_dir**: the analyzer metadata directory, where we save by default
- **self.meta_dir**: the path to the package metadata directory (.spack) if you need it
And can proceed to write your analyzer.
^^^^^^^^^^^^^^^^^^^^^^^
Saving Analyzer Results
^^^^^^^^^^^^^^^^^^^^^^^
The analyzer will have ``save_result`` called, with the result object generated
to save it to the filesystem, and if the user has added the ``--monitor`` flag
to upload it to a monitor server. If your result follows an accepted result
format and you don't need to parse it further, you don't need to add this
function to your class. However, if your result data is large or otherwise
needs additional parsing, you can define it. If you define the function, it
is useful to know about the ``output_dir`` property, which you can join
with your output file relative path of choice:
.. code-block:: python
outfile = os.path.join(self.output_dir, "my-output-file.txt")
The directory will be provided by the ``output_dir`` property but it won't exist,
so you should create it:
.. code::block:: python
# Create the output directory
if not os.path.exists(self._output_dir):
os.makedirs(self._output_dir)
If you are generating results that match to specific files in the package
install directory, you should try to maintain those paths in the case that
there are equivalently named files in different directories that would
overwrite one another. As an example of an analyzer with a custom save,
the Libabigail analyzer saves ``*.xml`` files to the analyzer metadata
folder in ``run()``, as they are either binaries, or as xml (text) would
usually be too big to pass in one request. For this reason, the files
are saved during ``run()`` and the filenames added to the result object,
and then when the result object is passed back into ``save_result()``,
we skip saving to the filesystem, and instead read the file and send
each one (separately) to the monitor:
.. code-block:: python
def save_result(self, result, monitor=None, overwrite=False):
"""ABI results are saved to individual files, so each one needs to be
read and uploaded. Result here should be the lookup generated in run(),
the key is the analyzer name, and each value is the result file.
We currently upload the entire xml as text because libabigail can't
easily read gzipped xml, but this will be updated when it can.
"""
if not monitor:
return
name = self.spec.package.name
for obj, filename in result.get(self.name, {}).items():
# Don't include the prefix
rel_path = obj.replace(self.spec.prefix + os.path.sep, "")
# We've already saved the results to file during run
content = spack.monitor.read_file(filename)
# A result needs an analyzer, value or binary_value, and name
data = {"value": content, "install_file": rel_path, "name": "abidw-xml"}
tty.info("Sending result for %s %s to monitor." % (name, rel_path))
monitor.send_analyze_metadata(self.spec.package, {"libabigail": [data]})
Notice that this function, if you define it, requires a result object (generated by
``run()``, a monitor (if you want to send), and a boolean ``overwrite`` to be used
to check if a result exists first, and not write to it if the result exists and
overwrite is False. Also notice that since we already saved these files to the analyzer metadata folder, we return early if a monitor isn't defined, because this function serves to send results to the monitor. If you haven't saved anything to the analyzer metadata folder
yet, you might want to do that here. You should also use ``tty.info`` to give
the user a message of "Writing result to $DIRNAME."
.. _writing-commands:
@@ -699,23 +443,6 @@ with a hook, and this is the purpose of this particular hook. Akin to
``on_phase_success`` we require the same variables - the package that failed,
the name of the phase, and the log file where we might find errors.
"""""""""""""""""""""""""""""""""
``on_analyzer_save(pkg, result)``
"""""""""""""""""""""""""""""""""
After an analyzer has saved some result for a package, this hook is called,
and it provides the package that we just ran the analysis for, along with
the loaded result. Typically, a result is structured to have the name
of the analyzer as key, and the result object that is defined in detail in
:ref:`analyzer_run_function`.
.. code-block:: python
def on_analyzer_save(pkg, result):
"""given a package and a result...
"""
print('Do something extra with a package analysis result here')
^^^^^^^^^^^^^^^^^^^^^^
Adding a New Hook Type
@@ -745,7 +472,7 @@ use my new hook as follows:
.. code-block:: python
def post_log_write(message, level):
"""Do something custom with the messsage and level every time we write
"""Do something custom with the message and level every time we write
to the log
"""
print('running post_log_write!')
@@ -1233,8 +960,13 @@ completed, the steps to make the point release are:
$ git checkout releases/v0.15
#. If a pull request to the release branch named ``Backports vX.Y.Z`` is not already
in the project, create it. This pull request ought to be created as early as
possible when working on a release project, so that we can build the release
commits incrementally, and identify potential conflicts at an early stage.
#. Cherry-pick each pull request in the ``Done`` column of the release
project board onto the release branch.
project board onto the ``Backports vX.Y.Z`` pull request.
This is **usually** fairly simple since we squash the commits from the
vast majority of pull requests. That means there is only one commit
@@ -1259,7 +991,7 @@ completed, the steps to make the point release are:
It is important to cherry-pick commits in the order they happened,
otherwise you can get conflicts while cherry-picking. When
cherry-picking onto a point release, look at the merge date,
cherry-picking look at the merge date,
**not** the number of the pull request or the date it was opened.
Sometimes you may **still** get merge conflicts even if you have
@@ -1280,15 +1012,19 @@ completed, the steps to make the point release are:
branch if neither of the above options makes sense, but this can
require a lot of work. It's seldom the right choice.
#. Bump the version in ``lib/spack/spack/__init__.py``.
#. When all the commits from the project board are cherry-picked into
the ``Backports vX.Y.Z`` pull request, you can push a commit to:
#. Update ``CHANGELOG.md`` with a list of the changes.
1. Bump the version in ``lib/spack/spack/__init__.py``.
2. Update ``CHANGELOG.md`` with a list of the changes.
This is typically a summary of the commits you cherry-picked onto the
release branch. See `the changelog from 0.14.1
<https://github.com/spack/spack/commit/ff0abb9838121522321df2a054d18e54b566b44a>`_.
#. Push the release branch to GitHub.
#. Merge the ``Backports vX.Y.Z`` PR with the **Rebase and merge** strategy. This
is needed to keep track in the release branch of all the commits that were
cherry-picked.
#. Make sure CI passes on the release branch, including:
@@ -1307,6 +1043,8 @@ completed, the steps to make the point release are:
#. Follow the steps in :ref:`announcing-releases`.
#. Submit a PR to update the CHANGELOG in the `develop` branch
with the addition of this point release.
.. _publishing-releases:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 KiB

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -58,9 +58,9 @@ Using Environments
Here we follow a typical use case of creating, concretizing,
installing and loading an environment.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Creating a named Environment
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Creating a managed Environment
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
An environment is created by:
@@ -72,7 +72,8 @@ Spack then creates the directory ``var/spack/environments/myenv``.
.. note::
All named environments are stored in the ``var/spack/environments`` folder.
All managed environments by default are stored in the ``var/spack/environments`` folder.
This location can be changed by setting the ``environments_root`` variable in ``config.yaml``.
In the ``var/spack/environments/myenv`` directory, Spack creates the
file ``spack.yaml`` and the hidden directory ``.spack-env``.
@@ -93,9 +94,9 @@ an Environment, the ``.spack-env`` directory also contains:
* ``logs/``: A directory containing the build logs for the packages
in this Environment.
Spack Environments can also be created from either a ``spack.yaml``
manifest or a ``spack.lock`` lockfile. To create an Environment from a
``spack.yaml`` manifest:
Spack Environments can also be created from either a manifest file
(usually but not necessarily named, ``spack.yaml``) or a lockfile.
To create an Environment from a manifest:
.. code-block:: console
@@ -173,7 +174,7 @@ Anonymous specs can be created in place using the command:
$ spack env create -d .
In this case Spack simply creates a spack.yaml file in the requested
In this case Spack simply creates a ``spack.yaml`` file in the requested
directory.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -233,8 +234,8 @@ packages will be listed as roots of the Environment.
All of the Spack commands that act on the list of installed specs are
Environment-sensitive in this way, including ``install``,
``uninstall``, ``activate``, ``deactivate``, ``find``, ``extensions``,
and more. In the :ref:`environment-configuration` section we will discuss
``uninstall``, ``find``, ``extensions``, and more. In the
:ref:`environment-configuration` section we will discuss
Environment-sensitive commands further.
^^^^^^^^^^^^^^^^^^^^^
@@ -346,7 +347,7 @@ the Environment and then install the concretized specs.
(see :ref:`build-jobs`). To speed up environment builds further, independent
packages can be installed in parallel by launching more Spack instances. For
example, the following will build at most four packages in parallel using
three background jobs:
three background jobs:
.. code-block:: console
@@ -376,6 +377,30 @@ from being added again. At the same time, a spec that already exists in the
environment, but only as a dependency, will be added to the environment as a
root spec without the ``--no-add`` option.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Developing Packages in a Spack Environment
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The ``spack develop`` command allows one to develop Spack packages in
an environment. It requires a spec containing a concrete version, and
will configure Spack to install the package from local source. By
default, it will also clone the package to a subdirectory in the
environment. This package will have a special variant ``dev_path``
set, and Spack will ensure the package and its dependents are rebuilt
any time the environment is installed if the package's local source
code has been modified. Spack ensures that all instances of a
developed package in the environment are concretized to match the
version (and other constraints) passed as the spec argument to the
``spack develop`` command.
For packages with ``git`` attributes, git branches, tags, and commits can
also be used as valid concrete versions (see :ref:`version-specifier`).
This means that for a package ``foo``, ``spack develop foo@git.main`` will clone
the ``main`` branch of the package, and ``spack install`` will install from
that git clone if ``foo`` is in the environment.
Further development on ``foo`` can be tested by reinstalling the environment,
and eventually committed and pushed to the upstream git repo.
^^^^^^^
Loading
^^^^^^^
@@ -454,14 +479,21 @@ them to the Environment.
spack:
include:
- relative/path/to/config.yaml
- https://github.com/path/to/raw/config/compilers.yaml
- /absolute/path/to/packages.yaml
Environments can include files with either relative or absolute
paths. Inline configurations take precedence over included
configurations, so you don't have to change shared configuration files
to make small changes to an individual Environment. Included configs
listed earlier will have higher precedence, as the included configs are
applied in reverse order.
Environments can include files or URLs. File paths can be relative or
absolute. URLs include the path to the text for individual files or
can be the path to a directory containing configuration files.
^^^^^^^^^^^^^^^^^^^^^^^^
Configuration precedence
^^^^^^^^^^^^^^^^^^^^^^^^
Inline configurations take precedence over included configurations, so
you don't have to change shared configuration files to make small changes
to an individual environment. Included configurations listed earlier will
have higher precedence, as the included configs are applied in reverse order.
-------------------------------
Manually Editing the Specs List
@@ -488,27 +520,33 @@ available from the yaml file.
^^^^^^^^^^^^^^^^^^^
Spec concretization
^^^^^^^^^^^^^^^^^^^
An environment can be concretized in three different modes and the behavior active under any environment
is determined by the ``concretizer:unify`` property. By default specs are concretized *separately*, one after the other:
An environment can be concretized in three different modes and the behavior active under
any environment is determined by the ``concretizer:unify`` configuration option.
The *default* mode is to unify all specs:
.. code-block:: yaml
spack:
specs:
- hdf5~mpi
- hdf5+mpi
- zlib@1.2.8
concretizer:
unify: false
unify: true
This mode of operation permits to deploy a full software stack where multiple configurations of the same package
need to be installed alongside each other using the best possible selection of transitive dependencies. The downside
is that redundancy of installations is disregarded completely, and thus environments might be more bloated than
strictly needed. In the example above, for instance, if a version of ``zlib`` newer than ``1.2.8`` is known to Spack,
then it will be used for both ``hdf5`` installations.
This means that any package in the environment corresponds to a single concrete spec. In
the above example, when ``hdf5`` depends down the line of ``zlib``, it is required to
take ``zlib@1.2.8`` instead of a newer version. This mode of concretization is
particularly useful when environment views are used: if every package occurs in
only one flavor, it is usually possible to merge all install directories into a view.
If redundancy of the environment is a concern, Spack provides a way to install it *together where possible*,
i.e. trying to maximize reuse of dependencies across different specs:
A downside of unified concretization is that it can be overly strict. For example, a
concretization error would happen when both ``hdf5+mpi`` and ``hdf5~mpi`` are specified
in an environment.
The second mode is to *unify when possible*: this makes concretization of root specs
more independendent. Instead of requiring reuse of dependencies across different root
specs, it is only maximized:
.. code-block:: yaml
@@ -520,40 +558,42 @@ i.e. trying to maximize reuse of dependencies across different specs:
concretizer:
unify: when_possible
Also in this case Spack allows having multiple configurations of the same package, but privileges the reuse of
specs over other factors. Going back to our example, this means that both ``hdf5`` installations will use
``zlib@1.2.8`` as a dependency even if newer versions of that library are available.
Central installations done at HPC centers by system administrators or user support groups are a common case
that fits either of these two modes.
This means that both ``hdf5`` installations will use ``zlib@1.2.8`` as a dependency even
if newer versions of that library are available.
Environments can also be configured to concretize all the root specs *together*, in a self-consistent way, to
ensure that each package in the environment comes with a single configuration:
The third mode of operation is to concretize root specs entirely independently by
disabling unified concretization:
.. code-block:: yaml
spack:
specs:
- hdf5~mpi
- hdf5+mpi
- zlib@1.2.8
concretizer:
unify: true
unify: false
This mode of operation is usually what is required by software developers that want to deploy their development
environment and have a single view of it in the filesystem.
In this example ``hdf5`` is concretized separately, and does not consider ``zlib@1.2.8``
as a constraint or preference. Instead, it will take the latest possible version.
The last two concretization options are typically useful for system administrators and
user support groups providing a large software stack for their HPC center.
.. note::
The ``concretizer:unify`` config option was introduced in Spack 0.18 to
replace the ``concretization`` property. For reference,
``concretization: separately`` is replaced by ``concretizer:unify:true``,
and ``concretization: together`` is replaced by ``concretizer:unify:false``.
``concretization: together`` is replaced by ``concretizer:unify:true``,
and ``concretization: separately`` is replaced by ``concretizer:unify:false``.
.. admonition:: Re-concretization of user specs
When concretizing specs *together* or *together where possible* the entire set of specs will be
re-concretized after any addition of new user specs, to ensure that
the environment remains consistent / minimal. When instead the specs are concretized
separately only the new specs will be re-concretized after any addition.
The ``spack concretize`` command without additional arguments will *not* change any
previously concretized specs. This may prevent it from finding a solution when using
``unify: true``, and it may prevent it from finding a minimal solution when using
``unify: when_possible``. You can force Spack to ignore the existing concrete environment
with ``spack concretize -f``.
^^^^^^^^^^^^^
Spec Matrices
@@ -592,31 +632,6 @@ The following two Environment manifests are identical:
Spec matrices can be used to install swaths of software across various
toolchains.
The concretization logic for spec matrices differs slightly from the
rest of Spack. If a variant or dependency constraint from a matrix is
invalid, Spack will reject the constraint and try again without
it. For example, the following two Environment manifests will produce
the same specs:
.. code-block:: yaml
spack:
specs:
- matrix:
- [zlib, libelf, hdf5+mpi]
- [^mvapich2@2.2, ^openmpi@3.1.0]
spack:
specs:
- zlib
- libelf
- hdf5+mpi ^mvapich2@2.2
- hdf5+mpi ^openmpi@3.1.0
This allows one to create toolchains out of combinations of
constraints and apply them somewhat indiscriminately to packages,
without regard for the applicability of the constraint.
^^^^^^^^^^^^^^^^^^^^
Spec List References
^^^^^^^^^^^^^^^^^^^^
@@ -799,7 +814,7 @@ directories.
select: [^mpi]
exclude: ['%pgi@18.5']
projections:
all: {name}/{version}-{compiler.name}
all: '{name}/{version}-{compiler.name}'
link: all
link_type: symlink
@@ -901,9 +916,9 @@ function, as shown in the example below:
.. code-block:: yaml
projections:
zlib: {name}-{version}
^mpi: {name}-{version}/{^mpi.name}-{^mpi.version}-{compiler.name}-{compiler.version}
all: {name}-{version}/{compiler.name}-{compiler.version}
zlib: "{name}-{version}"
^mpi: "{name}-{version}/{^mpi.name}-{^mpi.version}-{compiler.name}-{compiler.version}"
all: "{name}-{version}/{compiler.name}-{compiler.version}"
The entries in the projections configuration file must all be either
specs or the keyword ``all``. For each spec, the projection used will
@@ -948,9 +963,6 @@ Variable Paths
PATH bin
MANPATH man, share/man
ACLOCAL_PATH share/aclocal
LD_LIBRARY_PATH lib, lib64
LIBRARY_PATH lib, lib64
CPATH include
PKG_CONFIG_PATH lib/pkgconfig, lib64/pkgconfig, share/pkgconfig
CMAKE_PREFIX_PATH .
=================== =========
@@ -983,7 +995,7 @@ A typical workflow is as follows:
spack env create -d .
spack -e . add perl
spack -e . concretize
spack -e . env depfile > Makefile
spack -e . env depfile -o Makefile
make -j64
This generates a ``Makefile`` from a concretized environment in the
@@ -996,7 +1008,6 @@ load, even when packages are built in parallel.
By default the following phony convenience targets are available:
- ``make all``: installs the environment (default target);
- ``make fetch-all``: only fetch sources of all packages;
- ``make clean``: cleans files used by make, but does not uninstall packages.
.. tip::
@@ -1006,14 +1017,23 @@ By default the following phony convenience targets are available:
printed orderly per package install. To get synchronized output with colors,
use ``make -j<N> SPACK_COLOR=always --output-sync=recurse``.
The following advanced example shows how generated targets can be used in a
``Makefile``:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Specifying dependencies on generated ``make`` targets
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
An interesting question is how to include generated ``Makefile``\s in your own
``Makefile``\s. This comes up when you want to install an environment that provides
executables required in a command for a make target of your own.
The example below shows how to accomplish this: the ``env`` target specifies
the generated ``spack/env`` target as a prerequisite, meaning that the environment
gets installed and is available for use in the ``env`` target.
.. code:: Makefile
SPACK ?= spack
.PHONY: all clean fetch env
.PHONY: all clean env
all: env
@@ -1021,10 +1041,7 @@ The following advanced example shows how generated targets can be used in a
$(SPACK) -e . concretize -f
env.mk: spack.lock
$(SPACK) -e . env depfile -o $@ --make-target-prefix spack
fetch: spack/fetch
$(info Environment fetched!)
$(SPACK) -e . env depfile -o $@ --make-prefix spack
env: spack/env
$(info Environment installed!)
@@ -1036,11 +1053,10 @@ The following advanced example shows how generated targets can be used in a
include env.mk
endif
When ``make`` is invoked, it first "remakes" the missing include ``env.mk``
from its rule, which triggers concretization. When done, the generated targets
``spack/fetch`` and ``spack/env`` are available. In the above
example, the ``env`` target uses the latter as a prerequisite, meaning
that it can make use of the installed packages in its commands.
This works as follows: when ``make`` is invoked, it first "remakes" the missing
include ``env.mk`` as there is a target for it. This triggers concretization of
the environment and makes spack output ``env.mk``. At that point the
generated target ``spack/env`` becomes available through ``include env.mk``.
As it is typically undesirable to remake ``env.mk`` as part of ``make clean``,
the include is conditional.
@@ -1048,7 +1064,79 @@ the include is conditional.
.. note::
When including generated ``Makefile``\s, it is important to use
the ``--make-target-prefix`` flag and use the non-phony targets
``<target-prefix>/env`` and ``<target-prefix>/fetch`` as
prerequisites, instead of the phony targets ``<target-prefix>/all``
and ``<target-prefix>/fetch-all`` respectively.
the ``--make-prefix`` flag and use the non-phony target
``<prefix>/env`` as prerequisite, instead of the phony target
``<prefix>/all``.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Building a subset of the environment
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The generated ``Makefile``\s contain install targets for each spec, identified
by ``<name>-<version>-<hash>``. This allows you to install only a subset of the
packages in the environment. When packages are unique in the environment, it's
enough to know the name and let tab-completion fill out the version and hash.
The following phony targets are available: ``install/<spec>`` to install the
spec with its dependencies, and ``install-deps/<spec>`` to *only* install
its dependencies. This can be useful when certain flags should only apply to
dependencies. Below we show a use case where a spec is installed with verbose
output (``spack install --verbose``) while its dependencies are installed silently:
.. code:: console
$ spack env depfile -o Makefile
# Install dependencies in parallel, only show a log on error.
$ make -j16 install-deps/python-3.11.0-<hash> SPACK_INSTALL_FLAGS=--show-log-on-error
# Install the root spec with verbose output.
$ make -j16 install/python-3.11.0-<hash> SPACK_INSTALL_FLAGS=--verbose
^^^^^^^^^^^^^^^^^^^^^^^^^
Adding post-install hooks
^^^^^^^^^^^^^^^^^^^^^^^^^
Another advanced use-case of generated ``Makefile``\s is running a post-install
command for each package. These "hooks" could be anything from printing a
post-install message, running tests, or pushing just-built binaries to a buildcache.
This can be accomplished through the generated ``[<prefix>/]SPACK_PACKAGE_IDS``
variable. Assuming we have an active and concrete environment, we generate the
associated ``Makefile`` with a prefix ``example``:
.. code:: console
$ spack env depfile -o env.mk --make-prefix example
And we now include it in a different ``Makefile``, in which we create a target
``example/push/%`` with ``%`` referring to a package identifier. This target
depends on the particular package installation. In this target we automatically
have the target-specific ``HASH`` and ``SPEC`` variables at our disposal. They
are respectively the spec hash (excluding leading ``/``), and a human-readable spec.
Finally, we have an entrypoint target ``push`` that will update the buildcache
index once every package is pushed. Note how this target uses the generated
``example/SPACK_PACKAGE_IDS`` variable to define its prerequisites.
.. code:: Makefile
SPACK ?= spack
BUILDCACHE_DIR = $(CURDIR)/tarballs
.PHONY: all
all: push
include env.mk
example/push/%: example/install/%
@mkdir -p $(dir $@)
$(info About to push $(SPEC) to a buildcache)
$(SPACK) -e . buildcache create --allow-root --only=package --directory $(BUILDCACHE_DIR) /$(HASH)
@touch $@
push: $(addprefix example/push/,$(example/SPACK_PACKAGE_IDS))
$(info Updating the buildcache index)
$(SPACK) -e . buildcache update-index --directory $(BUILDCACHE_DIR)
$(info Done!)
@touch $@

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -98,40 +98,42 @@ For example, this command:
.. code-block:: console
$ spack create http://www.mr511.de/software/libelf-0.8.13.tar.gz
$ spack create https://ftp.osuosl.org/pub/blfs/conglomeration/libelf/libelf-0.8.13.tar.gz
creates a simple python file:
.. code-block:: python
from spack import *
from spack.package import *
class Libelf(Package):
class Libelf(AutotoolsPackage):
"""FIXME: Put a proper description of your package here."""
# FIXME: Add a proper url for your package's homepage here.
homepage = "http://www.example.com"
url = "http://www.mr511.de/software/libelf-0.8.13.tar.gz"
homepage = "https://www.example.com"
url = "https://ftp.osuosl.org/pub/blfs/conglomeration/libelf/libelf-0.8.13.tar.gz"
version('0.8.13', '4136d7b4c04df68b686570afa26988ac')
# FIXME: Add a list of GitHub accounts to
# notify when the package is updated.
# maintainers("github_user1", "github_user2")
version("0.8.13", sha256="591a9b4ec81c1f2042a97aa60564e0cb79d041c52faa7416acb38bc95bd2c76d")
# FIXME: Add dependencies if required.
# depends_on('foo')
# depends_on("foo")
def install(self, spec, prefix):
# FIXME: Modify the configure line to suit your build system here.
configure('--prefix={0}'.format(prefix))
# FIXME: Add logic to build and install here.
make()
make('install')
def configure_args(self):
# FIXME: Add arguments other than --prefix
# FIXME: If not needed delete this function
args = []
return args
It doesn't take much python coding to get from there to a working
package:
.. literalinclude:: _spack_root/var/spack/repos/builtin/packages/libelf/package.py
:lines: 6-
:lines: 5-
Spack also provides wrapper functions around common commands like
``configure``, ``make``, and ``cmake`` to make writing packages

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,10 +21,36 @@ be present on the machine where Spack is run:
:header-rows: 1
These requirements can be easily installed on most modern Linux systems;
on macOS, XCode is required. Spack is designed to run on HPC
platforms like Cray. Not all packages should be expected
to work on all platforms. A build matrix showing which packages are
working on which systems is planned but not yet available.
on macOS, the Command Line Tools package is required, and a full XCode suite
may be necessary for some packages such as Qt and apple-gl. Spack is designed
to run on HPC platforms like Cray. Not all packages should be expected
to work on all platforms.
A build matrix showing which packages are working on which systems is shown below.
.. tab-set::
.. tab-item:: Debian/Ubuntu
.. code-block:: console
apt update
apt install build-essential ca-certificates coreutils curl environment-modules gfortran git gpg lsb-release python3 python3-distutils python3-venv unzip zip
.. tab-item:: RHEL
.. code-block:: console
dnf install epel-release
dnf group install "Development Tools"
dnf install curl findutils gcc-gfortran gnupg2 hostname iproute redhat-lsb-core python3 python3-pip python3-setuptools unzip python3-boto3
.. tab-item:: macOS Brew
.. code-block:: console
brew update
brew install curl gcc git gnupg zip
------------
Installation
@@ -96,88 +122,41 @@ Spack provides two ways of bootstrapping ``clingo``: from pre-built binaries
(default), or from sources. The fastest way to get started is to bootstrap from
pre-built binaries.
.. note::
When bootstrapping from pre-built binaries, Spack currently requires
``patchelf`` on Linux and ``otool`` on macOS. If ``patchelf`` is not in the
``PATH``, Spack will build it from sources, and a C++ compiler is required.
The first time you concretize a spec, Spack will bootstrap in the background:
The first time you concretize a spec, Spack will bootstrap automatically:
.. code-block:: console
$ time spack spec zlib
$ spack spec zlib
==> Bootstrapping clingo from pre-built binaries
==> Fetching https://mirror.spack.io/bootstrap/github-actions/v0.4/build_cache/linux-centos7-x86_64-gcc-10.2.1-clingo-bootstrap-spack-ba5ijauisd3uuixtmactc36vps7yfsrl.spec.json
==> Fetching https://mirror.spack.io/bootstrap/github-actions/v0.4/build_cache/linux-centos7-x86_64/gcc-10.2.1/clingo-bootstrap-spack/linux-centos7-x86_64-gcc-10.2.1-clingo-bootstrap-spack-ba5ijauisd3uuixtmactc36vps7yfsrl.spack
==> Installing "clingo-bootstrap@spack%gcc@10.2.1~docs~ipo+python+static_libstdcpp build_type=Release arch=linux-centos7-x86_64" from a buildcache
==> Bootstrapping patchelf from pre-built binaries
==> Fetching https://mirror.spack.io/bootstrap/github-actions/v0.4/build_cache/linux-centos7-x86_64-gcc-10.2.1-patchelf-0.16.1-p72zyan5wrzuabtmzq7isa5mzyh6ahdp.spec.json
==> Fetching https://mirror.spack.io/bootstrap/github-actions/v0.4/build_cache/linux-centos7-x86_64/gcc-10.2.1/patchelf-0.16.1/linux-centos7-x86_64-gcc-10.2.1-patchelf-0.16.1-p72zyan5wrzuabtmzq7isa5mzyh6ahdp.spack
==> Installing "patchelf@0.16.1%gcc@10.2.1 ldflags="-static-libstdc++ -static-libgcc" build_system=autotools arch=linux-centos7-x86_64" from a buildcache
Input spec
--------------------------------
zlib
Concretized
--------------------------------
zlib@1.2.11%gcc@7.5.0+optimize+pic+shared arch=linux-ubuntu18.04-zen
real 0m20.023s
user 0m18.351s
sys 0m0.784s
After this command you'll see that ``clingo`` has been installed for Spack's own use:
.. code-block:: console
$ spack find -b
==> Showing internal bootstrap store at "/root/.spack/bootstrap/store"
==> 3 installed packages
-- linux-rhel5-x86_64 / gcc@9.3.0 -------------------------------
clingo-bootstrap@spack python@3.6
-- linux-ubuntu18.04-zen / gcc@7.5.0 ----------------------------
patchelf@0.13
Subsequent calls to the concretizer will then be much faster:
.. code-block:: console
$ time spack spec zlib
[ ... ]
real 0m0.490s
user 0m0.431s
sys 0m0.041s
zlib@1.2.13%gcc@9.4.0+optimize+pic+shared build_system=makefile arch=linux-ubuntu20.04-icelake
If for security concerns you cannot bootstrap ``clingo`` from pre-built
binaries, you have to mark this bootstrapping method as untrusted. This makes
Spack fall back to bootstrapping from sources:
binaries, you have to disable fetching the binaries we generated with Github Actions.
.. code-block:: console
$ spack bootstrap untrust github-actions-v0.2
==> "github-actions-v0.2" is now untrusted and will not be used for bootstrapping
$ spack bootstrap disable github-actions-v0.4
==> "github-actions-v0.4" is now disabled and will not be used for bootstrapping
$ spack bootstrap disable github-actions-v0.3
==> "github-actions-v0.3" is now disabled and will not be used for bootstrapping
You can verify that the new settings are effective with:
.. code-block:: console
.. command-output:: spack bootstrap list
$ spack bootstrap list
Name: github-actions-v0.2 UNTRUSTED
Type: buildcache
Info:
url: https://mirror.spack.io/bootstrap/github-actions/v0.2
homepage: https://github.com/spack/spack-bootstrap-mirrors
releases: https://github.com/spack/spack-bootstrap-mirrors/releases
Description:
Buildcache generated from a public workflow using Github Actions.
The sha256 checksum of binaries is checked before installation.
[ ... ]
Name: spack-install TRUSTED
Type: install
Description:
Specs built from sources by Spack. May take a long time.
.. note::
@@ -207,9 +186,7 @@ under the ``${HOME}/.spack`` directory. The software installed there can be quer
.. code-block:: console
$ spack find --bootstrap
==> Showing internal bootstrap store at "/home/spack/.spack/bootstrap/store"
==> 3 installed packages
$ spack -b find
-- linux-ubuntu18.04-x86_64 / gcc@10.1.0 ------------------------
clingo-bootstrap@spack python@3.6.9 re2c@1.2.1
@@ -218,7 +195,7 @@ In case it's needed the bootstrap store can also be cleaned with:
.. code-block:: console
$ spack clean -b
==> Removing software in "/home/spack/.spack/bootstrap/store"
==> Removing bootstrapped software and configuration in "/home/spack/.spack/bootstrap"
^^^^^^^^^^^^^^^^^^
Check Installation
@@ -388,7 +365,8 @@ Manual compiler configuration
If auto-detection fails, you can manually configure a compiler by
editing your ``~/.spack/<platform>/compilers.yaml`` file. You can do this by running
``spack config edit compilers``, which will open the file in your ``$EDITOR``.
``spack config edit compilers``, which will open the file in
:ref:`your favorite editor <controlling-the-editor>`.
Each compiler configuration in the file looks like this:
@@ -1526,7 +1504,7 @@ Spack On Windows
Windows support for Spack is currently under development. While this work is still in an early stage,
it is currently possible to set up Spack and perform a few operations on Windows. This section will guide
you through the steps needed to install Spack and start running it on a fresh Windows machine.
you through the steps needed to install Spack and start running it on a fresh Windows machine.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Step 1: Install prerequisites
@@ -1536,7 +1514,7 @@ To use Spack on Windows, you will need the following packages:
Required:
* Microsoft Visual Studio
* Python
* Python
* Git
Optional:
@@ -1567,8 +1545,8 @@ Intel Fortran
"""""""""""""
For Fortran-based packages on Windows, we strongly recommend Intel's oneAPI Fortran compilers.
The suite is free to download from Intel's website, located at
https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/fortran-compiler.html#gs.70t5tw.
The suite is free to download from Intel's website, located at
https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/fortran-compiler.html.
The executable of choice for Spack will be Intel's Beta Compiler, ifx, which supports the classic
compiler's (ifort's) frontend and runtime libraries by using LLVM.
@@ -1617,8 +1595,8 @@ in a Windows CMD prompt.
.. note::
If you chose to install Spack into a directory on Windows that is set up to require Administrative
Privleges, Spack will require elevated privleges to run.
Administrative Privleges can be denoted either by default such as
Privileges, Spack will require elevated privileges to run.
Administrative Privileges can be denoted either by default such as
``C:\Program Files``, or aministrator applied administrative restrictions
on a directory that spack installs files to such as ``C:\Users``
@@ -1714,33 +1692,21 @@ Spack console via:
spack install cpuinfo
If in the previous step, you did not have CMake or Ninja installed, running the command above should boostrap both packages
If in the previous step, you did not have CMake or Ninja installed, running the command above should bootstrap both packages
"""""""""""""""""""""""""""
Windows Compatible Packages
"""""""""""""""""""""""""""
Many Spack packages are not currently compatible with Windows, due to Unix
dependencies or incompatible build tools like autoconf. Here are several
packages known to work on Windows:
* abseil-cpp
* clingo
* cpuinfo
* cmake
* glm
* nasm
* netlib-lapack (requires Intel Fortran)
* ninja
* openssl
* perl
* python
* ruby
* wrf
* zlib
Not all spack packages currently have Windows support. Some are inherently incompatible with the
platform, and others simply have yet to be ported. To view the current set of packages with Windows
support, the list command should be used via `spack list -t windows`. If there's a package you'd like
to install on Windows but is not in that list, feel free to reach out to request the port or contribute
the port yourself.
.. note::
This is by no means a comprehensive list
This is by no means a comprehensive list, some packages may have ports that were not tagged
while others may just work out of the box on Windows and have not been tagged as such.
^^^^^^^^^^^^^^
For developers
@@ -1752,3 +1718,4 @@ Instructions for creating the installer are at
https://github.com/spack/spack/blob/develop/lib/spack/spack/cmd/installer/README.md
Alternatively a pre-built copy of the Windows installer is available as an artifact of Spack's Windows CI
available at each run of the CI on develop or any PR.

Binary file not shown.

After

Width:  |  Height:  |  Size: 658 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 449 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -67,7 +67,6 @@ or refer to the full manual below.
build_settings
environments
containers
monitoring
mirrors
module_file_support
repositories
@@ -78,12 +77,6 @@ or refer to the full manual below.
extensions
pipelines
.. toctree::
:maxdepth: 2
:caption: Research
analyze
.. toctree::
:maxdepth: 2
:caption: Contributing

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -163,7 +163,7 @@ your site.
Mirror environment
^^^^^^^^^^^^^^^^^^
To create a mirror of all packages required by a concerte environment, activate the environment and call ``spack mirror create -a``.
To create a mirror of all packages required by a concrete environment, activate the environment and call ``spack mirror create -a``.
This is especially useful to create a mirror of an environment concretized on another machine.
.. code-block:: console

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ The use of module systems to manage user environment in a controlled way
is a common practice at HPC centers that is often embraced also by
individual programmers on their development machines. To support this
common practice Spack integrates with `Environment Modules
<http://modules.sourceforge.net/>`_ and `LMod
<http://modules.sourceforge.net/>`_ and `Lmod
<http://lmod.readthedocs.io/en/latest/>`_ by providing post-install hooks
that generate module files and commands to manipulate them.
@@ -26,8 +26,8 @@ Using module files via Spack
----------------------------
If you have installed a supported module system you should be able to
run either ``module avail`` or ``use -l spack`` to see what module
files have been installed. Here is sample output of those programs,
run ``module avail`` to see what module
files have been installed. Here is sample output of those programs,
showing lots of installed packages:
.. code-block:: console
@@ -51,12 +51,7 @@ showing lots of installed packages:
help2man-1.47.4-gcc-4.8-kcnqmau lua-luaposix-33.4.0-gcc-4.8-mdod2ry netlib-scalapack-2.0.2-gcc-6.3.0-rgqfr6d py-scipy-0.19.0-gcc-6.3.0-kr7nat4 zlib-1.2.11-gcc-6.3.0-7cqp6cj
The names should look familiar, as they resemble the output from ``spack find``.
You *can* use the modules here directly. For example, you could type either of these commands
to load the ``cmake`` module:
.. code-block:: console
$ use cmake-3.7.2-gcc-6.3.0-fowuuby
For example, you could type the following command to load the ``cmake`` module:
.. code-block:: console
@@ -77,7 +72,7 @@ installation of a package.
Spack only generates modulefiles when a package is installed. If
you attempt to install a package and it is already installed, Spack
will not regenerate modulefiles for the package. This may to
will not regenerate modulefiles for the package. This may lead to
inconsistent modulefiles if the Spack module configuration has
changed since the package was installed, either by editing a file
or changing scopes or environments.
@@ -93,9 +88,9 @@ the different file formats that can be generated by Spack:
+-----------------------------+--------------------+-------------------------------+----------------------------------------------+----------------------+
| | **Hook name** | **Default root directory** | **Default template file** | **Compatible tools** |
+=============================+====================+===============================+==============================================+======================+
| **TCL - Non-Hierarchical** | ``tcl`` | share/spack/modules | share/spack/templates/modules/modulefile.tcl | Env. Modules/LMod |
| **Tcl - Non-Hierarchical** | ``tcl`` | share/spack/modules | share/spack/templates/modules/modulefile.tcl | Env. Modules/Lmod |
+-----------------------------+--------------------+-------------------------------+----------------------------------------------+----------------------+
| **Lua - Hierarchical** | ``lmod`` | share/spack/lmod | share/spack/templates/modules/modulefile.lua | LMod |
| **Lua - Hierarchical** | ``lmod`` | share/spack/lmod | share/spack/templates/modules/modulefile.lua | Lmod |
+-----------------------------+--------------------+-------------------------------+----------------------------------------------+----------------------+
@@ -113,6 +108,8 @@ from language interpreters into their extensions. The latter two instead permit
fine tune the filesystem layout, content and creation of module files to meet
site specific conventions.
.. _overide-api-calls-in-package-py:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Override API calls in ``package.py``
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -134,7 +131,7 @@ The second method:
pass
can instead inject run-time environment modifications in the module files of packages
that depend on it. In both cases you need to fill ``run_env`` with the desired
that depend on it. In both cases you need to fill ``env`` with the desired
list of environment modifications.
.. admonition:: The ``r`` package and callback APIs
@@ -308,7 +305,7 @@ the variable ``FOOBAR`` will be unset.
spec constraints are instead evaluated top to bottom.
""""""""""""""""""""""""""""""""""""""""""""
Blacklist or whitelist specific module files
Exclude or include specific module files
""""""""""""""""""""""""""""""""""""""""""""
You can use anonymous specs also to prevent module files from being written or
@@ -322,8 +319,8 @@ your system. If you write a configuration file like:
modules:
default:
tcl:
whitelist: ['gcc', 'llvm'] # Whitelist will have precedence over blacklist
blacklist: ['%gcc@4.4.7'] # Assuming gcc@4.4.7 is the system compiler
include: ['gcc', 'llvm'] # include will have precedence over exclude
exclude: ['%gcc@4.4.7'] # Assuming gcc@4.4.7 is the system compiler
you will prevent the generation of module files for any package that
is compiled with ``gcc@4.4.7``, with the only exception of any ``gcc``
@@ -394,13 +391,13 @@ name and version for all packages that depend on mpi.
When specifying module names by projection for Lmod modules, we
recommend NOT including names of dependencies (e.g., MPI, compilers)
that are already in the LMod hierarchy.
that are already in the Lmod hierarchy.
.. note::
TCL modules
TCL modules also allow for explicit conflicts between modulefiles.
Tcl modules
Tcl modules also allow for explicit conflicts between modulefiles.
.. code-block:: yaml
@@ -424,9 +421,9 @@ that are already in the LMod hierarchy.
.. note::
LMod hierarchical module files
Lmod hierarchical module files
When ``lmod`` is activated Spack will generate a set of hierarchical lua module
files that are understood by LMod. The hierarchy will always contain the
files that are understood by Lmod. The hierarchy will always contain the
two layers ``Core`` / ``Compiler`` but can be further extended to
any of the virtual dependencies present in Spack. A case that could be useful in
practice is for instance:
@@ -448,7 +445,7 @@ that are already in the LMod hierarchy.
that will generate a hierarchy in which the ``lapack`` and ``mpi`` layer can be switched
independently. This allows a site to build the same libraries or applications against different
implementations of ``mpi`` and ``lapack``, and let LMod switch safely from one to the
implementations of ``mpi`` and ``lapack``, and let Lmod switch safely from one to the
other.
All packages built with a compiler in ``core_compilers`` and all
@@ -458,12 +455,12 @@ that are already in the LMod hierarchy.
.. warning::
Consistency of Core packages
The user is responsible for maintining consistency among core packages, as ``core_specs``
bypasses the hierarchy that allows LMod to safely switch between coherent software stacks.
bypasses the hierarchy that allows Lmod to safely switch between coherent software stacks.
.. warning::
Deep hierarchies and ``lmod spider``
For hierarchies that are deeper than three layers ``lmod spider`` may have some issues.
See `this discussion on the LMod project <https://github.com/TACC/Lmod/issues/114>`_.
See `this discussion on the Lmod project <https://github.com/TACC/Lmod/issues/114>`_.
""""""""""""""""""""""
Select default modules
@@ -490,7 +487,7 @@ satisfies a default, Spack will generate the module file in the
appropriate path, and will generate a default symlink to the module
file as well.
.. warning::
.. warning::
If Spack is configured to generate multiple default packages in the
same directory, the last modulefile to be generated will be the
default module.
@@ -518,18 +515,33 @@ inspections and customize them per-module-set.
prefix_inspections:
bin:
- PATH
lib:
- LIBRARY_PATH
man:
- MANPATH
'':
- CMAKE_PREFIX_PATH
Prefix inspections are only applied if the relative path inside the
installation prefix exists. In this case, for a Spack package ``foo``
installed to ``/spack/prefix/foo``, if ``foo`` installs executables to
``bin`` but no libraries in ``lib``, the generated module file for
``bin`` but no manpages in ``man``, the generated module file for
``foo`` would update ``PATH`` to contain ``/spack/prefix/foo/bin`` and
``CMAKE_PREFIX_PATH`` to contain ``/spack/prefix/foo``, but would not
update ``LIBRARY_PATH``.
update ``MANPATH``.
The default list of environment variables in this config section
includes ``PATH``, ``MANPATH``, ``ACLOCAL_PATH``, ``PKG_CONFIG_PATH``
and ``CMAKE_PREFIX_PATH``, as well as ``DYLD_FALLBACK_LIBRARY_PATH``
on macOS. On Linux however, the corresponding ``LD_LIBRARY_PATH``
variable is *not* set, because it affects the behavior of
system executables too.
.. note::
In general, the ``LD_LIBRARY_PATH`` variable is not required
when using packages built with Spack, thanks to the use of RPATH.
Some packages may still need the variable, which is best handled
on a per-package basis instead of globally, as explained in
:ref:`overide-api-calls-in-package-py`.
There is a special case for prefix inspections relative to environment
views. If all of the following conditions hold for a module set
@@ -589,7 +601,7 @@ Filter out environment modifications
Modifications to certain environment variables in module files are there by
default, for instance because they are generated by prefix inspections.
If you want to prevent modifications to some environment variables, you can
do so by using the environment blacklist:
do so by using the ``exclude_env_vars``:
.. code-block:: yaml
@@ -599,7 +611,7 @@ do so by using the environment blacklist:
all:
filter:
# Exclude changes to any of these variables
environment_blacklist: ['CPATH', 'LIBRARY_PATH']
exclude_env_vars: ['CPATH', 'LIBRARY_PATH']
The configuration above will generate module files that will not contain
modifications to either ``CPATH`` or ``LIBRARY_PATH``.
@@ -617,8 +629,9 @@ by its dependency; when the dependency is autoloaded, the executable will be in
PATH. Similarly for scripting languages such as Python, packages and their dependencies
have to be loaded together.
Autoloading is enabled by default for LMod, as it has great builtin support for through
the ``depends_on`` function. For Environment Modules it is disabled by default.
Autoloading is enabled by default for Lmod and Environment Modules. The former
has builtin support for through the ``depends_on`` function. The latter uses
``module load`` statement to load and track dependencies.
Autoloading can also be enabled conditionally:
@@ -638,12 +651,14 @@ The allowed values for the ``autoload`` statement are either ``none``,
``direct`` or ``all``.
.. note::
TCL prerequisites
Tcl prerequisites
In the ``tcl`` section of the configuration file it is possible to use
the ``prerequisites`` directive that accepts the same values as
``autoload``. It will produce module files that have a ``prereq``
statement, which can be used to autoload dependencies in some versions
of Environment Modules.
statement, which autoloads dependencies on Environment Modules when its
``auto_handling`` configuration option is enabled. If Environment Modules
is installed with Spack, ``auto_handling`` is enabled by default starting
version 4.2. Otherwise it is enabled by default since version 5.0.
------------------------
Maintaining Module Files

View File

@@ -1,265 +0,0 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
.. _monitoring:
==========
Monitoring
==========
You can use a `spack monitor <https://github.com/spack/spack-monitor>`_ "Spackmon"
server to store a database of your packages, builds, and associated metadata
for provenance, research, or some other kind of development. You should
follow the instructions in the `spack monitor documentation <https://spack-monitor.readthedocs.org>`_
to first create a server along with a username and token for yourself.
You can then use this guide to interact with the server.
-------------------
Analysis Monitoring
-------------------
To read about how to monitor an analysis (meaning you want to send analysis results
to a server) see :ref:`analyze_monitoring`.
---------------------
Monitoring An Install
---------------------
Since an install is typically when you build packages, we logically want
to tell spack to monitor during this step. Let's start with an example
where we want to monitor the install of hdf5. Unless you have disabled authentication
for the server, we first want to export our spack monitor token and username to the environment:
.. code-block:: console
$ export SPACKMON_TOKEN=50445263afd8f67e59bd79bff597836ee6c05438
$ export SPACKMON_USER=spacky
By default, the host for your server is expected to be at ``http://127.0.0.1``
with a prefix of ``ms1``, and if this is the case, you can simply add the
``--monitor`` flag to the install command:
.. code-block:: console
$ spack install --monitor hdf5
If you need to customize the host or the prefix, you can do that as well:
.. code-block:: console
$ spack install --monitor --monitor-prefix monitor --monitor-host https://monitor-service.io hdf5
As a precaution, we cut out early in the spack client if you have not provided
authentication credentials. For example, if you run the command above without
exporting your username or token, you'll see:
.. code-block:: console
==> Error: You are required to export SPACKMON_TOKEN and SPACKMON_USER
This extra check is to ensure that we don't start any builds,
and then discover that you forgot to export your token. However, if
your monitoring server has authentication disabled, you can tell this to
the client to skip this step:
.. code-block:: console
$ spack install --monitor --monitor-disable-auth hdf5
If the service is not running, you'll cleanly exit early - the install will
not continue if you've asked it to monitor and there is no service.
For example, here is what you'll see if the monitoring service is not running:
.. code-block:: console
[Errno 111] Connection refused
If you want to continue builds (and stop monitoring) you can set the ``--monitor-keep-going``
flag.
.. code-block:: console
$ spack install --monitor --monitor-keep-going hdf5
This could mean that if a request fails, you only have partial or no data
added to your monitoring database. This setting will not be applied to the
first request to check if the server is running, but to subsequent requests.
If you don't have a monitor server running and you want to build, simply
don't provide the ``--monitor`` flag! Finally, if you want to provide one or
more tags to your build, you can do:
.. code-block:: console
# Add one tag, "pizza"
$ spack install --monitor --monitor-tags pizza hdf5
# Add two tags, "pizza" and "pasta"
$ spack install --monitor --monitor-tags pizza,pasta hdf5
----------------------------
Monitoring with Containerize
----------------------------
The same argument group is available to add to a containerize command.
^^^^^^
Docker
^^^^^^
To add monitoring to a Docker container recipe generation using the defaults,
and assuming a monitor server running on localhost, you would
start with a spack.yaml in your present working directory:
.. code-block:: yaml
spack:
specs:
- samtools
And then do:
.. code-block:: console
# preview first
spack containerize --monitor
# and then write to a Dockerfile
spack containerize --monitor > Dockerfile
The install command will be edited to include commands for enabling monitoring.
However, getting secrets into the container for your monitor server is something
that should be done carefully. Specifically you should:
- Never try to define secrets as ENV, ARG, or using ``--build-arg``
- Do not try to get the secret into the container via a "temporary" file that you remove (it in fact will still exist in a layer)
Instead, it's recommended to use buildkit `as explained here <https://pythonspeed.com/articles/docker-build-secrets/>`_.
You'll need to again export environment variables for your spack monitor server:
.. code-block:: console
$ export SPACKMON_TOKEN=50445263afd8f67e59bd79bff597836ee6c05438
$ export SPACKMON_USER=spacky
And then use buildkit along with your build and identifying the name of the secret:
.. code-block:: console
$ DOCKER_BUILDKIT=1 docker build --secret id=st,env=SPACKMON_TOKEN --secret id=su,env=SPACKMON_USER -t spack/container .
The secrets are expected to come from your environment, and then will be temporarily mounted and available
at ``/run/secrets/<name>``. If you forget to supply them (and authentication is required) the build
will fail. If you need to build on your host (and interact with a spack monitor at localhost) you'll
need to tell Docker to use the host network:
.. code-block:: console
$ DOCKER_BUILDKIT=1 docker build --network="host" --secret id=st,env=SPACKMON_TOKEN --secret id=su,env=SPACKMON_USER -t spack/container .
^^^^^^^^^^^
Singularity
^^^^^^^^^^^
To add monitoring to a Singularity container build, the spack.yaml needs to
be modified slightly to specify wanting a different format:
.. code-block:: yaml
spack:
specs:
- samtools
container:
format: singularity
Again, generate the recipe:
.. code-block:: console
# preview first
$ spack containerize --monitor
# then write to a Singularity recipe
$ spack containerize --monitor > Singularity
Singularity doesn't have a direct way to define secrets at build time, so we have
to do a bit of a manual command to add a file, source secrets in it, and remove it.
Since Singularity doesn't have layers like Docker, deleting a file will truly
remove it from the container and history. So let's say we have this file,
``secrets.sh``:
.. code-block:: console
# secrets.sh
export SPACKMON_USER=spack
export SPACKMON_TOKEN=50445263afd8f67e59bd79bff597836ee6c05438
We would then generate the Singularity recipe, and add a files section,
a source of that file at the start of ``%post``, and **importantly**
a removal of the final at the end of that same section.
.. code-block::
Bootstrap: docker
From: spack/ubuntu-bionic:latest
Stage: build
%files
secrets.sh /opt/secrets.sh
%post
. /opt/secrets.sh
# spack install commands are here
...
# Don't forget to remove here!
rm /opt/secrets.sh
You can then build the container as your normally would.
.. code-block:: console
$ sudo singularity build container.sif Singularity
------------------
Monitoring Offline
------------------
In the case that you want to save monitor results to your filesystem
and then upload them later (perhaps you are in an environment where you don't
have credentials or it isn't safe to use them) you can use the ``--monitor-save-local``
flag.
.. code-block:: console
$ spack install --monitor --monitor-save-local hdf5
This will save results in a subfolder, "monitor" in your designated spack
reports folder, which defaults to ``$HOME/.spack/reports/monitor``. When
you are ready to upload them to a spack monitor server:
.. code-block:: console
$ spack monitor upload ~/.spack/reports/monitor
You can choose the root directory of results as shown above, or a specific
subdirectory. The command accepts other arguments to specify configuration
for the monitor.

View File

@@ -1,4 +1,4 @@
.. Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
.. Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More