Skip to content

Commit

Permalink
Merge pull request #18757 from easybuilders/4.8.x
Browse files Browse the repository at this point in the history
release EasyBuild v4.8.1
  • Loading branch information
SebastianAchilles authored Sep 11, 2023
2 parents 771affc + 3872c0c commit 3495f18
Show file tree
Hide file tree
Showing 749 changed files with 30,602 additions and 589 deletions.
105 changes: 103 additions & 2 deletions RELEASE_NOTES
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,109 @@ For more detailed information, please see the git log.

These release notes can also be consulted at https://docs.easybuild.io/en/latest/Release_notes.html.

The latest version of easybuild-easyconfig provides 17,511 easyconfig files, for 3,161 different software packages,
incl. 39 different (compiler) toolchains.
The latest version of easybuild-easyconfig provides 18,021 easyconfig files, for 3,224 different software packages,
incl. 40 different (compiler) toolchains.


v4.8.1 (11 September 2023)
--------------------------

update/bugfix release

- added example easyconfig files for 83 new software packages:
- ALAMODE (#18733), AMRFinderPlus (#18559), Ax (#68), bcrypt (#18208), bench (#18656), BgeeDB (#18743),
Boost.Python-NumPy (#18505), CatBoost (#18591), centerline (#18273), cffi (#7105), ChIPseeker (#18662),
connected-components-3d (#18289), cryptography (#8495), CVglasso (#18657), DiffBind (#18663), drmaa-python (#18614),
e3nn (#18304), flit (#18208), GAPPadder (#18692), GenerativeModels (#18451), geosphere (#18659), gffutils (#18331),
gkmSVM (#18660), hampel (#18409), hatchling (#18208), HDF-EOS2 (#18297), Hybpiper (#18414), inih (#18516),
IsoformSwitchAnalyzeR (#18664), IsoQuant (#18331), Jupyter-bundle (#18634), JupyterNotebook (#18735, #18735),
leafcutter (#18615), libleidenalg (#18548), LIBSVM-Python (#18455), libvori (#18379), maturin (#18405),
meboot (#18658), mgen (#18402), Mikado (#18614), NanoCaller (#18726), nbclassic (#18617), ncolor (#7146),
nose3 (#18234), novaSTA (#18601), Omnipose (#18402), Optax (#18610), paramiko (#1504), Parsl (#18408),
peakdetect (#18402), PICRUSt2 (#18333, #18459), Platypus-Opt (#18291), PortMidi (#18252), pv (#16439),
py-c3d (#18409), pygame (#18252), pyodbc (#18334), Python-bundle-PyPI (#18208), qforce (#18456),
RFdiffusion (#18304), Rhodium (#18291), ruptures (#18306), Sabre (#18342), scGSVA (#18401), scib-metrics (#18734),
scikit-plot (#18377), SDL2_mixer (#18252), SDL2_ttf (#18252), segment-anything (#18290), sentinelsat (#18367),
setuptools-rust (#18208), slurm-drmaa (#18614), SuAVE-biomat (#18678), T-Coffee (#17916),
tensorflow-compression (#18676), torchvf (#18637), tornado (#18511), tseriesEntropy (#18661), TXR (#18665),
unifdef (#18427), UniFrac (#18407), virtualenv (#2660), WFA2 (#18636)
- added additional easyconfigs for various supported software packages, including:
- ABINIT 9.10.3, Advisor 2023.2.0, aiohttp 3.8.5, AMD-uProf 4.1.424, Anaconda3 2023.07-2, anndata 0.9.2,
APR 1.7.4, APR-util 1.6.3, Arcade-Learning-Envionment 0.8.1, archspec 0.2.1, Armadillo 12.6.2, arpack-ng 3.9.0,
assimp 5.2.5, BAGEL 1.2.2, bam-readcount 1.0.1, Bazel 6.3.1, BCFtools 1.18, BeautifulSoup 4.12.2, BEDTools 2.31.0,
biom-format 2.1.15, bokeh 3.2.1, Boost 1.82.0, cairo 1.17.8, c-ares 1.19.1, ccache 4.8.3, CDO 2.2.2, CFITSIO 4.3.0,
Cgl 0.60.7, CharLS 2.4.2, cicero 1.3.8, Clang 16.0.6, Clp 1.17.8, Cluster-Buster 20200507, CoinUtils 2.11.9,
conan 1.60.2, configurable-http-proxy 4.5.5, coverage 7.2.7, CP2K 2023.1, CubeLib 4.8.1, CubeWriter 4.8.1,
CUDA 12.2.2, dask 2023.7.1, dcm2niix 1.0.20230411, Delly 1.1.6, dill 0.3.7, ecBuild 3.8.0, ecCodes 2.31.0,
ELPA 2023.05.001, exiv2 0.28.0, expecttest 0.1.5, fastparquet 2023.4.0, FFmpeg 6.0, ffnvcodec 12.0.16.0,
flatbuffers 23.5.26, flatbuffers-python 23.5.26, FreeSurfer 7.4.1, fsom 20151117, gc 8.2.4, GCC 13.2.0, GDB 13.2,
GEOS 3.12.0, gettext 0.22, GHC 9.2.2, Ghostscript 10.01.2, GLib 2.77.1, gmpy2 2.1.5, gnuplot 5.4.8,
GObject-Introspection 1.76.1, gperftools 2.12, Graphviz 8.1.0, gRPC 1.57.0, GST-plugins-base 1.22.5,
GStreamer 1.22.5, GTK3 3.24.37, GTK4 4.11.3, h4toh5 2.2.5, h5netcdf 1.2.0, h5py 3.9.0, hiredis 1.2.0,
Horovod 0.28.1, htop 3.2.2, HTSlib 1.18, hwloc 2.9.2, Hydra 1.3.2, hypothesis 6.82.0, Hypre 2.29.0, ICU 73.2,
igraph 0.10.6, iimkl/2023a, imageio 2.31.1, ImageMagick 7.1.1-15, inferCNV 1.14.2, IPython 8.14.0, ISL 0.26,
Julia 1.9.3, JupyterLab 4.0.5, jupyter-resource-usage 1.0.0, kma 1.4.12a, KMC 3.2.2, leidenalg 0.10.1,
libdrm 2.4.115, libdwarf 0.7.0, libfabric 1.19.0, libgit2 1.7.1, libGLU 9.0.3, libsndfile 1.2.2, libwpe 1.14.1,
libxml2 2.11.5, LittleCMS 2.15, LLVM 16.0.6, Lua 5.4.6, MACS2 2.2.9.1, magma 2.7.1, mahotas 1.4.13, makeinfo 7.0.3,
Mamba 23.1.0, matplotlib 3.7.2, medaka 1.8.1 + 1.9.1, Mercurial 6.4.5, Mesa 23.1.4, meson-python 0.13.2,
Miniconda3 23.5.2, Monocle3 1.3.1, MPC 1.3.1, MRtrix 3.0.4, MUMPS 5.6.1, MXNet 1.9.1, napari 0.4.18, ncdu 1.18,
netCDF 4.9.2, netCDF-Fortran 4.6.1, nettle 3.9.1, networkx 3.1, nodejs 18.17.1, nsync 1.26.0, NVHPC 23.7,
OpenAI-Gym 0.26.2, OpenCV 4.8.0, OpenFOAM 11, OpenImageIO 2.4.14.0, Osi 0.108.8, OTF2 3.0.3, Pango 1.50.14,
PAPI 7.0.1, parallel 20230722, Perl 5.38.0, Pillow 10.0.0, Pillow-SIMD 9.5.0, Pint 0.22, pkgconf 2.0.3,
plotly.py 5.16.0, PLUMED 2.9.0, pocl 4.0, poetry 1.5.1, protobuf 24.0, protobuf-python 4.24.0, psutil 5.9.5,
PuLP 2.7.0, pyBigWig 0.3.22, pybind11 2.11.1, PyCairo 1.24.0, PyGObject 3.44.1, Pylint 2.17.4, pyproj 3.6.0,
pyro-ppl 1.8.4, python-igraph 0.10.6, PyZMQ 25.1.1, QIIME2 2023.5.1, Qt5 5.15.10, QuantumESPRESSO 7.2,
rclone 1.63.1, RE2 2023-08-01, re2c 3.1, RegTools 1.0.0, RnBeads 2.14.0, RTG-Tools 3.12.1, SAMtools 1.18,
Scalene 1.5.26, scikit-build 0.17.6, scikit-image 0.21.0, SciPy-bundle 2023.07, Score-P 8.1, SCOTCH 7.0.3,
SDL2 2.28.2, SDL2_image 2.6.3, setuptools 64.0.3, SeuratWrappers 20221022, snakemake 7.32.3, SpaceRanger 2.1.0,
SpiecEasi 1.1.1, Stack 2.11.1, STAR 2.7.11a, SUNDIALS 6.6.0, SWIG 4.1.1, sympy 1.12, tabixpp 1.1.2, tbb 2021.10.0,
tbl2asn 20230713, tcsh 6.24.10, TensorFlow 2.13.0, tensorflow-probability 0.19.0, Tk 8.6.13, Tkinter 3.11.3,
tqdm 4.66.1, unixODBC 2.3.11, Valgrind 3.21.0, vcflib 1.0.9, VirtualGL 3.1, VisPy 0.12.2, Wayland 1.22.0,
WebKitGTK+ 2.40.4, wpebackend-fdo 1.14.1, wxPython 4.2.1, Xvfb 21.1.8, xxd 9.0.1696, XZ 5.4.4, Yambo 5.1.2,
Z3 4.12.2, zarr 2.16.0
- minor enhancements, including:
- add extensions to recent R-bundle-Bioconductors easyconfigs: UCell (#18281), decoupleR (#18399, #18552), RnBeads (#18682)
- add extensions to recent R easyconfigs: tabletools (#18510), flextables (#18719)
- add test for easyconfig file permissions (#18647)
- simplify build and install options for Ghostscript (#18750)
- various bug fixes, including:
- set `$JULIA_DEPOT_PATH` in Julia easyconfigs with default value (#17976)
- remove superflous dependencies from Horovod easyconfig on top of PyTorch (#18262)
- disable building documentation for libsigc++ 2.10.x (#18301)
- use MCR dependency in FreeSurfer 7.3.2 and 7.4.0 (#18303)
- add `hpctestlib` to the `$PYTHONPATH` in ReFrame 4.2.0 easyconfig (#18320)
- fix installation of Python bindings for recent Arrow easyconfigs by adding `--no-build-isolation` to `pip install` command (#18348, #18432, #18440, #18441)
- add/fix patches for PyTorch 1.13.1 w/ foss/2022a (#18371)
- add missing nbclassic extension to jupyter-server 1.21.0 (#18389)
- Fix batchspawner for JupyterHub 3.0 (#18390)
- fix compiler flags and toolchain options for ScaLAPACK 2.1.0 + 2.2.0 (#18396, #18397)
- add patch to fix CUDA race condition problem for Score-P v8.0 (#18411)
- add `-DABSL_PROPAGATE_CXX_STD=ON` to recent Abseil easyconfigs (required for PyTorch) (#18413)
- add missing patches for PyTorch 1.12.0 w/ foss/2022a (#18430)
- fix regression in GCC 12.1 + 12.2 with wrong warnings (#18434)
- add patch for LIBSVM 3.30 to pass `$CFLAGS` + `$LDFLAGS` and run tests (#18454)
- add patch for Automake 1.16.5 to fix help2man error (#18468)
- consistently use ON/OFF for -DBUILD_SHARED_LIBS (#18484)
- add missing patches for PyTorch 1.12.0 w/ `foss/2022a` + CUDA 11.7.0 (#18491)
- add patches to fix PyTorch 1.12.1 + 1.13.1 on POWER on POWER (#18489, #18490, #18492, #18493, #18494, #18500)
- add patch to fix flaky `test_jit_legacy` test for PyTorch 1.13.1 (#18500)
- add alternative checksum for Extrae v4.0.4 (#18564)
- remove appending of `$__EGL_VENDOR_LIBRARY_DIRS` in recent Mesa easyconfigs, since Mesa easyblock now appends to it (#18630)
- correct `dirs` in `sanity_check_paths` in template easyconfig (#18635)
- set `$MUJOCO_PY_FORCE_CPU` to avoid that mujoco-py checks for nvidia-smi and aborts installation because `/usr/lib/nvidia` is not in `$LD_LIBRARY_PATH` (#18641)
- fix sanity check for ccache by setting `LC_ALL=C` (#18677)
- make Autoconf a build dep for tRNAscan-SE + add missing Perl dependency (#18680)
- strip out hardcoded `-march=native` used by RapidJSON 1.1.0 (#18725)
- disable detection of Dbus broker for `at-spi2-core` (#18727)
- make sure that 'moduleclass' is set in all easyconfig files (and is not set to default `base` moduleclass) (#18739)
- add patch for MPFR 4.1.0 to fix failing tsprintf test with glibc >= 2.37 (#18746)
- add patch for PMIx 4.x to use `lchown` so links are not followed (#18755)
- other changes:
- update Java/11 wrapper to Java/11.0.20 (#18435)
- use custom easyblock for recent sympy easyconfigs to prevent test failures (#18428)
- use GCC/12.2.0 toolchain for GSL 2.7, remove easyconfig for GSL 2.7 with GCCcore/12.2.0 (#18501)
- disable wx support in gnuplot 5.4.6 (#18648, #18691)
- filter out template + archived easyconfigs when determining changed easyconfigs in PRs (#18753)


v4.8.0 (7 Jul 2023)
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyconfigs/TEMPLATE.eb
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ dependencies = []
# The sanity test MUST be tuned before going production and submitting your contribution to upstream git repositories
sanity_check_paths = {
'files': [],
'dirs': ["."]
'dirs': [],
}

# You SHOULD change the following line; Kindly consult other easyconfigs for possible options
Expand Down
68 changes: 68 additions & 0 deletions easybuild/easyconfigs/a/ABINIT/ABINIT-9.10.3-intel-2022a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
easyblock = 'ConfigureMake'

name = 'ABINIT'
version = '9.10.3'

homepage = 'https://www.abinit.org/'
description = """
ABINIT is a package whose main program allows one to find the total energy, charge density and electronic structure of
systems made of electrons and nuclei (molecules and periodic solids) within Density Functional Theory (DFT), using
pseudopotentials and a planewave or wavelet basis.
"""

toolchain = {'name': 'intel', 'version': '2022a'}
toolchainopts = {'usempi': True, 'openmp': True, 'pic': True}

source_urls = ['https://www.abinit.org/sites/default/files/packages/']
sources = [SOURCELOWER_TAR_GZ]
checksums = ['3f2a9aebbf1fee9855a09dd687f88d2317b8b8e04f97b2628ab96fb898dce49b']

builddependencies = [
('Python', '3.10.4'),
]
dependencies = [
('libxc', '5.2.3'),
('netCDF', '4.9.0'),
('netCDF-Fortran', '4.6.0'),
('HDF5', '1.12.2'),
('Wannier90', '3.1.0'),
]

# Ensure MPI with intel wrappers.
configopts = '--with-mpi="yes" '
configopts += ' FC="mpiifort" CC="mpiicc" CXX="mpiicpc" '

# Enable OpenMP
configopts += '--enable-openmp="yes" '

# BLAS/Lapack from MKL
configopts += '--with-linalg-flavor=mkl '

# FFTW from MKL
configopts += '--with-fft-flavor=dfti '

# libxc support
configopts += '--with-libxc=${EBROOTLIBXC} '

# hdf5/netcdf4 support
configopts += '--with-netcdf="${EBROOTNETCDF}" '
configopts += '--with-netcdf-fortran="${EBROOTNETCDFMINFORTRAN}" '
configopts += '--with-hdf5="${EBROOTHDF5}" '

# Wannier90
configopts += '--with-wannier90="${EBROOTWANNIER90}" '
preconfigopts = 'export WANNIER90_LIBS="-L$EBROOTWANNIER90/lib -lwannier" && '

# Enable double precision for GW calculations
configopts += '--enable-gw-dpc '

# 'make check' is just executing some basic unit tests.
# Also running 'make tests_v1' to have some basic validation
runtest = "check && make test_v1"

sanity_check_paths = {
'files': ['bin/%s' % x for x in ['abinit', 'aim', 'cut3d', 'conducti', 'mrgddb', 'mrgscr', 'optic']],
'dirs': ['lib/pkgconfig'],
}

moduleclass = 'chem'
57 changes: 57 additions & 0 deletions easybuild/easyconfigs/a/ALAMODE/ALAMODE-1.4.2-foss-2022b.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# with thanks to ComputeCanada for the initial easyconfig for 1.0.2-iomkl-2017.5.211.eb
# updated for 1.4.2 by BEAR Software team at University of Birmingham
easyblock = "CMakeMakeCp"

name = 'ALAMODE'
version = '1.4.2'

homepage = 'http://alamode.readthedocs.io/en/latest/index.html'
description = """ALAMODE is an open source software designed for analyzing lattice anharmonicity
and lattice thermal conductivity of solids. By using an external DFT package such as VASP and
Quantum ESPRESSO, you can extract harmonic and anharmonic force constants straightforwardly with ALAMODE.
Using the calculated anharmonic force constants, you can also estimate lattice thermal conductivity,
phonon linewidth, and other anharmonic phonon properties from first principles.
"""

toolchain = {'name': 'foss', 'version': '2022b'}
toolchainopts = {'usempi': True, 'pic': True}

source_urls = ['https://github.com/ttadano/alamode/archive/']
sources = ['v.%(version)s.tar.gz']
checksums = ['18fb80a183c2a9b68488aeeccd6efa95e8c21d4cb21b08319a557389d55c067a']

builddependencies = [
('binutils', '2.39'),
('CMake', '3.24.3'),
]

dependencies = [
('Boost', '1.81.0'),
('Eigen', '3.4.0'),
('spglib', '2.0.2'),
('FFTW', '3.3.10'),
('HDF5', '1.14.0'),
('Python', '3.10.8'),
]

configopts = ' '.join([
"-DWITH_HDF5_SUPPORT=yes",
"-DUSE_MKL_FFT=no",
"-DSPGLIB_ROOT=$EBROOTSPGLIB"
])

local_binary_files = [
"alm/alm", "anphon/anphon", "tools/analyze_phonons", "tools/dfc2", "tools/fc_virtual",
"tools/parse_fcsxml", "tools/qe2alm", "tools/analyze_phonons.py", "tools/displace.py", "tools/extract.py",
"tools/GenDisplacement.py", "tools/makedisp_qe.py", "tools/plotband.py", "tools/plotdos.py",
"tools/scph_to_qefc.py",
]

files_to_copy = [([x for x in local_binary_files], 'bin'), 'docs', 'example']

sanity_check_paths = {
'files': ['bin/alm'],
'dirs': ["docs", "example"]
}

moduleclass = 'chem'
37 changes: 37 additions & 0 deletions easybuild/easyconfigs/a/AMD-uProf/AMD-uProf-4.1.424.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
##
# Author: Robert Mijakovic <[email protected]>
##
easyblock = 'Binary'

name = 'AMD-uProf'
version = '4.1.424'

homepage = 'https://developer.amd.com/amd-uprof/'
description = """AMD uProf is a performance analysis tool for applications running on Windows, Linux & FreeBSD
operating systems. It allows developers to better understand the runtime performance of their application and
to identify ways to improve its performance."""

download_instructions = """The sources can be obtained after signing a EULA aggreement
(https://www.amd.com/en/developer/uprof.html#downloads)."""

toolchain = SYSTEM

source_urls = ['https://developer.amd.com/wordpress/media/files/']
sources = ['AMDuProf_Linux_x64_%(version)s.tar.bz2']
checksums = ['ec8e9eef26f3c8f53e05c4b97e5f292afb14a9ad379c76cb98d2b2419496626c']

extract_sources = True

sanity_check_paths = {
'files': ['include/AMDTPowerProfileApi.h', 'lib/x64/libAMDProfileController.a',
'bin/libAMDThreadProfileAPI.%s' % SHLIB_EXT, 'bin/AMDuProf'],
'dirs': ['Examples']
}

sanity_check_commands = ['AMDuProfCLI info --system']

modextrapaths = {
'LD_LIBRARY_PATH': 'bin'
}

moduleclass = 'perf'
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
easyblock = 'MakeCp'
name = 'AMRFinderPlus'
version = '3.11.18'

homepage = 'https://github.com/ncbi/amr'
description = """This software and the accompanying database are designed to find acquired antimicrobial
resistance genes and some point mutations in protein or assembled nucleotide sequences."""

toolchain = {'name': 'gompi', 'version': '2021b'}

github_account = 'ncbi'
source_urls = ['https://github.com/ncbi/amr/archive/']
sources = ['amrfinder_v%(version)s.tar.gz']
checksums = ['fef7740edf1c9548b5581141c4a254d12904e2cc7ed3d5ae4ad2ad645365aaaf']

dependencies = [
('BLAST+', '2.12.0'),
('HMMER', '3.3.2'),
('cURL', '7.78.0')
]

# Binaries are installed to the root of the installation, so add that root to the PATH:
modextrapaths = {'PATH': ''}

# a list of binary files that will be produced
local_binaries = ['amr_report', 'amrfinder', 'amrfinder_update', 'dna_mutation', 'fasta2parts', 'fasta_check',
'fasta_extract', 'gff_check']

files_to_copy = local_binaries

sanity_check_paths = {
'files': local_binaries,
'dirs': [],
}

sanity_check_commands = [
('amrfinder', '-h')
]

moduleclass = 'bio'
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
easyblock = 'MakeCp'
name = 'AMRFinderPlus'
version = '3.11.18'

homepage = 'https://github.com/ncbi/amr'
description = """This software and the accompanying database are designed to find acquired antimicrobial
resistance genes and some point mutations in protein or assembled nucleotide sequences."""

toolchain = {'name': 'gompi', 'version': '2022b'}

github_account = 'ncbi'
source_urls = ['https://github.com/ncbi/amr/archive/']
sources = ['amrfinder_v%(version)s.tar.gz']
checksums = ['fef7740edf1c9548b5581141c4a254d12904e2cc7ed3d5ae4ad2ad645365aaaf']

dependencies = [
('BLAST+', '2.14.0'),
('HMMER', '3.3.2'),
('cURL', '7.86.0')
]

# Binaries are installed to the root of the installation, so add that root to the PATH:
modextrapaths = {'PATH': ''}

# a list of binary files that will be produced
local_binaries = ['amr_report', 'amrfinder', 'amrfinder_update', 'dna_mutation', 'fasta2parts', 'fasta_check',
'fasta_extract', 'gff_check']

files_to_copy = local_binaries

sanity_check_paths = {
'files': local_binaries,
'dirs': [],
}

sanity_check_commands = [
('amrfinder', '-h')
]

moduleclass = 'bio'
24 changes: 24 additions & 0 deletions easybuild/easyconfigs/a/AOCC/AOCC-4.0.0-GCCcore-12.3.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name = 'AOCC'
version = '4.0.0'

homepage = 'https://developer.amd.com/amd-aocc/'
description = "AMD Optimized C/C++ & Fortran compilers (AOCC) based on LLVM 13.0"

# Clang also depends on libstdc++ during runtime, but this dependency is
# already specified as the toolchain.
toolchain = {'name': 'GCCcore', 'version': '12.3.0'}

source_urls = ['https://download.amd.com/developer/eula/aocc-compiler/']
sources = ['aocc-compiler-%(version)s.tar']
checksums = ['2729ec524cbc927618e479994330eeb72df5947e90cfcc49434009eee29bf7d4']

clangversion = '14.0.6'

dependencies = [
('binutils', '2.40'),
('ncurses', '6.4'),
('zlib', '1.2.13'),
('libxml2', '2.11.4'),
]

moduleclass = 'compiler'
Loading

0 comments on commit 3495f18

Please sign in to comment.