Commit graph

21214 commits

Author SHA1 Message Date
Todd Gamblin
16ce207481
bugfix: infinite loop when building a set from incomplete specs (#20649)
This code in `SpecBuilder.build_specs()` introduced in #20203, can loop
seemingly interminably for very large specs:

```python
set([spec.root for spec in self._specs.values()])
```

It's deceptive, because it seems like there must be an issue with
`spec.root`, but that works fine. It's building the set afterwards that
takes forever, at least on `r-rminer`. Currently if you try running
`spack solve r-rminer`, it loops infinitely and spins up your fan.

The issue (I think) is that the spec is not yet complete when this is
run, and something is going wrong when constructing and comparing so many
values produced by `_cmp_key()`. We can investigate the efficiency of
`_cmp_key()` separately, but for now, the fix is:

```python
roots = [spec.root for spec in self._specs.values()]
roots = dict((id(r), r) for r in roots)
```

We know the specs in `self._specs` are distinct (they just came out of
the solver), so we can just use their `id()` to unique them here. This
gets rid of the infinite loop.
2021-01-04 10:28:16 +01:00
Tomoyasu Nojiri
4c23d99e7d
fdupes: Add pcre2 depend (#20466)
* fdupes: Add pcre2 depend

* fdupes: Fix depend for pcre2
2021-01-04 10:12:13 +01:00
darmac
221e680e2b
Add new package: xfsdump (#19914)
* Add new package: xfsdump

* fix Description and Homepage
2021-01-03 11:20:57 -06:00
darmac
5d1bcf67cf
Add new package: py-holland (#19924)
* Add new package: py-holland

* rename py-holland to py-holland-backup

* fix dependencies
2021-01-03 11:07:37 -06:00
Sajid Ali
d685e47fb7
bump py-h5py (#20482)
* rebase and fix merge conflict

* address reviewer comments

* rework dependency handling as per reviewer comments

* incorporate reviewer feedback

* incorporate reviewer feedback

* fix phases

* address reviewer comments

* minor
2021-01-02 17:32:36 -06:00
Todd Gamblin
a8ccb8e116 copyrights: update all files with license headers for 2021
- [x] add `concretize.lp`, `spack.yaml`, etc. to licensed files
- [x] update all licensed files to say 2013-2021 using
      `spack license update-copyright-year`
- [x] appease mypy with some additions to package.py that needed
      for oneapi.py
2021-01-02 12:12:00 -08:00
Todd Gamblin
78f39bdfee commands: add spack license update-copyright-year
This adds a new subcommand to `spack license` that automatically updates
the copyright year in files that should have a license header.

- [x] add `spack license update-copyright-year` command
- [x] add test
2021-01-02 12:12:00 -08:00
Todd Gamblin
4d94c4c460
linguist: update .gitattributes for better linguist parsing (#20639)
This adds two lines to `.gitattributes`:
- [x] exclude vendored code from GitHub's language calculation
- [x] recognize `.lp` files as Prolog (closest language to ASP that
      linguist supports)

It looks like there have been two attempts
(https://github.com/github/linguist/issues/3867,
https://github.com/github/linguist/issues/4860) to add ASP as a language
to Linguist, but it's not widespread enough to be standard yet (or at
least the people who submitted the PRs haven't been able to show enough
stats to prove it). We'll settle for calling ASP "Prolog" for now as
that'll get us some syntax highlighting for `concretize.lp`.
2020-12-31 16:48:50 -08:00
Tom Payerle
a1cf000655
hdf-eos5: new package (HDF for Earth Observing Sytem using hdf v5) (#20274)
* hdf-eos5: new package (HDF for Earth Observing Sytem using hdf v5)

* hdf-eos5: flake8 fixes

* hdf-eos5: trying to fix flake8 errors

* hdf-eos5: flake8 fix

* hdf-eos5: Fix to support Fortran codes

The -Df2cFortran compilation flag needed to support Fortran
2020-12-30 17:55:29 -06:00
Tom Payerle
a30ba0b836
hdf-eos2: new package (HDF for Earth Observing System using hdf5) (#20275)
* hdf-eos2: new package (HDF for Earth Observing System using hdf5)

* hdf-eos2: flake8 fixes

* hdf-eos2: fix to support Fortran

Need the compilation flag -Df2cFortran to allow support for Fortran
codes
2020-12-30 17:54:55 -06:00
Adam J. Stewart
0d95fd6d52
extends: add type kwarg (#20045)
* extends: add type kwarg

* Flake8 fix
2020-12-30 11:09:58 -06:00
eugeneswalker
717b653bdd
nalu-wind: add variant to build wind-utils (#20587) 2020-12-30 11:07:43 -06:00
Adam J. Stewart
5964cb49d9
Use system libuuid on macOS (#20608) 2020-12-30 10:13:34 -06:00
Massimiliano Culpo
eca1dd8738 concretizer: generate facts for externals
Generate only facts for external specs. Substitute the
use of already grounded rules with non-grounded rules
in concretize.lp
2020-12-29 23:51:20 -08:00
Adam J. Stewart
a4accff266
PythonPackage: url -> pypi (#20610)
* Convert all `url` attributes in `PythonPackage`s to `pypi` attributes
* add `pypi =` to flake8 exceptions
2020-12-29 16:44:04 -08:00
Michael Kuhn
c22141f444
Introduce virtual provider uuid (#18322)
libuuid is currently contained in util-linux, libuuid and uuid. This
change introduces a new virtual provider `uuid` and renames the existing
`uuid` package to `ossp-uuid`.

util-linux's libuuid is provided in the form of a separate package
util-linux-uuid to make sure that packages depending on uuid and
util-linux can use a separate uuid implementation, which the concretizer
does not allow if libuuid is contained in util-linux.
2020-12-29 10:12:26 -06:00
Adam J. Stewart
b421080c03
GDB: Better Python debugging support (#20486)
* GDB: Better Python debugging support

* Auto-load safe path

* Use gdbinit instead
2020-12-29 10:04:58 -06:00
Adam J. Stewart
8f92970714
py-geoplot: add new package at v0.4.1 (#20603) 2020-12-29 11:56:24 +01:00
Adam J. Stewart
03844b581a
OpenVSLAM: add new package (#20389) 2020-12-29 11:18:34 +01:00
Adam J. Stewart
50e9501124
py-contextily: add new package at v1.0.1 (#20602) 2020-12-29 11:17:24 +01:00
Yang Zongze
d41bb54729
automake: fix shebang substitution for v1.16.3 and later (#20579) 2020-12-29 11:16:34 +01:00
Adam J. Stewart
8babd5345f
py-geopy: add new package at v2.1.0 (#20601) 2020-12-29 09:11:12 +01:00
Adam J. Stewart
05f8e08067
PythonPackage: add pypi attribute to infer homepage/url/list_url (#17587) 2020-12-29 09:03:08 +01:00
John Wohlbier
76d23d9ee4
squashfs: fix build with GCC 10 (#20592) 2020-12-29 08:46:00 +01:00
Adam J. Stewart
e62676b245
Fix deptypes for some geospatial Python packages (#20593) 2020-12-29 08:40:23 +01:00
Adam J. Stewart
08ba1148e2
py-pygeos: add new package at v0.8 (#20594) 2020-12-29 08:39:45 +01:00
Glenn Johnson
747f7decc4
fsl: updated package, added v6.0.4 (#20201)
- added several patches
- added some missing dependencies
- remove unneeded dependencies
- add CUDA support
- disable queue support, which was limited, and broken anyway
- move package text that was specific to the package to a comment, so it
  does not show up the environment module
- set conflicts for cuda and compilers

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2020-12-29 08:27:26 +01:00
Adam J. Stewart
6c9272677b
py-cartopy: specify where deps are found (#20597) 2020-12-29 08:04:13 +01:00
Adam J. Stewart
a13b9d8a7d
py-geographiclib: add new package at v1.50 (#20600) 2020-12-29 07:57:59 +01:00
Adam J. Stewart
89262fbd23
py-mercantile: add new package at v1.1.6 (#20598) 2020-12-29 07:56:56 +01:00
Adam J. Stewart
f1a4810ac7
py-mapclassify: add new package at v2.4.2 (#20599) 2020-12-29 07:56:21 +01:00
Michael Kuhn
49b5ce954a
python: add 3.8.7 and 3.9.1 (#20589) 2020-12-28 16:21:20 -06:00
Ryan Mast
1e971b62de
libarchive: add version 3.5.1 (#20586) 2020-12-28 22:48:20 +01:00
Massimiliano Culpo
60f4621a73
archspec: fixed a typo in the vendored library (#20584) 2020-12-28 12:09:02 -06:00
Rémi Lacroix
8919226dc6
Update OpenMPI package (#20492)
* OpenMPI: Add version 4.1.0

* OpenMPI: Prefer version 4.0.5.

* OpenMPI: Update links

The download links changed, there is currently a redirection but it might not work forever. The website also switched to https.
2020-12-28 10:56:15 -06:00
perrymil
22e8672394
nvtop: new package at v1.1.0 (#20272) 2020-12-28 17:43:36 +01:00
Adam J. Stewart
808f55fa1f
minizip: fix build with Apple Clang 12 (#20554) 2020-12-28 08:43:37 -06:00
Tomoyasu Nojiri
7f997f82c2
sionlib: fix for aarch64 (#20525) 2020-12-28 15:21:49 +01:00
h-denpo
0fcedea1d8
gnupg: added versions up to v2.2.5 (#20465) 2020-12-28 13:28:33 +01:00
h-denpo
680971650c
frontistr: add v5.1.1, need trilinos version 12 (#20334) 2020-12-28 13:17:18 +01:00
Tiziano Müller
e2dcec8e43
libvori: added v201224 (#20577) 2020-12-28 12:59:16 +01:00
QuellynSnead
39a5c75a83
libquo: add pic flags for PGI (#20528)
Enforce PIC for PGI ((https://github.com/lanl/libquo/issues/41))
2020-12-28 12:57:03 +01:00
a-saitoh-fj
0f6ddacc98
py-multipledispatch: new package at v0.6.0 (#20571) 2020-12-28 12:54:36 +01:00
ravil-mobile
82c74c49ea
zoltan: forward +int64 to parmetis, if active (#20572) 2020-12-28 12:53:08 +01:00
a-saitoh-fj
b6ed75f1b2
py-sparse: new package at v0.11.2 (#20573) 2020-12-28 12:51:39 +01:00
Yang Zongze
e4c41080b7
gmsh: added versions up to v4.7.1 (#20336) 2020-12-28 12:47:54 +01:00
Adam J. Stewart
69b9741e67
py-scikit-learn: add v0.24.0 (#20519) 2020-12-28 12:47:02 +01:00
Mark W. Krentel
025990a9c2
libmonitor: added v2020.10.15 (#20574)
Add version 2020.10.15, and add variant +dlopen to control overriding
dlopen and dlclose.
2020-12-28 11:12:45 +01:00
Adam J. Stewart
98cb74f2d1
py-geopandas: add v0.8.1 and master (#20576) 2020-12-28 11:11:50 +01:00
Christoph Junghans
22b56e75c4
legion: add streichler as maintainer (#20575)
* legion: add streichler as maintainer

* gasnet: add maintainers
2020-12-27 23:22:46 -07:00