-
Notifications
You must be signed in to change notification settings - Fork 0
Externals Survey
JCF, Dec-2-2024
-
Current
: what's in ext-v2.1, i.e. the externals used by our current nightlies -
NFDT_DEV_241129_A9
: what's in the still-in-development ext-v2.2 and used by that particular test nightly -
Preferred (no checksum)
: the version labeled as "Preferred" in the latestpackage.py
-
Latest from checksum
: latest version if you runspack checksum <package>
Current | NFDT_DEV_241129_A9 | Preferred (no checksum) | Latest from checksum | |
---|---|---|---|---|
abseil-cpp | 20240116.2 | " | " | 20240722.0 |
boost | 1.77.0 | 1.85.0 | " | 1_87_0_b1 |
cetlib | 3.18.01 | " | " | " |
cli11 | 2.3.2 | " | " | 2.4.2 |
cmake | 3.26.3 | " | 3.27.9 | 3.31.1 |
cppzmq | 4.8.1 | 4.10.0 | " | " |
cyrus-sasl | 2.1.27 | X | X | X |
dpdk | 22.11 | " | 23.03 | " |
felix-software | dunedaq-v4.2.0 | " | " | " |
fmt | 8.1.1 | 10.2.1 | " | 11.0.2 |
folly | 2021.12.13.00 | " | " | 2024.12.02.00 |
gcc | 12.1.0 | " | 13.2.0 | |
gdb | 13.1 | " | 14.1 | |
grpc | 1.65.1 | " | " | |
highfive | 2.7.1 | " | 2.9.0 | 3.0.0-beta1 |
intel-tbb | 2020.3 | " | 2021.9.0 | 2022.0.0 |
krb5 | 1.19.2 | X | X | X |
librdkafka | 1.7.0 | " | 2.2.0 | 2.6.1 |
msgpack-c | 3.3.0 | " | " | 7.0.0 |
ninja | 1.10.0 | " | 1.11.1 | |
nlohmann-json | 3.9.0 | 3.11.2 | " | 3.11.3 |
numactl | 2.0.14 | " | " | |
openssh | 8.7p1 | 9.7p1 | " | |
openssl | 1.1.1t | 1.1.1t | 3.3.0 | |
pistache | dunedaq-v2.8.0 | " | " | " |
pkgconf | 2.2.0 | " | " | |
protobuf | 4.24.4 | " | " | 29.0 |
pugixml | 1.12.1 | " | 1.13 | |
py-moo | 0.6.7 | " | " | " |
py-pybind11 | 2.6.2 | 2.12.0 | " | 2.13.6 |
python | 3.10.10 | " | 3.11.6 | |
qt | 5.15.12 | " | " | |
trace | 3.17.14 | " | " | |
uhal | 2.8.1 | " | " | " |
current | NFDT_DEV_241129_A9 | Latest | |
---|---|---|---|
anytree | 2.8.0 | 2.12.1 | " |
click | 8.1.7 | " | " |
click-didyoumean | 0.3.0 | 0.3.1 | " |
click-shell | 2.1 | " | " |
colorama | 0.4.4 | 0.4.6 | " |
deepdiff | 6.3.1 | 8.0.1 | " |
Flask | 2.1.1 | 3.1.0 | " |
Flask-Cors | 3.0.10 | 5.0.0 | " |
Flask-Caching | X | 2.3.0 | " |
Flask-HTTPAuth | 4.6.0 | 4.8.0 | " |
Flask-RESTful | 0.3.9 | 0.3.10 | " |
Flask-SQLAlchemy | X | 3.1.1 | " |
graphviz | 0.16 | 0.20.3 | " |
h5py | 3.7.0 | 3.12.1 | " |
httpx | 0.23.3 | 0.27.2 | 0.28.0 |
kubernetes | 23.6.0 | 31.0.0 | " |
matplotlib | X | 3.9.2 | 3.9.3 |
numpy | 1.24 | 2.1.3 | " |
pandas | X | 2.2.3 | " |
pexpect | 4.8.0 | 4.9.0 | " |
psutil | 5.9.0 | 6.1.0 | " |
py | 1.10.0 | 1.11.0 | " |
pytest | 8.3.3 | " | 8.3.4 |
python-ipmi | 0.5.1 | 0.5.7 | |
rsa | 4.8 | 4.9 | " |
sh | 1.14.1 | 2.1.0 | " |
textual | 0.83.0 | 0.87.1 | 0.88.1 |
transitions | 0.8.10 | 0.9.2 | " |
Notes on the package.py
's which have been vendored into daq-release over the years. Looking at the head of develop
of daq-release, d55d8cf3af4
, in spack-repos/externals/packages
:
catch2:
Vendoring occured in commit cf73df3e2
from July 3 this year, and appears related to the update to Spack 0.22.0.
It's unclear why this bump required vendoring.
catch2 doesn't depend on anything.
cetlib-except depends on [email protected]
cetlib depends on catch2
hep-concurrency depends on catch2
cetmodules depends on [email protected] (build-only)
cetlib, cetlib-except, cetmodules:
Vendored because we have no choice
Only fixed dependency is, as described above, [email protected]
cmake:
Vendored so cmake-findprotobuf.patch
can be applied to CMake versions 3.23.1 and up
Having said that, there's considerable difference beyond that between what's in daq-release and what's in builtin
cpr: Can be dropped, no longer need in DUNE DAQ
cyrus-sasl: Can be dropped, apparently superfluous dependency
dpdk: The vendored package.py literally dates from 2021
A commit from May 11, 2022: "JCF: Issue #163: add support for a Spack installation of dpdk"
Can this be dropped? Need to keep in mind things like commit 8eb8dd7d
from earlier this year, where I deal with a libarchive dependency.
felix-software: Obviously has to be vendored. Need to modify so it works with gcc 13.2
fftw: Drop, was only used by dqm
folly: Needs to remain vendored since incredibly, May 2021 is the latest version in builtin. Chesteron's fence? I was able to at least get it to December 2021. And furthermore, the December 2021 doesn't build under gcc 13.1.0.
More details: whereas its dependency, glog, goes up to 0.7.0, it can only build against 0.6.0 and no later because of a complaint about how it includes headers. The December 2024 version also depends on fast-float
, which isn't builtin in Spack, so I've vendored this as well.
grpc: Has to be vendored, builtin only goes up to 1.55.0 and default built is C++11
hep-concurrency:
Not even used. cetlib used to depend on this. Or, it depends on it, but only if there's a ~lite
build. Are we ever going to have that?
highfive:
builtin goes to 2.9.0 while vendored goes to 2.7.1. OTOH, Pengfei added a patch. Also note you needed to add +threadsafe
to hdf5
dependency. Edit this to include the later versions.
lcov: needed for my work
librdkafka:
vendored in March 2022 for unknown reasons (the classic merge proto-spack
commit); openssl dependency added a year later (commit info is add dependency of openssl
). builtin doesn't have openssl dependency but does go up to 2.2.0, vendored only goes to 1.7.0 .
libtorrent: vendored goes to 2.0.9; builtin to 0.13.8
libzmq:
vendored goes to 4.3.4, builtin to 4.3.5. Added entirely in one commit back in August 2022. Builtin has a patch Fix static assertion failure with gcc-13
, not in vendored. Candidate for removal?
msgpack-c:
vendored goes to 3.3.0, builtin to 3.1.1. Obvious keep, the only question is what further versions spack checksum
would give us
openssh:
For externals v2.2 this will only be a dependency of a dependency of git
, a dependency of go
which is a build-only dependency of rclone. But its history (on Slack, etc.) needs revisiting. Chesterton's Fence.
openssl: You vendored this in the switch to spack-0.22.0 back in the summer but it's unclear why.
perl-timedate: needed for my lcov work
pistache:
not a built in, obviously needs to be vendored. Current version used doesn't build in gcc 13.2.0, however, because of missing headers (<cstdint>
, IIRC)
protobuf: Vendored latest is 4.24.4, builtin latest is 3.25.3. Also some bespoke abseil-cpp version logic.
pugixml:
Added by Pengfei in 2022; it may not have existed in builtin. It does now, though note that builtin has 1.3, 1.11.4 and vendored has 1.12.1, 1.12, 1.11.4. Whether or not to remove it from being vendored depends on whether spack spec
picks out 1.3 or not.
py-anyconfig: Added by Pengfei in the original March 2022 commit; doesn't exist in builtin
py-jsonnet: Added by Pengfei in the original March 2022 commit; doesn't exist in builtin
py-fastjsonschema: Added by Pengfei in the original March 2022 commit; identical in builtin
py-sphinxcontrib-moderncmakedomain: Added by Pengfei in the original March 2022 commit; identical in builtin
rclone:
The vendoring of this package appears to be related to the set of rcloneConfig.cmake
-and-related files created for it. Pengfei, September 2023.
trace: Obviously needed
uhal: Not in builtin, obviously needed. Untouched since September 2022.