Commit graph

27007 commits

Author SHA1 Message Date
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