EasyBuild v4.2.0 Release Notes
Release Date: 2020-04-14 // about 4 years ago-
🚀 EasyBuild v4.2.0 is primarily a feature/update release, but also includes various bug fixes.
🚀 Highlights of the changes in this release include:
⚡️ (experimental) support for
--try-update-deps
, to upgrade dependencies based on available easyconfigs;👀 a locking mechanism to prevent two simultaneous installations of the same easyconfig file to the same installation path (see https://easybuild.readthedocs.io/en/latest/Locks.html for more information);
significant speedup for
-D
/--dry-run
by avoiding useless 'module show
' calls;✅ support for creating an index & using it to speed up searching for easyconfigs (see https://easybuild.readthedocs.io/en/latest/Easyconfigs_index.html for more information);
➕ additional GitHub integration features:
- support for targeting the easyblocks and framework repositories with
eb --new-pr
(via--pr-target-repo
) - support for including easyblocks from an (open) pull request via
--include-easyblocks-from-pr
- for more information, https://easybuild.readthedocs.io/en/latest/Integration_with_GitHub.html
📇 probing of external modules for missing metadata that is not provided via an external module metadata file (mostly relevant for integration with the Cray Programming Environment);
✅ leveraging the
archspec
Python library (if it is installed) to show the "code name" of the processor in your system in the output of "eb --show-system-info
" and in test reports uploaded to PRs via--upload-test-report
;👌 support for using templates like
%(cudaver)s
for the CUDA version (if it's included as direct dependency);🛠 fix for
UnicodeDecodeError
that was raised when reading a patch file that contained non-ASCII characters (if EasyBuild was being run with Python 3);🛠 fixed filtering of already installed extensions under
--skip
(mostly relevant for Python packages installed as bundles of extensions);🏗 also support
%(installdir)s
and%(builddir)s
templates for extensions;take into account toolchain hierarchy when dumping easyconfig files, to avoid hardcoded subtoolchains in '
*dependencies
' easyconfig parameters (relevant when using--try-*
options);take into account dependencies marked as external modules when composing template values like
%(pyver)s
;🚚 deprecate
rmtree2
function provided byeasybuild.tools.filetools
(theremove_dir
function should be used instead);7 new software-specific easyblocks: BerkeleyGW, CMake, ELSI, LAMMPS, libdrm, Mesa, SEPP;
⚡️ updates, enhancements & bug fixes for the
CMakeMake
,PythonPackage
andPythonBundle
generic easyblocks;⚡️ updates, enhancements & bug fixes in the software-specific easyblocks for Clang, Ferret, Hypre, impi, libxml2, MATLAB, numexpr, OpenBabel, OpenBLAS, OpenCV, OpenFOAM, ParMETIS, PETSc, Python, QuantumESPRESSO, Qt, ROOT, Siesta, tbb, TensorFlow, TensorRT, Trinity, VMD, XCrySDen;
➕ added support for no less than 114 (!) new software packages, incl. ADIOS, ArviZ, Bonito, ELSI, FuSeq, GraphMap2, LAMMPS, MedPy, motionSegmentation, OpenAI-Gym, PyMC3, PyRe, PyTorch-Geometric, RAxML-NG, Shapely, STEAK, UQTk, Zip, ...;
⚡️ updates for already supported software, incl. Arrow 0.16.0, BUSCO 4.0.5, Clang 10.0.0, ELPA 2019.11.001, Ferret 7.5.0, GCC(core) 9.3.0, GROMACS 2020, GTK+ 3.24.13, Hypre 2.18.2, IQ-TREE 1.6.12, Java 13(.0.2), LLVM 9.0.1 + 10.0.0, likwid 5.0.1, medaka 0.12.0, numba 0.47.0, Octave 5.1.0, OpenBLAS 0.3.8, OpenBabel 3.0.0, OpenCV 4.2.0, OpenFOAM-Extend 4.1-20191120, PETSc 3.12.4, PyTorch 1.4.0, Qhull 2019.1, QuantumESPRESSO 6.5, R-bundle-Bioconductor 3.10, Racon 1.4.10, ReFrame 2.21, SLEPc 3.12.2, SimpleElastix 1.1.0, SimpleITK 1.2.4, TensorFlow 1.15.2 + 2.0.1, Trinity 2.10.0, XGBoost 0.90, xarray 0.15.1, ...;
⚡️ update Java/1.8 wrapper to Java/1.8.0_241;
✨ enhanced Java/11 wrapper to support both x86_64 and POWER;
🛠 fixed source URL for ISL component in
GCCcore
easyconfigs;🛠 checksum fixes in easyconfigs for R 3.6.0 and 3.6.2;
⏪ revert removal of AVX512 vmovd with 64-bit operands in binutils 2.32 easyconfigs;
🛠 fixed packaging issue that resulted in CVS easyconfigs to be missing from EasyBuild releases;
⚡️ updated checksum/homepage in tbb easyconfigs after move to '
oneapi-src
' repository;⚡️ various additional updates, enhancements & bug fixes;
📦 This brings the total number of supported software packages to 1,912!
✅ An up-to-date list of supported software is available at https://easybuild.readthedocs.io/en/latest/version-specific/Supported_software.html .🚀 A detailed overview of all changes, which links to the respective pull requests, is available in the release notes at https://easybuild.readthedocs.io/en/latest/Release_notes.html#easybuild-v4-2-0-april-14th-2020 .
These changes result from various contributions, made by 26 different contributors:
- 🔀 56 merged pull requests for EasyBuild framework
- 🔀 63 merged pull requests for easyblocks
- 🔀 381 merged pull requests for easyconfigs
🚀 Thanks to everyone who contributed to this release in one way or another!
- support for targeting the easyblocks and framework repositories with