Skip to content

Commit 7e70899

Browse files
authored
Unpin or update many packages (mostly Python) in configs/common/packages.yaml, fix S4 site config (#1384)
In preparation for spack-stack-1.9.0, this PR unpins or updates several packages in configs/common/packages.yaml (mostly Python packages). Most notably, py-shapely and py-numpy are updated. The py-numpy update may require bug fixes with the Intel classic compiler that @DavidHuber-NOAA worked on and that are currently under review in spack develop (see #1276). Included is an update of the S4 site config, which had several flaws that prevented building and testing this PR.
1 parent f8383cd commit 7e70899

File tree

14 files changed

+63
-66
lines changed

14 files changed

+63
-66
lines changed

configs/common/packages.yaml

Lines changed: 16 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,16 @@ packages:
2626
cairo:
2727
require: '+pic'
2828
cdo:
29-
require: '@2.3.0 ~openmp'
29+
require:
30+
- any_of: ['@2.3.0 ~openmp']
31+
when: '%intel@2021:'
32+
message: '2.3.0 is the last version to use C++17, use with Intel Classic'
33+
- any_of: ['@2.3.0 ~openmp']
34+
when: '%apple-clang@:14'
35+
message: '2.3.0 is the last version to use C++17, use with Apple Clang 14 and earlier'
36+
- any_of: ['@2.0.5 ~openmp']
37+
when: '%intel@:2020'
38+
message: '2.0.5 is the last version to use C++14, use with Intel Classic 2020 and earlier'
3039
cmake:
3140
version: ['3.27.9']
3241
require: '+ownlibs'
@@ -142,11 +151,6 @@ packages:
142151
mapl:
143152
require: '@2.46.3 ~shared ~f2py'
144153
variants: '+pflogger'
145-
# To avoid duplicate packages being built
146-
meson:
147-
require:
148-
- '@1.5.1:'
149-
# If making changes here, also check the Discover site configs and the CI workflows
150154
met:
151155
require: '@11.1.1 +python +grib2'
152156
metplus:
@@ -156,7 +160,7 @@ packages:
156160
mpich:
157161
require: '~hwloc'
158162
nco:
159-
require: '@5.1.6 ~doc'
163+
require: '@5.2.4 ~doc'
160164
# ncview - when adding information here, also check Orion
161165
# and Discover site configs
162166
nemsio:
@@ -202,9 +206,6 @@ packages:
202206
require: '~tiff'
203207
python:
204208
require: '@3.11.7'
205-
py-attrs:
206-
# https://github.com/JCSDA/spack-stack/issues/740
207-
require: '@21.4.0'
208209
py-cartopy:
209210
require: '+plotting'
210211
# Avoid full rust dependency: version 43+ requires py-maturin
@@ -226,42 +227,23 @@ packages:
226227
require: '@3.8.0'
227228
py-h5py:
228229
require: '~mpi'
229-
## To avoid duplicate packages
230-
#py-jinja2:
231-
# require: '@3.1.2'
232230
# https://github.com/JCSDA/spack-stack/issues/1276
233231
py-matplotlib:
234232
require: '@3.7.4'
235-
py-meson-python:
236-
require: '@0.15.0'
237-
# Comment out for now until build problems are solved
238-
# https://github.com/jcsda/spack-stack/issues/522
239-
# see also ewok-env virtual package and container
240-
# README.md
241-
#py-mysql-connector-python:
242-
# require: '@8.0.32'
233+
# Variant ~mpi not working for latest py-netcdf4
234+
# https://github.com/spack/spack/issues/47652
243235
py-netcdf4:
244-
require: '@1.5.8 ~mpi'
245-
# [email protected] causes many build problems with older Python packages
246-
# also check Nautilus site config when making changes here
247-
# https://github.com/JCSDA/spack-stack/issues/1276
248-
py-numpy:
249-
require:
250-
- '@:1.23.5'
236+
require: '@1.7.1 +mpi'
251237
py-pandas:
252238
require: '+excel'
253-
py-pybind11:
254-
require: '@2.11.0'
255239
# To avoid duplicate packages
256240
py-ruamel-yaml:
257241
require: '@0.17.16'
258242
# Pin the py-setuptools version to avoid duplicate Python packages
259243
py-setuptools:
260-
require: '@63.4.3'
244+
require: '@69'
261245
py-setuptools-rust:
262246
require: '+rust_bootstrap'
263-
py-shapely:
264-
require: '@1.8.0'
265247
py-torch:
266248
require: '+custom-protobuf ~mkldnn'
267249
# To avoid duplicate packages
@@ -297,4 +279,4 @@ packages:
297279
wrf-io:
298280
require: '@1.2.0'
299281
zstd:
300-
require: '@1.5.2 +programs'
282+
require: '@1.5.6 +programs'

configs/sites/tier1/aws-pcluster/packages_intel.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,5 +31,5 @@ packages:
3131
- '@1.2.1 ~mkl'
3232
py-numpy:
3333
require::
34-
- '@:1.23 ^openblas'
34+
- '^openblas'
3535
# *DH

configs/sites/tier1/derecho/packages_intel.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,4 +21,3 @@ packages:
2121
# Newer versions of patchelf (tested 0.18.0) don't build with Intel on Derecho
2222
patchelf:
2323
version:: ['0.17.2']
24-

configs/sites/tier1/gaea-c5/packages.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ packages:
3535
- '@1.2.1 ~mkl'
3636
py-numpy:
3737
require::
38-
- '@:1.23 ^openblas'
38+
- '^openblas'
3939
# *DH
4040

4141
### All other external packages listed alphabetically

configs/sites/tier1/gaea-c6/packages.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ packages:
3434
- '@1.2.1 ~mkl'
3535
py-numpy:
3636
require::
37-
- '@:1.23 ^openblas'
37+
- '^openblas'
3838
# *DH
3939

4040
### All other external packages listed alphabetically

configs/sites/tier1/hera/packages_intel.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ packages:
3030
- '@1.2.1 ~mkl'
3131
py-numpy:
3232
require::
33-
- '@:1.23 ^openblas'
33+
- '^openblas'
3434
# *DH
3535
zlib-ng:
3636
require:

configs/sites/tier1/hercules/packages_intel.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,4 +30,4 @@ packages:
3030
- '@1.2.1 ~mkl'
3131
py-numpy:
3232
require::
33-
- '@:1.23 ^openblas'
33+
- '^openblas'

configs/sites/tier1/nautilus/packages_gcc.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,4 @@ packages:
3131
- '@1.2.1 +mkl'
3232
py-numpy:
3333
require::
34-
- '@:1.23 ^intel-oneapi-mkl'
34+
- '^intel-oneapi-mkl'

configs/sites/tier1/noaa-aws/packages_intel.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,5 +30,5 @@ packages:
3030
- '@1.2.1 ~mkl'
3131
py-numpy:
3232
require::
33-
- '@:1.23 ^openblas'
33+
- '^openblas'
3434
# *DH

configs/sites/tier1/noaa-azure/packages_intel.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,5 +30,5 @@ packages:
3030
- '@1.2.1 ~mkl'
3131
py-numpy:
3232
require::
33-
- '@:1.23 ^openblas'
33+
- '^openblas'
3434
# *DH

configs/sites/tier1/noaa-gcloud/packages_intel.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,5 +30,5 @@ packages:
3030
- '@1.2.1 ~mkl'
3131
py-numpy:
3232
require::
33-
- '@:1.23 ^openblas'
33+
- '^openblas'
3434
# *DH

configs/sites/tier1/orion/packages_intel.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,4 +30,4 @@ packages:
3030
- '@1.2.1 ~mkl'
3131
py-numpy:
3232
require::
33-
- '@:1.23 ^openblas'
33+
- '^openblas'

configs/sites/tier1/s4/compilers.yaml

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@ compilers:
1313
- intel/2023.2
1414
environment:
1515
prepend_path:
16-
PATH: /opt/gcc/13.3/bin
17-
LD_LIBRARY_PATH: /opt/intel/oneapi/2023.2/compiler/2023.2.0/linux/compiler/lib/intel64_lin:/opt/gcc/13.3/lib64:/opt/gcc/13.3/lib
18-
CPATH: /opt/gcc/13.3/include
16+
PATH: /opt/gcc/10.2.0/bin
17+
LD_LIBRARY_PATH: /opt/intel/oneapi/2023.2/compiler/2023.2.0/linux/compiler/lib/intel64_lin:/opt/gcc/10.2.0/lib64:/opt/gcc/10.2.0/lib
18+
CPATH: /opt/gcc/10.2.0/include
1919
extra_rpaths: []
2020
- compiler:
2121
spec: gcc@=13.3.0
@@ -31,6 +31,20 @@ compilers:
3131
- gcc/13.3
3232
environment: {}
3333
extra_rpaths: []
34+
- compiler:
35+
spec: gcc@=10.2.0
36+
paths:
37+
cc: /opt/gcc/10.2.0/bin/gcc
38+
cxx: /opt/gcc/10.2.0/bin/g++
39+
f77: /opt/gcc/10.2.0/bin/gfortran
40+
fc: /opt/gcc/10.2.0/bin/gfortran
41+
flags: {}
42+
operating_system: rocky8
43+
target: x86_64
44+
modules:
45+
- gcc/10.2
46+
environment: {}
47+
extra_rpaths: []
3448
- compiler:
3549
spec: gcc@=8.5.0
3650
paths:

configs/sites/tier1/s4/packages.yaml

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,15 @@
11
packages:
22
all:
3-
compiler:: [[email protected],gcc@13.3.0]
3+
compiler:: [[email protected],gcc@10.2.0]
44
providers:
55
66
# Remove the next three lines to switch to intel-oneapi-mkl
77
blas:: [openblas]
88
fftw-api:: [fftw]
99
lapack:: [openblas]
10+
# spack concretizer gets confused and wants an AVX512 architecture for some packages
11+
require:
12+
- 'arch=linux-rocky8-skylake'
1013

1114
### MPI, Python, MKL
1215
mpi:
@@ -34,7 +37,7 @@ packages:
3437
- '@1.2.1 ~mkl'
3538
py-numpy:
3639
require::
37-
- '@:1.23 ^openblas'
40+
- '^openblas'
3841

3942
### All other external packages listed alphabetically
4043
autoconf:
@@ -77,10 +80,11 @@ packages:
7780
externals:
7881
7982
prefix: /usr
80-
curl:
81-
externals:
82-
- spec: [email protected]+gssapi+ldap+nghttp2
83-
prefix: /usr
83+
# OS curl/openssl cause problems
84+
#curl:
85+
# externals:
86+
# - spec: [email protected]+gssapi+ldap+nghttp2
87+
# prefix: /usr
8488
diffutils:
8589
externals:
8690
@@ -145,10 +149,11 @@ packages:
145149
externals:
146150
147151
prefix: /usr
148-
openssl:
149-
externals:
150-
151-
prefix: /usr
152+
# OS curl/openssl cause problems
153+
#openssl:
154+
# externals:
155+
156+
# prefix: /usr
152157
perl:
153158
externals:
154159
- spec: [email protected]~cpanm+opcode+open+shared+threads
@@ -157,14 +162,11 @@ packages:
157162
externals:
158163
159164
prefix: /usr
160-
# TODO - installing via spack-stack works, for example for
161-
# spack-stack-1.8.0, but would be good if we didn't have to.
162-
# https://github.com/JCSDA/spack-stack/issues/1329
163-
#qt:
164-
# buildable: False
165-
# externals:
166-
167-
# prefix: /usr
165+
qt:
166+
buildable: False
167+
externals:
168+
169+
prefix: /usr
168170
rsync:
169171
externals:
170172

0 commit comments

Comments
 (0)