Skip to content

EasyBuild v4.8.1

Compare
Choose a tag to compare
@boegel boegel released this 11 Sep 17:58
· 13 commits to develop since this release
098117c

EasyBuild v4.8.1 is primarily a bugfix and update release, but it also includes various enhancements.

The executive summary for this release:

  • Support for various additional hooks that can be used to customize EasyBuild, including pre_run_shell_cmd_hook which allows tweaking shell commands right before they are run by EasyBuild;

  • 2 new custom easyblocks, for sympy and tensorflow-compression;

  • Easyconfigs for various recent software versions, including Clang 16.0.6, CP2K 2023.1, FFmpeg 6.0, GCC 13.2.0, OpenFOAM 11, Pillow 10.0.0, TensorFlow 2.13.0, ...;

  • Support for installing 83 new software applications and libraries;

Highlights for this release are listed below.
More details are available in the release notes which includes links to the respective pull requests for more detailed information.

Highlighted enhancements & updates

(enhancements or updates that (may) warrant updating existing installations are marked with (***))

  • support for additional hooks: pre_build_and_install_loop_hook + post_build_and_install_loop_hook, cancel_hook, fail_hook, pre_postiter_hook + post_postiter_hook, and pre_run_shell_cmd_hook + post_run_shell_cmd_hook; see https://docs.easybuild.io/hooks for more information;

  • add --silence-hook-trigger configuration option to suppress printing of a debug message every time a hook is triggered;

  • add support for using fine grained Github tokens;

  • add support for submodule filtering and specifying extra Git configuration in git_config;

  • new custom easyblocks for sympy and tensorflow-compression;

  • add options to MesonNinja generic easyblock to customize build_cmd, install_cmd, build_dir;

  • add support to PerlModule generic easyblock to customize prefix option used in installation command;

  • updates and enhancements to custom easyblocks for Clang, CP2K, CUDA, FreeSurfer, LLVM, Mesa, MXNet, OpenCV, OpenFOAM, PETSc, PyTorch, scipy, Score-P, TensorFlow;

  • (***) add extensions to recent versions of R (tabletools, flextables) and R-bundle-Bioconductor (UCell, decoupleR, RnBeads), use "eb --skip --rebuild" to install the missing extensions;

Prominent bug fixes & changes

(bug fixes or changes that (may) warrant reinstalling easyconfigs are marked with (***))

  • improve error reporting w.r.t. missing checksums;

  • (***) only add extensions in module file if there are extensions;

  • enhance PythonPackage easyblock to deal with posix_local installation scheme used by Python in recent Debian/Ubuntu versions;

  • (***) improve depot management in JuliaPackage easyblock;

  • (***) set $JULIA_DEPOT_PATH in Julia easyconfigs with default value;

  • bug fixes for various custom easyblocks, incl. imkl-FFTW, Java, (***) MATLAB, Mesa, OpenMPI, STAR-CCM+, TensorFlow;

  • (***) fix regression in GCC 12.1 + 12.2 with wrong warnings;

  • fix installation of Python bindings for recent Arrow easyconfigs;

  • (***) various additional patches for recent PyTorch versions to fix bugs and/or failing tests;

  • (***) additional bug fixes in easyconfigs for Abseil, at-spi2-core, Automake, FreeSurfer, jupyter-server, JupyterHub, LIBSVM, MPFR, RapidJSON, ScaLAPACK, tRNAscan-SE;

  • (***) update Java/11 wrapper to Java/11.0.20;

  • (***) use GCC/12.2.0 toolchain for GSL 2.7, remove easyconfig for GSL 2.7 with GCCcore/12.2.0;

  • (***) add patch for PMIx 4.x to use lchown so links are not followed;

  • (***) add hpctestlib to the $PYTHONPATH in ReFrame 4.2.0 easyconfig;

  • add alternative checksum for Extrae v4.0.4;

  • (***) disable wx support in gnuplot 5.4.6;

  • 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;

Supported software

Support for installing 83 new software packages has been added, including (but not limited to):

  • Ax
  • Boost.Python-NumPy
  • CatBoost
  • ChIPseeker
  • cryptography
  • GAPPadde
  • GenerativeModels
  • hatchling
  • IsoQuant
  • Jupyter-bundle
  • JupyterNoteboo
  • maturin
  • Mikado
  • NanoCaller
  • Omnipose
  • Optax
  • pv
  • Python-bundle-PyPI
  • Sabre
  • scib-metrics
  • scikit-plot
  • setuptools-rust
  • tensorflow-compression
  • torchvf
  • TXR
  • virtualenv

This brings the total number of supported software packages to 3,244 (excluding extensions)!
An up-to-date list of supported software is available here.

Various software updates have been added, including (but not limited to):

  • ABINIT 9.10.3
  • Arcade-Learning-Envionment 0.8.1
  • archspec 0.2.1
  • Bazel 6.3.1
  • BCFtools 1.18
  • BEDTools 2.31.0
  • Boost 1.82.0
  • CDO 2.2.2
  • Clang 16.0.6
  • CP2K 2023.1
  • CUDA 12.2.2
  • ecBuild 3.8.0
  • FFmpeg 6.0
  • FreeSurfer 7.4.1
  • GCC 13.2.0
  • GHC 9.2.2
  • gnuplot 5.4.8
  • GTK4 4.11.3
  • h5py 3.9.0
  • Horovod 0.28.1
  • Hypre 2.29.0
  • ImageMagick 7.1.1-15
  • magma 2.7.1
  • medaka 1.8.1 + 1.9.1
  • Mesa 23.1.4
  • MXNet 1.9.1
  • OpenAI-Gym 0.26.2
  • OpenCV 4.8.0
  • OpenFOAM 11
  • Pillow 10.0.0
  • PLUMED 2.9.0
  • pocl 4.0
  • QIIME2 2023.5.1
  • Qt5 5.15.10
  • QuantumESPRESSO 7.2
  • SAMtools 1.18
  • SciPy-bundle 2023.07
  • Score-P 8.1
  • sympy 1.12
  • SUNDIALS 6.6.0
  • TensorFlow 2.13.0
  • Valgrind 3.21.0
  • wxPython 4.2.1
  • zarr 2.16.0

These changes result from various contributions, made by 33 different contributors:

  • 25 merged pull requests for EasyBuild framework
  • 40 merged pull requests for easyblocks
  • 339 merged pull requests for easyconfigs

Thanks to everyone who contributed to this release in one way or another!

To upgrade to EasyBuild v4.8.1, there are several options.
Two particularly easy options include:

  • eb --install-latest-eb-release

  • eb --from-pr 18761 # use easyconfig from PR #18761