EasyBuild release notes

The latest version of EasyBuild provides support for building and installing 2,467 different software packages, including 36 different (compiler) toolchains. It contains 241 software-specific easyblocks and 37 generic easyblocks, alongside 13,265 easyconfig files.

EasyBuild v4.4.2 (September 7th 2021)

bugfix/update release

framework

  • various enhancements, including:
    • add per-extension timing in output produced by eb command (#3734)
    • add definition for new toolchain nvpsmpic (NVHPC + ParaStationMPI + CUDA) (#3736)
    • include list of missing libraries in warning about missing FFTW libraries in imkl toolchain component (#3776)
    • check for recursive symlinks by default before copying a folder (#3784)
    • add --filter-ecs configuration option to filter out easyconfigs from set of easyconfigs to install (#3796)
    • check type of source_tmpl value for extensions, ensure it’s a string value (not a list) (#3799)
    • also define $BLAS_SHARED_LIBS & co in build environment (analogous to $BLAS_STATIC_LIBS) (#3800)
    • report use of --ignore-test-failure in success message in output (#3806)
    • add get_cuda_cc_template_value method to EasyConfig class (#3807)
    • add support for fix_bash_shebang_for (#3808)
    • pick up $MODULES_CMD to facilitate using Environment Modules 4.x as modules tool (#3816)
    • use more sensible branch name for creating easyblocks PR with --new-pr (#3817)
  • various bug fixes, including:
    • remove Python 2.6 from list of supported Python versions in setup.py (#3767)
    • don’t add directory that doesn’t include any files to $PATH or $LD_LIBRARY_PATH (#3769)
    • make logdir writable also when --stop/--fetch is used and --read-only-installdir is enabled (#3771)
    • fix forgotten renaming of l to char in __init__.py that is created for included Python modules (#3773)
    • fix verify_imports by deleting all imported modules before re-importing them one by one (#3780)
    • fix ignore_test_failure not set for Extension instances (#3782)
    • update iompi toolchain to intel-compiler subtoolchain for oneAPI versions (>= iompi 2020.12) (#3785)
    • don’t parse patch files as easyconfigs when searching for where patch file is used (#3786)
    • make sure git clone with a tag argument actually downloads a tag (#3795)
    • fix CI by excluding GC3Pie 2.6.7 (which is broken with Python 2) and improve error reporting for option parsing (#3798)
    • correctly resolve templates for patches in extensions when uploading to GitHub (#3805)
    • add --easystack to ignored options when submitting job (#3813)
  • other changes:
    • speed up tests by caching checked paths in set_tmpdir + less test cases for test_compiler_dependent_optarch (#3802)
    • speed up set_parallel method in EasyBlock class (#3812)

easyblocks

  • 4 new software-specific easyblocks:
  • minor enhancements, including:
    • update ABAQUS easyblock to support installation of v2020 (#2034)
    • enable make check and sanity check exec for OpenMPI (#2444)
    • fixed sanity check for later versions of Molpro (#2499)
    • add Ampere to known GPU architectures for Kokkos in LAMMPS easyblock (#2510)
    • update sanity check in ESMF easyblock to take into account new binary names from version 8.1.0 onwards (#2512)
    • use report_test_failure in TensorFlow easyblock (#2519)
    • add support for imkl 2021.x in easyblocks for
    • add install_src option and enhance buildcmd option in PythonPackage easyblock (#2534)
    • make sure AOCC commands like clang/flang pick up GCCcore as GCC toolchain (#2538)
    • create CMakeConfig files for tbb >= 2020 (#2539)
    • find source dir for libunwind when building ldd for Clang versions >= 12.0.1 (#2540)
    • fix motorBike test in sanity check for OpenFOAM 9 (#2544)
    • generate and install pkg-config files for OpenSSL wrapper (#2549)
    • don’t run setup.py config for numpy >= 1.21, since it’s no longer supported (#2554)
    • update WIEN2k easyblock to handle new Intel versions, WIEN2k v21, Perl dependency, and tuning of dimension parameters (#2558)
    • remove PCRE from list of system libraries for TensorFlow 2.6.0 (#2559)
    • add support for also installing Tosca component in ABAQUS (#2560)
    • update ABAQUS easyblock to support installing of version 2021 with hot fixes (#2562)
    • update sanity check in VTune easyblock for 2021.x versions (#2563)
  • various bug fixes, including:
    • handle failure of running nvidia-smi in TensorFlow tests (#2506)
    • remove Python 2.6 from list of supported Python versions in setup.py (#2507)
    • clean up installation of Tkinter (#2509)
    • remove redundant $CPATH entry of tbb modules + fix --module-only (#2511)
    • honor --ignore-test-failure in PythonPackage (#2516)
    • use correct GTK+ version for OpenCV based on dependencies (#2520)
    • ensure Python prep is done in sanity check + support debug builds in TensorFlow easyblock (#2522)
    • correct cleanup of single-letter local variable in __init__ of easybuild.easyblocks (#2524)
    • reset runtest to None in CMakePythonPackage (#2536)
    • set $I_MPI_ROOT correctly for 2021.x in impi easyblock (#2537)
    • let Bundle easyblock pick up custom easyblock for components based on name if no easyblock is specified explicitly (#2543, #2547)
    • explicitly use only OpenBLAS for PyTorch if MKL is not used (#2448)
    • keep symlinks in cuDNN installations (#2550)
    • use ${BLAS,LAPACK}_SHARED_LIBS in GROMACS easyblock for FlexiBLAS-based toolchains (#2552)
    • copy the list to avoid changing the original lists in DEFAULT_TARGETS_MAP for Clang and LLVM (#2556)
    • fix pathsep join bug that breaks installation of CUDA versions < 10.1 if $PERL5LIB is defined (#2561)
  • other changes:
    • simplify Boost easyblock (#2513)
    • remove deprecated options from PythonPackage (#2535)

easyconfigs

  • added easyconfig for foss/2021.07 (candidate for foss/2021b) (#13788) and iomkl/2021a (#13521) toolchains
  • added example easyconfig files for 79 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • ABAQUS 2020.eb, ANTs 2.3.5, AOCC 3.1.0, Arb 2.19.0, archspec 0.1.2, Armadillo 10.5.3, ASE 3.22.0, Autotools 20210726, BamTools 2.5.2, bgen 4.1.3, Biopython 1.79, bitarray 1.5.3, Boost 1.76.0, Bowtie2 2.4.4, bpytop 1.0.67, Cartopy 0.19.0.post1, Centrifuge 1.0.4, Clang 12.0.1, CMake 3.21.1, CRISPResso2 2.2.1, CUDA 11.4.1, cuDNN 8.2.2.26, cURL 7.78.0, cutadapt 3.4, DIAMOND 2.0.11, DROP 1.1.0, Dsuite 20210718, dtcmp 1.1.2, ecCodes 2.22.1, Elk 7.2.42, ESMF 8.1.1, expat 2.4.1, fastq-tools 0.8.3, Fiona 1.8.20, FLINT 2.7.1, g2clib 1.6.3, g2lib 3.2.0, GCC(core) 11.2.0, GDCM 3.0.8, GDRCopy 2.3, GenomeTools 1.6.2, GffCompare 0.12.2, gffread 0.12.7, GLib 2.69.1, GMT 6.2.0, Go 1.16.6, GPAW 21.6.0, Gradle 6.9.1.eb, GROMACS 2021.3, HarfBuzz 2.8.2, HDF5 1.12.1, Horovod 0.22.1, hwloc 2.5.0, hypothesis 6.14.6, igraph 0.9.4, ImageMagick 7.1.0, IMOD 4.11.5, IPython 7.26.0, Java 16, Julia 1.6.2, JupyterHub 1.4.1, JupyterLab 3.1.6, Kent_tools 418, lavaan 0.6-9, libfabric 1.13.0, libffcall 2.4, libffi 3.4.2, libgeotiff 1.7.0, libRmath 4.1.0, LIBSVM 3.25, LibTIFF 4.3.0, likwid 5.2.0, LLVM 12.0.1, LMDB 0.9.29, magma 2.6.1, MariaDB 10.6.4, MATIO 1.5.21, matplotlib 3.4.2, MEGA 10.0.5, Mesa 21.1.7, Meson 0.59.1, Metal 2020-05-05, Mini-XML 3.2, molmod 1.4.8, MPICH 3.4.2, nanopolish 0.13.3, NCCL 2.10.3, ncdu 1.16, NCO 5.0.1, neptune-client 0.10.5, netcdf4-python 1.5.7, networkx 2.5.1, nodejs 14.17.6, NSPR 4.32, NSS 3.69, NVHPC 21.7, OpenBLAS 0.3.17, OpenEXR 3.1.1, OpenFOAM 9, OpenFOAM v2106, OpenMM 7.5.1, OpenMolcas 21.06, openpyxl 3.0.7, Pango 1.48.8, parallel 20210722, Paraver 4.9.2, ParaView 5.9.1, patchelf 0.13, PCRE2 10.37, PCRE 8.45, Perl 5.34.0, PETSc 3.15.1, petsc4py 3.15.0, Pillow 8.3.1, Pillow-SIMD 8.3.1, plotly.py 5.1.0, PLUMED 2.7.2, PMIx 4.1.0, poppler 21.06.1, PostgreSQL 13.3, preseq 3.1.2, pybind11 2.7.1, pyFFTW 0.12.0, PyGEOS 0.10.2, Pyomo 6.0.1, PyQt5 5.15.4, pyshp 2.1.3, Python 3.9.6, python-igraph 0.9.6, QTLtools 1.3.1, RAxML-NG 1.0.3, R-bundle-Bioconductor 3.13, re2c 2.2, ReFrame 3.8.0., RStudio-Server 1.4.1717, Rust 1.54.0, Scalasca 2.6, scVelo 0.2.3, Shapely 1.8a1, shrinkwrap 1.1.0, SLEPc 3.15.1, slepc4py 3.15.1, snakemake 6.6.1, snappy 1.1.9, snippy 4.6.0, snpEff 5.0e, SOCI 4.0.2, SpaceRanger 1.3.0, Spack 0.16.2, spatialreg 1.1-8, spglib-python 1.16.1, SQLite 3.36, STAR 2.7.9a, statsmodels 0.12.2, StringTie 2.1.7, Subread 2.0.3, SymEngine 0.7.0, TensorFlow 2.6.0, TetGen 1.6.0, Tkinter 3.9.6, torchtext 0.9.1, tqdm 4.61.2, UCX 1.11.0, UCX-CUDA 1.11.0, unrar 6.0.2, util-linux 2.37, VTune 2021.6.0, WIEN2k 21.1, WPS 4.2, WRF 4.3, X11 20210802, x264 20210613, xarray 0.19.0, XlsxWriter 1.4.4, XML-Parser 2.46, zstd 1.5.0
  • minor enhancements, including:
    • add extensions to recent R v4.x easyconfigs: PCAmatchR (#13448), hal9001 (#13451), cobalt (#13544), CBPS (#13549), SBdecomp (#13565), lwgeom (#13674), naturalsort (#13762), finalfit + gtsummary (#13766)
    • add VBZ compress capability to nanopolish 0.13.3 (for fast5 files) (#13536)
    • add CMake build dependency to easyconfig for tbb 2020.03 (#13704)
    • also build shared libs for MUMPS 5.3.5 (#13702) and 5.4.0 (#13705)
    • add dependency on pkg-config to OpenSSL wrappers (#13765)
  • various bug fixes, including:
    • fix LAMMPS 3Mar2020 easyconfigs using intel toolchain on AMD CPUs by patching out hardcoded -xHost (#11577)
    • fix sanity check error for OpenCV v4.5.1 by adding (and using) freetype and HarfBuzz dependencies (#12517)
    • add patches for TensorFlow 1.13.1 to fix installation (#13326)
    • remove Python 2.6 from list of supported Python versions in setup.py (#13349)
    • switch back to Bundle easyblock for PyQt5 5.15.1 + add back source URLs for components (#13371)
    • add pkg-config build dependency for GDAL 3.2.1 (#13383, #13808), Rust (#13538), GenomeTools (#13805), x264 (#13834)
    • add missing Python 3 build dependency for Rust v1.52.1 (#13399)
    • fix order of cffi extension in old Python easyconfigs (#13400)
    • patch out __asm__ use in ctffind to avoid build failure on ppc64le (#13409)
    • disable building man pages in Gdk-Pixbuf (#13410)
    • add missing Bio-Search-hmmer dependency for prokka (#13419)
    • avoid downloading old numpy version during install for h5py (#13428)
    • add patch for Qt5 5.8.0 to fix compilation failure in webkit (#13434)
    • avoid downloading and building freetype and qhull for matplotlib 3.4.2 (#13437)
    • fix order of components in recent GTK+ easyconfigs to avoid dependency on system GTK+ in GTK+ themes (#13449)
    • fix Python 2.7.13 easyconfigs by adding missing extensions (#13456)
    • add TensorFlow patch to fix crash on shutdown (#13462)
    • allow for non-x86_64 in postinstallcmds for CuPy (#13501)
    • disable default EULA acceptance in easyconfig for NVHPC v21.5 (#13516)
    • fix error with p7zip’s 7z command not finding 7z.dll (#13542)
    • patch MaxBin2 Perl script to use provided Perl dependency (#13551)
    • add missing zlib dependency to libarchive (#13579)
    • fix pkgconfig version in patch for bzip 1.0.8 (+ add easyconfig with GCCcore/11.2.0 toolchain) (#13581)
    • fix build of DIRAC 19.0 easyconfig with high compiler optimizations (#13613)
    • fix source URLs and add alternative checksum for Hypre 2.15.1 (since it moved to a different GitHub repo) (#13616)
    • add new source URL for Mesa easyconfigs using 2017b toolchain (#13617)
    • avoid MPICXX dependency in SimpleElastics ITK (#13623)
    • add upstream patch for GCC 9.x, 10.x, 11.x to avoid spurious FPE on avx512 (affects UCX) (#13628)
    • add patch for ctffind 4.1.14 to declare functions without return as void (fixes segfault) (#13665)
    • enable EGL in recent libepoxy ECs (#13684)
    • remove unused buildcmd from libgpuarray easyconfigs (#13720)
    • add patch to fix building Qt5.10.1 against newer glibc (#13730)
    • add Python 3 as a builddependency to recent fontconfig easyconfigs (#13731)
    • update source_URL in BLAST 2.2.26 easyconfig (#13732)
    • restore error message on failing easyconfigs test suite, required by bot to determine end of output of test suite (#13745, #13770)
    • add Perl build dependency to recent Clang easyconfigs (#13746)
    • disable using system Valgrind in the json-c tests (#13750)
    • use Archive source URL for spatstat.geom extension in Seurat (#13761)
    • add ld.gold relocts patch to binutils 2.30 (#13785)
    • add missing Python + Zip build dependencies for old Bazel versions used as build dep for TensorFlow 1.12.0 + 1.13.1 (#13786)
    • add alternative checksum for AFNI 18.3.00 (#13790)
    • update tensorflow-probability easyconfigs to include --release flag in installopts (#13810)
    • fix source URL for DB 18.1.32 (#13813)
    • add missing cppy build dependency for matplotlib 3.4.2 (#13823)
    • disable bash completion in recent x264 easyconfigs (#13834)
    • add Perl as build dependency for ELPA 2021.05.001 + patch to fix hardcoded /usr/bin/perl (#13835)
    • add archive source URL to Spark 3.x easyconfigs to fix broken download (#13842)
    • fix PCRE dependency for GDAL 3.2.1 and 3.3.0, don’t use PCRE2 (#13861)
    • add Perl build dependency for HMMER 3.3.2 + patch to ensure it is used (#13870)
    • stick to intel-compilers toolchain for DFT-D3 v3.2.0 (#13878)
    • add missing flex build dependency for leidenalg (#13884)
    • update CMake build dependency for Eigen 3.3.4 + 3.3.5 (#13889)
    • fix source URL for Yasm 1.3.0 (+ add missing checksum) (#13901)
    • update to more recent Meson build dependency for GCCcore/8.3.0 easyconfigs to fix failing RPATH sanity check (#13910)
    • fix shebang for RepeatMasker 4.1.2-p1 Perl script (#13911)
  • other changes:
    • use custom ORCA easyblock in easyconfigs for ORCA v4.x (#13348)
    • move archived easyconfig files to correct __archive__ folder (#13422)
    • rename NINJA to TWL-NINJA to avoid nameclash (#13529)
    • remove superfluous configopts and add sanity checks/checksums in CLHEP easyconfigs (#13614)
    • remove superfluous -DCMAKE_BUILD_TYPE configuration option in Arrow easyconfigs (#13615)
    • switch ITK easyconfigs to CMakePythonPackage easyblock, also enable -DITK_USE_SYSTEM_HDF5 configuration option, fix download URLs (#13619)
    • use build_type instead of -DCMAKE_BUILD_TYPE=RELEASE in configopts in MMseqs2 easyconfigs (#13620)
    • avoid using system GTK+3 and remove -DCMAKE_BUILD_TYPE=RELEASE configure option in OpenCV easyconfigs (#13621)
    • remove -DCMAKE_BUILD_TYPE=RELEASE configure option and add checksums in LLVM easyconfigs (#13624)
    • create libtinfo symlinks in easyconfigs for ncurses with system toolchain (#13658), 6.1 (#13661) and 6.2 (#13660)
    • increase test timeouts for PyTorch 1.8.1 and 1.9.0 (#13700)
    • rename CUDAcore to CUDA for v11.3.1 and v11.4.1 after merging foss/fosscuda, to ensure that get_software_root('CUDA') used in easyblocks works (#13874)
    • use CUDA instead of CUDAcore in recent NVHPC comments (#13875)

EasyBuild v4.4.1 (July 6th 2021)

bugfix/update release

framework

  • various enhancements, including:
    • enhance detection of patch files supplied to eb command with better error messages (#3709)
    • add per-step timing information (#3716)
    • add module-write hook (#3728)
    • add ignore-test-failure configuration option to ignore failing test step (#3732)
    • add toolchain definition for nvompic (NVHPC + OpenMPI) (#3735)
    • warn about generic milestone in --review-pr and --merge-pr (#3751)
  • various bug fixes, including:
    • don’t override COMPILER_MODULE_NAME, inherited from Ffmpi, in Fujitsu toolchain definition (#3721)
    • avoid overwriting pr_nr in post_pr_test_report for reports with --include-easyblocks-from-pr (#3724, #3726)
    • fix crash in get_config_dict when copying modules that were imported in easyconfig file (like import os) (#3729)
    • parse C standard flags in CFLAGS for Fujitsu compiler (#3731)
    • fix error message for --use-ccache (#3733)
    • error out when passing a list to run_cmd* to avoid running wrong command unintended, unless shell=True is used (#3737)
    • minor fixes to output of test reports when using multiple PRs (#3741)
    • fix location for modules installed with intel-compilers toolchain in HierarchicalMNS by always checking toolchain compiler name against template map (#3745)
    • avoid checking msg attribute of GitCommandError (#3756)
    • consider sources provided as dict in EasyBlock.check_checksums_for (#3758)
    • don’t make changes to software installation directory when using --sanity-check-only (#3761)
    • honor specified easyblock for extensions (#3762)
  • other changes:
    • make sure that tests requiring a github token have github in the test name so that they can be easily filtered (#3730)
    • deprecate EasyBuild bootstrap script (#3742)
    • use temporary download folder in test_http_header_fields_urlpat (#3755)

easyblocks

  • 5 new software-specific easyblocks:
  • minor enhancements, including:
    • enhance Amber easyblock to support installing Amber via CMake (#2445)
    • enhance ConfigureMake generic easyblock to add support for building multiple build targets (#2449, #2479, #2480)
    • enhance sanity check for Clang to verify if CUDA offload library was produced (#2454)
    • update custom easyblock for Boost to always build single and multi threaded versions (#2456)
    • enhance sitecustomize.py in Python easyblock to support overriding core Python packages, and allowing overriding in virtualenv (#2458, #2483)
    • update CMakeMake to handle old and new Boost/Boost.Python builds using custom easyblock for Boost (#2461)
    • add file prefix option to XALT easyblock (#2463)
    • enhance Java easyblock to define %(jdkarch)s template (#2472)
    • adjust Perl easyblock to only check for a man subdirectory if groff is a dependency (#2474)
    • support arbitrary version strings in OpenSSL wrapper and add minimum_openssl_version option (#2475)
    • enhance Python easyblock to explicitly disable installing core-pip when install_pip is not True (#2476)
    • enhance intel-compiler easyblock to include multipath include dir in $CPATH (#2477)
    • enhance Hypre easyblock to enable CUDA support (#2482)
    • update Xmipp easyblock for new version (v3.20.07) (#2486)
    • enhance FFTW easyblock to skip tests if --mpi-tests EasyBuild configuration option is disabled (#2490)
    • use PYPI_SOURCE as the default for source_urls of extensions of Python easyconfigs (#2493)
  • various bug fixes, including:
    • only use siterc fix for NVHPC < 21.3 (#2453)
    • fix CPU-only runtime for dpcpp-generated executables in custom easyblock for intel-compilers (#2457)
    • always add distinct_host_configuration=false to build command for TensorFlow (#2459)
    • disable installation of bundled BioPerl and HTSLib if they are dependencies of VEP (#2468)
    • don’t use list value for command to detect installed Python packages in TensorFlow easyblock (#2469)
    • change Bundle easyblock to also collect altroot and altversion in the module step so they are set when running --module-only (#2485)
    • always strip output from gcc -print-multiarch in intel-compilers easyblock (#2489)
    • don’t overwrite all of exts_default_options in TensorFlow easyblock (#2494)
    • enhance GCC easyblock to make sure that system GCC provides LTO support, and disable LTO when building MPFR if not (#2498)
    • rework the dependency handling of OpenMPI to use explicit configure options to disable features if required dependency is not provided (#2500, #2501)

easyconfigs

  • added example easyconfig files for 39 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • Amber 20.11, BBMap 38.90, Beast 2.6.4, BLIS 3.0 (AMDo fork), Bonito 0.4.0, CellRanger-ARC 2.0.0, CellRanger-ATAC 2.0.0, Check 0.15.2, CubeGUI 4.6, CubeLib 4.6, CubeWriter 4.6, cuDNN 8.2.1.32, CVXOPT 1.2.6, DOLFIN 2019.1.0.post0, eggnog-mapper 2.1.4, ELPA 2021.05.001, FDS 6.7.6, FFC 2019.1.0.post0, FFmpeg 4.3.2, FIAT 2019.1.0, flatbuffers 2.0.0, flatbuffers-python 2.0, FLTK 1.3.6, gc 8.0.4, GCC 8.4.0 + 9.4.0, GDAL 3.3.0, Gdk-Pixbuf 2.42.6, geopy 2.1.0, Ghostscript 9.54.0, git 2.32.0, GitPython 3.1.18, GLFW 3.3.4, gmsh 4.8.4, gnuplot 5.4.2, GnuTLS 3.7.2, Go 1.16.5, GObject-Introspection 1.68.0, gperftools 2.9.1, GraphicsMagick 1.3.36, Graphviz 2.47.2, GSL 2.7, GTK+ 2.24.33, Guile 2.2.7, h5py 3.2.1, HarfBuzz 2.8.1, Horovod 0.22.0, Hypre 2.21.0, ICU 69.1, ImageMagick 7.0.11-14, IOR 3.3.0, IPython 7.25.0, IRkernel 1.2, ispc 1.16.0, JupyterLab 3.0.16, LDC 1.26.0, libcerf 1.17, libepoxy 1.5.8, libgd 2.3.1, libStatGen 1.0.15, libxc 5.1.5, LittleCMS 2.12, LMfit 1.0.2, Lua 5.4.3, M4 1.4.19, MCR R2021a.3, medaka 1.4.3, Mercurial 5.8, minimap2 2.20, MMseqs2 13, MrBayes 3.2.7, MUMPS 5.4.0, NCCL 2.9.9, netCDF 4.8.0, Nim 1.4.8, nodejs 14.17.0, Nsight-Compute 2021.2.0, numba 0.53.1, NVHPC 21.5.eb, nvtop 1.2.1, Octave 6.2.0, OPARI2 2.0.6, openkim-models 20210128, OpenMPI 4.0.6, OTF2 2.3, p11-kit 0.24.0, Pango 1.48.5, parallel 20210622, petsc4py 3.12.0, picard 2.25.5, Pillow 8.2.0, PROJ 8.0.1, protobuf 3.17.3, protobuf-python 3.17.3, PSolver 1.8.3, PySCF 1.7.6, pyspoa 0.0.8, pytest-xdist 2.3.0, PyTorch 1.9.0, PyYAML 5.4.1, Qhull 2020.2, Quandl 3.6.1, R 4.0.5 + R 4.1.0, Ragout 2.3, RE2 2021-06-01, ReFrame 3.6.2, RepeatMasker 4.1.2, rgdal 1.5-23, RMBlast 2.11.0, Ruby 3.0.1, scikit-learn 0.24.2, Score-P 7.0, Seurat 4.0.3, slepc4py 3.12.0, spoa 4.0.7, Subread 2.0.2, Subversion 1.14.1, SuiteSparse 5.10.1, sympy 1.8, tensorboardX 2.2, TensorFlow 2.5.0, Tk 8.6.11, tmux 3.2a, torchtext 0.8.1, torchvision 0.9.1, UDUNITS 2.2.28, UFL 2019.1.0, utf8proc 2.6.1, VEP 103.1, VMD 1.9.4a51, vsc-mympirun 5.2.6, XCFun 2.1.1, Xvfb 1.20.11, Z3 4.8.11, ZeroMQ 4.3.4
  • minor enhancements, including:
    • update cuDNN 8.0.x easyconfigs with a download location (#12368)
    • add extensions to recent R easyconfigs: GxEScanR (#13039), cSEM (#13208), cubelyr + broom.mixed (#13252), grf (#13261), twang + xgboost (#13284), neuralnet (#13330)
    • add check to easyconfigs test suite to ensure OpenSSL wrapper is used in easyconfigs using a recent toolchain (#13079)
    • add gipaw to QuantumESPRESSO/6.7 (#13087)
    • add checksum for aarch64 installation file for CUDAcore easyconfigs (#13014, #13097)
    • add Perl dependency to makeinfo easyconfigs (#13166)
    • set minimal OpenSSL version to 1.1.1 for OpenSSL v1.1 wrapper (#13188)
    • add JIT support for CUDA 11 to PyTorch 1.7.1 (#13207)
    • add ninja --version as sanity check command in Ninja easyconfigs (#13222)
    • code cleanup + improvements for easyconfigs test suite (#13257)
  • various bug fixes, including:
    • download sources via git for XGBoost 20171120 easyconfig due to use of submodules (#6880)
    • add elfutils as build dependency for Clang 8.0.x and 9.0.1 (#13015) and Clang 11.0.1 (#13008) easyconfigs that have a CUDA dependency
    • add missing CMake option to Geant4 v10.7.1 in order to actually use external CLHEP (#13019)
    • add new checksum for mvabund extension to R v4.0.4 eaysconfigs (#13020, #13021)
    • add patch to fix numpy test_ccompiler_opt in SciPy-bundle v2021.05 (#13042)
    • add patch to fix installation of HDF 4.2.15 on aarch64 (#13059)
    • make sure that MbedTLS’ Makefile uses python rather than python2 (#13061)
    • fix checksum for snpEff 5.0 (#13062)
    • fix source URL for LIBSVM 3.24 by downloading from GitHub (#13076)
    • add preinstallopts for minimap2 to fix installation on aarch64 (#13080)
    • add patch for GCC 10.2.0 to fix internal compiler error on aarch64 (#13086)
    • switch to NCCL 2.8.3 built from source for CuPy, Horovod, libgpuarray, PyTorch and TensorFlow using fosscuda/2020b (#13103)
    • add astor to dependencies of TensorFlow with 2019b (#13111) and 2020b (#13103, #13112) toolchains
    • break cyclic dependency between groff, makeinfo and Perl by adding Perl-minimal and makeinfo-minimal easyconfigs (#13163 - #13165)
    • add missing rgdal dep to R-INLA (#13179)
    • add patch to fix uniq operation in TensorFlow 2.4.1 (#13181)
    • add Perl build dependency for PnetCDF 1.12.1 (#13183)
    • disable own avx detection of libfabric v1.12.1 (#13215)
    • add GCCcore-[1-9][0-9].x to test_dep_versions_per_toolchain_generation (#13243, #13249, #13251)
    • add patch to fix installation of TensorFlow 2.0.x (#13248)
    • add patch for recent GCCcore versions to fix compatibility with CUDA 11 (#13290)
    • fix install step for glew (#13297)
    • update Boost 1.74.0 easyconfigs to use tagged_layout rather than boost_multi_thread (#13300)
    • avoid using PMIx from system instead of PMIx dependency specified via --with-pmix for OpenMPI 4.x (#13307)
    • add patch for GCCcore 10.3.0 to prevent issues when compiling with nvcc (#13310)
    • add patch for OpenMPI 4.0.x to fix building against (system) UCX version > 1.7 (#13329)
    • fix build of manta 1.6.0 on top of Boost 1.74.0 (#13338)
    • fix recent taxator-tk easyconfigs by adding (back) -DBoost_NO_BOOST_CMAKE=ON configure option (#13342)
  • other changes:
    • disable debuginfod for elfutils to minimize required dependencies (#13034)
    • add bare Python 3.9.5 easyconfig and use that as builddep for LLVM 11.1.0 (#13035)
    • remove misleading comment from Python >= 3.7 easyconfigs, libffi is now also required for Python itself (no longer bundled) (#13041)
    • use new custom easyblock in torchvision easyconfigs (#13102)
    • remove superfluous TensorFlow patch (#13223)
    • cleanup of easyconfigs for (bundles) of Python packages: remove default PYPI_SOURCE source URLs + use PythonBundle rather than Bundle easyblock (#13253, #13295, #13336)
    • update README with instructions for MATLAB easyconfigs (#12597)

EasyBuild v4.4.0 (June 2nd 2021)

feature release

framework

  • various enhancements, including:
    • enhance apply_regex_substitutions to allow specifying action to take in case there are no matches (#3440)
    • performance improvements for easyconfig parsing and eb startup (#3555)
    • add support for downloading easyconfigs from multiple PRs with --from-pr (#3605, #3707, #3708)
    • add support for prepending custom library paths in RPATH section via --rpath-override-dirs (#3650)
    • allow amending easyconfig parameters which are not the default (#3651)
    • update HierarchicalMNS for Intel OneAPI compilers (#3653)
    • add support for --sanity-check-only (#3655)
    • add support for running commands asynchronously via run_cmd + complete_cmd functions (#3656)
    • add support for using oneAPI versions of ‘intel’ toolchain components (#3665)
    • add toolchain definition for gofbf (foss with FlexiBLAS rather than OpenBLAS) (#3666)
    • add support for using ARCH constant in easyconfig files (#3670)
    • honor keyboard interrupt in eb command (#3674)
    • add toolchain definition for Fujitsu toolchain (#3677, #3704, #3712, #3713, #3714, #3717)
    • extend sanity check step to check whether specific libraries are not linked into installed binaries/libraries (#3678)
      • via banned-linked-shared-libs and required-linked-shared-libs EasyBuild configuration options
      • via banned_linked_shared_libs and required_linked_shared_libs methods in toolchain support
      • via banned_linked_shared_libs and required_linked_shared_libs methods in easyblock
      • via banned_linked_shared_libs and required_linked_shared_libs easyconfig parameters
    • add locate_solib function to locate Linux shared libraries (#3682)
    • add system agnostic function to locate shared libraries (#3683)
    • add update_build_option function to update specific build options after initializing the EasyBuild configuration (#3684)
    • allow opting out of recursively unloaded of modules via recursive_module_unload easyconfig parameter (#3689)
    • check for correct version values when parsing easystack file (#3693)
    • run post-install commands specified for a specific extension (#3696)
    • add support for --skip-extensions (#3702)
    • include PR title in output produced by --merge-pr (#3706)
  • various bug fixes, including:
    • avoid metadata greedy behaviour when probing for external module metadata (mostly relevant for integration with Cray Programming Environment) (#3559)
    • catch problems early on if --github-user is not specified for --new-pr & co (#3644)
    • re-enable write permissions when installing with read-only-installdir (#3649)
    • also run sanity check for extensions when using --module-only (#3655)
    • improve logging when failing to load class from exts_classmap (#3657)
    • fix use of --module-only on existing installations without write permissions (#3659)
    • correct help text for subdir-user-modules (#3660)
    • avoid picking up easyblocks outside of sandbox in framework tests (#3680)
    • use unload/load in ModuleGeneratorLua.swap_module, since swap is not supported by Lmod (#3685)
    • update HierarchicalMNS to also return ‘Toolchain/<name>/<version>’ as $MODULEPATH extension for cpe* Cray toolchains (#3686)
    • make EasyConfigParser.get_config_dict return a copy rather than a reference (#3692)
    • make sure that $TAPE is unset when using piped tar (#3698)
    • fix extending message for changed files in new_pr_from_branch (#3699)
    • enhance sched_getaffinity function to avoid early crash when counting available cores on systems with more than 1024 cores (#3701)
    • correctly strip extension from filename in extract_cmd and back_up_file functions (#3705)
  • other changes:
    • deprecate adding a non-existing path to $MODULEPATH (#3637)
    • bump cryptography requirement from 3.2.1 to 3.3.2 (#3643, #3648)
    • test bootstrap script in separate workflow, and limit test configurations a bit (#3646)
    • update setup.py to indicate compatibility with Python 3.8 and 3.9 (#3647)
    • replace log_error parameter of which() by on_error (#3661, #3664)
    • don’t skip sanity check for --module-only --rebuild (#3645)
    • move disable_templating function into the EasyConfig class (#3668)
    • pin GitPython version for Python<3.6, don’t test bootstrap script against Python 3.8/3.9 (#3675)
    • tweak foss toolchain definition to switch from OpenBLAS to FlexiBLAS in foss/2021a (#3679)
    • suggest missing SSH key when not able to read from remote repository in --check-github (#3681)
    • drop support for Python 2.6 (#3715)

easyblocks

  • 3 new software-specific easyblocks:
    • FlexiBLAS (#2369, #2422, #2424, #2426)
    • dm-reverb (#2413)
    • custom easyblock to install OpenSSL wrapper for OpenSSL installed in OS, with fallback to build and install OpenSSL from source if not available in OS (#2429)
  • minor enhancements, including:
    • also add -pthread to prebuildopts of cryptography (#2270)
    • don’t unpack Python wheel (*.whl) files by default in generic PythonPackage easyblock (#2366, #2442)
    • enable installation of samples for CUDA > 10.1 (#2374)
    • add option to disable pip connecting to PyPi (enable use of --no-index) (#2390)
    • update MotionCor2 easyblock to handle new version and be aware of CUDAcore (#2394)
    • make it possible to force disabling kernel features in Qt easyblock (#2403)
    • update imkl easyblock to support oneAPI versions (>= 2021.x) (#2407)
    • add``”gurobi_cl –help`` as default sanity check command for Gurobi (#2411)
    • enhance BWA easyblock to copy includes and libraries (#2417)
    • allow default versions to be defined by ModuleRC easyblock (#2418)
    • enhance MesonNinja and CMakeMake easyblocks to create unused build dir when separate_build_dir is set (#2419)
    • enable sanity_pip_check by default for Python easyconfigs if pip >= 9.0 will be installed (#2423)
    • enhance FFTW easyblock to support SVE CPU feature and building with Fujitsu compiler (#2425)
    • make ScaLAPACK easyblock aware of FlexiBLAS (#2427)
    • update imkl easyblock to unpack example tarballs and set $MKL_EXAMPLES (+ some code cleanup) (#2430)
    • update list of system libs for TensorFlow 2.5 (#2432)
    • allow disabling MPI tests when installing Intel MPI (impi) via --disable-mpi-tests (#2440)
    • exclude bottleneck tests in PyTorch (#2450)
  • various bug fixes, including:
    • ensure lib subdirectory is found in stage 2 of GCC installation + fall back to lib64 (#2339)
    • fix permission on MATLAB installer config file so it can be written to (#2385)
    • fix problem with installing older CUDA versions that uses the Perl based installer (#2387)
    • enhance Python easyblock: add option to install pip with core Python, tweak defaults, create unversioned pip symlink (#2388)
    • fix installopts before installing the extension in GROMACS easyblock (#2391)
    • updated numpy easyblock to use read_file for patch (#2395)
    • use explicit build toolset and compiler path in Boost easyblock (#2402)
    • replace hardcoded 2021.1.1 with self.version in impi easyblock (#2405)
    • set $SANDCASTLE when running PyTorch tests to disable some tests as-if we are on Facebook’s CI (#2412)
    • make GROMACS easyblock work with --module-only (#2414)
    • make sure OpenFOAM sanity checks don’t require builddir write permissions (#2415)
    • make Tkinter easyblock work with --module-only (#2416)
    • also disable altivec with FFTW 3.3.9 on POWER (#2437)
    • make sure that self.python_cmd is set before using it in PythonPackage.sanity_check_step (#2447)
  • other changes, including:
    • update setup.py to indicate compatibility with Python 3.8 and 3.9 (#2384)
    • use on_error rather than deprecated log_error named argument for which function (#2406)
    • remove cuda_compute_capabilities from custom easyconfig parameters for Clang, LAMMPS and TensorFlow (now supported as general easyconfig parameter) (#2433)

easyconfigs

  • added easyconfigs for new Fujitsu toolchain: FCC/4.5.0 (#12999, #12995, #13007), ffmpi/4.5.0 (#13000) and Fujitsu/21.05 (#13001, #13007)
  • add easyconfigs for updates of common toolchains: foss/2021a (#12867, #12975), intel/2021a (#12885, #12975)
  • added easyconfig for gomkl/2021a toolchain (#12987)
  • added example easyconfig files for 58 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • ABINIT 9.4.1, apex 20210420, astropy 4.2.1, binutils 2.36.1, BLIS 0.8.1, Bonito 0.3.8, BUSCO 5.1.2, canu 2.1.1, carputils 20210513, CastXML 0.4.3, ccache 4.2.1, CDO 1.9.10, CIRCexplorer2 2.3.8, CLHEP 2.4.4.0, CMake 3.20.1, CNVkit 0.9.8, CUDA(core) 11.3.0, CuPy 8.5.0, cURL 7.76.0, DFA 2.1.2, Doxygen 1.9.1, Eigen 3.3.9, FastANI 1.33, FFTW 3.3.9, GATK 4.2.0.0, GCC 10.3.0 + 11.1.0, GDB 10.2, gdc-client 1.6.0, GDRCopy 2.2, Geant4 10.7.1, Geant4-data 20210510, GeneMark-ET 4.65, glew 2.2.0, GLib 2.68.2, GLPK 5.0, GMP 6.2.1, Go 1.16.3, Graphviz 2.47.0, GROMACS 2021.2, GStreamer 1.18.4, GTDB-Tk 1.5.0, Gurobi 9.1.2, HMMER 3.3.2, Horovod 0.21.3, hwloc 2.4.1, hypothesis 6.13.1, IGV 2.9.4, impi 2021.2.0, imkl 2021.2.0, intel-compilers 2021.2.0, JasPer 2.0.28, Julia 1.6.1, Kraken2 2.1.1, KronaTools 2.8, libarchive 3.5.1, libdeflate 1.7, libdrm 2.4.106, libfabric 1.12.1, libreadline 8.1, libRmath 4.0.0, libsndfile 1.0.31, LIBSVM 3.24, LibTIFF 4.2.0, libunwind 1.5.0, libwebp 1.2.0, LLVM 11.1.0, LMDB 0.9.28, LUMPY 0.3.1, lz4 1.9.3, Mako 1.1.4, MATLAB 2021a, Mesa 21.1.1, meshalyzer 2.2, Meson 0.58.0, MetaBAT 2.15, metaWRAP 1.3, minimap2 2.18, Molden 6.8, MotionCor2 1.4.2, ncview 2.1.8, NetPIPE 5.1.4, nettle 3.7.2, NiBabel 3.2.1, Nilearn 0.7.1, Nim 1.4.6, Ninja 1.10.2, NLopt 2.7.0, NSS 3.65, numactl 2.0.14, NWChem 7.0.2, OpenBLAS 0.3.15, openCARP 6.0, OpenEXR 3.0.1, OpenMM 7.5.0, OpenMPI 4.1.1, OpenSSL 1.1 (wrapper), OSU-Micro-Benchmarks 5.7.1, Pandoc 2.13, parallel 20210322, parasail 2.4.3, PAUP 4.0a168, PCRE2 10.36, Perl 5.32.1, pigz 2.6, PMIx 3.2.3, Primer3 2.5.0, PRSice 2.3.3, py-aiger 6.1.14, pybind11 2.6.2, PyCharm 2021.1.1, pydot 1.4.2, pyproj 3.0.1, PySAT 0.1.7.dev1, PyTorch 1.8.1, python-parasail 1.2.4, Pylint 2.7.4, Python 3.9.5, Qt5 5.15.2, R-keras 2.4.0, rasterio 1.2.3, RAxML-NG 1.0.2, rclone 1.54.1, re2c 2.1.1, ReFrame 3.5.2, Rmath 4.0.4, Rust 1.52.1, Sambamba 0.8.0, samblaster 0.1.26, samclip 0.4.0, scikit-allel 1.3.2, SciPy-bundle 2021.05, SCons 4.1.0.post1, snakemake 6.1.0, SQLite 3.35.4, SRPRISM 3.1.2, Tcl 8.6.11, TCLAP 1.2.4, tmux 3.2, tqdm 4.60.0, UCX 1.10.0, Valgrind 3.17.0, WannierTools 2.5.1, wget 1.21.1, wxWidgets 3.1.4, X11 20210518, x264 20210414, x265 3.5, xorg-macros 1.19.3, YAXT 0.9.0, zarr 2.8.1, zstd 1.4.9
  • minor enhancements, including:
    • add additional extensions to R v4.0.3 and v4.0.4: miceadds, visdat, UpSetR, naniar, stringdist, image.binarization (#12735), lassosum (#12821), lslx, regsem, semPLS (#13005)
    • add GenABEL to R-bundle-Bioconductor (#12822)
  • various bug fixes, including:
    • disable automatic acceptance of NVHPC EULA (#12014)
    • enhance RStudio-Server, add patch to inherit environment variables, add sanity check commands to verify installation (#12544)
    • add fix to scipy to handle NaN arguments to vi function (#12551)
    • copy all binaries + examples & co for PAML v4.9j (#12567)
    • add patch to fix hardcoded num_cores in DMCfun extension included with R 4.0.x (#12583)
    • backport Charm++ patch for NAMD/2.14 on intel/2020a to handle newer glibc (#12594)
    • add setuptools_scm and pytest-runner extensions to Pylint easyconfigs (#12599)
    • fix typo in Delly easyconfig to actually do parallel build (#12633)
    • fix potential memory leak in OpenBLAS 0.3.12 (#12649)
    • consistently use pip to install Python packages in recent Python easyconfigs (#12650)
    • replace bintray source url for Groovy (#12652)
    • add missing Python & Perl dependencies to AUGUSTUS v3.4.0 with foss/2020b (#12662)
    • fix wget dependency: use libidn2 rather than libidn (#12670)
    • fix source URLs for recent ELPA versions (#12700)
    • override host compiler check in CUDAcore (#12701)
    • add Python build dependency to libpsl 0.21.0 easyconfigs (#12715)
    • fix error in libgpg-error 1.36 with gawk builtin (#12716)
    • add libtool build dependency to leidenalg (#12741)
    • fix source URLs for Boost 1.71.0 - 1.74.0 easyconfigs (#12743) and Boost.Python (#12744)
    • add patches for PyTorch 1.7.1 avoiding failures on POWER and A100 (#12753)
    • add patch for OpenPGM 5.2.122 eaysconfigs to fix non-existent directory in *.pc (pkgconfig) file (#12774)
    • add missing Perl build dependency to recent wget easyconfigs (#12787)
    • make sure Python dependency is used in preCICE 2.x easyconfigs (#12793)
    • don’t skip source step in FastTree easyconfigs + fix SHA256 checksum for FastTree 2.1.11 (#12794)
    • add patch for rhdf5filters extension in Bioconductor 3.12 bundle to fix installation on aarch64 (#12836)
    • add IceLake detection to OpenBLAS 0.3.12 and 0.3.15 (#12865)
    • fix checksum for MaxBin 2.2.7 (#12869)
    • run make clean before building FragGeneScan, to clean up object files included in source tarball (#12870)
    • clean up install of KronaTools (#12871)
    • add UCX dependency to OneAPI versions of impi (#12873)
    • correct description in libdeflate easyconfig (#12886)
    • override Makefile with hardcoded CC=cc in UnZip easyconfigs (#12887)
    • fix compatibility of FLAIR v1.5.1-20200630 with rpy2 v3.x (#12899)
    • fix test step for libxc 4.3.4 and 5.1.x when using RPATH linking (#12912)
    • fix source URLs in BLAST 2.10.x easyconfigs (#12914)
    • add missing xproto build dependency to imake easyconfig (#12930)
    • add patch to fix GCC 10.2.0 rejecting valid code on PPC (#12948)
    • in easyconfig tests, check version of dependencies named Python, not if dependencies with certain versions are named Python (#12962)
    • update easyconfigs for binutils 2.35 to use binutils 2.35.2 source tarball instead to pick up bug fixes (#12967, #12988)
    • fix download URL for DB 18.1.40 (#12974)
    • fix test failure in TensorFlow 2.4.1 on recent CUDA drivers (#12979)
    • fix error in configopts for netCDF and HDF5 and add missing dependencies of ABINIT 9.x (#12981)
    • add patch to fix buffer overflow in OpenMPI 4.1.x (#12983)
  • other changes:
    • update setup.py to indicate compatibility with Python 3.8 and 3.9 (#12565)
    • add -Java versionsuffix for Hadoop easyconfig using GCCcore/10.2.0 toolchain, since it depends on Java 1.8 (#12709)
    • remove unnecessary workaround for missing version of OpenDataCube and Spyder for 2020+ toolchains (#12757)
    • remove unpack_sources = False from recent easyconfigs that use a *.whl file as source (#12783)
    • whitelist Seaborn 0.10.1 for NanoComp 1.13.1 and NanoPlot 1.33.0 (#12790)
    • add check to make sure that source step is not being skipped (#12807)
    • use EasyConfig.disable_templating method in test suite (#12848)
    • disable usNIC by default in libfabric to avoid problems due to linking to both libnl and libnl-3 (#12854)
    • use OpenSSL wrapper as dependency in easyconfigs using GCCcore/10.3.0 toolchain (#12922, #12944)
    • dump easyconfig before initializing easyblock in order to compare it with original easyconfig (#12925)
    • remove postinstallcmds from imkl 2020.x easyconfigs, easyblock now installs examples (#12937)

EasyBuild v4.3.4 (Apr 9th 2021)

bugfix/update release

framework

  • various enhancements, including:
    • add support for filtering dependencies by using False as version (#3506)
    • add create_unused_dir function to create a directory which does not yet exist (#3551)
    • avoid running expensive module use and module unuse commands when using Lmod as modules tool, update $MODULEPATH directly instead (#3557, #3633)
    • create CUDA cache (for JIT compiled PTX code) in build dir instead of $HOME (#3569)
    • add “Citing” section to module files (#3596)
    • add support for using fallback arch=* key in dependency version specified as arch->version mapping (#3600)
    • also check for pending change requests and mergeable_state in check_pr_eligible_to_merge (#3604)
    • ignore undismissed changes requested review if there is an approved review by the same user (#3607, #3608)
    • sort output of eb --search in natural order (respecting numbers) (#3609)
    • enhance eb command to ensure that easybuild.main can be imported before settling on python* command to use (#3610)
    • add --env-for-shebang configuration option to define the env command to use for shebangs (#3613)
    • add templates for architecture independent Python wheels (#3618)
    • mention easyblocks PR in gist when uploading test report for it + fix clean_gists.py script (#3622)
    • also accept regular expression value for --accept-eula-for (#3630)
    • update validate_github_token function to accept GitHub token in new format (#3632)
  • various bug fixes, including:
    • fix $BLAS_LIB_MT for OpenBLAS, ensure -lpthread is included (#3584)
    • use --opt=val for passing settings from config file to option parser to avoid error for values starting with - or -- (#3594)
    • avoid raised exception when getting output from interactive command in run_cmd_qa (#3599)
    • add option to write file from file-like object and use in download_file (#3614)
    • make sure that path to eb is always found by tests (#3617)
  • other changes:
    • add pick_default_branch function to clean up duplicate code in tools/github.py (#3592)
    • refactor the CI configuration to use inclusion instead of exclusion (#3616)
    • use develop branch when testing push access in --check-github (#3629)
    • deprecate --accept-eula, rename to --accept-eula-for (#3630)

easyblocks

  • minor enhancements, including:
    • make OpenCV easyblock aware of protobuf, libwebp and OpenEXR dependencies provided via EasyBuild (#2346)
    • update CP2K easyblock w.r.t. running regtest for CP2K v8.1 (#2350)
    • update GROMACS easyblock for GROMACS/2021 with CUDA (#2353)
    • adjust call to python-config for Python >= 3.8 in VMD easyblock (#2355)
    • enhance cuDNN and CUDA easyblocks to support aarch64 (#2356)
    • pass down compiler flags provided by EasyBuild in g2clib easyblock (#2357)
    • update VTune easyblock for version 2020 (#2359)
    • make WRF and WPS easyblocks aware of (pre)configopts (#2361)
    • add Clang version 12.0.0 for AOCC 3.0.0 to mapping in custom easyblock for AOCC (#2362)
    • use PYPI_SOURCE as the default for source_urls of PythonPackage (#2364, #2370)
    • enhance PythonPackage easyblock to catch faulty version (0.0.0) for installed Python packages (#2367, #2377)
    • enhance BWA easyblock: pass compiler flags + use filetools functions (#2368)
  • various bug fixes, including:
    • set $R_LIBS_SITE rather than $R_LIBS when installing R packages (#2326)
    • update PETSc easyblock to take into account that ScaLAPACK installation may not have header files + fix building in parallel (#2348)
    • disable CMake user package repository in CMakeMake generic easyblock (#2351)
    • update LAPACK easyblock to keep control of compiler options for versions >= 3.9.0 (#2358)
    • also set $TORCH_CUDA_ARCH_LIST for PyTorch tests (#2363)
    • enhance Hadoop easyblock to avoid copying same native library twice (#2371)
    • fix pip extension download pattern for PythonPackage easyblock (#2372)
    • make the CUDA stub libs take preference over system libs when linking (#2373)
    • improve Python package version check and add unversioned_packages easyconfig parameter (#2377)

easyconfigs

  • added easyconfig for goblf/2020b toolchain (#12381, #12535)
  • added example easyconfig files for 41 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • AOCC 3.0.0, Arriba 2.1.0, ArviZ 0.11.1, arpack-ng 3.8.0 BCFtools 1.12, BEDTools 2.30.0, BUSCO 5.0.0, BioPerl 1.7.8, Blosc 1.21.0, Boost.Python 1.74.0, bitarray 1.2.1, bokeh 2.2.3, CP2K 8.1, CUDAcore 11.2.2, CellRanger 6.0.0, Clang 11.0.1, DIAMOND 2.0.7, Delly 0.8.7, dask 2021.2.0, dm-tree 0.1.5, Elk 7.0.12, Extrae 3.8.0, FLUENT 2021R1, FabIO 0.11.0, Fiji 20201104, Flye 2.8.3, FreeSurfer 7.1.1, GDAL 3.2.1, GEOS 3.9.1, GLFW 3.3.3, GMAP-GSNAP 2020-12-17, GROMACS 2021, GetOrganelle 1.7.4, gmsh 4.7.1, HTSeq 0.11.3, HTSlib 1.12, Hypre 2.20.0, hyperopt 0.2.5, iVar 1.3.1, igraph 0.9.1, Jansson 2.13.1, Kent_tools 411, LAPACK 3.9.1, LAST 1179, LibSoup 2.72.0, libxc 5.1.3, MAFFT 7.475, MCR R2020a.6 + R2020b.5 + R2021a.0.eb, MDTraj 1.9.5, MUMPS 5.3.5, MaSuRCA 4.0.1, Mercurial 5.7.1, Monocle3 0.2.3, NGS 2.10.9, NVHPC 21.2, NetLogo 6.2.0, Nextflow 21.03.0, ncbi-vdb 2.10.9, OSU-Micro-Benchmarks 5.7, OpenCV 4.5.1, OpenEXR 2.5.5, OptiX 7.2.0, PETSc 3.14.4, PLUMED 2.7.0, PROJ 7.2.1, PyAMG 4.0.0, PyCUDA 2020.1, PyCairo 1.20.0, PyOpenCL 2021.1.2, PyTorch-Geometric 1.6.3, p7zip 17.03, pFUnit 4.2.0, picard 2.25.1, pocl 1.6, preCICE 2.2.0, protobuf 2.5.0, pymatgen 2022.0.4, python-igraph 0.9.0, Qtconsole 5.0.2, R 4.0.4, RASPA2 2.0.41, RDFlib 5.0.0, ReFrame 3.5.1, Ruby 2.7.2, rnaQUAST 2.2.0, SAMtools 1.12, SDL2 2.0.14, SIMPLE 3.0.0, SPAdes 3.15.2, SUNDIALS 5.7.0, Seurat 4.0.1, Spark 3.1.1, scikit-image 0.18.1, silx 0.14.0, spglib 1.16.1, sympy 1.7.1, tensorboardX 2.1, tensorflow-probability 0.12.1, tmux 3.1c, USEARCH 11.0.667, VTK 9.0.1, VTune 2020_update3
  • minor enhancements, including:
    • verify checksum of all patch files in easyconfigs test suite (#12221)
    • add libwebp and OpenEXR dependencies for OpenCV 4.2.0 easyconfig with foss/2020a (#12227)
    • add sanity check commands for vorbis-tools (#12304)
    • add extensions to R-bundle-Bioconductor 3.12: motifmatchr (#12390), OUTRIDER + FRASER (#12510)
    • add DMCfun extension for R v4.0.3 + v4.0.4 (#12409)
  • various bug fixes, including:
    • add missing GNU time dependency to WRF 4.0.2 built with foss/2018b (#12179)
    • add archive source_urls for Hadoop and Spark (#12220)
    • add missing Python build dep for SeqAn 2.4.0 (#12222)
    • add missing pkg-config build dependency to VCFtools 0.1.16 (#12245), GObject-Introspection-1.64.0 (#12298), libsndfile (#12303)
    • set $HTSLIB_DIR in HTSlib for use by EnsEMBLCoreAPI & Bio-DB-HTS (#12253)
    • bump JasPer version to latest 2.0.24 for 2020b generation of easyconfigs + remove easyconfigs for ancient JasPer 2.0.1.4 with GCCcore/10.2.0 (#12277, #12288)
    • bump pip to 20.3.4 in Python 2.7.18 easyconfig to fix unicode error (#12293)
    • skip sanity check test in IPython-7.18.1-GCCcore-10.2.0.eb (#12294)
    • add missing Perl and Autotools build dependencies in recent WRF easyconfigs (#12301)
    • add missing groff build dependency for Perl 5.30.0 and 5.32.0 (#12307)
    • add linkcomm + rnetcarto extensions to R v4.0.3 (#12311)
    • add dependency on Flask in all ASE v3.21.1 easyconfigs (#12312)
    • remove hard-coded -xHost from MMseqs2-11-e1a1c (#12317)
    • revised outdated easyconfigs for libcerf + replaced obsolete homepages and source urls (#12323)
    • consistently include new_archive source URL in Qt5 easyconfigs + add missing checksums (#12325, #12426)
    • fix source URL and add alternate checksum for Hypre 2.14.0 (#12337)
    • add patch for recent netCDF easyconfigs to fix MPI_Info_f2c issue with OpenMPI (#12340)
    • add SourceForge fallback source URL for recent freetype easyconfigs (#12341)
    • revert to Seaborn 0.10.1 as dependency for NanoPlot 1.33.0 (#12345)
    • use -D_USE_METIS_5p1 in OpenSees v3.2.0 patch to correctly build on top of METIS v5.1.0 (#12403)
    • make sure that path to eb is always found by tests (#12436)
    • stop tests changing the EasyBuild easyconfigs (#12454)
    • use pip to install pkgconfig 1.5.1 (#12455)
    • add CI test checking if the Python default source_urls are used and fix CI check where use_pip=False was ignored (#12456, #12471)
    • fix source URLs in Arrow 0.x easyconfigs (#12475)
    • fix numpy tests for recent SciPy-bundle easyconfig on POWER (#12481)
    • don’t download hwloc during FIRESTARTER build (#12482)
    • avoid 0.0.0 install version for various Python apps (#12519, #12522)
    • enable USER_SDPD package and disable building docs in LAMMPS 3Mar2020 (#12527)
    • update $R_LIBS_SITE rather than $R_LIBS in easyconfigs installing R packages (#12534)
    • add Python 3 build dep for HMMER 3.3.x test step (#12536)
  • other changes:
    • rename opencv_contrib and update to OpenCV v3.4.1 with contrib versionsuffix (#12229)
    • fix minor style issues in POV-Ray v3.7.0.8 easyconfigs (#12342)
    • enable -fPIC for g2clib (#12349)
    • consistently include Keras-Applications and Keras-Preprocessing extensions in Keras 2.3.1 easyconfigs (#12375)
    • remove PYPI_SOURCE source URL from easyconfigs using PythonPackage or PythonBundle (#12541, #12452, #12453)
    • require sanity_pip_check for all Python package/bundles (#12464)

EasyBuild v4.3.3 (Feb 23rd 2021)

bugfix/update release

framework

  • various enhancements, including:
    • advise PR labels in --review-pr and add support for --add-pr-labels (#3177)
    • add support for using customized HTTP headers in download_file (#3472, #3583)
    • also take toolchain dependencies into account when defining template values (#3541, #3560)
    • add support for --accept-eula configuration option + accept_eula easyconfig parameter (#3535, #3536, #3546)
    • detect SYSTEM toolchain as special case in easystack files (#3543)
    • enhance extract_cmd function to use cp -a for shell scripts (.sh) (#3545)
    • allow use of alternate envvar(s) to $HOME for user modules (#3558)
    • use https://sources.easybuild.io as fallback source URL (#3572, #3576)
    • add toolchain definition for iibff toolchain (#3574)
    • add %(cuda_cc_space_sep)s and %(cuda_cc_semicolon_sep)s templates (#3578)
    • add support for intel-compiler toolchain (>= 2021.x versions, oneAPI) (#3581, #3582)
  • various bug fixes, including:
    • add --init and --recursive options to git submodule update command that is used when creating source tarball for specific commit (#3537)
    • filter out duplicate paths in RPATH wrapper script (#3538)
    • don’t clean up imported modules after verifying imports of included Python modules (#3544)
    • avoid no-op changes to $LD_* environment variables in ModulesTool (#3553)
    • fix UTF-8 encoding errors when running EasyBuild with Python 3.0.x-3.6.x (#3565)
    • create lib64 symlink as a relative symlink (#3566)
    • don’t reuse variable name in the loop to fix adding extra compiler flags via toolchainopts (#3571)
    • symlink lib to lib64 if it doesn’t exist (#3580)
    • include %(mpi_cmd_prefix)s and %(cuda_*)s templates in output of --avail-easyconfig-templates (#3586)
  • other changes:
    • rename EasyBlock._skip_step to EasyBlock.skip_step, to make it part of the public API (#3561)
    • make symlinking of posix_c.so to posix.so in test suite configuration conditional (#3570)

easyblocks

  • 2 new software-specific easyblocks:
    • AOCC (#2295), Intel compilers (v2021.x, oneAPI) (#2305)
  • minor enhancements, including:
    • run motorBike tutorial case as sanity check for recent (community) OpenFOAM versions (#2201)
    • add foamMonitor to sanity checks of OpenFOAM (#2256)
    • create versioned symlinks for CMake commands + create symlink for cmake3 in PyTorch easyblock if cmake3 command is not found (#2259)
    • improve Bazel easyblock: add support for running tests, enable static linking, use build dir rather than tmpdir, verbose output (#2285)
    • add support for skipping steps in Python packages installed as extension + print progress on individual steps for installing Python packages as extensions (#2290)
    • update BerkeleyGW easyblock to support GCC 10 and fftlib (#2297)
    • update QuantumESPRESSO easyblock to support GCC 10 (#2298)
    • update Clang easyblock to add support for building extra tools + leveraging hwloc and Z3 as optional dependencies (#2310)
    • add support for running TensorFlow CPU and GPU tests (#2263, #2292, #2312)
    • update impi easyblock for impi 2021.x (oneAPI) (#2313)
    • update QuantumESPRESSO easyblock to handle v6.7 (#2319)
    • update OpenFOAM easyblock for changes in v2012 (#2321)
    • add sanity check commands to GCC (including LTO support) (#2322)
    • update FLUENT sanity check for v2021R1 (#2334)
  • various bug fixes, including:
    • filter out user packages in LAMMPS easyblock if corresponding dependency isn’t included + only set -DUSER-INTEL on x86_64 systems (#2254)
    • unify handling of pylibdirs and don’t add duplicated $PYTHONPATH in PythonBundle (#2281)
    • enhance Amber easyblock to fix running of update_amber script when python command is not available in OS (#2282)
    • guard module unload statements in modules for Cray* toolchains (#2286)
    • set $PYTHONNOUSERSITE in PythonBundle.extensions_step to avoid picking up on Python packages installed in $HOME (#2289)
    • create less temporary directories for TensorFlow by (only) using --output_user_root (#2293)
    • fix logic w.r.t. enabling Python support in PETSc (#2299)
    • make builddeps a list of names in SLEPc easyblock (#2300)
    • make builddeps a list of names in Trilinos easyblock (#2301)
    • make sure the installation of libiberty.a in the binutils easyblock goes into a populated directory (#2308)
    • fix for building GCC with --sysroot on ppc64le (#2315)
    • fix OpenFOAM sanity check on POWER (#2320)
    • use library search paths of compiler for RPATH when building binutils with system compiler + enhance sanity check by running --version for binutils commands (#2323, #2327)
    • pass $CXXFLAGS to PDT’s configure script via -useropt (#2324)
    • pass down compilation flags from build environment for ESMF (#2325)
    • update URLs for test data for WRF to https (#2335)
    • read MATLAB configuration file in binary mode to avoid UTF-8 encoding errors when using Python 3.6 (#2340)
    • fix Boost sanity check on POWER (#2291) and aarch64 (#2341)
  • other changes, including:
    • rework module-only tests to use unique software name (rather than ‘foo’) (#2287)
    • prefer default value for extra options in easyblock tests (#2280, #2302)
    • add check for accepted EULA in custom easyblock for NVHPC (#2311)
    • update optional feature support of TensorFlow (#2314)
    • make symlinking of posix_c.so to posix.so in test suite configuration conditional (#2330)

easyconfigs

  • add easyconfig for new iibff toolchain: iibff/2020b (#12185)
  • added easyconfigs for 6 new toolchains:
  • added example easyconfig files for 72 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • ack 3.4.0, AmberTools 20, AMD-LibM 3.6.0-4, AMD-RNG 2.2, AMD-SecureRNG 2.2, annovar 20191024, ASE 3.21.1, AUGUSTUS 3.4.0, Bazel 3.7.2, bcgTree 1.1.0, BLAST+ 2.11.0, Bonito 0.3.5, Bowtie2 2.4.2, causalml 0.8.0-20200909, CGAL 5.2, ConnectomeWorkbench 1.4.2, CUDAcore 11.2.1, cuDNN 8.0.5.39, dcm2niix 1.0.20201102, DendroPy 4.5.2, DIAMOND 0.9.36 + 2.0.6, ecCodes 2.20.0, ELPA 2020.11.001, Emacs 27.1, FusionCatcher 1.30, gensim 3.8.3, GHC 8.6.5, gnuplot 5.4.1, GPAW 21.1.0, Graphviz 2.44.1, GROMACS 2020.5, Gurobi 9.1.0, HH-suite 3.3.0, HMMER 3.3.2, HTSlib 1.11, Horovod 0.21.1, imbalanced-learn 0.7.0, impi 2021.1.1, inferCNV 1.3.3, ITK 5.1.2, IQ-TREE 2.1.2, JasPer 2.0.24, JUBE 2.4.1, libgit2 1.1.0, libzip 1.7.3, likwid 5.1.0, MariaDB 10.5.8, medaka 1.2.0, Meep 1.6.0, mkl-service 2.3.0, MPICH 3.3.2, muParser 2.3.2, NanoComp 1.13.1, NanoPlot 1.33.0, networkx 2.5, NLTK 3.5, numba 0.52.0, NVHPC 20.11, nvtop 1.1.0, OpenCoarrays 2.9.2, OpenFOAM v2012, OpenJPEG 2.4.0, OpenMPI 4.1.0, parasail 2.4.2, PLUMED 2.6.2, PostgreSQL 13.2, pydicom 2.1.2, PyMC3 3.11.0, python-parasail 1.2.2, PyTorch 1.7.1, QIIME2 2020.11, QuantumESPRESSO 6.7, QuickFF 2.2.7, R 4.0.3, R-bundle-Bioconductor 3.12, ReFrame 3.4.1, RMBlast 2.10.0, RSEM 1.3.3, Salmon 1.4.0, scikit-build 0.11.1, SciPy-bundle 2020.03 w/ Python 2.7.18, Seaborn 0.11.1, SEPP 4.4.0, SHAPEIT4 4.2.0, SpaceRanger 1.2.2, Stacks 2.54, STAR 2.7.7.a, statsmodels 0.12.1, SuiteSparse 5.8.1, tbb 2020.3, TensorFlow 1.15.5 + 2.4.1, Theano 1.1.2, torchvision 0.8.2, V8 3.4.0, Wannier90 3.1.0
  • minor enhancements, including:
    • enable building of QtWebEngine in Qt5 easyconfig using foss/2017b or intel/2017b (#7302)
    • enable NVPTX offload in GCCcore 9.3.0 easyconfig (#11839)
    • also build shared library in recent HDF easyconfigs (#11847)
    • add support for HDF4 to GDAL v3.0.2 and v3.0.4 (#11855)
    • add patch for magma 2.5.4 with fosscuda/2019b to allow any sm_* value to be passed via GPU_TARGET (#11861)
    • add missing M4 build dependency to recent SuiteSparse versions (#11869)
    • enable tests for most recent Bazel versions (3.x) (#11894)
    • enable gipaw in QuantumESPRESSO 6.6 easyconfig (#11905)
    • add RCAL + sensemakr extensions to R 4.0.0 (#11921)
    • add additional extensions to R v4.0.3 easyconfig (#11922, #12057)
    • improve sanity_check_paths for AMD-LibM (#11933)
    • symlink include/lib subdirs + enhance sanity_check_paths for AMD-RNG v2.2-4 (#11934)
    • improve sanity_check_paths for AMD-SecureRNG (#11935)
    • update Clang 10+ dependencies & build extra tools (#12013)
    • add Inline extension to recent Perl easyconfigs (5.30+) (#12029)
    • add EnsDb.Hsapiens.v86 to Bioconductor 3.11 (#12078)
    • add sanity check command for bam-readcount v0.8.0 to check --version output (#12092)
    • add EnsDb.Hsapiens.v75 + Signac extensions to R-bundle-Bioconductor 3.12 (#12174)
    • add tensorboard profile plugin to recent TensorFlow 2.x easyconfigs (#12136, #12137)
  • various bug fixes, including:
    • added missing space in configopts in ParaView 5.8.0 easyconfigs using 2020a toolchain (#10989)
    • use bfd linker for glibc 2.30 (#11331)
    • add missing moduleclass in UCLUST easyconfig (#11477)
    • don’t disable optarch for Clang 11.0.0 (#11814)
    • add patch to fix miscompilation bug on POWER for GCC 8.x and 9.x (#11837)
    • fix compilation of TensorFlow 2.3.1 with CUDA and glibc 2.26 on POWER (#11859)
    • disable building of manpages for GDCM to fix installation problem with docbook (#11866)
    • add patch for LLVM 6.0.0 to fix missing exported symbol LLVMInitializeInstCombine (#11873)
    • fix name of source file for GDRCopy v2.1 (#11887)
    • fix Tombo to work with rpy2 v3 when creating DataFrames (#11892)
    • fix GCCcore 8.1.0 w.r.t. removed sys/ustat.h in glibc 2.28 (#11896)
    • add git as a dependency to GitPython version 3.x (#11902)
    • fix undefined __ieee128 on ppc64le with glibc 2.26 for magma (#11930) and PyTorch (#11936)
    • update Hypre git location for PETSc 3.11.0 using downloaded dependencies (#11947)
    • fix source URL in expat easyconfigs (and consistently add custom sanity_check_paths) (#11960)
    • use libpng provided by EasyBuild in VTK to fix build issue on ppc64le (#11990)
    • add missing pkg-config build dependency for GObject-Introspection v1.66.1 (#11949)
    • add missing plotly-orca dependency for NanoPlot (#11967, #12015)
    • add patch for Boost 1.74.0 to fix missing include file (#12007)
    • fix for error: 'runtime_error' is not a member of 'std' in qtlocation for Qt5 v5.14.2 (#12012)
    • fix homepage for gnuplot 5.2.8, use http:// since homepage is not reachable via https:// (#12047)
    • fix OS dependencies for libfabric (#12058)
    • fix vector mul and div with broadcasts in -masm=intel mode in GCCcore v9.3.0 (#12065)
    • add missing ESMF dependency in NCO easyconfigs (#12071, #12072)
    • add patch to fix version for bam-readcount 0.8.0 (#12075)
    • add missing Perl build dep for (recent) libcerf versions, required for pod2html command (#12085)
    • add missing bzip2 dependency to recent ncbi-vdb easyconfigs (#12120)
    • add missing Perl build dependency for BLIS 0.8.0 (#12146)
    • use https://sources.easybuild.io as fallback source URL for UDUNITS (#12049, #12156, #12182)
    • correct the GCC version check to allow IBM VSX builds of GROMACS 2020.4 and 2020.5 (#12159)
    • add missing mkl-service dependency for Theano built with intel/2019b + enhance sanity check (#12172)
    • add patches to fix test problems with p4est 2.2 (#12028)
    • fix build of Bison using older system GCC (v4.x) (#12203)
    • fix lack of optimisation for SHAPEIT4 v4.1.3 (#12206)
    • add missing gnuplot dependency for OpenFOAM from v2.4.0 to v6 (#11801, #12208)
    • fix source URL for libspatialite (#12213)
    • add archive fallback source URL to MAGMA easyconfigs (#12214)
    • fix checksum for patch in make 4.2.1 easyconfig using GCC/7.3.0-2.30 (#12223)
  • other changes:
    • replace easyconfigs for bpp-core/bpp-phyl/bpp-seq v2.4.1 with a single easyconfig for BioPP v2.4.1 (using Bundle easyblock) (#11609)
    • add CESM-deps to whitelist in check for custom sanity_check_paths (#11916)
    • include ‘-4’ in version for AMD-SecureRNG v2.2-4 (#11934, #11935)
    • switch to using python-parasail and tqdm dependencies in Bonito easyconfigs (#11937)
    • rename orca to plotly-orca (#12015)
    • remove duplicate extensions in R 3.5.x easyconfigs, and add test to detect such issues (#12059)
    • remove Python dependency from ecCodes v2.17.0 since it doesn’t provide Python bindings (#12084)
    • update Java/1.8 wrapper to Java 1.8.0_281 (#11928, #12088)
    • update Bison (build) dependency for flex built with system compiler to v3.5.3 (#12111)
    • make symlinking of posix.so in test suite configuration conditional (#12123)
    • move make 4.3 easyconfigs to GCCcore toolchain (#12166)
    • move most recent BLIS and libFLAME easyconfigs from GCC to GCCcore (#12168)
    • rename SNAP to SNAP-HMM and update easyconfig (#12218)

EasyBuild v4.3.2 (December 10th 2020)

bugfix/update release

framework

  • add (experimental) support for specifying easyconfig files via an “easystack” file (#3479, #3511, #3515, #3517, #3520, #3521)
  • add definition for new gobff toolchain using BLIS and LibFLAME (#3505)
  • various enhancements, including:
    • add support for toolchain options like extra_cxxflags to specify extra compiler options (#2193)
    • fix combination of --copy-ec and --from-pr (#3482)
    • enhance copy_files function: support single file target, error on empty input list, support verbose mode (#3483)
    • cache result of fetch_files_from_pr function (mainly to speed up framework test suite) (#3484)
    • add locate_files function to filetools module (#3485)
    • add support for %(module_name)s template value (#3497)
    • clarify input format for --cuda-compute-capabilities in eb --help output (#3509)
    • add support for skipping unit tests (test step) via --skip-test-step (#3524)
  • various bug fixes, including:
    • also ignore vsc.* imports coming from from pkg_resources/__init__.py (setuptools) in fake vsc namespace (#3491)
    • don’t pass username in github_api_get_request when no GitHub token is available (#3494)
    • also inject -rpath options for all entries in $LIBRARY_PATH in RPATH wrappers (#3495)
    • avoid TypeError being raised by list_toolchains (#3499)
    • check if PR is already merged in --merge-pr (#3502)
    • graciously handle wrong PR id in fetch_pr_data (#3503)
    • fix regression in apply_regex_substitutions: also accept list of paths to patch (#3507)
    • update installation procedure for EasyBuild in generated Singularity container recipes (#3510)
    • fix GitHub Actions workflow for test suite: run outside of repo checkout + also test bootstrap script with Python 3.9 (#3518)
    • bump cryptography from 2.9.2 to 3.2 for Python 2 in requirements.txt (#3519)
    • fix eb --help=rst when running with Python 3 (#3525)
  • other changes:
    • exclude test configurations with Lmod 7 and Python 3, except for Python 3.6 (#3496)
    • significantly speed up parsing of easyconfig files by only extracting comments from an easyconfig file when they’re actually needed (#3498)
    • don’t include file/ldd/readelf commands run during RPATH sanity check in --trace output (#3508)

easyblocks

  • 2 new software-specific easyblocks:
  • minor enhancements, including:
    • add -fallow-argument-mismatch option when building CP2K 7.1 or older with GCC 10.x (#2223)
    • update TensorFlow easyblock for upcoming TensorFlow 2.4 (#2225)
    • add support for building Clang with OpenMP offload support (#2229)
    • enhance OpenMPI easyblock to catch any --with-ucx* configure options (#2230)
    • take into account preinstallopts and installopts in custom easyblock for NCL (#2234)
    • add support for withnvptx easyconfig parameter, to enable GPU offloading, in GCC easyblock (#2235)
    • take into account versions like 4.x in OpenFOAM easyblock (#2239)
    • also add bin subdir to $PATH when installing a Python package (#2244)
  • various bug fixes, including:
    • fix two bugs in GROMACS easyblock when using GCC & MKL for FFT and BLAS/LAPACK (#2212)
    • fix version check in Qt5 easyblock w.r.t. disabling features on old Linux kernel versions (#2220)
    • always define $FCCPP in QuantumESPRESSO easyblock (not just when using Intel compilers) (#2221)
    • allow wxPython to be installed as an extension (#2227, #2275)
    • only configure Python with --enable-optimizations when compiling Python with (recent) GCC compiler (#2228)
    • fix sanity check for Boost MT libraries (#2231)
    • fix hardcoded path in NVHPC easyblock to support multiple architectures (#2233)
    • fix CPASSERT test faults on RHEL8 in CP2K easyblock (#2236)
    • stop silently ignoring failing numpy tests, but include support for ignoring (failing) numpy tests (#2238, #2271)
    • append to module guesses in easyblocks for Chapel, icc, imkl and impi (rather than overwriting guesses from parent easyblock) (#2242)
    • weed out duplicates when determining paths to include-fixed subdirectory in GCC easyblock (#2245)
    • prepend all hardcoded /usr/* paths with sysroot in Python’s setup.py installation script (#2246)
    • don’t try to patch newer versions of Bazel where the patches won’t apply (#2249)
    • fix setting of $RUNPARALLEL in HDF5 easyblock (#2250)
    • move --build and --host logic to run_configure_cmd in GCC easyblock (#2252)
    • set $UCX_TLS in module for impi installation on top of UCX, and allow it to be overwritten in impi easyconfig file (#2253, #2258)
    • enhance PyTorch easyblock to ensure it finds MKL (via $MKLROOT) (#2257)
    • use integer division to determine number MPI ranks to use in WRF test step (#2266)
    • also specify locincpth and glibpth configure options for Perl based on --sysroot (#2268)
  • other changes, including:
    • add link to GCC mailing list thread confirming that binutils should not be configured with --with-sysroot=$EASYBUILD_SYSROOT when GCC is being configured like that (#2215)
    • pass paths to patch one by one to apply_regex_substitutions in GCC easyblock when --sysroot is set (#2217)
      • workaround for regression in apply_regex_substitutions introduced in EasyBuild v4.3.1 (which was fixed for v4.3.2)

easyconfigs

  • add easyconfigs for new gobff toolchain: gobff/2020.11 + gobff/2020.06-amd (#11761)
  • add easyconfigs for updates of common toolchains: foss/2020b, fosscuda/2020b, intel/2020b, intelcuda/2020b
  • added example easyconfig files for 41 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • BBMap 38.87, Boost 1.74.0, CUDA 11.1.1, CellRanger 5.0.0.eb, CheckM 1.1.3, Clang 11.0.0, cuDNN 8.0.4.30, DMTCP 2.6.0, FDS 6.7.5, FFmpeg 4.3.1, GROMACS 2020.4, Geant4 10.6.2, Ghostscript 9.53.3, GitPython 3.1.9, GlobalArrays 5.8, HDF5 1.10.7, h5py 3.1.0, hypothesis 5.41.5, JasPer 2.0.16, LittleCMS 2.11, libedit 20191231, libyaml 0.2.5, MPFR 4.1.0, magma 2.5.4, matplotlib 3.3.3, NCCL 2.8.3, NLopt 2.6.2, Nextflow 20.10.0, netCDF-Fortran 4.5.3, OpenBLAS 0.3.12, OpenMolcas 20.10, Pillow 8.0.1, PnetCDF 1.12.1, PyYAML 5.3.1, packmol 20.2.2, protobuf 3.14.0, psycopg2 2.8.6, pybind11 2.6.0, pycocotools 2.0.2, Qt5 5.14.2, RAxML-NG 1.0.1, RSeQC 4.0.0, rioxarray 0.1.1, SCOTCH 6.1.0, SciPy-bundle 2020.11, SentencePiece 0.1.94, StringTie 2.1.4, SuperLU 5.2.2, scikit-learn 0.23.2, snakemake 5.26.1, tqdm 4.51.0, vsc-mympirun 5.2.5, x264 20201026
  • minor enhancements, including:
    • add extension to R-bundle-Bioconductor 3.11: snpStats (#11586), SCANVIS (#11638)
    • add extensions to R 4.0.0: coloc, Exact, lmom, gld, DescTools (#11587); nlsem (#11733); mitools, survey, tableone, jstable (#11841)
    • add gxmapi extension (Python bindings) to GROMACS 2020.4 (#11640)
    • add missing extensions for QIIME2 to Perl 5.30.2 and 5.32.0 easyconfigs (#11654)
    • enable NVPTX offload support in GCCcore 10.2.0 easyconfig (#11720)
  • various bug fixes, including:
    • prevent Minimac4 easyconfig from downloading libStatGen from GitHub (#7982)
    • limit build parallelism for RAxML-NG to avoid build failure (#10363)
    • fix source_urls in Geant4 easyconfigs (#11596)
    • add alternate checksum for extensions in R easyconfigs: KernSmooth (#11600), codetools (#11616, #11736)
    • fix BBMap version check in FusionCatcher v1.20 (#11608)
    • add patch for TensorFlow 2.3.1 to fix installation on Arm64 (#11614)
    • add patch for GCCcore 10.2 to fix __has_include regression (#11627)
    • change default bitmaptype for IRkernel to cairo (#11645)
    • set $JUPYTER_PATH to make Jupyter find the ipywidgets extension in recent IPython easyconfigs (#11649)
    • add missing dependencies + fix moduleclass in CheckM easyconfigs (should be bio) (#11662)
    • use Python 2 build dep for nodejs 12.19.0 (#11679)
    • use correct OS deps in UCX (#11702)
    • in-place update to magma 2.5.4 for PyTorch 1.2.0 (#11723)
    • in-place update to magma 2.5.4 for PyTorch easyconfigs using fosscuda/2019b toolchain (#11726)
    • add missing Java dep to Prokka (#11732)
    • add patch to fix possible memory leak in OpenBLAS 0.3.3+ (#11745)
    • do not treat warnings as errors in Java v1.8_191-b26-OpenJDK (POWER) (#11755)
    • add missing PEAR dependency in easyconfig for GBprocesS v2.3 + enhance sanity check (#11767)
    • add missing gnuplot dependency in OpenFOAM easyconfigs (#11770, #11800)
    • consistently add Java as a dep for prokka 1.14.5 (#11782)
    • stick to http download URL in fetchMG easyconfig (https doesn’t work) (#11788)
  • other changes:
    • rename XCfun to XCFun (#11603)
    • rename ambiguous Ray easyconfigs to Ray-assembler and Ray-project (#11727)
    • change ‘rstudio’ name to ‘RStudio-Server’ to agree with official name and better reflect what it provides (#11764)
    • rename Sumo to SUMO for consistency (#11791)

EasyBuild v4.3.1 (October 29th 2020)

bugfix/update release

framework

  • various enhancements, including:
    • further GCC toolchain fixes for aarch64 (#3433)
    • take into account --include-easyblocks-from-pr when uploading test reports (#3446)
    • add path to pkg-config files in sysroot to $PKG_CONFIG_PATH when --sysroot is specified (#3451)
    • add support for NVHPC compiler + toolchain (based on PGI) (#3454)
    • check for _VERSION and _PREFIX Cray environment variables with both software and module name (#3460)
    • allow including easyblocks from multiple PRs (#3480, #3481)
  • various bug fixes, including:
    • avoid UnicodeDecodeError in apply_regex_substitutions when patching files that include non-UTF-8 characters (#3450)
    • avoid appending lib stubs pattern to RPATH filter over and over again (#3452)
    • fix missing string template on error for incorrect extension sources value (#3461)
    • fix compatibility with Python 3.9 by renaming fancy root logger (#3465)
    • also remove empty checksums list specified in easyconfig file when using --inject-checksums (#3466)
    • avoid confusing error log message when determining impi version while trying to define value for %(mpi_cmd_prefix)s template (#3474)
    • unset $LD_LIBRARY_PATH when checking for OS dependencies with rpm & co (#3477)
    • don’t change directory in download_repo function in tools.github (#3486)
    • take source_urls, checksums, patches into account when extension source is specified via sources (#3487)
  • other changes:
    • consider $EB_INSTALLPYTHON in eb command to specify python command to use for running EasyBuild (#3428)
    • use only the sub folder name for createSubmoduleDeps script (#3464)

easyblocks

  • 2 new software-specific easyblocks:
  • minor enhancements, including:
    • support having PyQt5 installed as part of Qt5 in QScintilla easyblock (#2040)
    • update TensorFlow easyblock to put Bazel build files in build directory + avoid unnecessary runtime patching (#2166)
    • update CBLAS easyblock for toolchains that include imkl (#2175)
    • add workaround for duplicate prefix path in Eigen CMake config (#2176)
    • enable CTEST_OUTPUT_ON_FAILURE for CMakeMake test step (#2181)
    • add XLA build support to TensorFlow easyblock (#2182)
    • also consider libfabric dep (--with-ofi) when setting default OpenMPI configure options (#2184)
    • make easyblock for installing CMake aware of --sysroot (#2187)
    • make OpenBLAS respect the parallelism set by easybuild (#2191)
    • handle option of building Michigan State University CCT3 & CCSD3A methods in GAMESS_US easyblock (#2194)
    • add support to RubyGem easyblock for installing zipped gems (#2203)
    • update ScaLAPACK easyblock to support installation with CMake for recent versions (>= v2.1.0) (#2205)
    • update Score-P easyblock to add support for NVHPC toolchain (#2206)
  • various bug fixes, including:
    • add torch/lib subdirectory in Python lib dir to $LD_LIBRARY_PATH for PyTorch installations (#2183)
    • update MUMmer easyblock to use apply_regex_substitutions and copy_file functions (#2185)
    • configure OpenMPI 4.x with --without-verbs when using UCX (#2188)
    • take into account that zlib may be listed in --filter-deps in custom easyblock for XML R package (#2189)
    • add sanity check commands to Clang easyblock and print warning for missing ncurses (#2193)
    • enhance OpenFOAM easyblock to add symlinks for libraries to ensure mpi versions have preference over dummy versions (#2196)
    • leverage installed OpenSSL/BoringSSL when cURL is used as a dependency for TensorFlow (#2197)
    • add -ffree-line-length-none to gfortran flags in Siesta easyblock (#2204)
    • respect --disable-mpi-tests in Siesta easyblock (#2207)
  • other changes, including:
    • set $EB_INSTALLPYTHON in module generated for EasyBuild rather than setting $EB_PYTHON, to allow overriding Python command to be used for running EasyBuild with $EB_PYTHON (#2109)
    • remove unused custom easyblock for DIRAC (#2192, #2198)

easyconfigs

  • added easyconfigs for 2 new toolchains:
  • added example easyconfig files for 75 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • ABINIT 9.2.1, ASE 3.20.1, Autotools 20200321, Bazel 3.6.0, Biopython 1.78, CCL 1.12, CMake 3.18.4, CUDA 11.0.2, cURL 7.72.0, deepdiff 5.0.2, fmt 7.0.3, GATK 4.1.8.1, GLib 2.66.1, GROMACS 2020.3, GTK+ 3.24.23, git 2.28.0, HMMER 3.3.1, Horovod 0.20.3, ICU 67.1, IPython 7.18.1, ichorCNA 0.3.2, JupyterHub 1.1.0, JupyterLab 2.2.8, LLVM 11.0.0, libarchive 3.4.3, libcircle 0.3, libevent 2.1.12, libfabric 1.11.0, libglvnd 1.3.2, libunwind 1.4.0, libxcb 1.13, MAFFT 7.471, MDSplus 7.96.12, MEGAHIT 1.2.9, MMseqs2 11-e1a1c, Mako 1.1.3, Mesa 20.2.1, Meson 0.55.3, medaka 1.1.3, mpifileutils 0.10.1, NASM 2.15.05, NSPR 4.29, NSS 3.57, Ninja 1.10.1, nettle 3.6, nglview 2.7.7, nodejs 12.19.0, OpenImageIO 2.1.12.0, OpenRefine 3.4.1, OpenSSL 1.1.1h, PCRE2 10.35, PSI4 1.3.2, Pango 1.47.0, PyGEOS 0.8, PyOpenGL 3.1.5, PyQt5 5.15.1, PyQtGraph 0.11.0, PyRETIS 2.5.0, Python 3.8.6, pandas 1.1.2, phonopy 2.7.1, picard 2.22.1, pixman 0.40.0, protobuf 3.13.0, pyEGA3 3.4.0, pytest 6.0.1, ReFrame 3.2. re2c 2.0.3, SAMtools 1.11, SCons 4.0.1, SQLite 3.33.0, Spyder 4.1.5, Subversion 1.14.0, sbt 1.3.13, spglib-python 1.16.0, spoa 4.0.0, TINKER 8.8.1, TRIQS 3.0.0, Taiyaki 5.1.0, TensorFlow 2.3.1, Tkinter 2.7.18 + 3.8.6, torchvision 0.7.0, UCX 1.9.0, V8 3.2.0, VirtualGL 2.6.2, vsc mympirun 5.2.0 X11 20201008, XGBoost 1.2.0, XZ 5.2.5, Xerces-C++ 3.2.3, xarray 0.16.1, ZeroMQ 4.3.3, zstd 1.4.5
  • minor enhancements, including:
    • use more EasyBuild installed dependencies for TensorFlow 2.2.0 (#11224)
    • add additional extensions to R 4.0.0 easyconfig (#11340, #11430, #11487)
    • add additional extensions to Bioconductor 3.11 bundle (#11341, #11488)
    • make libtirpc easier to use as replacement of rpc in glibc (for RHEL8) (#11355)
    • add libevent, libfabric and PMIx dependencies to OpenMPI 4.0.3 (for foss/2020a & iomkl/2020a) (#11387, #11568)
    • build LibTIFF with -fPIC (#11527)
    • update Java/1.8 wrapper to also support aarch64 (#11545)
  • various bug fixes, including:
    • add Python 3 as build dep for Xvfb 1.20.8 easyconfigs (#10745)
    • patch out bug in collective primitive in TensorFlow 2.2.0 (#11175)
    • add missing groff build dependency for Perl (provides nroff tool requires to install man pages) (#11200)
    • add pocl dependency to GDAL easyconfig using fosscuda/2019b toolchain to make sure it builds on POWER (#11273)
    • add libtirpc as a build dep for HDF to fix installation on RHEL8 (#11279)
    • fix build problems with make 4.2.1 on RHEL8 (#11282, #11371)
    • change $LIBS in Ghostscript 9.27 easyconfig to include location of zlib library to link with (#11291)
    • remove --no-dist-info configuration option for SIP in recent PyQt5 easyconfigs (#11307)
    • make sure correct zlib is used in recent Ghostscript easyconfigs (#11319)
    • remove GLog and GFlags from PyTorch 1.2.0 (#11327), 1.3.1 (#11325), 1.4.0 (#11322) and 1.6.0 (#11323)
    • use PyTorch easyblock for PyTorch 1.3.1 (#11325)
    • add missing git build dependency for OpenImageIO 2.0.12 (#11328)
    • fix HDF 4.2.14 easyconfigs for RHEL8 (#11330)
    • add patch to fix installation of LAMMPS 7Aug2019 on AMD Epyc systems (#11334)
    • fix dependency on Bowtie of v0.x in seq2HLA easyconfigs (#11339)
    • fix installation of Hadoop v2.10.0 on RHEL8 (#11358)
    • add patch to fix installation of Sailfish v0.10.1 on RHEL8 (#11364)
    • add patch to fix installation of FuSeq v1.1.2 on RHEL8 (#11365)
    • fix installation of Qt5 5.14.1 on top of zlib provided by Gentoo + stick to Python 2 as build dep (#11385, #11386)
    • add patch for LAME configure script to make it check for correct ncurses symbol (#11388)
    • add protobuf-python as a dependency and corresponding sanity check to PyTorch 1.6 (#11390)
    • fix Multiwfn 3.6 installation on RHEL8 (#11402)
    • fix OpenFOAM 2.3.1 installation with intel/2019b on RHEL8 (#11409)
    • fix broken worker easyconfigs (#11412)
    • add ncurses runtime dependency to Clang easyconfigs (#11415, #11416, #11419, #11472)
    • fix installation of Bioconductor 3.11 bundle on aarch64 (#11417)
    • add patch to libunwind fixing a failure on POWER (#11421)
    • fix infinite loop build bug on ppc64le for R 4.0.0 (#11428)
    • fix compilation of Qt5 v5.12.3 and v5.13.1 on Ubuntu 20.04 (#11434)
    • fix PyVCF easyconfig, only supports Python 2 (#11437)
    • add patches to fix miscomputation (on POWER) and performance issues for OpenBLAS (#11443, #11444, #11445)
    • add missing DB dependency (required for DB_File) to easyconfigs for Perl (#11451, #11452)
    • fix dbarts extension in R v4.0.0 easyconfigs for non-x86_64 (#11453)
    • use Homebrew source mirror to auto-download sources for DB v18.1.25 and v18.1.32 (#11454)
    • add missing UnZip dependency for Python 3.8.2 (#11458)
    • add support for building OpenBLAS on ARM TSV110 with GCC 8.3 (#11464)
    • allow Kent_tools to build when MySQL installed at the OS level (#11471)
    • add missing moduleclass to easyconfigs for:
    • fix source for SQLite 3.31.1 (#11483)
    • fix installation of worker 1.6.11 with intel/2019b on RHEL 8.2 (#11498)
    • fix checksum in NAMD 2.12 easyconfigs + add source URL (#11515)
    • add BLAS/LAPACK check to GPAW patch adding EasyBuild configuration files (#11523)
    • backport fixes for Score-P v6.0 (#11540)
    • add XZ build dep to easyconfigs for libarchive v3.4.0 and v3.4.2 (#11561)
    • add patch for OpenMPI 3.1.4 adding device parameters for ConnectX-6 (#11575)
  • other changes:
    • update README on constructing source file for MATLAB (#6341)
    • remove easyconfigs for Taiyaki that depend on PyTorch 1.3.1, since latest version still requires PyTorch 1.2.0 (#11301)
    • make CI error messages less confusing (“is” -> “should be”) (#11314)
    • remove extensions from R-bundle-Bioconductor 3.11 easyconfigs that are also included in R 4.0.0 (#11429)
    • cache M4 source tarball to avoid test failures because of download problems (#11469)
    • rename jupyterhub to JupyterHub (#11571)

EasyBuild v4.3.0 (September 13th 2020)

feature release

framework

  • various enhancements, including:
    • add script to create sources entries for git submodules (#3369, #3436)
    • add templates for CUDA compute capabilities (#3382)
      • %(cuda_compute_capabilities)s, %(cuda_sm_comma_sep)s, %(cuda_sm_space_sep)s
    • add EasyBuild configuration option --generate-devel-module (#3388)
      • to allow disabling generating of “devel” modules via --disable-generate-devel-module
    • set up a minimal build environment when using system compiler (#3399)
      • by default, $CC is set to gcc and $CXX is set to g++ when using system toolchain
      • minimal build environment can be customized via --minimal-build-env configuration option
    • add --sysroot configuration option to specify alternative location of system root (#3419)
      • this is useful when installing software in a Gentoo Prefix environment (for example)
  • various bug fixes, including:
    • allow including easyblocks from multiple locations, by combining --include-easyblocks and --include-easyblocks-from-pr (#3311)
    • also escape backslashes in quote_py_str() (#3386)
    • use one argument module swap statements in Tcl modulefiles (required by Modules 4.2.3+) (#3397)
    • fix copying of (non-existing) file with apply_patch (#3400)
    • create symlink from lib64 to lib subdir in installation directories to avoid that GCC prefers /lib64 system directories (#3401)
    • fix default value for lib64_fallback_sanity_check build option (#3402)
    • correctly determine commit status in --merge-pr (#3406)
    • stop installing ccache wrapper for Fortran compiler (#3409)
    • fix issues with applying PR patch in --from-pr (#3414)
    • make RPATH wrapper script more robust by using python -E -s -S to run rpath_args.py (#3422)
    • don’t inject -Wl,-rpath options when -x c++-header compiler option is used (#3424)
    • fix lack of -mno-recip on aarch64 by tweaking GCC options used when precise toolchain option is enabled (#3425)
    • make sure self.start_dir is set in ExtensionEasyBlock (#3426, #3435)
    • exclude local variables from typo check in easyconfig files (#3427)
  • other changes:
    • stick to cryptography 2.9.2 when using Python 2.7 to avoid broken test suite in CI (#3392)
    • automatically enable --ignore-locks with --fetch (#3404)
    • switch to status badge based on tests run in GitHub Actions CI in README (#3415)
    • make flake8 code style checks pass (#3416, #3417)
    • limit Travis to only test with Python 2.6 + Lmod 7 (#3418)
    • ignore deprecation warning raised for cryptography when using Python 3.5 produced by output of test suite (#3423)

easyblocks

  • 2 new software-specific easyblocks:
  • minor enhancements, including:
    • update MATLAB easyblock to use new binary installer for versions >= 2020a (#2058)
    • add use_pip_requirement custom easyconfig parameter to PythonPackage easyblock to allow providing a requirements file to the pip command, as a source (#2064)
    • update CP2K easyblock for recent versions (>= 7.0) (#2069)
    • add multi_deps support into custom easyblock for QScintilla (#2077)
    • update Mothur easyblock for v1.44.0 and higher (#2084)
    • update MotionCor2 easyblock to add support for v1.3.2 (#2100)
    • update Tinker easyblock to handle skipping of tests depending on version and link with fftw_omp (#2102)
    • launch test & sanity check commands through mpirun for netcdf4-python if MPI support is enabled (#2106)
    • check for installation of pip & setuptools in Python 3.4+ (#2108)
    • update QuantumESPRESSO easyblock to support version 6.6 (#2112)
    • allow NAMD to be built on POWER, and also use the CUDA arch info (#2113, #2123)
    • update Libint easyblock for versions >= 2.6.0 + add custom easyconfig parameter to enable Fortran support (#2116)
    • update TensorFlow easyblock to use system/EasyBuild installed libraries (#2117, #2165, #2163, #2172)
    • add support in NAMD easyblock to pass additional C++ compiler options for building Charm++ component with + wrap them in single quotes (#2118)
    • automatically add required -G Ninja option when using CMakeNinja easyblock + add generator custom easyconfig parameter for CMakeMake (#2120)
    • make several easyblocks aware of --sysroot EasyBuild configuration option: binutils (#2147, #2159), CMakeMake (#2152), GCC (#2143), Perl (#2142), Python (#2148, #2149)
    • make Mesa easyblock aware of aarch64 (#2153)
    • enhance sanity check in custom Doxygen easyblock to catch broken installation (#2171)
  • various bug fixes, including:
    • make TensorFlow easyblock ignore the PKG_REVISION identifier if NCCL version if it exists (#2085)
    • remove version check against the version.txt file in CUDA easyblock (#2097)
    • add lib symlink in tbb installation directory when building from source (#2103)
    • handle GNUInstallDirs special cases in CMakeMake easyblock (#2105, #2124)
    • patch ELPA’s manual_cpp script to fix hardcoded /usr/bin/python (#2107)
    • make TensorFlow easyblock also set $GCC_HOST_COMPILER_PREFIX to specify binutils location (#2110)
    • ensure stand-alone Python package being installed is in view when running pip check by loading fake module first (#2114)
    • be more patient when running interactive configure script for WRF (#2119)
    • make sure self.start_dir is set to a full path before constructing installation command in RPackage easyblock (#2125)
    • correctly check whether modinc easyconfig parameter is set to True in CP2K easyblock (#2138)
    • update PSI easyblock to correctly find Python and enable PCMSolver/CheMPS2 (#2141)
    • fix running GROMACS tests when using eb --rpath (#2144, #2154)
    • remove existing Python installation directory if both eb --rpath and --enable-optimizations configuration option are used (#2146)
    • ensure libQt5Core.so is compatible with older Linux kernels by disabling renameat2 and getentropy features (#2151)
    • solve issue where pybind11 picks up on the system Python instead of one provided by a module (#2158)
    • fix Qt5 easyblock to support installation on Arm/aarch64 (requires platform to be linux-g++) (#2160)
    • fix OpenFOAM easyblock to support installation on Arm/aarch64 systems (#2162)
    • explicitly enable/disable CUDA options in PyTorch easyblock + fix download check in sanity check + fix for disabling of *NNPACK on POWER systems (#2164)
    • fix sanity check in Mathematica easyblock for 11.x versions older than 11.3 (#2168)
    • unset $COLUMNS if it is set to 0 before running Perl’s configure script (#2169)
  • other changes:
    • filter out Python in SLEPc configure (#2101)
    • switch to status badge based on tests run in GitHub Actions CI in README (#2126)
    • fix code style issues to make flake8 checks pass (#2128 - #2137, #2140, #2145, #2155)
    • limit test configurations in Travis CI to only Python 2.6 (#2139)

easyconfigs

  • added easyconfigs for 2 new toolchains:
    • gomkl/2020a and iomkl/2020a (#11036)
  • added example easyconfig files for 49 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • Bazel 3.4.1, Bonito 0.2.2, binutils 2.35, CP2K 7.1, Clang 10.0.1, ccache 3.7.11, ctffind 4.1.14, datamash 1.5, ELPA 2020.05.001, Emacs 26.3, Flye 2.8.1, GCC(core) 10.2.0, googletest 1.10.0, HDF 4.2.15, Horovod 0.19.5, imageio 2.9.0, JUBE 2.4.0, Julia 1.5.1, Kent_tools 401, Libint 2.6.0, libxsmm 1.16.1, MDSplus 7.96.8, MDTraj 1.9.4, MariaDB 10.4.13, Meson 0.55.1, MotionCor2 1.3.2, NAMD 2.14, NCO 4.9.3, OpenFOAM 8, OpenMPI 4.0.5, OptiX 6.5.0, Pandoc 2.10, Perl 5.32.0, PostgreSQL 12.4, PyCUDA 2019.1.2, PyFR 1.9.0, PyTorch 1.6.0, PyZMQ 18.1.1, patchelf 0.12, pocl 1.5, pycocotools 2.0.1, pyproj 2.6.1.post1, QuantumESPRESSO 6.6, RDKit 2020.03.3, rgdal 1.5, Salmon 1.3.0, Spark 3.0.0, scikit-image 0.17.1, scipy 1.4.1, snpEff 5.0, sympy 1.6.2, TINKER 8.7.2, tqdm 4.47.0, Unicycler 0.4.8, VMD 1.9.4a43
  • minor enhancements, including:
    • also build Python libraries for ParaView 5.8.0 (#10927)
    • add extensions to recent Bioconductor easyconfigs: FlowSorted.Blood.EPIC (#11021), DRIMSeq + stageR (#11053)
    • add extensions to recent R easyconfigs: AICcmodavg + biomod2 (#11030), qqman (#11052), poLCA (#11081), coxed (#11094), testit + data.tree (#11135), celestial + fasterize (#11206)
    • add Config::Simple extension to Perl 5.30.x easyconfigs (#11051)
    • update TensorFlow v2.1.0 (#11109) and v2.0.0 (#11233) easyconfigs to provide more dependencies via EasyBuild
    • add CUDA compute capabilities to torchvision-0.5.0 (#11241)
  • various bug fixes, including:
    • patch to fix exporting images with PyQtGraph v0.10.0 (#10848)
    • add missing Python dependency to PETSc 3.11.1 (#10907) and PETSc 3.12.x (#10908) easyconfigs
    • use CMakeMake easyblock for installing magma to avoid C++11 related failures on POWER (#10929)
    • fix source URL for Graphviz v2.40.1 (#10944)
    • fix lapack.h for use with C++ in OpenBLAS 0.3.9 easyconfigs (#10960)
    • add missing build dep on M4 for 2019b versions of netCDF-Fortran (#10972)
    • update easyconfig for PyTorch 1.4 to use custom easyblock and run on POWER (#11000)
    • create symlinks to incorrectly named directories in OpenBabel-3.1.1 so $BABEL_LIBDIR and $BABEL_DATADIR work properly (#11004)
    • add missing Python build dep to recent ELPA easyconfigs (#11011)
    • use is_generic_easyblock from filetools in easyconfigs test suite (#11020)
    • fix sources in Portcullis v1.2.2 easyconfigs (#11038)
    • add patch for FFTW 3.3.8 to avoid use of -no-gcc when building with Intel compilers, to fix installation on CentOS 8 (cfr. #10932) (#11050)
    • add missing Python build dep for BEDTools 2.29.x (#11054)
    • add missing SciPy-bundle and Kent_tools (for bedPartition command) dependencies to FLAIR (#11057)
    • add patch to fix bug in LiBiS v20200428 easyconfig (#11059)
    • use FFTW provided via EasyBuild for ScaFaCoS (#11060)
    • fix undefined reference to qfloat16::mantissatable in Qt5.14.1 (#11063)
    • add alternative checksum for rstantools 2.0.0 extension (#11081)
    • update checksums for R 3.6.0 packages and add patch for ppc (#11088)
    • install scikit-learn 0.23.1 as a bundle and include required threadpoolctl extension (#11089)
    • update pybind11 easyconfigs to use custom easyblock to install with pip (#11091)
    • add recent six as extension to archspec installed on top of Python 3.7.4 (#11092)
    • add missing Seaborn dependency to LiBis easyconfig (#11095)
    • add missing dependencies for OpenPIV + switch to PythonBundle easyblock and include progressbar2 as extension (#11096)
    • add missing argparse dep to TEtranscripts easyconfig (#11097)
    • add missing pkg-config build dep in Octave 5.1.0 easyconfigs (#11100)
    • don’t statically link MUSCLE, to avoid requiring that glibc-static is installed in OS (#11102)
    • add missing pkg-config build dependency in recent R-bundle-Bioconductor easyconfigs (#11104)
    • add patch to h5py 2.8.0 (#11119) and 2.9.0 (#11118) easyconfigs to avoid MPI_Init on import h5py
    • add patch to support libbfd 2.34 API change in Score-P 6.0 (#11123)
    • use pip to install protobuf-python in 2019b toolchain (requires re-downloading source tarball!) (#11143, #11260)
    • add missing Keras-Applications extension to TensorFlow 2.2.0 easyconfigs with foss*/2019b toolchain (#11156)
    • add missing pocl dependency in R 3.6.0 (#11157)
    • update Meson build dep to 0.55.1 for GLib, X11, Mesa & co to fix aggressive RPATH stripping (#11178)
    • disable generating of man pages in recent libdrm easyconfigs to avoid installation failure if docbook-xsl is not installed (#11182)
    • add fontconfig and bzip2 as direct dependencies for Qt5 to fix installation with --rpath (#11183)
    • fix failing make check for MPFR 4.x (#11187) and GMP (#11188) when installing with eb --rpath
    • add pkg-config as a build dependency for libglvnd (#11189)
    • add missing libiconv dep in recent Doxygen easyconfigs (#11191, #11257)
    • enhance Java/11 wrapper to also support for aarch64/Arm (#11192)
    • add pkg-config as a build dependency to Ghostscript 9.52, needed on aarch64/arm (#11194)
    • add patch for pycrypto extension in recent Python easyconfigs to remove hardcoded /usr/include which causes problems when eb --sysroot is used (#11202)
    • fix installation of R v3.6.3 and v4.0.0 with foss/2020a on Arm (aarch64) (#11213)
    • update PyTorch 1.4 easyconfigs to use custom easyblock (and do less downloading during installations) (#11219)
  • other changes:
    • don’t require custom sanity_check_paths for CUDA bundle easyconfigs (#10936)
    • move intervaltree and sortedcontainers to main Python easyconfigs (#10969, #10970)
    • disable qtwayland in Qt5 v5.14.1 (#11107)
    • remove mklml (small MKL) from PyTorch 1.3.1 and 1.4.0 easyconfigs (#11019)
    • use pip to install h5py 2.10.0 (#11044)
    • stop testing easyconfig PRs with Travis, only use GitHub Actions from now on (#11008, #11055)
    • switch to Kent_tools built from source as dep for FusionCatcher (#11057)
    • fall back to using PR target branch when determining “merge base” between PR branch & target branch fails in test suite (#11069)
    • rename gtest to googletest (#11082)
    • rename sdsl-lite to SDSL (to use one single name) (#11084)
    • stop using remove_usr_bin patch in TensorFlow easyconfig, no longer required with updated TensorFlow easyblock (#11087)
    • extend timeout for libxc-4.3.4 to avoid failing tests (#11126)
    • move GitHub Actions status badge to top of README (#11138)
    • fix code style issues in test (#11146)
    • enable flake8 on CI and fix issues (#11147)
    • prefer gc GitHub site for source downloads (#11208)
    • prefer https over ftp in source_urls of IgBLAST easyconfig (#11244)

EasyBuild v4.2.2 (July 8th 2020)

bugfix/update release

framework

  • various enhancements, including:
    • add support for using sources and git_config for extensions in exts_list (#3294)
    • add support for software minver template (like %(pyminver)s, etc.) (#3344, #3345)
    • add support for updating dictionary or tuple easyconfig parameters with self.cfg.update (#3356)
  • various bug fixes, including:
    • fix crash in --avail-easyconfig-constants when using --output-format=rst + ensure sorted output (#3341)
    • always take into account builddependencies when generating template values, also when we’re not iterating over builddependencies (#3346)
    • fix running command as easybuild user in generated Singularity definition file (#3347)
    • allow ignoring versionsuffix in --try-update-deps (#3350, #3353)
    • retain order of paths when generating prepend_path statements for module file (don’t sort them alphabetically) (#3367)
    • also put easyblocks used by extensions in reprod directory (#3375)
    • also copy template values in EasyConfig.copy method to ensure they are defined when installing extensions (#3377)
    • skip lines that start with module-version when determining whether a module exists in ModulesTool.exist (#3379)

easyblocks

  • 3 new software-specific easyblocks:
  • minor enhancements, including:
    • use wclean -platform instead of wcleanPlatform for OpenFOAM v2006 & newer (#2088)
  • various bug fixes, including:
    • only build OpenCV with IPP support on x86_64 systems (#2056)
    • make sure CFLAGS and MYCFLAGS are used in Lua easyblock (#2062)
    • also accept exist_lic as valid value for license_file in IntelBase easyblock (#2067)
    • fix minor bug in shared libs handling and correctly setup SuiteSparse variables in Trilinos easyblock (#2071)
    • make sure PythonBundle uses correct python command in extensions filter + also add lib64/python*/site-packages to $PYTHONPATH (if it exists) (#2075, #2081)
    • fix build environment for WRF by patching shebang in compile script (#2079)
    • fix order of intel64/lib paths in generated module for impi (and drop intel64/lib/release_mt) (#2080)
    • set $XDG_CACHE_HOME to avoid abuse of $HOME/.cache/pip when installing DOLFIN (#2082)
    • make VMD easyblock Python 3 compatible (#2083)
    • rename include-fixed subdirectory in GCC installation to avoid problems after OS upgrade (#2087, #2093, #2094)
    • use glob pattern to determine name of Mathematica installation script (#2089)
    • use mpirun for sanity check commands in LAMMPS easyblock (#2096)

easyconfigs

  • added easyconfigs for 2 new toolchains:
    • golf/2020a (#10672)
    • intel/2020.06, based on intel/2020a but with impi 2018 update 5 (#10864)
  • added example easyconfig files for 36 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • Armadillo 9.900.1, astropy 4.0.1, BLAST+ 2.10.1, BioPerl 1.7.7, Blitz++ 1.0.2, Bonito 0.2.0, bokeh 2.0.2, CFITSIO 3.48, CGAL 4.14.3, CLHEP 2.4.1.3, cutadapt 2.10, dask 2.18.1, Elk 6.3.2, GATE 9.0, GLM 0.9.9.8, GRASS 7.8.3, Geant4 10.6, geopandas 0.8.0, giflib 5.2.1, HDF5 1.12.0, HISAT2 2.2.0, Hadoop 2.10.0, IPython 7.15.0, inferCNV 1.2.1, Julia 1.4.2, LibSoup 2.70.0, MATIO 1.5.17, MRtrix 3.0.0, Mathematica 12.1.1 MultiQC 1.9, NGS 2.10.5, NiBabel 3.1.0, Nipype 1.4.2, ncbi-vdb 20.10.7, numba 0.50.0, OpenBabel 3.1.1, OpenFOAM v2006, PDT 3.25.1, PRSice 2.3.1, ParaView 5.8.0, ParmEd 3.2.0, PyQt5 5.13.2, Pysam 0.16.0.1, parallel 20200522, plotly.py 4.8.1, pybedtools 0.8.1, ROOT 6.20.04, ReFrame 3.0, Roary 3.13.0, rjags 4-10, rstudio 1.3.959, SPAdes 3.14.1, SRA-Toolkit 2.10.8, Saxon-HE 9.9.1.7, Seaborn 0.10.1, Seurat 3.1.5, SimPEG 0.14.1, Spark 2.4.5, StringTie 2.1.3, scikit-allel 1.2.1, scikit-learn 0.23.1, snpEff 4.3t, Valgrind 3.16.1, VarScan 2.4.4, vsc-mympirun 5.1.0, WebKitGTK+ 2.27.4, wxPython 4.0.7.post2, zarr 2.4.0
  • minor enhancements, including:
    • add extensions to R 4.0.0 easyconfig: drgee + stdReg (#10833), copCAR (#10911), ngspatial (#10913), drugCombo (#10914)
    • add extensions to R-bundle-Bioconductor 3.11 easyconfig: BSgenome.Cfamiliaris.UCSC.canFam3 (#10840), SingleR (#10904)
    • include extra extension and support for MPI in MAFFT v7.453 and v7.470 (#10853)
    • add Array::Transpose to Perl (#10878)
  • various bug fixes, including:
    • fix dependencies and configuration of CoinUtils ecosystem (#10450)
    • fix Togl configure patch so that it completely ignores TCL_SRC_DIR and TK_SRC_DIR (#10662)
    • change Xerces-C++ to official CMakeMake build (fixes missing links to curl) (#10664)
    • add -fPIC to toolchainopts in easyconfig for Lua 5.3.5 with system toolchain (#10671)
    • remove hardcoded X86 target in LLVM easyconfigs (#10677)
    • switch to https homepage and source_urls in libGLU easyconfigs (#10686)
    • add patch for h5py 2.10.0 to avoid triggering MPI_Init at import (#10687)
    • add alternative checksum for pkgmaker, doRNG, cobs extension in R 3.6.0 easyconfigs (#10692)
    • update UDUNITS source_urls to https sources (#10693)
    • add missing M4 to netCDF-Fortran easyconfigs using 2020a toolchain (#10695, #10697)
    • add Rgraphviz patch to R-bundle-Bioconductor easyconfigs (#10710)
    • add M4 builddependency to SuiteSparse 2019b easyconfigs (#10720)
    • make sure WHAM is built with correct compiler (#10736)
    • define MAX_JOBS in easyconfigs of PyTorch from v1.1.0 to v1.4.0 (#10772)
    • add dm-tree and lz4 as dependencies to Ray v0.8.4 (#10775)
    • fix source URL in recent ant easyconfigs (#10790)
    • bump versions of GO.gb/org.Hs.eg.db/PFAM.db extensions in Bioconductor 3.11 bundle, since sources for old versions have disappeared (#10791)
    • add patch to Armadillo easyconfigs using the foss toolchain to prevent it from picking up MKL if installed system-wide (#10812)
    • add missing kerneltree extension in FLAIR easyconfig (#10860)
    • fix source URLs in Eigen 3.2.* (#10872) and 3.3.* (#10869) easyconfigs
    • refer to issue in GitHub repo in configparser patch, since Bitbucket repo is disappearing (#10873)
    • switch to github.com source URL for MetaPhlAn (#10874)
    • switch to GitHub sources for ScientificPython 2.9.4 (#10875)
    • switch to GitHub source URL for HPDBSCAN (#10876)
    • download x265 3.2/3.3 sources from bitbucket.org/multicoreware/x265_git (#10905)
    • fix download URL for libatomic in gc 7.6.12 easyconfigs (#10915)
    • fix sanity_check_paths in CFITSIO-3.48-GCCcore-9.3.0.eb easyconfig (#10917)
    • add missing dependencies for geopandas 0.7.0 (#10923)
  • other changes:
    • rename OpenPyXL 2.6.4 easyconfig to openpyxl (#10916)

EasyBuild v4.2.1 (May 20th 2020)

bugfix/update release

framework

  • various enhancements, including:
    • also mention CPU architecture (x86_64, POWER) in comment for test reports (#3281)
    • add support for enhancing existing sanity check in easyconfigs, as opposed to overwriting paths/commands (#3288)
    • clean up locks when EasyBuild session is cancelled with a signal like SIGTERM (#3291, #3321)
    • add find_glob_pattern function to filetools module (#3297)
    • add constants for common OS dependencies (OS_PKG_IBVERBS_DEV, OS_PKG_OPENSSL_DEV, …) (#3309, #3334)
    • flesh out get_mpi_cmd_template function from Mpi.mpi_cmd_for method (#3312)
    • add variable moddependpaths to specify extra $MODULEPATH entry to consider for loading dependency modules (#3324)
    • allow copying of tweaked easyconfigs when using --try-* with --copy-ec (#3332)
  • various bug fixes, including:
    • make ModulesTool.exist more robust w.r.t. module wrappers, aliases, defaults, etc. (#3216, #3337)
    • clean up rst output of --list-toolchains (#3246)
    • cast CPU arch name provided by archspec to a regular string (#3286)
    • get pr_title and pr_descr build_options in new_pr_from_branch instead of new_pr (and commit_msg in both) (#3298)
    • make pypi_source_urls more robust by using HTMLParser rather than xml.etree.ElementTree (#3303, #3329)
    • fix broken test for --include-easyblocks-from-pr (#3304)
    • don’t use distutils.dir_util in copy_dir (#3310)
    • print trace message for sanity check command before running it (#3316)
    • fix problems with processing of easyconfigs using a Cray* toolchain when there are no actual external modules (#3319)
    • make test_find_eb_script more robust in case $EB_SCRIPT_PATH is already set (#3320)
    • fix several small problems with --try-update-deps (experimental feature) (#3325, #3326, #3330)
    • add --disable-job in eb command used in jobs, to prevent infinite job cycle (#3328)
    • avoid empty entries in $LD_LIBRARY_PATH and other path-like environment variables (#3333)
  • other changes:
    • fix code style issues in easybuild.tools + add flake8 linting test (#3282)
    • introduce contextmanager for disabling templating and reduce resolving errors (#3287)
    • add change_into_dir named argument to extract_file + print deprecation warning if it’s not specified (#3292)
    • improve install_eb_dep.sh script to install EasyBuild dependencies in CI environment (#3314)

easyblocks

  • add generic easyblock for installing Go packages: GoPackage (#2042)
  • minor enhancements, including:
    • update config.guess for all R packages, required installing R + extensions on Linux/POWER systems (#1949)
    • add support for preinstallopts and install in subdirectory to Tarball generic easyblock (#1989, #2049)
    • rewrite GROMACS easyblock to install all four variations (single/double precision, with/without MPI) in the same directory (#1991)
    • add custom subdir_version easyconfig parameter for FLUENT (#2021)
    • use updated config.guess in GCC easyblock (#2033, #2059)
    • add extra question pattern to support installing CPLEX 12.10 (#2038)
    • add support for building NWChem on top of external GlobalArrays + also define $LAPACK_LIB (required for NWChem 7.x) (#2043)
    • execute minimal test in sanity check commands in impi easyblock (#2045)
    • update for MotionCor2 easyblock for v1.3.1 (#2046)
    • fixes + enhancements for PETSc easyblock (#2048)
  • various bug fixes, including:
    • use correct version in ELPA preprocessor flag used for QuantumESPRESSO v6.x (#2027)
    • generically find the arch folder and add top-level bin/lib symlinks in PDT & TAU easyblocks (#2029)
    • fix typo in LAMMPS easyblock preventing disabling the USER-INTEL package via configopts (#2031)
    • let CMakeMake remove easybuild_obj build directory if it already exists (#2032)
    • include own lib dir in RPATH before system lib dirs in binutils easyblock (#2044)
    • clean $CPATH before building ROOT to avoid clash between external LLVM loaded as a dependency and internal LLVM used by ROOT (#2047)
    • don’t let extract_file change directory in various easyblocks (#2051)
    • make postinstallcmds available to Mathematica easyconfigs + add bin/Executables to $PATH (#2052)
    • fix the extra dirs added to PATH in FreeSurfer easyblock (#2053)
    • correct download url for test data in WPS easyblock (#2055)
    • fix typo in warning in TensorFlow easyblock (#2057)
    • fix failing sanity check under --module-only in GCC easyblock (#2059)
  • other changes:
    • add configure options for CubeLib/CubeWriter dependencies in Score-P easyblock (#2030)
    • remove local find_glob_pattern in Blender & ROOT easyblocks, use function provided by filetools instead (#2037)

easyconfigs

  • added easyconfigs for new common toolchains: foss/2020a (#10483, #10492), intel/2020a (#10494)
  • added example easyconfig files for 66 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • ADF 2019.303, BRAKER 2.1.5, Bazel 2.0.0, Bonito 0.1.4, Boost.Python 1.72.0, Bowtie2 2.4.1, CMake 3.16.4, CPLEX 12.10, CVXOPT 1.2.4, Coreutils 8.32, cURL 7.69.1, DFTB+ 19.1, ecCodes 2.17.0, expat 2.2.9, FFmpeg 4.2.2, FriBidi 1.0.9, GATK 4.1.5.0, GCC(core) 10.1.0, GDAL 3.0.4, GEOS 3.8.1, GLib 2.64.1, GMP 6.2.0, GROMACS 2020.1, GTK+ 3.24.17, GenomeThreader 1.7.3, GffCompare 0.11.6, Ghostscript 9.52, GlimmerHMM 3.0.4c, GlobalArrays 5.7.2, gmpy2 2.1.0b4, gmsh 4.5.6, gpustat 0.6.0, gradunwarp 1.2.0, HDF5 1.10.6, hwloc 2.2.0, hypothesis 5.6.0, ICU 66.1, IPython 7.13.0, ImageMagick 7.0.10, Julia 1.4.1, KMC 3.1.2rc1, Kraken2 2.0.9, LMfit 1.0.0, Longshot 0.4.1, libarchive 3.4.2, libffcall 2.2, libffi 3.3, libgd 2.3.0, libjpeg-turbo 2.0.4, librsvg 2.48.4, libsigsegv 2.12, lrslib 7.0a, MEME 5.1.1, MPC 1.1.0, Mako 1.1.2, Mesa 20.0.2, Meson 0.53.2, MotionCor2 1.3.1, MultiQC 1.8, matplotlib 3.2.1, NGS-Python-2.10.4, NGS 2.10.4, NSPR 4.25, NSS 3.51, NWChem 7.0.0, Nextflow 20.04.1, Ninja 1.10.0, Normaliz 3.7.4, nanopolish 0.13.1, ncbi-vdb 2.10.4 netCDF 4.7.4, OpenBLAS 0.3.9, OpenEXR 2.4.1, OpenMPI 4.0.3, OpenSSL 1.1.1e, openpyxl 3.0.3, PAPI 6.0.0, PCRE 8.44, PCRE2 10.34, PLUMED 2.6.0, PMIx 3.1.5, PROJ 7.0.0, Perl 5.30.2, Pillow 7.0.0, PyYAML 5.3, Python 2.7.18 + 3.8.2, parallel 20200422, Qt5 5.14.1, R-bundle-Bioconductor 3.11, R 3.6.3 + 4.0.0, RMBlast 2.9.0, Racon 1.4.13, Ray 0.8.4, Rust 1.42.0, re2c 1.3, rioxarray 0.0.24, rootpy 1.0.1, rstudio 1.2.5042, SCons 3.1.2, SDL2 2.0.10, SIONlib 1.7.6, SQLite 3.31.1, SRA-Toolkit 2.10.4, Salmon 1.2.0, ScaLAPACK 2.1.0, SciPy-bundle 2020.03, Stacks 2.53, StringTie 2.1.1, SuiteSparse 5.7.1, snappy 1.1.8, spaln 2.4.03, sympy 1.5.1, Tcl 8.6.10, TensorFlow 2.2.0, Tk 8.6.10, Tkinter 3.8.2, tbl2asn 20200302, torchvision 0.5.0, UCX 1.8.0, UMI-tools 1.0.1, utf8proc 2.5.0, util-linux 2.35, worker 1.6.12, wxWidgets 3.1.3, X11 20200222, XZ 5.2.5, x264 20191217, x265 3.3, zsh 5.8, zstd 1.4.4
  • minor enhancements, including:
    • add additional extensions for recent versions of R (#10359, #10585, #10586, #10621) and R-bundle-Bioconductor (#10585, #10596, #10621)
    • add additional extensions for recent versions of Perl (#10412, #10546, #10623)
    • include LLVM linker in Clang 7.0.1 on GCC 7.3.0-2.30(#10458)
    • include static lib and header in nimimap2 easyconfigs for foss-2018b and GCC-8.2.0* (#10464)
    • add alternate checksum for EMBOSS (#10607)
  • various bug fixes, including:
    • fix incorrect checksums for Amber patches (#8870)
    • add patches to fix installation of R 3.6.2 on POWER (#9830)
    • add missing build dep. pkg-config in GObject-Introspection 1.63.1 w/ Python 3.7.4 easyconfig (#10380)
    • add Perl as a build dependency for recent Autoconf/Automake easyconfigs (#10408, #10426)
    • fix source_urls in ICU easyconfigs (#10417)
    • disable USER-INTEL package in LAMMPS easyconfigs using intel/2019b, since it results in an installation that produces incorrect results (#10418)
    • fix undefined reference to qfloat16::mantissatable in Qt5-5.13.1-GCCcore-8.3.0 (#10425)
    • get rid of double ‘-’ in versionsuffix of torchtext easyconfig (#10472)
    • fix broken Mako easyconfigs (#10480, #10627)
    • move builddependencies to dependencies in OTF2 and Score-P easyconfigs (#10496)
    • add missing cURL dep for LAMMPS (#10527)
    • add Python 2 build dependency for OpenPGM (#10539)
    • use OS_PKG_IBVERBS_DEV constant for OS dependency in PyTorch 1.4.0 easyconfigs (#10540)
    • add missing Bison build dep in Graphviz easyconfigs (#10541)
    • use https in homepage for Mathematica 12.0.0 + clean up sanity check commands (now done by easyblock) (#10559)
    • add missing PyVCF dependency for BAMSurgeon (#10564)
    • remove FFTW dependencies from LAMMPS easyconfigs, no longer needed (MKL can be used too now) (#10565)
    • fix ITK v5.0.1 easyconfig w.r.t. locale and location of libjpeg-turbo library (#10592)
    • add patch to fix missing const qualifiers for ncurses (#10606)
    • fix OS dependency for rstudio for Debian-based systems (#10608)
    • fix Rmath paths in easyconfig for FastQTL v2.184 (#10612)
    • add symlink for Arlequin commands + fix sanity check commands (#10620)
    • fix recent binutils easyconfigs using system toolchain for Fedora 32 / GCC 10 (#10633)
    • replace ‘/path/to’ with actual installation prefix in FuSeq scripts (#10640)
  • other changes:
    • check sdist with different Python versions in CI (#10388)
    • use Bison 3.3.2 as build dep for flex 2.6.4 (#10403)
    • mention http:// Pfam website rather than ftp:// in load message of BiG-SCAPE easyconfig (#10439)
    • archive old Singularity configs (#10591) * Singularity is not well suited to install via EasyBuild because it requires admin privileges to enable setuid
    • stop using old hpcugent URL for cloning framework/easyblocks repos in CI (#10635)
    • use SYSTEM constant for toolchain in easyconfigs already use system toolchain (#10638)

EasyBuild v4.2.0 (April 14th 2020)

feature release

framework

  • add support for --try-update-deps (experimental feature), to upgrade dependencies based on available easyconfigs (#2599)
  • adding locking to prevent two parallel builds of the same installation directory (#3009)
  • significantly speed up -D/--dry-run by avoiding useless ‘module show’ (#3203)
  • add support for creating an index & using it when searching for easyconfigs (#3210)
  • additional GitHub integration features:
  • various other enhancements, including:
    • add a contrib/hooks dir with some examples of hooks used (#2777)
    • also mention working directory + input passed via stdin (if any) in trace output of run_cmd (#3168)
    • probe external modules for missing metadata that is not provided via extermal module metadata file (#3174)
    • also update $CMAKE_PREFIX_PATH and $CMAKE_LIBRARY_PATH in generated module file (#3176)
    • optionally call log.warning in print_warning (#3195)
    • add an option to git_config to retain the .git directory (#3197)
    • allow use of SYSTEM as --try-toolchain option (#3213)
    • mention CPU arch name in comment for uploaded test report, if it’s known by archspec (#3227)
    • make --merge-pr take into account --pr-target-branch (#3236)
    • make --check-contrib print a warning when None is used for checksums (#3244)
    • update install-EasyBuild-develop.sh script and create script for 2020a merge sprint (#3245)
    • add template for mpi_cmd_prefix (#3264)
    • update copy_dir to include option to merge directories (#3270)
    • support template name for CUDA version (#3274)
  • various bug fixes, including:
    • use correct module for errors_found_in_log (#3119)
    • fix EasyConfig.update code to handle both strings and lists as input (#3170)
    • fix removing temporary branch on --check-github (#3182)
    • fix shebang even if first line doesn’t start with ‘#!’ (#3183)
    • make bootstrap script work with Python 3 (#3186)
    • read patch files as bytestring to avoid UnicodeDecodeError for patches that include funky characters (#3191)
    • fix online check in --check-github: try repeatedly and with different URLs to cater for HTTP issues (#3194)
    • don’t crash when GitPython is not installed when using Python 3 (#3198)
    • fix os_name_map for RHEL8 (#3201)
    • don’t add shebang to binary files (#3208)
    • use checkout@v2 in GitHub Actions to fix broken re-triggered tests (#3219)
    • don’t filter out None values in to_checksums, leave them in place (#3225)
    • fix defining of $MPI_INC_* and $MPI_LIB_* environment variables for impi version 2019 and later (#3229)
    • use correct target account/repo when creating test report & posting comment in PR (#3234)
    • reorganize EasyBlock.extensions_step to ensure correct filtering of extensions (#3235)
    • also support %(installdir)s and %(builddir)s templates for extensions (#3237)
    • unset $GITHUB_TOKEN in Travis after installing token, to avoid failing test_from_pr_token_log (#3252)
    • fix reporting when skipping extensions (#3254)
    • avoid API rate limit errors on online check in --check-github (#3257)
    • show easyconfig filenames for parallel build (#3258)
    • make EasyConfig.dump aware of toolchain hierarchy, to avoid hardcoded subtoolchains in dependencies easyconfig parameters (#3261)
    • fix use of --copy-ec with a single argument, assume copy to current working directory (#3262)
    • fix posting of comment in PR with --upload-test-report (#3272)
    • take into account dependencies marked as external modules when composing template values like %(pyver)s (#3273)
  • other changes:
    • increase timeout & use api.github.com for connectivity check in check_github (#3192)
    • restore flake8 default ignores (#3193)
    • enable tracking of test suite coverage using coveralls (#3204)
    • make tests use easybuilders/testrepository rather than hpcugent/testrepository after it was moved (#3238)
    • improve raised error in remove_dir and deprecate rmtree2 (#3228)

easyblocks

  • 7 new software-specific easyblocks:
  • minor enhancements, including:
    • make ParMETIS easyblock compatible with custom configopts (#1774)
    • update Trinity easyblock for v2.9.0 (#1906)
    • disable ROCM and Android workspace explicitly in TensorFlow easyblock (#1944)
    • update QuantumESPRESSO easyblock for version 6.5 (#1947)
    • update Siesta easyblock to support MaX-1.0 release (#1954)
    • update Ferret easyblock for versions >= 7.5.0 (#1956)
    • update XCrySDen easyblock to support Togl dependency (#1959)
    • pass value for TARGET specified in buildopts to testopts and installopts in OpenBLAS easyblock (#1960)
    • fix netCDF(-Fortran) support in Siesta easyblock (#1967, 1971)
    • add NCDF_PARALLEL and METIS support to Siesta easyblock (#1973)
    • add support for use_pip_extras custom easyconfig parameter in PythonPackage easyblock (#1980)
    • update Open Babel easyblock for version 3.0.0 (#1992)
    • allow differing names for TensorFlow wheel (#1995)
    • make MATLAB runtime available from MATLAB (#2008)
  • various bug fixes, including:
    • fix linking of Hypre to external BLAS/LAPACK + support building (only) static/shared library (#1885)
    • fix MPI-CXX dependency of PETSc (#1917)
    • limit amount of parallelism in TensorFlow easyblock (#1934)
    • support GCCcore and gcc4.8 (if that dir exists) in function get_tbb_gccprefix in tbb easyblock (#1943)
    • restore default flake8 warnings (#1950)
    • remove tests from build_step and raise error on failed tests in OpenBLAS easyblock (#1952, #1955, #1962)
    • add optional runtest to the catch for FATAL ERRORS to OpenBLAS easyblock (#1958)
    • ensure right ‘python’ command is used to determine Python lib dir when system Python is used with PythonBundle easyblock (#1961)
    • make sure lib/python*/lib-dynload exists in Python installation (#1966)
    • in version 6.0 of TensorRT, libnvinfer.a is renamed libnvinfer_static.a (#1970)
    • handle configopts without configure args in CMake easyblock (#1974)
    • use checkout@v2 in GitHub Actions to fix broken re-triggered tests (#1976)
    • don’t insist that pylibdir always exists in OpenCV easyblock (#1977)
    • also set $TRINITY_HOME environment variable in Trinity easyblock (#1979)
    • fix sanity check for OpenFOAM-Extend >= 4.1 (#1981)
    • fix pattern matching in regex subst for I_MPI_ROOT in impi easyblock (#1986)
    • use remove_dir instead of deprecated rmtree2 in various easyblocks (#1993)
    • fix “AttributeError: module 'git' has no attribute 'Git'” that may occur when using Python 3 (#1994)
    • don’t sanity check for QtWebEngine in Qt easyblock when building for POWER (#2000)
    • fix installation of TensorFlow in some environments, by setting $PYTHONNOUSERSITE (& more) (#2002, #2020)
    • make sure libxml2 is built with XZ provided as dependency (#2005)
    • look for Python version directories with suffixes in ROOT easyblock (#2010)
    • enable TK, FLTK and OPENGL configure options in VMD easyblock (#2013)
    • update the contributing docs (#2014)
    • fix numexpr easyblock to allow (correctly) installing it as extension (#2022)
  • other changes:
    • simplify various CMakeMake-based easyblocks by enhancing CMakeMake (w.r.t. CMAKE_BUILD_TYPE, shared vs static libs, -fPIC) (#1929)
    • enable out of tree build by default in CMakeMake easyblock (#1933)
    • force building Clang without CUDA when it is not found as a proper dependency (#1968)

easyconfigs

  • added example easyconfig files for 114 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • ABySS 2.1.5, Arrow 0.16.0, BCFtools 1.10.2, BEDTools 2.29.2, BUSCO 4.0.5, BerkeleyGW 2.1.0, binutils 2.34, CVXPY 1.0.28, CharLS 2.1.0, CheckM 1.1.2, Clang 10.0.0, CppUnit 1.15.1, canu 1.9, cutadapt 2.8, DIAMOND 0.9.30, davix 0.7.5, ELPA 2019.11.001, FastANI 1.3, FastQC 0.11.9, Ferret 7.5.0, GATK 4.1.4.1, GCCcore 9.3.0, GDB 9.1, GMAP-GSNAP-2019-09-12, GObject-Introspection 1.63.1, GPAW 20.1.0, GROMACS 2020, GTDB-Tk 1.0.2, GTK+ 3.24.13, Go 1.14.1, Gradle 6.1.1, GraphicsMagick 1.3.34, Graphviz 2.42.2, Gurobi 9.0.1, gSOAP 2.8.100, gnuplot 5.2.8, gtest 1.10.0, HDDM 0.7.5, HTSlib 1.10.2, HarfBuzz 2.6.4, Horovod 0.19.1, Hypre 2.18.2, IGV 2.8.0, IQ-TREE 1.6.12, IRkernel 1.1, iccifort 2020.0.166, igraph 0.8.0, impi 2019.6.166, ispc 1.12.0, Java 13(.0.2), Julia 1.4.0, Keras 2.3.1, Kraken2 2.0.8-beta, kim-api 2.1.3, LAST 1045, LASTZ 1.04.03, LLVM 9.0.1 + 10.0.0, LMfit 0.9.14, LS-PrePost 4.7.8, likwid 5.0.1, MAFFT 7.453, MATLAB 2019b, MMseqs2 10, Maven 3.6.3, Meson 0.53.1, MethylDackel 0.5.0, Mono 6.8.0.105, medaka 0.12.0, Nextflow 20.01.0, ncdf4 1.17, netcdf4-python 1.5.3, nodejs 12.16.1, numba 0.47.0, numexpr 2.7.1, Octave 5.1.0, OpenBLAS 0.3.8, OpenBabel 3.0.0, OpenCV 4.2.0, OpenFOAM-Extend 4.1-20191120, OrthoFinder 2.3.11, PETSc 3.12.4, PGI 19.10, PMIx 2.2.1, Pango 1.44.7, PyTables 3.6.1, PyTorch 1.4.0, parasail 2.4.1, pydicom 1.4.2, pyproj 2.4.2, Qhull 2019.1, QuantumESPRESSO 6.5, R-bundle-Bioconductor 3.10, RDKit 2019.09.3 Racon 1.4.10, ReFrame 2.21, Ruby 2.7.1, rjags 4-9, rpy2 3.2.6, SLEPc 3.12.2, SPAdes 3.14.0, SPAdes 3.14.0, STAR-Fusion 1.8.1, STAR 2.7.3a, Seaborn 0.10.0, SeqAn 1.4.2, Seurat 3.1.2, SimpleElastix 1.1.0, SimpleITK 1.2.4, Stacks 2.5, Stata 16, StringTie 2.1.0, scikit-optimize 0.7.4, statsmodels 0.11.0, TensorFlow 1.15.2 + 2.0.1, Tkinter 2.7.16, Trim_Galore 0.6.5, Trimmomatic 0.39, Trinity 2.10.0, tbb 2020.2, tqdm 4.41.1, XCrySDen 1.6.2, XGBoost 0.90, xarray 0.15.1, xmlf90 1.5.4
  • minor enhancements, including:
    • add easyconfig for Java 11.0.6 on ppc64le and alter the Java 11 wrapper to support both x86_64 and ppc64le (#9371)
    • add additional extensions for R: HiddenMarkov (#9685), lmerTest (#9853), VSURF + Rborist (#10355)
    • change Mesa 19.1.7 + 19.2.1 easyconfigs to use custom easyblock for Mesa (#9764)
    • build shared libs and install header files for Ghostscript (#9785)
    • add MUMPS as dependency in PETSc 3.12.4 easyconfigs (#9880, #9891)
    • add Perl extensions: Term::ReadLine::Gnu (#9901), URI::Escape and Set::IntervalTree (#10049)
    • add dat directory to aNCI (#9929)
    • add patch to create a symlink from libsvm.so.$(SHVER) to libsvm.so in LIBSVM easyconfigs (#10045)
    • build SUNDIALS with ‘pic’ (#10278)
    • add BSgenome.Hsapiens.UCSC.hg38 + MEDIPS extensions to R-bundle-Bioconductor v3.10 (#10298)
    • fix checksums for mkl-dnn and tbb extensions (moved to oneAPI repo) in PyTorch easyconfigs (#10367)
    • update Java/1.8 wrapper to Java/1.8.0_241.eb (#10305)
  • various bug fixes, including:
    • use CMake for building double-conversion (#9659)
    • update recent libdrm easyconfigs to use custom easyblock & avoid hardcoded x86-specific sanity check (#9694)
    • add alternate checksum for OpenMolcas 18.09 (#9701)
    • use Github to download releases for MariaDB-connector-c (#9702)
    • add -DOMPI_SKIP_MPICXX in configopts for MathGL, to avoid using mpicxx during build (#9703)
    • make installing independent of build folder in pybind11 easyconfig (#9738)
    • add Lua as a dependency to gnuplot (#9773)
    • stick to http:// source URLS for ISL in GCCcore easyconfigs, since https:// doesn’t work (#9784)
    • add alternative checksums for farver/fracdiff/pkgmaker/rngtools/doRNG/cobs extensions in R 3.6.2 easyconfigs (#9789)
    • add patch for OpenBLAS 0.3.4 w/ GCC/8.2.0-2.31.1 to fix broken tests (#9865)
    • revert removal of AVX512 vmovd with 64-bit operands in binutils 2.32 easyconfigs (#9866)
    • fix inline asm in dscal: mark x, x1 as clobbered, in OpenBLAS 0.3.8 (#9867)
    • add missing sanity_check_commands to cutadapt v1.18 and v2.7 easyconfigs (#9869)
    • don’t overwrite configopts in BLAST+ easyconfigs, append to it (#9875)
    • add alternate checksum for LaplacesDemon in R 3.6.x easyconfigs (#9879, #10382)
    • fix redefining of preconfigopts in OpenCV easyconfigs (#9895)
    • use symlinks for terminfo files instead of hard links in ncurses 6.1 easyconfigs (#9912)
    • fix NCIPLOT build flags (#9915)
    • add missing patch to iccifort libxc easyconfigs (#9918)
    • use checkout@v2 in GitHub Actions to fix broken re-triggered tests (#9925)
    • re-enable building utils in Siesta 4.1-MaX-1.0 release (#9936)
    • fix homepage and source URLs in SLEPc easyconfigs by using https (#9943)
    • fix source URLs for rgeos after source tarball was moved to CRAN archive (#9954)
    • add dependencies on Python 3 and SciPy-bundle in Trinity v2.9.1 easyconfig (#9957)
    • patch GCC lisanitizer for glibc 2.31 (#9966)
    • add Zip as build dependency for recent Bazel versions (#9972)
    • fix checksums in Jellyfish v2.3.0 easyconfigs (#9997)
    • fix source URLs for ParMGridGen easyconfigs (#10019)
    • disable unintended Octave support in all libsndfile easyconfigs (#10027)
    • fix sources for LS-PrePost 4.6 (#10236)
    • security update for vsc-mympirun 4.1.9 (#10185)
    • configure libwebp to also install libwebpmux (#10274)
    • ensure that CVS easyconfigs are included in source tarball produced by ‘python setup.py sdist’ (#10326)
    • fix undefined reference error due to libxc 4.3.4 built with CMake (#10356)
    • fix source_urls for tbb: use (new) official ‘oneapi-src’ GitHub repository (#10361)
    • update checksums and homepage in tbb easyconfigs (#10285)
  • other changes:
    • use new custom easyblock in recent CMake easyconfigs (#9871, #9923)
    • add check for redefined easyconfig parameters in easyconfig tests (#9876)
    • use M4-1.4.18.eb for test installation in easyconfigs test suite (#9926)
    • use https:// in homepage/source_urls of zlib-1.2.11.eb (#10018)
    • add -GCCcore-9.2.0 versionsuffix for intel/2020.00 components (#10083)
    • add checksum of new tbb 2019_U9 source tarball, next to original one + update homepage (#10237)
    • add comment informing about manually setting Gallium drivers in easyconfigs for Mesa v19.1.7 and v19.2.1 (#10276)

EasyBuild v4.1.2 (March 16th 2020)

bugfix release

Note

This release includes a bug fix for the leaking of your GitHub token in the EasyBuild (debug) log file.

We strongly encourage that you revoke the GitHub tokens you are using currently, via https://github.com/settings/tokens, and to replace them using a new token (using eb --install-github-token --force ).

More information in https://github.com/easybuilders/easybuild-framework/pull/3248 .

framework

  • fix gitdb dependency on Python 2.6 in test configuration (#3212)
  • fix broken test for –review-pr by using different PR to test with (#3226)
  • censor authorization part of headers before logging ReST API request (#3248)

easyblocks

(no changes)

easyconfigs

(no changes)

EasyBuild v4.1.1 (January 16th 2020)

bugfix/update release

framework

  • various enhancements, including:
    • add check_log_for_errors function (in easybuild.tools.run) to detect and handle multiple errors (#3118)
    • implement support for eb --show-ec to show contents of specified easyconfig file (#3132)
    • also update $XDG_DATA_DIR (share/) and $GI_TYPELIB_PATH environment variables (lib*/girepository-*) in generated module files (#3133)
    • add support for --copy-ec to copy easyconfig file to specified location (#3142)
    • mention --disable-* option in --help output for boolean options enabled by default (#3151)
    • add --cuda-compute-capabilities configuration option (#3161)
  • various bug fixes, including:
    • ignore imports from vsc namespace made from pkgutil.py (#3120)
    • only actually change permissions using os.chmod in adjust_permissions if the current permissions are not correct already (#3125)
    • use shutil.copyfile to just copy file contents if target path exists and is owned by someone else (#3127)
    • fix or avoid warnings that commonly arise in build log (#3129)
    • disable buffering in asyncprocess.Popen using bufsize=0, to fix run_cmd_qa missing output (#3130)
    • update pip & install wheel package in generated Singularity container recipes (#3136)
    • avoid crash in modify_env & unset unset_env_vars when using (older versions) of Python 3.5 & 3.6 by using list(...) (#3140)
    • take into account that lib64 could be a symlink to lib (or vice versa) in get_software_libdir function (#3141)
    • only parse docstring if it exists in gen_easyblock_doc_section_rst function (#3144)
    • only add useful entries for $CPATH, $(LD_)LIBRARY_PATH and $PATH (non-empty directories) (#3145, #3152)
    • fix --list-software=detailed when using Python 3 by leveraging sort_looseversions function from py2vs3 module (#3146)
    • ensure subdirectories in software install directory have correct search (exec) permission (#3147)
    • take into account that a checksum value may be a tuple of valid checksum in EasyBlock.check_checksums (#3153)
  • other changes:
    • bump to Lmod 8.2.9 in GitHub CI config (#3115)
    • update copyright statements for 2020 (#3149)
    • make Hound CI code style checker ignore “Black would make changes” produced by flake8-black (#3162)

easyblocks

  • new software-specific easyblock for cryptography (to fix missing -pthread for all versions) (#1874)
  • minor enhancements, including:
    • update WPS easyblock for v3.6 & newer (#1315)
    • update FSL easyblock to support FSL v6.0.2 & newer (#1860)
    • add setup_cmake_env function in CMakeMake easyblock which can be leveraged in other easyblocks, and use it for OpenFOAM (#1869)
    • remove obsolete configure options for Python + build with optimizations/LTO enabled for recent Python versions (#1876)
    • update WPS easyblock for recent versions: set $WRF_DIR to point to location of WRF installation (#1886)
    • make sure $LIBLAPACK_MT is set before using it in ESMF easyblock (#1887)
    • remove useless PATH entries + add PKG_CONFIG_PATH in imkl easyblock (#1900)
    • enhance tbb easyblock to support building on POWER (#1912)
    • enhance TensorFlow easyblock to pick up on --cuda-compute-capabilities, and issue a warning if no CUDA compute capabilities are specified (#1913)
    • add custom easyconfig parameter build_type to generic CMakeMake easyblock (#1915, #1922)
  • various bug fixes, including:
    • fix for conda packages that rely on particular versions of Python (#1836)
    • fix path for intel and netCDF lib directories in NCL easyblock (#1862)
    • fix CUDA 10.1 installation on POWER (#1871)
    • change Bazel easyblock to prefer using Java dependency rather than included JDK (fix for POWER9) (#1875)
    • remove optarch warning in GROMACS for Cray toolchains (#1879)
    • also fix $WM_COMPILE_OPTION in OpenFOAM rc scripts to make debug builds work correctly (#1880)
    • limit MPI ranks used for running WRF test cases to max. 4 + include contents of rsl.error.0000 output file in case test failed (#1884)
    • update $PYTHONPATH + add python -c 'import mrtrix3' as sanity check command for recent MRtrix versions (#1889)
    • update sanity check in SAMtools easyblock for version 1.10 (#1890)
    • make sure $PYTHONNOUSERSITE it set when performing sanity check for (bundles of) Python package(s) (#1891)
    • fix install dir subdir for WPS v4.0+ that is considered for $PATH and $LD_LIBRARY_PATH (#1895)
    • impi: don’t rebuild libfabric if the source code is not present (#1896)
    • also copy component patches to self.cfg in Bundle generic easyblock (#1897)
    • skip patch step in Bundle generic easyblock (per-component patches are still applied) (#1898)
    • derive easyblock for iccifort only from icc easyblock (not ifort), to avoid adding include subdir to $CPATH (#1899)
    • add export LANG=C to preinstallopts instead of install_script path in CUDA easyblock (#1902)
    • stop setting updating $CPATH and $LIBRARY_PATH for GCC and GCCcore, not required (#1903)
    • remove $LIBRARY_PATH entries in iccifort easyblock, already known to icc et al (#1904)
    • use major/minor version of Python command being used if req_py_majver/req_py_minver are not specified (#1907)
    • define $EB_PYTHON in module for EasyBuild installation, to make sure correct Python version is used at runtime (#1908)
    • fix Python easyblock to allow configuring build of Python v3.8 (Setup.dist script was renamed to Setup) (#1909)
    • fix netCDF easyblock for version 4.4.0 (#1911)
    • correct comment about when we set RUNPARALLEL in HDF5 easyblock (#1914)
    • do not sanity check on MATLAB compiler, since it requires a separate license (#1916)
    • build HDF5 without MPI C++ extension to avoid breaking linkage for C software that requires HDF5 (#1918, #1919)
    • override set_pylibdirs method in VersionIndependentPythonPackage to hard set self.pylibdir to ‘lib’ (#1924)
  • other changes:
    • increase timeout for interactive installation command in CUDA easyblock to 1000 sec. (#1878)
    • disable running of sudo apt-get update in GitHub CI config, since it’s failing (and we don’t really need it) (#1882)
    • stop requiring Python dep for SWIG, just configure with --without-python if Python is not a dependency (#1894)
    • update copyright statements for 2020 (#1905)
    • make Hound CI code style checker ignore “Black would make changes” produced by flake8-black (#1923)

easyconfigs

  • added example easyconfig files for 27 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • Beast 1.10.4, Boost.Python 1.71.0, Clang 9.0.1, ESMF 8.0.0, FSL 6.0.3, fastp 0.20.0, freeglut 3.2.1, GDAL 3.0.2, GEOS 3.8.0, GROMACS 2019.4, GSL 2.6, hwloc 2.1.0, Jellyfish 2.3.0, Julia 1.3.1, LibTIFF 4.1.0, libxml2 2.9.10, lxml 4.4.2, Mothur 1.43.0, mayavi 4.7.1, molmod 1.4.5, netCDF-C++4 4.3.1, netCDF-Fortran 4.5.2, numactl 2.0.13, OpenFOAM 7, OpenFOAM v1912, OpenMM 7.4.1, OpenMPI 4.0.2, PLUMED 2.5.3, PROJ 6.2.1, plotly.py 4.4.1, pocl 1.4, QuickFF 2.2.4, R 3.6.2 w/ foss/2019b and fosscuda/2019b, ReFrame 2.20, SAMtools 1.10, SUNDIALS 5.1.0, SWIG 4.0.1, Salmon 1.0.0, SuiteSparse 5.6.0, snakemake 5.7.1, TensorFlow 2.1.0 w/ fosscuda/2019b, torchvision 0.4.2, WPS 4.1, WRF 4.1.3
  • added easyconfigs for intel/2020.00 toolchain (#9575)
  • minor enhancements, including:
    • add POWER9 support to CUDA 10.1 easyconfigs (#9442)
    • build CMake in parallel (#9543)
    • use NCCL for GPU ops in Horovod 0.18.2 easyconfig (#9562)
    • update Java/1.8 wrapper to Java/1.8.0_231 (for x86_64) (#9585)
  • various bug fixes, including:
    • fix remote launch of broker and workers for SCOOP (#9366)
    • fix failing RPATH sanity check for NCL 6.6.2 due to missing dependencies (+ add easyconfig using foss/2018b) (#9388)
    • add missing ‘wheel’ extensions to Spark 2.4.0 easyconfig using intel/2018b toolchain (#9424)
    • add missing OS dependencies in Java 1.8 easyconfig used on POWER systems (#9454)
    • fix build of recent Bazel versions on Power9 + stick to Java/1.8 as dependency (#9455)
    • fix CMake 3.15.3 build on Power (+ enable building in parallel) (#9469)
    • fix source URLs in xorg-macros easyconfigs (#9477, #9578)
    • add missing wcwidth extension to Python 2.7.15 + 2.7.16 easyconfigs & enable ‘pip check’ in sanity check (#9479)
    • remove (wrong) GI_TYPELIB_PATH and XDG_DATA_DIRS in various easyconfigs (#9528, #9577, #9615)
    • use xorg-macros as dependency in X11 easyconfigs (rather than installing it as a bundle component) (#9546)
    • fix lpsymphony extension for R-bundle-Bioconductor (#9548)
    • add correct ‘old-versions’ source URL to all Mesa easyconfigs (#9569)
    • add missing SHA256 checksums for Armadillo (#9572)
    • also define $AUGUSTUS_BIN_PATH and $AUGUSTUS_SCRIPTS_PATH in generated module file for AUGUSTUS (#9579)
    • add SSL OS dependencies for GDAL 3.0.0 (#9586)
    • add missing jupyter_contrib_core extension for IPython 7.7.0+ + consistently include jupyter_nbextensions_configurator extension (#9587)
    • patch libcxx (Clang 8.0.0) on pcc64le for incomplete IBM128 long double in GCC (#9590)
    • patch for GCCcore 8.2.0 to fix ‘__float128 is not supported on this target’ on ppc64le (#9591)
    • fix broken easyconfigs for cyvcf2 v0.11.5 by adding missing ‘monotonic’ extension (#9601)
    • use absolute path for extraction to allow relocating the build dir for g2log-1.0 (#9604)
    • add alternate SHA256 checksum for kallisto-0.43.1 after re-release under same version without code changes (#9611)
    • add additional valid checksum for MASS 7.3-51.4 extension in R 3.6.0 easyconfigs (#9621)
    • update ctffind website (#9622)
    • make sure we use easybuild Clang in pocl easyconfigs (#9624)
    • make postinstallcmds independent of current working directory in OpenCV 3.1.0 easyconfigs (#9628)
    • update source_urls to include old releases folder in libsodium easyconfigs (#9632)
    • fix source URLs for ant v1.10.5 - v1.10.7 (#9633)
    • update URLs to new location of libxc (#9635)
    • add alternate SHA256 checksum for rda_1.0.2-2.1 extension in R 3.6.0 (#9644)
    • update source URLs in QCA 2.1.0 easyconfigs (#9647)
    • fix Python 3.5.1 easyconfig: bitstring 3.1.3 sources no longer available on PyPI (#9649)
    • fix tesseract 4.1.0 dependencies (#9650)
    • make ICU 64.2 depend on Python3 instead of Python 2, to avoid picking up system Python 3.x (#9652)
    • use True (boolean value) rather than 'True' (string value) for boolean easyconfig parameters (#9657)
    • fix pyfits easyconfig by adding missing d2to1 extension (#9687)
  • other changes:
    • disable running of sudo apt-get update in GitHub CI config, since it’s failing (and we don’t really need it) (#9492)
    • require that sanity_pip_check is enabled in new/changed easyconfigs (#9516, #9576)
    • update copyright statements for 2020 (#9598)
    • allow missing ‘-Python-*’ versionsuffix for existing easyconfig files changed in PRs (#9634)

EasyBuild v4.1.0 (December 4th 2019)

bugfix/update release

framework

  • various enhancements, including:
    • performance improvements:
      • skip validation when copying EasyConfig object for extension (#3071)
      • correctly specify that ActiveMNS & co are singleton classes when using Python 3 (#3073)
      • don’t call out to prohibitively expensive getRootLoggerName in getLogger, just use ‘root’ instead (#3074)
      • fix inconsistent module path usage that leads to repeated reloading in HMNS (#3099)
    • add support for specifying different dependency version based on processor architecture (#3047)
    • support use of glob patterns for paths to files with external modules metadata (#3075)
    • take into account that external modules may not be visible directly (due to module hierarchy) (#3083)
    • add support for including ‘extensions’ statement in Lua modules with Lmod 8.2.8+ (#3085, #3107, #3110)
    • add support for --sync-pr-with-develop (#3087)
    • add support for --new-branch-github, --new-pr-from-branch, --sync-branch-with-develop, --update-branch-github (#3103)
    • fix typo in docstring for new_branch_github (#3106)
  • various bug fixes, including:
    • correctly handle iccifortcuda toolchain with standalone iccifort in det_toolchain_compilers (#3055)
    • init git repo with git.repo.clone() instead of copy_dir() (#3062)
    • fix regular expression so depends-on statements are recognized correctly in Tcl module files (#3065)
    • update GitPython to latest version that supports Python 2.6 in requirements.txt to fix broken test_new_update_pr (#3066)
    • imply --disable-pre-create-installdir with --inject-checksums (#3069)
    • handle patches in extensions more like normal patches (#3067)
    • take into account that platform.linux_distribution and platform.dist was removed in Python 3.8 (#3078)
    • always include mandatory easyconfig parameters in dumped easyconfig (#3081)
    • hide backup module file when using Lmod 6.x (fixes #9302) (#3089)
    • add better error message when mandatory key is missing from a dictionary easyconfig parameter (#3092)
    • also create symlinks for default modules in class module folders (#3093)
    • fix semantics of --set-default-module: only set default for specified easyconfigs, not for the ones that are installed as dependencies via --robot (#3094)
    • fix various issues in extracting comments from original easyconfig file and including them again in dumped easyconfig (#3095)
    • don’t use %(version)s template in exts_default_options in dumped easyconfig (#3096)
    • fix generated module statements in case only a single version is listed in multi_deps (#3097)
    • fix broken test_show_system_info on macOS due to ‘Python’ binary (#3105)
    • take into account that dependency version could be a dict rather than a string value in template_constant_dict (#3111)
  • other changes:
    • deprecate running EasyBuild with Python 2.6 via new check_python_version() function (#3076)
    • deprecate support for using Lmod 6.x (#3077)
    • trim set of test configurations in Travis CI (#3086)
    • flesh out env_vars_external_module from Toolchain._simulated_load_dependency_module (#3088)

easyblocks

  • new software-specific easyblock for cuDNN, to allow setting cudnnarch (#1855)
  • refactored software-specific easyblock for Xmipp, based on Scons (#1837)
  • minor enhancements, including:
    • add prebuildopts to Bazel build command (#1838)
    • add support to Toolchain generic easyblock for defining $EB* environment variables for toolchain components that use an external module (#1849)
    • add support for running ‘pip check’ during sanity check in generic PythonPackage easyblock (#1853)
  • various bug fixes, including:
    • clean up /tmp/cuda-installer.log in CUDA easyblock, to avoid segfault in cuda-installer (#1835)
    • minor fix to name of Gctf binary (#1840)
    • move BLAS toolchain existence check earlier in SuperLU easyblock (#1842)
    • fixes for TensorFlow easyblocks w.r.t. Bazel build options & __init__ in top-level google-protobuf package dir (#1843)
    • fix support for sequential version in MUMPS easyblock (#1845)
    • change default value of files_to_copy to None in MakeCp generic easyblock + code cleanup & use change_dir, copy_dir, copy_file and mkdir function from filetools (#1848)
    • prepend -L$EBROOTZLIB/lib to LDFLAGS in SCOTCH easyblock (#1850)
    • improve configuration in netCDF and netcdf4_python easyblocks (#1852)
    • fix CUDA header paths for TensorFlow versions < 1.14 (#1854)
    • handle incorrect regex better in generic CmdCp easyblock (#1861)
    • add missing docstrings in cmakeninja easyblock (#1867)
  • other changes:
    • add GitHub Actions workflow to run easybuild-easyblocks test suite (#1844)

easyconfigs

  • added example easyconfig files for 46 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • awscli 1.16.290, BLIS 0.6.0, Bazel 1.1.0, Biopython 1.75, Blender 2.81, bokeh 1.4.0, CONCOCT 1.1.0, CUDA 10.2.89, Catch2 2.11.0, CellRanger 3.1.0, CheckM 1.0.18, dask 2.8.0, deepTools 3.3.1, FastANI 1.2, Flye 2.6, GDCM 3.0.4, GTDB-Tk 0.3.2, Glade 3.8.6, Hadoop 2.9.2, h5py 2.10.0, hypothesis 4.44.2, IPython 7.9.0, Kaiju 1.7.2, Kraken 1.1.1, libsodium 1.0.18, MEGAHIT 1.2.8, Mesa 19.2.1, MetaBAT 2.14, matplotlib 3.1.1, metaWRAP 1.2.2,cNCCL 2.4.8, NGS 2.10.0, NiBabel 2.5.1, netCDF 4.7.1, networkx 2.4, numba 0.46.0, OpenCV 3.4.7, OpenCoarrays 2.8.0, OpenEXR 2.4.0, OpenFOAM v1906, OpenImageIO 2.0.12, ParaView 5.6.2, Pillow 6.2.1, PyTorch 1.3.1, PyYAML 5.1.2, Pysam 0.15.3, picard 2.21.1, prokka 1.14.5, protobuf 3.10.0, R-keras 2.2.5.0, Racon 1.4.7, SCOTCH 6.0.9, SRPRISM 3.1.1, Salmon 0.14.2, SciPy-bundle 2019.10, Subread 2.0.0, scikit-image 0.16.2, scikit-learn 0.21.3, TRIQS 2.2.1, TensorFlow 1.15.0, TensorFlow 2.0.0 w/ fosscuda/2019b, Tkinter 3.7.4, ToFu 1.4.1, tbb 2019_U9, Xerces-C++ 3.2.2, Xmipp 3.19.04, yaff 1.6.0
  • added easyconfigs for intelcuda/2019a toolchain (#9271)
  • minor enhancements, including:
    • tweak Java 1.8 wrapper to use different Java version on POWER systems (#9081)
    • add jupyter_nbextensions_configurator extension to IPython 7.7.0 easyconfigs (#9133)
    • add additional extensions to R 3.6.0 easyconfigs (#9184, #9275)
    • add additional extensions to R-bundle-Bioconductor 3.9 easyconfig (#9185, #9349, #9410)
    • enhance sanity check in cutadapt 1.18 easyconfigs + consistently use PythonBundle & use_pip (#9219)
    • update cuDNN 7.6.4.38 easyconfigs to support both x86_64 and ppc64le (#9331)
    • tweak NCCL 2.4.8 easyconfig to support x86_64 and ppc64le (#9336)
    • define $SPARK_HOME in generated module file for Spark 2.4.0 (#9408)
    • add sanity check command for matplotlib 3.x with Python 3 to check import from mpl_toolkits (#9413, #9414)
  • various bug fixes, including:
    • explicitly set SYSCONFDIR configure option in TurboVNC easyconfig (#9137)
    • patch pigz Makefile so zlib provided by EasyBuild is picked up (#9138)
    • add libjpeg-turbo as dependency to recent LibTIFF easyconfigs, to avoid picking up LibTIFF installed in system (#9146)
    • add freetype as dependency to OpenImageIO, to avoid picking up freetyype installed in system (#9147, #9152)
    • fix definition of fosscuda/2019b to make sure it works with hierarchical MNS (#9178)
    • add missing setuptools_scm extension required to build dateutil extension in Python 3.7.0 easyconfigs (#9209)
    • add Python as build dependency for recent Bazel versions (#9223, #9299, #9342)
    • fix homepage & description in Bioconductor easyconfigs (#9225)
    • fix checksum in Stacks 2.41 easyconfig after sneaky re-release (#9232)
    • apply fixes to ImageJ 1.51k easyconfig (#9245)
    • consistently use patch for OpenCV 3.4.7 (#9279)
    • use protobuf 3.10.0 as build dep for TensorFlow 2.0.0 w/ fosscuda/2019b + use nodocs variant of git as build dep (#9298)
    • add Jasper dependency to Qt5 v.5.13.1 (#9313)
    • fix Python 3.7.2 required OpenSSL version for old OS to the one provided on the same toolchain (#9324)
    • add missing extensions required by Sphinx & pytest to easyconfigs for Python 3.7.2 and 3.7.4 (#9329)
    • update TensorFlow v1.14.0 + v2.0.0 CUDA patch to handle compiler wrappers like ccache (#9333)
    • patch binutils 2.31.1 and 2.32 to fix compatibility with RHEL8 (#9335)
    • add missing extensions in TensorFlow 2.0.0 easyconfigs (+ update to tensorboard/tensorflow-estimator 2.0.1) (#9338)
    • fix logic to determine location of scripts dir + ensure right compiler flags are used in KAT easyconfigs (#9360)
    • add missing GCCcore-6.3.0_fix-sanitizer_linux.patch in GCCcore 6.4.0 easyconfig (#9362)
    • fix linker errors when linking with libhts.a for MetaBAT 2.12.1 (#9379)
    • add egg-info file via patch in VTK v8.2.0, for Pytho 2.7.15, 3.7.2, 3.7.4 (#9386)
    • promote binutils to a runtime dependency for Python in GCCcore based builds (#9402)
    • fix archive URL typo for ncdf4 (#9407)
    • fix problems with mpl_toolkits namespace for matplotlib easyconfigs using Python 2 (#9415, #9416, #9417)
  • other changes:
    • ignore commented out lines in easyconfig files when checking for http:// URLs (#9224)
    • add GitHub Actions workflow to run easybuild-easyconfigs test suite (#9231, #9255)
    • archive old patches for Xmipp 3.1 (#9256)
    • speed up easyconfigs test suite by avoiding re-parsing and re-ordering of easyconfigs (#9236)
    • only run easyconfigs test suite with Python 2.7 & 3.6 + Lmod 7 in Travis CI (#9297)
    • archive ACML easyconfigs (#9367)
    • update CMake build in Eigen 3.3.7 to use more recent toolchain (#9398)

EasyBuild v4.0.1 (October 15th 2019)

bugfix/update release

framework

  • various enhancements, including:
    • add ‘parallel’ to list of config templates (#3036)
    • add GitHub Actions workflow to run easybuild-framework test suite (#3039)
    • add ‘retest’ as a reason to --close-pr, to close/re-open PRs to trigger re-test in Travis (#3040)
    • define $EB_SCRIPT_PATH in ‘eb’ wrapper script, and consider it before location of ‘eb’ determined via $PATH in get_paths_for function (#3046)
    • add support for --remove-ghost-install-dirs configuration option, and warn about (potential) ghost install dirs by default when --force/--rebuild is used (#3050)
  • various bug fixes, including:
    • update bootstrap script to support installing EasyBuild v4.0 (#3017)
    • fix broken test_download_repo due to archiving of easyconfigs (#3019, #3023)
    • avoid that --inject-checksums introduces list of patches for extensions as a single long line (#3025, #3034)
    • enhance regex in fix_shebang method to fix more Python/Perl shebangs + avoid patching binary files (#3029)
    • delete test gist that is created by --check-github (#3031)
    • disable templates when defining easyconfig parameters in EasyConfig.set_keys() (#3037)
    • avoid setting GC3Pie’s max_in_flight to None if --job-max-jobs is not specified (#3038)
    • fix use of obtain_file method for extensions (#3042)
    • error out if some GC3Pie job failed (#3044)

easyblocks

  • one new generic easyblock: CMakeNinja (#1829)
  • new software-specific easyblock for Gctf (#1827), MotionCor2 (#1819)
  • minor enhancements, including:
    • update OpenFOAM easyblock for changes in version 1906 w.r.t. wamke rules (#1772)
    • add %(cudaarch)s template variable so that it can be used in sources (#1797)
    • update Boost easyblock for versions >=1.71.0 (#1814)
    • update RepeatMasker easyblock for version 4.0.9 (#1815)
    • add --verbose flag to ‘pip install’ when running EB in debug mode (#1822)
    • update TensorFlow easyblock to support TensorFlow 2.0 (#1823)
    • add support in TensorFlow easyblock to run a custom test script as smoke test (#1824)
    • add support for installing QScintilla on top of PyQt5 (#1825)
    • update VEP easyblock to make installation compatible with Bio::EnsEMBL::XS (#1828)
  • various bug fixes, including:
    • enhance TensorFlow easyblock to support installing TF 1.14.0 with CUDA and MPI support (#1811, #1816)
    • avoid UnicodeDecodeError when reading ‘configure’ script and checking for ‘Generated by GNU Autoconf’ in ConfigureMake (#1817, #1821)
    • don’t require ‘python’ command to install libxml2 without Python bindings (#1818)
    • make sure “generic=True” actually turns on generic build in GCC easyblock (#1826)
    • fix compatibility of Trilinos easyblock with Python 3 (#1831)

easyconfigs

  • added example easyconfig files for 58 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • Armadillo 9.700.2, arpack-ng 3.7.0, BLASR 5.3.3, Bazel 0.26.1 + Bazel 0.29.1, Cufflinks 20190706, DL_POLY_Classic 1.10, FFmpeg 4.2.1, Go 1.13.1, Horovod 0.18.1, IOR 3.2.1, Julia 1.2.0, LLVM 9.0.0, Mesa 19.1.7, Molden 6.1, Mono 6.4.0.198, NCO 4.8.1, , Net-core 3.0.0, Nim 1.0.0, OpenFOAM 2.2.x, PGI 19.7, PLUMED 2.5.2, PMIx 3.1.4, PostgreSQL 11.3, psycopg2 2.8.3, QGIS 3.4.12, QScintilla 2.11.2, Qt5 5.13.1, ReFrame 2.19, Rust 1.37.0, Spack 0.12.1, TAMkin 1.2.6, TensorFlow 1.14.0 w/ fosscuda/2019a, TensorFlow 2.0.0 w/ foss/2019a, UCX 1.6.1, VEP 96.0, xarray 0.13.0
  • added easyconfigs for fosscuda/2019a toolchain (#9066)
  • minor enhancements, including:
    • add EBImage extension to easyconfig for R-bundle-Bioconductor 3.9 (#8982)
    • add check for http:// URLs in easyconfig files added/changed in PRs (#9012)
    • add bbmle/emdbook/SOAR/rasterVis/tictoc extensions to R 3.6.0 easyconfigs (#9037)
    • updated PyQt5 5.12.1 easyconfig to also build sip files + minor readability changes (#9071)
    • enabled SQLITE_ENABLE_COLUMN_METADATA, which is needed for GDAL (and QGIS) (#9118)
    • also install include/GL/internal/ for recent Mesa installations (#9129)
  • various bug fixes, including:
    • add ncurses as dependency to lftp (#8646)
    • add patch for gettext 0.19.8* to avoid picking up global git config that could break the installation (#8957)
    • fix source URLs in GlimmerHMM easyconfigs (#8980)
    • add patch for PyTorch 1.2.0 to use version of torchvision that is compatible with PyTorch 1.2.0 (#8986)
    • clarify the comment regarding the optarch setting in ITK-5.0.1 (#8991)
    • fix homepage & description in easyconfig file for YAPS (#8993)
    • add patch for PyTorch 1.2.0 to fix failing softmax test on Intel Sandy Bridge (#9010)
    • fix permissions for TRF (#9034)
    • ICU needs Python 2.7+ to build, so add that as builddependency (#9053)
    • fix urls for Anaconda and Miniconda (#9087)
    • use a cuDNN version that has support for the CUDA version in fosscuda/2019a (CUDA 10.1) in PyTorch, TensorFlow and Theano easyconfigs (#9112)
  • other changes:
    • make sources in CUDA 10.1.105 use %(cudaarch)s template value (to use different source on POWER systems) (#8136)
    • update Java/1.8 wrapper to Java/1.8.0_221 (#9038)
    • allow divergent Java dep version as long as it’s indicated by versionsuffix (#9041)

EasyBuild v4.0.0 (September 20th 2019)

feature release (incl. backwards-incompatible changes)

framework

easyblocks

  • fixes due to backwards-incompatible changes in easybuild-framework v4.0.0
    • use is_system_toolchain() rather than checking toolchain name against DUMMY_TOOLCHAIN_NAME constant (#1690, #1728)
  • fix compatibility of various easyblocks with Python 3 (#1640, #1644, #1648, #1721, #1794, #1808, #1795, #1796, #1807, #1809)
  • new software-specific easyblocks for OpenMPI (#1789, #1801), iccifort (#1799) and numexpr (#1803, #1804)
  • various other enhancements, including:
    • removed checks for Boussinesq and sonic solvers for OpenFOAM 7, since those have been deprecated (#1733)
    • update Paraver easyblock to support recent versions (#1790)
  • various bug fixes, including:
    • update the PyPI trove classifiers (#1723)
    • make the plugins build use the correct Tcl library version in VMD easyblock (#1786)
    • use *_MT libs for BLAS/LAPACK only if openmp is enabled in Trilinos easyblock (#1791)
    • filter out empty entries in $CPATH or $C_INCLUDE_PATH when building Perl, since that breaks the build (#1800)
    • set $XDG_CACHE_HOME in TensorFlow easyblock to avoid that pip (ab)uses $HOME/.cache (#1802)
    • don’t load modules for dependencies in CrayToolchain.prepare_step (#1805)
  • other changes:
    • drop requirement for setuptools as runtime dependency (#1689)
    • enable ‘check_ldshared’ in generic PythonPackage easyblock by default for recent Python versions (#1788)
    • stop trying to use setuptools.setup in setup.py, always use distutils.core.setup instead (#1793)

easyconfigs

  • fixes due to changes in easybuild-framework v4.0.0
  • fix compatibility with Python 3: also run easyconfigs tests with Python 3.5, 3.6 and 3.7 (#7778, #7836, #8293)
  • added easyconfigs for new common toolchains: foss/2019b (#8567), intel/2019b (#8681)
  • added example easyconfig files for 28 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • Blosc 1.17.0, bokeh 1.3.4, cURL 7.66.0, csvkit 1.0.4, dask 2.3.0, Extrae 3.7.1, FSL 6.0.1, GLibmm 2.49.7, git 2.23.0, IPython 7.7.0, numexpr 2.7.0, OSU-Micro-Benchmarks 5.6.2, OpenBLAS 0.3.7, OpenSSL 1.1.1d, ParaView 5.5.2, Paraver 4.8.1, Perl 5.30.0, PnetCDF 1.10.0, Porechop 0.2.4, PyTables 3.5.2, PyTorch 1.2.0, Python 2.7.16 + 3.7.4, parallel 20190622, phonopy 2.2.0, QIIME2 2019.7, Qiskit 0.12.0, REMORA 1.8.3, scikit-image 0.15.0, spglib-python 1.14.1.post0, torchvision 0.3.0, X11 20190717
  • various additional minor enhancements, including:
    • add several extensions to R 3.6.0 easyconfigs (#8843, #8881)
    • add pRoloc to R-bundle-Bioconductor v3.9 (#8882)
    • clean up OpenMPI 3.1.* and 4.* easyconfigs to use custom OpenMPI easyblock (#8889, #8890)
    • update numexpr easyconfigs to use custom easyblock for numexpr (#8901)
    • switch to PythonBundle & enable use_pip in old dask easyconfig files (#8922)
    • update CrayCCE, CrayGNU, CrayIntel and CrayPGI toolchains to 19.06 (#8944)
  • various bug fixes, including:
    • make TensorFlow 1.7.0 work for AMD CPUs (#6256)
    • make sure that right Python wrapper is used in VTK8 (#7296)
    • update the PyPI trove classifiers (#8298)
    • add missing checksum for matplotlib v3.0.3 (#8643)
    • add patch to plugins/Make-arch to use the correct Tcl library version in VMD (#8820)
    • fix issue where ‘print_qiime_config.py -t’ sanity check command fails for QIIME 1.9.1 because of missing subdir in $PYTHONPATH (#8838)
    • update homepage info in likwid (#8846)
    • disable threading in preprocessCore extension included with Bioconductor 3.9 to work around conflict with OpenBLAS’s threading (#8847)
    • add -lrt patch to PyTorch 1.1.0 easyconfig (#8852)
    • fix incorrect escaping in SIP configure options in PyQt5 easyconfigs (#8856)
    • add missing Autotools build dep for fastq-tools (#8858)
    • add missing deps for zlib, bzip2, and XZ for angsd (#8867)
    • apply patch to R package uroot in R 3.6.0 (#8872)
    • consider archive source URL for all extensions in R-tesseract easyconfig (#8897)
    • add pkg-config build dep for tesseract v4.0.0 (#8898)
    • fix source_urls in byacc easyconfig files (#8899, #8908)
    • add missing cairo dependency to PRINSEQ easyconfig file (#8902)
    • configure OpenMPI 1.10.x with --without-ucx to avoid problems when ucx-devel is installed in the OS (#8903)
    • add GDAL 3.0.0 for Python 2.7.15 and fix the Python 3.7.2 version (#8912)
    • fix homepage & description in scikit-image easyconfigs (#8916)
    • add faulthandler patches to Python 3.7.0 easyconfigs (#8832)
  • other changes:
    • archive ancient CUDA 5.0.35 easyconfigs with creative way of determining sources (#7796)
    • remove ancient easyconfigs from archive (#8542)
    • archive easyconfigs using deprecated toolchains (#8557, #8558, #8585)
    • archive ancient versions of GC3Pie/GCC/OpenMPI/ORCA (#8586) & CPLEX (#8765)
    • rename SALMON to SALMON-TDDFT to fix name clash with Salmon (#8613)
    • bump AnnotationDb version in bundle for Bioconductor 3.9 (#8854)
    • stop trying to use setuptools.setup in setup.py, always use distutils.core.setup instead (#8866, #8892, #8894)
    • archive easyconfigs using ancient Cray* toolchains (#8945)

EasyBuild v3.9.4 (August 23rd 2019)

bugfix/update release

framework

  • various enhancements, including:
    • add support for specifying checksum via dict providing a filename-to-checksum mapping (#2946)
    • enhance ‘completed’ message with how much time was needed for the installation (#2956)
    • add support for specifying tuple of alternative checksums (#2958)
    • support using ‘system’ as alias for ‘dummy’ toolchain + SYSTEM constant (#2960)
    • ensure ‘docurls’ easyconfig parameter value is a list of string values, not a single string value (#2963)
    • automatically enable --ignore-osdeps when using --check-contrib or --check-style (#2965)
  • various bug fixes, including:
    • escape ‘+’ in search queries + handle invalid search queries better (#2967)
    • also consider extension patches when determining for which easyconfig a given patch file is intended in --new-pr/--update-pr (#2969)
    • unset $CDPATH early on if it is defined (#2970)
    • create specified temporary log directory if it doesn’t exist yet in init_logging (#2972)
    • don’t indicate first multi_deps version as default in module help text when multi_deps_load_default=False (#2973)
  • other changes:
    • deprecate toolchains older than gompi/2016a and foss/2016a (#2951)

easyblocks

  • new software-specific easyblock for MSM (#1770, #1775, #1776)
  • minor enhancements, including:
    • allow specifying the license file directly in MATLAB easyblock (#1712)
    • enhance CPLEX easyblock to also build Python bindings (#1738)
    • workaround for XCrySDen for Tcl 8.6 (#1749)
    • update WIEN2k easyblock to support version 19.1 (#1758)
    • resolve custom %(cudaarch)s template value for CUDA sources (#1766)
    • enhance sanity check for Blender to make sure that Cycles render engine is available (#1779)
  • various bug fixes, including:
    • only check for qtwebengine in custom easyblock for Qt(5) if glibc is sufficiently recent (#1771)
    • correctly define comp.src in Bundle easyblock, to fix compatibility with easyblocks that leverage self.src (#1777)
    • fix Bundle.check_checksums to checksums for extensions are also checked (#1778)

easyconfigs

  • added example easyconfig files for 36 new software packages:

  • added additional easyconfigs for various supported software packages, including:

    • ASE 3.18.0, BEDTools 2.28.0, Bowtie 1.2.3, bzip2 1.0.8, CPLEX 12.9, CUDA 10.1 update 2, cyvcf2 0.11.5, EIGENSOFT 7.2.1, GC3Pie 2.5.2, GCC(core) 9.2.0, GPAW 19.8.1, GlobalArrays 5.7, IMB 2019.3, imageio 2.5.0, jemalloc 5.2.0, nodejs 10.15.3, PyTorch 1.1.0, pybedtools 0.8.0, Quandl 3.4.8, R 3.6.0 w/ intel/2019a, R-bundle-Bioconductor 3.9, Salmon 0.14.1, Scalasca 2.5, Score-P 6.0, Stacks 2.41, TensorFlow 1.14.0, ToFu 1.4.0, WIEN2k 19.1, Wannier90 3.0.0, XCrySDen 1.5.60
  • minor enhancements, including:

    • add patch and dependencies to easyconfig for Qt5 5.12.3 to fix Xlib support & enhance the installation (#8544)
    • update nodejs to version 10.15.3 and build libnode and libv8 shared libs (#8546)
    • add extensions to R 3.6.0 easyconfig: MIIVsem (#8565), medflex (#8680), Rserve/spls (#8758), Boruta/CovSel/ctmle/BayesPen (#8805)
    • include PyQtWebEngine bindings in easyconfig for PyQt5 5.12.1 using Python 3.7.2 (#8572)
    • switch GLX backend to Gallium in Mesa-19.0.1 (#8594)
  • various bug fixes, including:

    • fix typo in description in GroopM easyconfig file (#8346)
    • add missing bugfix patch to easyconfig for OpenMPI 3.1.4 (#8566)
    • downgrade AtomPAW to last supported version in ABINIT 8.10.3 (#8571)
    • switch easyconfig for glew 2.1.0 to ConfigureMake easyblock (#8595)
    • fix checksum for source tarball in foss/2018b easyconfig of NAMD v2.13 (#8602)
    • update URL for bzip2 easyconfigs (#8614)
    • add patch for M4 1.4.17 to fix installation on top of glibc 2.28 (#8666)
    • add patch for Bison 3.0.4 to fix installation on top of glibc 2.28 (#8675)
    • avoid needless requirement for matplotlib < 3.0.0 in MultiQC easyconfigs (#8691)
    • fix checksum in OpenMPI 1.8.8 easyconfigs (#8692)
    • add alternative checksums for nlme/mgcv/foreign/boot extensions in R 3.5.1 and 3.6.0 easyconfigs (#8564, #8762)
    • add missing core-counter dependency for worker 1.6.8 (#8749)
    • add missing pkg-config build dependency in various easyconfigs for (#8763, #8775, #8777, #8776, #8764, #8787, #8816)
    • add patch to Python 3.7.2 easyconfig to fix faulthandler segfault (#8781)
    • set $CPLUS_INCLUDE_PATH in easyconfigs for older matplotlib versions (#8785)
    • patch out removed glibc 2.28 header from GCC libsanitizer (#8789)
    • include sysmacros.h directly to work around removal from glibc header in numactl easyconfig (#8790)
    • adapt gzip’s bundled gnulib for glibc 2.28 (#8791)
    • add libtirpc and depend on it in easyconfig for libdap 3.20.3 (#8792)
    • add missing YAML extension to Perl 5.28.0 easyconfig (required by BioPerl scripts) (#8806)
  • other changes:

    • remove broken easyconfigs for ciftify due to non-trivial missing dependencies (#8560)

EasyBuild v3.9.3 (July 8th 2019)

bugfix/update release

framework

  • various enhancements, including:
    • add a URL whatis line to generated module files (#2933)
  • various bug fixes, including:
    • stick to Ubuntu Trusty when testing with Python 2.6 in Travis (#2928)
    • honor --tmp-logdir when determining location of temporary log file (#2937)

easyblocks

  • minor enhancements, including:
    • also install docs and demos in Rosetta easyblock (#1745)
    • update HEALPix easyblock to work with latest version of HEALPix’ configure.sh (#1752)
    • make HPCG log pattern more generic, it changed in 3.1 (#1753)
    • allow bootstrapping GCC with profile-guided optimizations (#1756)
    • only require vsc-base for EasyBuild 2.x and 3.x in EasyBuildMeta easyblock (#1757)
    • extend question patterns with ‘https’ URL entry in Modeller easyblock for recent versions (#1762)
    • modextrapaths implemented on easyblock level, sanity_check_step, gcc_target added in HEALPix easyblock (#1763)
    • update OpenBLAS easyblock to be aware of POWER9 support in OpenBLAS 0.3.6 (#1765)
  • various bug fixes, including:
    • stick to Ubuntu Trusty when testing with Python 2.6 in Travis (#1751)
    • fix scripts installation path in SNPhylo easyblock (#1759)
    • be more patient when running interactive Allwmake.firstInstall command for recent OpenFOAM-Extend versions (#1761)
    • also add --without-go configure option for SWIG as we “disable everything by default” (#1754)
    • don’t assume cmake arguments when configure_cmd is set in CMakeMake easyblock (#1750)

easyconfigs

  • added example easyconfig files for 25 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • ABINIT 8.10.3, CFITSIO 3.47, GDB 8.3, GROMACS 2019.3, HEALPix 3.50, HPCG 3.1, Nilearn 0.5.2, OpenBLAS 0.3.6, Xerces-C++ 3.2.0
  • minor enhancements, including:
    • update easyconfig for CFITSIO 3.45 with https and sanity check (#8472)
    • add AtomPAW and Wannier90 support to ABINIT 8.10.2 easyconfig (#8506)
    • add ‘resample’ extension to R 3.5.1 + 3.6.0 easyconfigs (#8538)
  • various bug fixes, including:
    • fix source URLs for Mesa 17.{2,3} with fosscuda toolchain (#8446)
    • add in Boost dependency to canu-1.8 easyconfigs using foss toolchain (#8470)
    • stick to Ubuntu Trusty when testing with Python 2.6 in Travis (#8483)
    • fix incorrect order of extensions for Python-2.7.14 easyconfigs (pycparser and cffi must come before cryptography) (#8495)
    • suppress installation of libbfd and libopcode for GDB (#8496)
    • fix KronaTools easyconfigs to make sure symlinks in bin are not broken (#8508)
    • make additional configopts in PETSc easyconfigs work after uncommenting (#8522)
    • add pkg-config build dep to easyconfig for pocl 1.2 (#8528)
    • download correct source tarball for Net-core 2.1.8 (#8530)
    • fix ‘Permission denied’ error when running ‘cp -a’ for ANTs 2.3.1 installation by first removing the .git subdirectories causing them (#8535)
    • fix checksum for boot 1.3-22 extension in R 3.6.0 easyconfig (#8537)

EasyBuild v3.9.2 (June 9th 2019)

bugfix/update release

framework

  • various enhancements, including:
    • enhance (experimental) support for generating Singularity container recipes/images (#2884, #2900, #2902, #2903, #2907, #2909, #2910, #2913, #2915)
      • add support for specifying container configuration via --container-config (--container-base option has been removed)
      • add support for providing custom template for container recipe via --container-template-recipe
      • add support for ‘sif’ Singularity 3.x container image format
      • add support for specifying non-image based Singularity bootstrap agents
      • install default set of OS packages in container recipes starting from scratch
      • configure Lmod and update Lmod spider cache in generated Singularity container recipes
      • configure EasyBuild via environment variables (to allow overriding configuration settings via options to ‘eb’ command)
      • also consider /tmp/easybuild/sources in source path (to allow seeding in sources in container build environment)
      • updated documentation is available at https://easybuild.readthedocs.io/en/latest/Containers.html
  • various bug fixes, including:
    • make sure that easyconfig file for EasyBuild version being bootstrapped is found in robot search path (#2899)
    • remove interpreter options when fixing script shebang (#2905, #2906)
    • fix crash on iterated installation when using Cray toolchains (#2914)
    • disable checking of read/exec permissions when checking for availability of ‘sudo’ command (#2918)
  • other changes:
    • stick to vsc-base < 2.9.0 in bootstrap script to avoid requiring ‘future’ dependency (#2892)

easyblocks

  • new software-specific easyblock for ELPA (#1621)
  • minor enhancements, including:
    • allow Boost to build both Python 2 and Python 3 libraries (#1718)
    • update CPLEX sanity check: convert tool was removed in CPLEX 12.8 (#1737)
    • don’t try to patch CROSSTOOL script for recent Bazel versions (since it’s no longer there) (#1741)
  • various bug fixes, including:
    • fix version check on using ‘-log’ option to ‘Allwmake’ in OpenFOAM easyblock (#1739)
    • fix GROMACS easyblock for list-type configopts (#1740)
    • fix configure step for GROMACS version < 4.6 (#1742)

easyconfigs

  • added example easyconfig files for 17 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • BLAST+ 2.9.0, Boost.Python 1.70.0, DIAMOND 0.9.24, EMAN2 2.3, ecCodes 2.12.5, GDAL 3.0.0, ImageMagick 7.0.8-46, Libint 2.5.0, matplotlib 2.2.4, NLopt 2.6.1, OrfM 0.7.1, PGI 19.4, PostgreSQL 11.3, R 3.6.0, R-bundle-Bioconductor 3.8, Rust 1.35.0, STAR 2.7.1a
  • minor enhancements, including:
    • use CMake rather than configure script for libxc 4.3.4 (#8361, #8453)
    • add ‘cobs’ extension to R 3.5.1 easyconfigs (#8389)
    • add sanity check command to PSI4 1.2.1 easyconfigs to ensure that ‘import psi4’ works (#8393)
    • include the provided backports patch in QuantumESPRESSO-6.4.1 (#8405)
    • add Logger::Simple, Scalar::Util::Numeric, YAML, Object::InsideOut extensions to Perl 5.28.1 easyconfig (#8432)
    • update Java 1.8 to 1.8.0_212 (#8443)
  • various bug fixes, including:
    • add missing build dependency on gettext to ATK/2.28.1 for fosscuda/2018b (#8402)
    • add patch to fix OpenBLAS v0.3.1 matrices multiplication issue (#8396)
    • make Eigen a build dependency for nanopolish (#8448)
  • other changes:
    • clean up ELPA 2018.11.001 easyconfig to use custom easyblock for ELPA (#8360)
    • remove unused checksum for ballgown extension in Bioconductor 3.7 easyconfigs (#8363)

EasyBuild v3.9.1 (May 20th 2019)

bugfix/update release

framework

  • various enhancements, including:
  • various bug fixes, including:
    • only call ‘scontrol release’ when there’s at least one job submitted (#2834)
    • fix small bug in find_eb_script + various minor issues with tests (related to environment in which tests are run) (#2835)
    • list build dependencies before runtime dependencies, so dependencies listed via multi_deps are loaded first in toolchain environment (#2839)
    • allow setting parallel to 0 or False to disable adding the -j argument (#2842)
    • be more careful when using single quotes for Tcl syntax (#2847)
    • append to existing .modulerc file rather than overwriting it (if --force is used) (#2848)
    • correctly resolve template values used for extensions (#2852)
    • update template values after updating iterative easyconfig parameters (#2854)
    • add top-level directories of hierarchical module naming scheme to $MODULEPATH before loading dependencies (#2857)
    • inject dependencies specified via multi_deps before normal build dependencies (#2861)
    • include Python version(s) in PR titles auto-generated by --new-pr (#2863, #2880)
    • update HierarchicalMNS for GCCcore toolchain (#2870)
    • bump iteration index counter at the correct time (#2886)
    • don’t specify --ntasks-per-node when submitting Slurm jobs (#2887)
    • fix order of easyconfig parameters in output generated by ‘eb --avail-easyconfig-params --output-format rst’ (#2888)
  • other changes:
    • lower required version in Slurm job backend to 16.05 (#2833)
    • add Lmod 8 to test suite (#2849)
    • deprecate useless ‘skip_lower’ named argument in template_constant_dict, always define *lower templates (#2856)
    • fix Python classifiers in setup.py, should be (only) Python 2.6 & 2.7 (#2876)

easyblocks

  • one new generic easyblock: CMakeMakeCp (#1725)
  • new software-specific easyblock for Blender (#1595), Lua (#1396), OpenBLAS (#1693, #1697)
    • OpenBLAS easyblock also supports installation on POWER systems
  • minor enhancements, including:
    • enhance VMD easyblock to also build Surf & Stride + pick up netCDF for VMD >= 1.9.3 (#1314)
    • update CGAL easyblock to support CGAL 4.12 & newer (#1679)
    • update QuantumESPRESSO easyblock for v6.4.1 (#1692)
    • enhance Advisor & VTune easyblocks, since no license is required starting with version 2019 update 3 (#1694, #1695)
    • handle new multi-deps Python setup with $EBPYTHONPREFIXES for Tensorflow (#1702)
    • make CHARMM easyblock pick up on prebuildopts and runtest (#1707)
    • change default value for 'use_pip’ to None, so we can discriminate from ‘use_pip’ being set to False explicitly (#1709)
    • make PythonPackage aware of (pre)testopts (#1715)
    • enable GPU offloading in Clang if CUDA is included as a dep (#1716)
    • add support to Clang easyblock for also building libc++ and RTTI (#1717)
    • rebuild internal libfabric for impi 2019.x & more recent (#1730)
    • update Q&A patterns in SAS easyblock for version 9.4 + add support for custom license file path (#1731)
  • various bug fixes, including:
    • only install mkl-dnn by default with TensorFlow on x86-64 systems (#1666)
    • make sure ldconfig can be found before using it in CUDA easyblock (#1684)
    • use temporary directory for pip cache (rather than $HOME/.cache/pip) in PythonPackage easyblock (#1687)
    • allow oversubscription when testing FFTW on top of OpenMPI >= 3.0 (#1688)
    • make sure $HOME/.cache/pip isn’t used while installing Tkinter (#1691)
    • set default exts_filter in PythonBundle, so already installed extensions in a bundle can be skipped (#1701)
    • instruct Bazel to not use $HOME/.cache/bazel in TensorFlow easyblock (#1704)
    • also set $XDG_CACHE_HOME during installation of Python, to ensure that ‘pip’ that comes along with it doesn’t touch $HOME/.cache/pip (#1705)
    • use -fp-model precise if FMA instructions are missing in GROMACS easyblock (#1706)
    • make sure Perl install dir follows a standard format (#1708)
    • attach source_urls directly to sources for components in generic Bundle easyblock (#1711)
    • avoid that --no-build-isolation option is specified multiple times in PythonPackage easyblock (#1713)
    • fix prefix in impi compiler wrappers (#1727)
    • only embed zlib in binutils if it is listed a build dependency (#1732)
  • other changes:
    • fix Python classifiers in setup.py, should be (only) Python 2.6 & 2.7 (#1724)

easyconfigs

  • added easyconfigs for new toolchains:
  • added example easyconfig files for 52 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • Boost 1.70.0, cairo 1.16.0, CGAL 4.14, Clang 8.0, cutadapt 2.1, dask 1.1.4, ELPA 2018.11.001, FFmpeg 4.1.3, GCC 9.1.0, GEOS 3.7.2, GLib 2.60.1, gmsh 4.2.2, GROMACS 2019.2, GTK+ 3.24.8, h5py 2.9.0, hwloc 1.11.12, Hypre 2.15.1, Mathematica 12.0.0, matplotlib 3.0.3, Mesa 19.0.1, NBO 7.0, NCL 6.6.2, NCO 4.7.9, NiBabel 2.4.0, numba 0.43.1, OpenMPI 3.1.4, OrthoFinder 2.3.3, PCMSolver 1.2.3, PETSc 3.11.1, PROJ 6.0.0, PyQt5 5.12.1, PyTorch 1.0.1, PyYAML 5.1, Qt5 5.12.3, QuantumESPRESSO 6.4.1, R 3.5.1 (w/ intel/2018b), RNAIndel 1.0.0, Ruby 2.6.3, scikit-learn 0.20.3, SLEPc 3.11.0, sympy 1.4, Tkinter 3.7.2, Vim 8.1.1209, VTK 8.2.0, wrf-python 1.3.1, wxPython 4.0.4, wxWidgets 3.0.4, xarray 0.12.1, zstd 1.4.0
  • minor enhancements, including:
    • enable auto-download of VMD 1.9.3 + add patches for Surf and Stride (#7305)
    • add mlegp extension in R 3.5.1 easyconfigs (#7814)
    • add pkg-config file to bzip2 easyconfigs (#8200)
    • allow use of ‘use_pip = False’ in easyconfigs if pip doesn’t work (#8220)
  • various bug fixes, including:
    • fix checksums for nlme extensions in R easyconfigs (#7814, #8054)
    • add missing XZ dependency for Pysam > 0.12 (#7971)
    • define $GRACE_HOME in Grace easyconfigs, so that font dir can be located (#8048)
    • $XDG_DATA_DIRS must be set for GTK+ (#8089)
    • add missing FriBidi dependency for Pango 1.43.0 (#8103)
    • add (back) custom sanity_check_paths in recent Pango easyconfigs (#8106)
    • fix missing extensions in cutadapt 1.16 easyconfigs (#8130)
    • add missing cURL dependency for recent SAMtools versions (#8131)
    • add singledispatch extension to Python 2.7.15 easyconfig using GCCcore/8.2.0 toolchain (#8164)
    • add missing X11 dependency for Gdk-Pixbuf 2.38.1 (#8222)
    • make sure hdf5r picks up HDF5 dependency in R 3.5.1 easyconfigs (#8223)
    • enable zstd compression in GRASS 7.6.0 easyconfig (#8224)
    • add missing ICU dependency on ICU for Harfbuzz 2.4.0 (#8226)
    • disable AVX512 DGEMM kernels in OpenBLAS 0.3.5 (#8227)
    • fix homepage/description in OrthoFinder easyconfig (#8234)
    • add Parallel::ForkManager extension to Perl 5.28.x easyconfigs (#8247)
    • replace LibUUID dependencies with util-linux (#8258)
    • add jemalloc & pkg-config as build deps for Salmon 0.12.0 (#8264)
    • fix MAJIQ easyconfig by fixing order of extensions + avoid numpy test hang (#8272)
    • fix shebang in GLib Python script + clarify runtime dependency on Python (#8277)
    • add pkg-config and expat as (build) dependency for DBus (#8283)
    • define $GI_TYPELIB_PATH in GTK+ and Pango easyconfigs (#8246, #8286)
    • add pkg-config build dep to PROJ 6.0.0 easyconfig (#8309)
    • fix source URLS in recent libcerf easyconfigs (#8332, #8243)
    • make zlib a real dependency rather than a build dep in recent binutils easyconfigs (>= 2.28) (#8340)
    • add fix-ib-query patch to OpenMPI 2.1.x and 3.0.x easyconfigs (#8341)
    • set $XDG_CACHE_HOME to $TMPDIR before ‘pip install’ in Arrow 0.12.0 easyconfigs (#8347)
  • other changes:
    • remove xbitmaps dependency from motif (#7530)
    • require custom sanity_check_paths in easyconfigs touched in PRs when generic easyblock is used (#8101, #8123)
    • use CMake built with GCCcore toolchain when installing Eigen 3.3.4+ (#8261)
    • fix Python classifiers in setup.py, should be (only) Python 2.6 & 2.7 (#8299)
    • use custom easyblock for OpenBLAS in OpenBLAS 0.3.x easyconfigs (#8345, #8339)

EasyBuild v3.9.0 (April 12th 2019)

feature release

framework

  • various enhancements, including:
  • various bug fixes, including:
    • fix argument name in close_pr (#2752)
    • fix undefined variable ‘prefix’ in Compiler._set_compiler_vars (#2757)
    • fix test account for GitHub-related tests (#2760)
    • make sure read permissions are always set in permissions_step (#2770)
    • make test for dep_graph function robust against changing order of lines in resulting dot file (#2772)
    • fix problem with import_available_modules when running from easybuild-framework directory (#2786)
    • prepend location of test easyblocks to $PYTHONPATH to test_generate_software_list, rather than append (#2788)
    • use pid in backup name candidate to reduce risk of two processes colliding (#2796)
    • automatically enable --ignore-osdeps when using --preview-pr (#2799)
    • use temporary checkout of repository as robot path for --new-pr and --update-pr to determine locations for patch files (#2803)
    • avoid relying on order in which keys are processed in to_dependency (#2804)
    • fix yeb format to work with PyYAML 5 (#2809)
    • fix typo in error message for use of unknown easyconfig parameter (#2817)
    • enhance log_file_format to fix problem when %(name)s template value is used for log directory (#2818)
    • iterate over subdirectories in order in find_egg_dir_for of bootstrap script, to ensure oldest vsc-install is picked (#2819)
    • replace -Wl,--enable-new-dtags compiler option with -Wl,--disable-new-dtags in RPATH wrapper script (#2821)
    • updated COMPILER_F77 for PGI >= 19.1 (#2823)
    • added FFTW_STATIC_LIBS_MT to FFTW_MAP_CLASS, otherwise FFTW_STATIC_LIBS_MT are incorrectly defined (#2822)
    • sort available version list when selecting/generating easyconfig (#2732)
  • other changes:
    • use assertEqual rather than assertEquals (which is deprecated) (#2746)
    • test with Tmod 4.1.4 (packaged in RHEL8) in Travis CI (#2747)
    • replace deps by hidden deps instead of removing them from the lists (#2748)
    • ensure non-zero exit code for all test subsuites (+ fix trivial style issues) (#2773)
    • silence printed deprecation warnings for easyconfigs/toolchains while running (easyconfigs) test suite (#2781)
    • avoid printing of messages/warnings in framework test suite (#2782)
    • enable silent mode for --new-pr and --update-pr (#2802)
    • update Travis config to reflect that PyYAML 5.x is no longer compatible with Python 2.6 (#2807)

easyblocks

  • new software-specific easyblock for TensorRT (#1627)
  • minor enhancements, including:
    • make sure CMake doesn’t pick up on system Boost in CMakeMake generic easyblock (#1618)
    • modified ConfigureMake and CMakeMake generic easyblocks to allow changing configure_cmd, build_cmd and install_cmd to fit various needs (#1628, #1658)
    • update ANSYS easyblock to deal with changed versioning scheme (#1631)
    • add extra path to builddir for SNPhylo >= 20160204 (#1632)
    • add better support for TensorRT to TensorFlow (#1634)
    • add support for newer versions of wxPython to wxPython easyblock (#1635)
    • update OCaml easyblock to support OPAM 2.x (#1638)
    • update sanity check in TensorFlow easyblock for TensorFlow 1.13.x (#1642)
    • make ConfigureMake, MesonNinja and SCons generic easyblocks aware of pretestopts (#1645)
    • add support for installing Python packages with ‘pip’ without using --ignore-installed (#1647)
    • add support to CMakeMake easyblock to specify compilers using absolute file path (#1652, #1655)
    • stop checking for deprecated pgf77 in sanity check of PGI easyblock (#1653)
    • accommodate version 10.1 in CUDA easyblock (#1654)
    • install sitecustomize.py with Python to support Python package installations for multiple Python versions in a single directory (#1657)
    • enhance SAMtools easyblock to also install libhts.a and include/htslib (when applicable) (#1661)
    • tweak PythonPackage & PythonBundle to update $EBPYTHONPREFIXES rather than $PYTHONPATH for multi-Python installations + make sanity_check_step aware of multi_deps (#1664, #1678)
    • replace -openmp with -fopenmp when building TINKER with Intel compilers (+ modernize easyblock) (#1668)
    • make sure Meson is configured with -Dlibdir=lib so it doesn’t install libraries in lib/x86_64-linux-gnu on Debian/Ubuntu multiarch systems (#1673)
    • allow for external libfabric via ofi_libfabric parameter in impi easyblock (#1676)
    • pass down compiler names and options to Qt5 5.8 & more recent via corresponding QMAKE_* configuration options (#1677)
  • various bug fixes, including:
    • create symlinks to .modulerc in symlinked module directories (#1636)
    • add missing import in FFTW easyblock (#1641)
    • fix finding of Python 3 include subdir + libpython*.so in OpenBabel easyblock (#1633)
    • add no_qa pattern for interactive installation command for ABAQUS (#1637)
    • make serial, smpar and dm+sm builds of WRF work and pass tests (#1646)
    • configure CP2K with correct DATA_DIR value rather than relying on $CP2K_DATA_DIR environment variable (#1650)
    • CP2K fixes: only call configure_LAPACK/ScaLAPACK when imkl is not used, prefer using 2^2 MPI processes for tests (#1651)
    • also take into account custom easyconfig parameters from CMakeMake in BamTools easyblock (#1656)
    • make sure Perl scripts are installed in the right location (#1660)
    • make sure setenv is used for CUDA_PATH etc. (#1663)
    • cleanup sanity_check_paths in numpy & scipy easyblocks (#1665, #1667)
    • always set self.pylibdir in PythonPackage.set_pylibdirs(), which is important when installing Python packages for multiple Python versions via multi_deps (#1671)
    • fix custom definition of load_module method in LAPACK module (#1675)
  • other changes:
    • replace ‘except OSError, err:’ pattern with ‘except OSError as err:’ (for compatibility with Python 3.x) (#1639)
    • clean up Java easyblock to use filetools functionality (#1649)

easyconfigs

  • added easyconfigs for new toolchains: intel/2019.02 (#7598), intel/2019.03 (#7846)
  • added example easyconfig files for 68 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • AFNI 19.0.01, Arrow 0.7.1, BLAST+ 2.8.1, CUDA 10.1.105, GCC(core) 8.3.0, GTK+ 3.22.30, Java (OpenJDK) 11(.0.2), Meson 0.50.0, MultiQC 1.7, Nim 0.19.2, Ninja 1.9.0, netCDF 4.6.2, netCDF-Fortran 4.4.5, PCRE 8.43, Perl 5.28.1, PGI 19.1, Python 3.7.2, RELION 3.0.4, Ruby 2.6.1, SCons 3.0.4, SQLite 3.27.2, SuiteSparse 5.4.0, TINKER 8.6.1, TensorFlow 1.13.1, X11 20190311
  • minor enhancements, including:
    • add various extensions to R 3.5.1 easyconfigs: asnipe (#7572), liquidSVM (#7597), oddsratio/mltools/h2o (#7744), mlegp (#7814), bartMachine/lqa (#7865), PresenceAbsence/GUTS/GenSA (#7905), parsedate (#7935), circular (#7975)
    • add ujson extension in recent Python easyconfigs (#7517)
    • run various checks on easyconfigs that are touched in pull requests and involve Python packages (#7754)
    • add cpanminus extension to recent Perl easyconfigs (#7866)
    • also install ANTs scripts (and set $ANTSPATH as required by those scripts) (#7940)
    • add missing configopts in GATE 8.1 easyconfig to enable Davis feature (#8000)
  • various bug fixes, including:
    • add patch for Mesa 18.1.1 to detect MIT-SHM (#7536)
    • add proper description to MINC-2.4.03 (#7551)
    • add libunwind dependency to recent Mesa easyconfig when building with foss/GCC (#7629)
    • add/reorder missing/misplaced extensions in Python 2.7.15 and 3.6.6 easyconfigs (#7696)
    • fix Jellyfish dependency in easyconfig for Kraken 1.0 (Jellyfish 1.x is required) (#7743)
    • use https:// in most recent XZ easyconfigs (#7782)
    • add patch for OpenMPI 3.1.x to fix ib-query ‘Invalid argument’ error (#7789)
    • build OpenBLAS with -fno-tree-vectorize (asm constraint bugs for <0.3.6) + cleanup & SHA256 checksums (#7790, #7793)
    • extra patch for TensorFlow 1.12.0 to remove -B/usr/bin from linker_bin_path_flag in cuda_configure.bzl (#7800)
    • fix easyconfig for STAR-Fusion 1.5.0 (#7802)
    • fix checksums for boot/nlme extensions in R easyconfigs (#7814, #8054)
    • add patch for OpenMPI 3.x to fix UCX memory leak (#7535, #7824)
    • replace ncurses-devel OS dependency in CMake easyconfigs using dummy toolchain with proper ncurses dependency (#7834)
    • use PythonBundle for snakemake-5.2.4-foss-2018b-Python-3.6.6.eb (+ fix moduleclass) (#7842)
    • use correct buildopts + add missing zlib dependency in StringTie 1.3.5 easyconfig (#7845)
    • update GStreamer to not enable dw and fix some missing dependencies (#7889)
    • add missing XZ dependency to most recent Pysam easyconfigs (#7897)
    • expat: add configure option --without-docbook to avoid docbook2X dependency (#7930)
    • fix source URLs for mawk (#7960)
    • fix LWM2, OTF2, OPARI2, and Score-P download URLs (#7994)
    • use https:// in homepage & source_urls for OpenMPI and hwloc easyconfigs (#8013, #8014, #8015 and #8016)
    • add missing bokeh dependency for dask 1.0.0 (+ add dask-jobqueue) (#8029)
    • fix checking of binutils build dep in easyconfig tests (#8038)
  • other changes:
    • avoid use of .items() in R (bundle) easyconfigs, to fix compatibility with EasyBuild running on top of Python 3 (#7791)
    • trim down test configuration: only test with Lmod 6.x with Tcl/Lua on Python 2.6/2.7 (#7795, #7798)
    • use %(pyshortver)s template in (old) SIP easyconfigs (#7797)
    • add PyTorch to whitelist for not having ‘use_pip’ enabled (#7844)
    • don’t use local variable ‘pylibdir’ in list comprehension in PyQt easyconfig, since that doesn’t work in Python 3 (#7848)
    • use pip instead of setup.py with h5py/2.7.1 and 2017b toolchains (#7864)
    • prefer https:// over ftp:// for source_urls in recent GROMACS easyconfigs (#7948)
    • rename arrow to Arrow for old easyconfig (#8007)

EasyBuild v3.8.1 (January 29th 2019)

bugfix/update release

framework

  • various minor enhancements, including:
    • speed up checking of OS dependencies (#2703)
    • add support for ‘eb --show-system-info’ (#2722)
    • add support for ‘%(arch)s’ template value in easyconfig files (x86-64, aarch64, ppc64le, …) (#2728)
  • various bug fixes, including:
    • add timestamp to reprod dir while in tmp space (#2705)
    • avoid ‘+’ in directory name for g++ rpath wrapper (#2710)
    • pre-install vsc-install < 0.11.4 in bootstrap script to avoid requiring ‘mock’ Python package (#2717)
    • fix check in --merge-pr whether PR is eligible for merging in to only consider the status of the last test report (#2720)
    • don’t recreate build directory when ‘buildininstalldir’ is enabled for iterative installations (#2724)
    • filter (CUDA) lib*/stubs paths in RPATH wrapper script (#2725)
  • other changes:
    • replace ‘except IOError, err:’ pattern with ‘except IOError as err:’ for compatibility with Python 3.x (#2711)
    • make all print statements compatible with Python 3 (#2715)
    • avoid use of sys.maxint in dependencies_for (#2716)

easyblocks

  • minor enhancements, including:
    • update Ferret easyblock to handle Ferret 7.3 (#1349)
    • add support for defining $LDSHARED when installing Python packages if Python’s value doesn’t use toolchain compiler ($CC) (#1455)
    • update CP2K easyblock to add support for CP2K 6.1, and fix incorrect LibInt references (#1545)
    • make OpenFOAM easyblock handle debug build (#1609)
    • handle multiple installation keys for MATLAB (#1610)
    • run ‘make check’ in parallel for GROMACS since it involves more compilation (#1611)
    • update OpenCV easyblock for recent versions (3.4.x >= 3.4.4 + 4.0.x) (#1616)
  • various bug fixes, including:
    • check current start_dir value before appending ‘src’ subdirectory in MrBayes easyblock (#1582)
    • avoid that (system) Intel compilers are always considered when building SuiteSparse (#1612)
    • fix missing import statement in ROOT easyblock (#1614)
    • answer SELinux question with ‘no’ in Mathematica easyblock (#1617)
    • disable “build isolation” feature in pip > 10.x in PythonPackage generic easyblock (#1623)
  • other changes
    • cleanup in Perl and PerlModule easyblocks (#1603)

easyconfigs

  • added easyconfigs for new toolchains foss/2019a (#7371), intel/2019a (#7372) and iomkl/2019.01 (#7375)
  • added example easyconfig files for 43 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • Amber 18, Arrow 0.12.0, Biopython 1.73, Boost 1.69.0, CP2K 6.1, canu 1.8, Ferret 7.3, GATE 8.1.p01, GROMACS 2019, Geant4 10.5, HPL 2.3, libxsmm 1.10, matplotlib 3.0.2, NEURON 7.6.5, Octave 4.4.1, OpenBLAS 0.3.5, OpenCV 3.4.5 + 4.0.1, OpenFOAM v1812, PGI 18.10, PLUMED 2.5.0, ROOT 6.14.06, Theano 1.0.3, TopHat 2.1.2, Yade 2018.02b
  • minor enhancements, including:
    • add additional extensions to R 3.5.1 easyconfigs:
      • statnet (#7370), NMF, ComICS, dtangle, MCMCpack, shinythemes (#7420), csSAM (#7423), bridgedist (#7477)
    • add DeconRNASeq and GSVA extensions to R-bundle-Bioconductor 3.7 easyconfigs (#7421)
    • also install header files and CMake module for SeqAn 2.4.0 built with foss/2018b (#7434)
    • add download URL for intel/2018a components (#7436)
    • add missing checksums for protobuf easyconfigs using dummy toolchain (#7492)
  • various bug fixes, including:
    • fix source URL in Doxygen easyconfigs (#7324)
    • add fallback source URL for recent pigz versions (#7346)
    • promote FriBiDi to runtime dep of Pango rather than only build dep (#7369)
    • add --without-systemdsystemunitdir configure option to recent DBus easyconfigs (#7373)
    • fix issue of building M4 1.4.18 with glibc 2.28 (#7384)
    • fix broken source URLs in MariaDB easyconfigs (#7413)
    • bump up build dependency of flex 2.6.4 from Bison 3.0.4 to 3.0.5 (#7414)
    • disable building of OpenColorIO Python bindings since Python is not included as a dependency (#7416)
    • add missing build dependencies in old Harfbuzz/Pango easyconfigs (2016a generation) (#7433)
    • fix XML-LibXML linking with Intel compiler and GCCcore Perl (#7440)
    • prevent non-critical error from stopping Guile v1.8.8 build (#7446)
    • use %(arch)s template rather than hardcoding ‘x86_64’ in XML-Parser easyconfigs (#7450)
    • use uniform configopts for Guile 1.8.8 (#7452)
    • fix configopts in PyQt5 easyconfig files to avoid installation of files in Python/Qt5 installation directories (#7470)
  • other changes:
    • fix homepage in easyconfigs for foss toolchains (#7482) and intel toolchains (#7483)

EasyBuild v3.8.0 (December 18th 2018)

feature release

framework

  • various enhancements, including:
    • support use of version ranges in --filter-deps (#2357)
    • add support for --list-prs (#2400, #2668)
    • add support for --close-pr (#2401)
    • allow setting optarch compiler flags in the easyconfig via toolchainopts easyconfig parameter (#2595)
    • add option to skip pre-creation of install directory: --disable-pre-create-installdir (#2629, #2637)
    • flesh out setting up of configuration into dedicated ‘set_up_configuration’ function (#2638)
    • clean error when ‘eb’ is cancelled by user (#2641)
    • add support for using Slurm as backend for --job, via --job-backend=Slurm (#2642, #2666)
    • save easyblocks along with easyconfig in ‘reprod’ subdirectory of install directory (#2653)
    • add support for deprecating easyconfig files & toolchains (#2656)
    • changed EasyConfig.update to be able to specify not to allow duplicate values (#2657)
    • move adding of dependencies to prepare step instead of check readiness step (#2674)
    • add support for disabling mapping of (sub)toolchains when --try-toolchain is used, via --disable-map-toolchains (#2682)
    • add ‘astro’ and ‘quantum’ module classes (#2693)
  • various bug fixes, including:
    • make --from-pr always try to apply PR patch on top of PR target branch (#2631)
    • fix bug that could cause to silently overwrite an existing easyconfig when using --try-* (#2635)
    • don’t pass down specific environment variables into submitted jobs (#2643)
    • update template constants for source URLs to use https (#2648)
    • fix lib64 fallback for ‘lib’/’lib64’ dirs entry in sanity_check_paths (#2649)
    • change PGI F90 Fortran compiler to pgf90 (#2650)
    • use --set-upstream-to in install-EasyBuild-develop.sh script to deal with deprecated/no longer supported --set-upstream (#2651)
    • fix order of keys in ‘toolchain’ value for dumped easyconfig file (name, version) + run style check on dumped easyconfigs in dump tests (#2660)
    • ensure checksums beside sources in dumped easyconfigs (#2661)
    • fix problems with easyconfig file saved in ‘reprod’ directory by copying it before running any installation steps (#2664)
    • make print functions more robust w.r.t. arguments being passed to format the message to be printed (#2670)
    • use ‘git am’ to apply patch for PRs in fetch_easyconfigs_from_pr (#2680)
    • correctly define $LIBFFT_MT for Intel MKL (#2688)
    • don’t always require easyconfig files to resolve dependencies (#2690, #2692, #2697, #2698, #2699)
  • fixes for Travis CI config:
    • stop testing with Lmod 6.6.3, testing with Lmod 6.5.1 is sufficient (#2627)
    • Python 2.6 requires python-daemon 1.x as dep for GC3Pie (#2673)
    • stick to idna<2.8 with Python 2.6 in Travis + distable broken test for HgRepository (#2678)
  • other changes:
    • always skip symlinks in adjust_permissions (#2644)
    • flesh out ‘avail_easyblocks’ function from support for --list-easyblocks (#2663)
    • deprecate the ictce toolchain (#2667)
    • deprecate goolf and goolfc toolchains (#2676)
    • deprecate intel toolchains older than intel/2016a (+ iccifort & iimpi subtoolchains) (#2677)
    • deprecate ancient gompi toolchain versions (#2684)
    • use ‘tar xzf’ (gzip) rather than ‘tar xZf’ (ancient compress) to unpack *.tar.Z source files (#2686)
    • flesh out ‘set_parallel’ method to it can be called separately (#2687)

easyblocks

  • new generic easyblocks:
    • PythonBundle for installing a bundle of Python packages (#1553)
    • MesonNinja for installing using Meson & Ninja (#1561)
  • new software specific easyblock for RepeatMasker (#1600)
  • minor enhancements, including:
    • add -fno-delete-null-pointer-checks compiler flag for OpenFOAM versions older than v3.0 (#1311)
    • add support for building Tau with OTF included as dependency (#1313)
    • add support for Intel MPI version 2019 (#1546)
    • also populate the include dir for CP2K (#1554)
    • add custom easyconfig parameter in GCC easyblock to control use of gold linker: use_gold_linker (#1555)
    • replace ‘-’ with ‘_’ in default ‘import’ check for Python packages (#1560)
    • update WRF and WPS to support version 4 (#1563)
    • adapt PSI easyblock for PSI4 > 1.2 (#1568)
    • update Siesta easyblock to 4.1-b4 and add custom test_step (#1573)
    • enhance Mothur easyblock to support use of Boost and HDF5 as dependencies (#1576)
    • enhance sanity check for icc & ifort: also check for compilers_and_libraries_*/linux subdirectory (#1577)
    • update Trinity easyblock for latest version 2.8 (#1579)
    • add version check in sanity check step of SCOTCH easyblock (+ code cleanup) (#1580)
    • add support in Clang easyblock to skip running of all tests (#1584)
    • update WRF easyblock to allow serial HDF5 + pick up on parallel netCDF (#1592)
    • avoid hardcoding ‘PREFIX=<installdir>’ in build/install options when using SCons easyblock (#1594)
    • enable TensorFlow to detect any MPI runtime (#1597)
    • enhance Bundle easyblock to allow installation of bundle components with additional easyblocks + build components in parallel (#1598)
    • enhance Trilinos easyblock to support building against MKL (#1601)
  • various bug fixes, including:
    • make FDTD_Solutions easyblock do the install by copying files instead of ‘rpm rebuild’ (#1307)
    • re-add missing VT_(S)LIB_DIR env variable to itac module (#1309)
    • fix in QuantumESPRESSO easyblock: ifort compiler needs -assume byterecl (#1556)
    • extract targets from buildopts in Quantumespresso easyblock (#1558)
    • fixes for TensorFlow easyblock (#1559)
      • pass $PYTHONPATH while building TensorFlow
      • disable cross-compilation mode if optarch is set
      • fix sanity check for installing TensorFlow as extension
    • added a test to disable compiling FFTW with MPI if the toolchain does not support MPI (#1562)
    • fix permissions problem with CUDA nvvp tar files + correctly handle numactl symlink in LLVM subdir in PGI easyblock (#1569)
    • fix TensorFlow test tempdir problem (#1572)
    • tweak VMD easyblock so that configopts don’t contain duplicate values (otherwise it fails to rebuild) (#1575)
    • fix running netcdf4-python tests to also support installation as extension (#1578)
    • added the openmp flags in the linker flags in MUMPS easyblock (#1585)
    • avoid hardcoding --with-rdma configure option in MVAPICH2 easyblock (#1586)
    • fix location of path-to-source argument in configure command of CMakeMake (#1591)
    • fix GROMACS use of MKL for non-Intel compilers (e.g. gomkl toolchain) (#1596)
  • other changes
    • inform Hound CI about Python 2 builtins (#1604)

easyconfigs

  • added easyconfigs for new toolchains: intel/2018.04 (#7171), intel/2019.00 (#7218), intel/2019.01 (#7219)
  • added example easyconfig files for 36 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • CheMPS2 1.8.8, Clang 6.0.1 + 7.0.0, dask 1.0.0, FFmpeg 4.1, GCC(core) 6.5.0 + 7.4.0, GPAW 1.4.0, HMMER 3.2.1, IPython 7.2.0, ITK 4.13.1, Keras 2.2.4, LLVM 7.0.0, Mothur 1.41.0, MultiQC 1.6, NAMD 2.13, OpenBLAS 0.3.4, OpenMPI 3.1.3 + 4.0.0, PSI4 1.2.1, Qt5 5.11.2, QuantumESPRESSO 6.3, Rust 1.30.1, Spark 2.4.0, Spyder 3.3.1, TensorFlow 1.11.0 + 1.12.0
  • minor enhancements, including:
    • install misc tools for angsd (#6995)
    • add libXp component to X11 bundle for GCCcore 6.4.0 (#7062)
    • also install shared libraries for LZO (#7073)
    • add extensions to R 3.5.1 easyconfigs: gllvm (#7123), grpreg (#7140), gamlss + gamlss.tr (#7263)
    • install Tk private headers (#7155)
    • add File::Next extension to Perl 5.28.0 easyconfig (#7276)
  • various bug fixes, including:
    • fix installation of scikit-image 0.13.x by including missing required PyWavelets extension (#7061)
    • add missing dependencies to easyconfig for GC3Pie 2.5.0 (#7066)
    • stop setting ignored ‘full_sanity_check’ easyconfig parameter in easyconfigs (#7094)
    • add missing checksums in X11/2016* easyconfigs (#7095)
    • add missing checksums in X11/2017* easyconfigs (#7096)
    • add missing cffi & pycparser extensions to recent Python easyconfigs (#7105, #7118)
    • fix homepage in QuantumESPRESSO easyconfigs (#7114)
    • use empty toolchain version in picard easyconfigs to ensure Java dependency is loaded during installation (#7116)
    • fix checksum for mgcv extension in R 3.5.* easyconfigs (#7122)
    • add missing ‘patsy’ extension in ARCH easyconfig + switch to using PythonBundle easyblock (#7124)
    • add missing (dummy) sklearn extension in NeuroKit easyconfig (#7126)
    • fix order of extensions in recent IPython easyconfigs to make ‘pip check’ pass (#7131)
    • fix missing required Python packages in ASE 3.16.2 easyconfigs (#7139)
    • fix source_urls in CP2K easyconfigs (for official releases) (#7240)
    • update SCOTCH 6.0.5 easyconfigs in-place to 6.0.6 to fix wrong download URL (#7159)
    • add Autotools build dep in patchelf easyconfig (#7175)
    • STREAM fixes: use https + versioned source (#7193)
    • fix checksum in Molden easyconfig (#7251)
    • fix source URL for ADMIXTURE (#7258)
    • fix source URLs & versions + build procedure for SKESA (#7275)
    • fix checksum for TRF 4.09 (#7278)
    • add missing zlib dependency for NSS (#7293)
    • add required build deps for QtWebEngine in recent Qt5 easyconfigs (#7300)
    • fix ImageMagick source URLs: use launchpad.net for old versions, switch to GitHub for 7.0.8-* onwards (#7301)
  • other changes:
    • update Java/1.8 wrapper to Java 1.8.0_192 (#7097)
    • don’t enable optarch toolchain option in VCFtools easyconfigs, since it’s enabled by default (#7106)
    • stop using lowopt in libxc 4.2.3 easyconfigs (#7115)
    • deprecate easyconfigs for ictce toolchains + intel toolchains older than intel/2016a (#7231)
    • deprecate easyconfigs for goolf(c) + corresponding gompi(c) subtoolchains (#7243)

EasyBuild v3.7.1 (October 18th 2018)

bugfix/update release

framework

  • various enhancements, including:
    • generate .modulerc.lua when Lua syntax and Lmod >= 7.8 is used (#2597)
    • allow --force to use regex if --try-toolchain can not map intelligently (#2605)
    • add support for disabling modules tool version check (#2610)
    • add support to ModuleGenerator.modulerc method to also write .modulerc file (#2611)
    • check whether module file being wrapped exists in same directory as module wrapper when using Lmod 6.x (#2611)
  • various bug fixes, including:
    • stop relying on ‘easy_install’ in bootstrap script, use ‘python -m easy_install’ instead (#2590)
    • fix templating of values in list_software function (#2591)
    • fix composing of lib64 fallback paths in sanity check (#2602)
    • determine file_info for all easyconfigs before any actual copying in copy_easyconfigs function (#2604)
    • also check for module wrappers in ModulesTool.exist method (#2606)
    • add trailing newline to module load message if it’s not there yet (#2613)
    • retain all dependencies when determining dependency tree of a toolchain (#2617)
    • protect exts_lists from templating in dump method (#2619)
    • making CUDA capability detection more robust (#2621)
  • other changes:
    • lower required Lmod version to 6.5.1 (#2593)

easyblocks

  • new software specific easyblocks for fastStructure (#1529)
  • minor enhancements, including:
    • support bypassing use of system type obtained with recent config.guess in ConfigureMake (#1531)
    • enhance generated module file for FreeSurfer (#1543)
    • add option in Qt easyblock to check for QtWebEngine component in sanity check (#1544)
    • also install CP2K as a library + code cleanup in CP2K easyblock (#1547)
  • various bug fixes, including:
    • fix checking for downloaded dependencies for stand-alone installations in PythonPackage generic easyblock (#1530)
    • also specify --host option to configure script based on config.guess result in ConfigureMake easyblock (#1532)
    • use short module name when creating module wrapper in ModuleRC generic easyblock (#1535)
    • use DOT_MODULERC constant in ModuleRC easyblock rather than hardcoding ‘.modulerc’ (#1533)
    • use --no-deps when installing .whl in TensorFlow easyblock if extension are being installed, move test run to sanity check (#1537)
    • use os.getcwd() rather than self.startdir in TensorFlow easyblock to fix installation of TensorFlow as extension in a bundle (#1540)
    • add symlink to wrapped module file when creating .modulerc in temporary location (#1539)
    • properly handle Python dependency in Qscintilla easyblock (#1499)
  • other changes:
    • cleanup Tarball easyblock by using copy_dir function (#1541)

easyconfigs

  • added easyconfigs for new toolchain foss/2018.08 with GCC/8.2.0 (#6992)
  • added example easyconfig files for 26 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • binutils 2.31.1, dask 0.19.4, GCC(core) 8.2.0, OpenBLAS 0.3.3, OpenMPI 3.1.2, Pillow 5.3.0, PyCUDA 2018.1
  • minor enhancements, including:
    • add clustree + plotly extensions (+ deps) for R 3.5.1 (#6901)
    • add tclsh symlink to recent Tcl easyconfigs (#6915)
    • update GROMACS 2016.3 with NVML patches (#6936)
    • use make=make in build options for ParMGridGen easyconfigs (#6952)
    • add Data::Dump as extension to Perl (dependency for GIMIC) (#7004)
  • various bug fixes, including:
    • inhibit -Werror in binutils 2.26 as new system GCC has case fallthrough warnings (#5793)
    • change fastStructure easyconfig to use custom easyblock (#6893)
    • fix toolchain for tbb dependency in Bowtie2-2.3.4.2-foss-2018b.eb (#6927)
    • fix uroot installation in R-3.5.1-foss-2018b (#6934)
    • add missing Python packages in TensorFlow 1.10.x easyconfigs (#6940)
    • add missing dep for Szip in 2017b builds of netCDF (#6942)
    • fix missing comment from OpenBabel-2.4.1-fix-link-path-tests.patch (#6943)
    • add patch to Python 3.6.1 - 3.6.3 that removes comment in comment (#6946)
    • add missing ulimit_unlimited=True (see issue #6484) in the newest Python builds (#6959)
    • solve ‘version UUID_1.0 not found’ problem in LibUUID easyconfigs (#6962)
    • eliminate dependency on ancient problematic LibUUID library, replace with util-linux (#6963)
    • force building of ccmake for CMake 3.12.1 + fix deps (#6967)
    • fix broken installation for Python 3.6.2 & 3.6.3 with PyNaCl as dep for paramiko extension by explicitly including previous PyNaCl version as extension (#6971)
    • fix source URL for ADMIXTURE (no https) + add SHA256 checksum (#6982)
    • add missing NSS/DBus dependencies to Qt 5.10.1 easyconfigs built with foss toolchain to ensure that QtWebEngine component gets installed (#7005)
    • add ‘openssl’ OS deps in Perl 5.28.0 easyconfig for Net::ssleay (#7008)
    • add missing checksum for ipaddress extension in Python easyconfigs (#7021 and #7033)
    • add missing extensions to Python 2.7.14 (#7022 and #7023), 3.6.2 (#7025), 3.6.3 (#7027) and 3.6.4 (#7029 and #7030)
    • add missing OS dependencies for git (#7028)
    • create default configuration for RTG-Tools (#7032)
    • also run checks on changed files when target branch for PR is something different than ‘develop’ (#7034)
  • other changes:
    • removed dead ‘bzip.org’ source URL for bzip2 source tarball (#6983)

EasyBuild v3.7.0 (September 25th 2018)

feature release

framework

  • minimal Lmod version requirement bumped to 6.6.3 (#2575)
  • various enhancements, including:
    • add support to bootstrap script to force install specific EasyBuild version (#2382, #2580)
    • consider potential of multiple subtoolchains when resolving dependencies (#2464, #2465, #2466, #2585)
    • fall back to downloading using the requests Python package (if installed) when urllib2 fails due to SSL error (#2538)
    • make --try-toolchain more aware of subtoolchains (#2539)
      • subtoolchain of original toolchains are now mapped to subtoolchains of target toolchain
    • add support for BLIS and goblf toolchain that uses BLIS for BLAS (#2540)
    • allow skipping of sanity check step via ‘skipsteps’ easyconfig parameter (#2549)
    • add support for --check-contrib (#2551)
      • equivalent with --check-style, but also verifies presence of SHA256 checksums (+ more checks in the future)
    • added support to ‘download’ sources from git (#2555)
    • add ‘parse’ hook to add support for applying site-specific customisations to the ‘raw’ easyconfig (#2562, #2566)
    • lift invalidating of module caches into helper method that can be used by easyblocks (#2571)
    • always dump a fully parsed easyconfig to the ‘reprod’ subdir of the installation directory (#2574)
    • add ‘modulerc’ method to ModuleGenerator class (#2575)
  • various bug fixes, including:
    • make GC3Pie stop build process if a dependency failed (#2474)
    • filter out patched files in test/ in fetch_easyconfigs_from_pr (#2547)
    • check GC3pie version using the pkg_resources API rather than using __version__ (which was removed in GC3Pie 2.5.0) (#2554)
    • fix enforcing of checksums for extensions (#2561, #2570, #2579)
    • skip running of configuration checks while only a single configuration level is taken into account during --show-config (#2567)
    • fix error statements in modules tool version checks (#2576)
    • fix finding of software subdirectory for specified patch file in --new-pr/--update-pr (#2577)
    • take into account dependency ‘wrappers’ in check_conflicts (#2583)
    • stick to pycparser < 2.19 with Python 2.6 in Travis config (#2584)
  • other changes:
    • use namelower as default for ‘github_account’ easyconfig parameter (#2528)
    • use .counts() rather than deprecated .stats() for GC3Pie (#2573)

easyblocks

  • new generic easyblock: ModuleRC (#1503, #1518)
  • new software specific easyblocks for BWISE (#1497) and VEP (#1512)
  • minor enhancements, including:
    • update QuantumESPRESSO easyblock: stop building in installation dir, do not use external FoX dependency, support for recent versions (#1312)
    • updates to TensorFlow easyblock:
      • require cuDNN if CUDA support is enabled, enable mkl-dnn by default, fix problem with internal protobuf problem, add awareness for TensorRT & NCCL (#1453)
      • add support for IntelMPI (#1507)
    • update WIEN2k easyblock for version 18.1 (#1460)
    • add CUDA ‘stubs’ subdirectory to $LIBRARY_PATH (#1464)
    • add support for building ScaLAPACK on top of BLIS (#1467)
    • handle X11 better and make ‘static’ a build flag in Amber easyblock (#1468)
    • update Boost easyblock for Boost 1.67.0 (name change in Python 3.x library files) (#1472)
    • add CEI/bin to $PATH for ANSYS 19 & newer (#1476)
    • enhance SCons easyblock to enable building in parallel (#1477)
    • add awareness for CCOLAMD and CAMD in Trilinos easyblock (#1480)
    • add support to apply (binary) patches after main CUDA install (#1481, #1483)
    • add support for only building Python bindings (+ code cleanup) in Boost easyblock (#1484, #1495)
    • provide control over subdirectory in which R packages are installed (#1485)
    • added regex to fix $WM_PROJECT_VERSION correctly in OpenFOAM easyblock (#1489)
    • improve PGI siterc so it allows -pthread switch (#1494)
    • customise check_checksums method in Bundle easyblock to fix checking of checksums for components (#1496)
    • include a pkgconfig file ‘hdf5.pc’ to HDF5 installations (#1504)
    • (download &) use an updated config.guess script in generic ConfigureMake easyblock (#1506, #1522, #1523, #1524)
    • make IntelBase generic easyblock aware of (pre)installopts (#1509)
    • update Siesta easyblock for v3.2 to 4.1-b3 (#1510)
    • take (pre)installopts into account in RPackage generic easyblock (#1513)
    • update DOLFIN easyblock for latest version (#2018.1) (#1521)
  • various bug fixes, including:
    • drop useless definition of $NLSPATH in IntelBase + fix ipp library paths (#1442)
    • fix order of arguments in log message in PythonPackage easyblock (#1459)
    • run ldconfig in post-install step of CUDA easyblock to create missing symlinks in ‘stubs’ subdirectory (#1473)
    • take into account that only name/version may be specified for some components in Bundle easyblock (#1474)
    • make SuperLU easyblock consider both lib and lib64 subdirectories (#1479)
    • use short build dir for Trilinos to dance around “Argument list too long” problem + link with libmetis.a (#1486)
    • correct check for Red Hat 6 based OS in TensorFlow easyblock (#1487)
    • improve configuration choice in FSL easyblock (#1498)
    • don’t check for mcc in MATLAB sanity check as it requires a specific toolbox license (#1514)
    • make sure Bazel doesn’t write files in $HOME/.cache when building TensorFlow (#1519)
    • enable VSX on POWER for FFTW >= 3.3.7 (#1520)
    • add librt as dependency when linking Trilinos with SuiteSparse (#1525)
  • other changes:
    • switch to using CMake install procedure for Eigen 3.3.4 & newer (#1482)
    • bump Lmod version used in Travis config to 6.6.3 (now required by framework) (#1505)

easyconfigs

  • added easyconfigs for new toolchains: fosscuda/2017b (#6706), intelcuda/#2017b (#6709), iomkl/2018b (#6661)
  • added example easyconfig files for 49 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • Bazel 0.16.0, Boost 1.67.0 + 1.68.0, CUDA 10.0.1, DOLFIN (FEniCS) 2018.1, FSL 5.0.11, GC3Pie 2.5.0, GROMACS 2018.3, HTSlib + SAMtools 1.9, IPython 6.4.0, matplotlib 3.0.0, OpenCoarrays 2.2.0, OpenFOAM 6 & v1806, PyTorch 0.4.1, Python 3.6.6, R 3.5.1, TensorFlow 1.10.1, Trilinos 12.12.1, WIEN2k 18.1
  • minor enhancements, including:
    • add test to enforce SHA256 checksums in touched files in pull requests to develop (#5005)
    • add various extensions to recent R easyconfigs (#6590, #6686, #6858)
    • add mpmath extension to Python 3.6.4 + 3.7.0 easyconfigs (#6607, #6713)
    • add Java 1.8 easyconfig that can be updated in-place to more recent JDK 1.8.x (#6712)
    • add iso_c_binding support to arpack-ng 3.6.2 (#6718)
    • add XML::Parser, XML::RegExp & XML::DOM extensions to Perl(#6744)
    • add tabulate extension to all Python > 3.6 easyconfigs (#6809)
    • enable MPI version of arpack-ng 3.5.0 (#6840)
    • add wish symlink to wish8.6 in recent Tk easyconfigs (#6870)
    • add libXp and printproto to X11 bundle (#6873)
  • various bug fixes, including:
    • define ‘_GNU_SOURCE’ to ensure that ‘reallocarray’ is defined in flex 2.6.4 easyconfigs, fixes bootstrap crash (#5792, #6766)
    • added tabix dependency in VCFtools (#6584)
    • added zlib dependency to BWA (#6591), BEDTools (#6592), VCFtools (#6653)
    • add checksums to googletest easyconfigs (#6611)
    • fix source URL + add checksum to wkhtmltopdf-0.12.3-Linux-x86_64.eb (#6628, #6641)
    • don’t use external FoX dependency in QuantumESPRESSO 6.2 (#6638)
    • update hwloc easyconfigs with libxml2 and libpciaccess dependencies (#6639)
    • fix gettext build dep for Mono-5.10.0.160 (#6640)
    • remove no longer existing config option --enable-mpi-thread-multiple in OpenMPI 3.x easyconfigs (#6645)
    • fix homepage in recent HDF5 easyconfigs (#6687)
    • add expat dependency to Mesa v18.1.1 (#6706)
    • add missing --with-trio-flavor=netcdf flag to ABINIT 8.x easyconfigs (#6711)
    • remove useless definition of $TORCH_CUDA_ARCH_LIST in PyTorch easyconfig that doesn’t use CUDA (#6719)
    • fix builing GCCcore 6.3.0 on recent OSs by backporting patches from 6.4.0 (#6727)
    • fix source_urls in bzip2 easyconfigs (#6728)
    • specify location of dependencies in configure options for libgd (to avoid system libraries being used instead) (#6731)
    • also install docs/man pages in recent git easyconfigs (versions 2.1x.y) (#6751)
    • add CMake build dep for Eigen 3.3.4 (#6756, #6784)
    • add expat dependency to Perl 5.26.0 (#6758)
    • add ncurses OS dependency to CMake for Debian distros (#6783)
    • fix checksums for pkgmaker, rngtools & RcppProgress extensions in R 3.4.3 easyconfigs (#6815)
    • add pkg-config build dependency to GTS (#6819)
    • do not check if hwloc-dump-hwdata utility was installed, since it’s only built on x86 systems (#6836)
    • patch libxc 3.x and 4.0.x to compile on POWER (#6868)
    • consistently add patch for paycheck extension in Python 3.6/3.7 to fix UTF8 issue with README (#6892)
  • other changes:
    • bump Lmod version used in Travis config to 6.6.3 (now required by framework) (#6834)

EasyBuild v3.6.2 (July 11th 2018)

bugfix/update release

framework

  • various enhancements, including:
    • add support for including environment variable that is resolved at “module load time” in user module path (#2395)
      • {RUNTIME_ENV::EXAMPLE} is replaced by value of $EXAMPLE when module is loaded
    • also support generating Docker container recipes & image via --containerize (still experimental) (#2479)
    • add support for specifying source URLs directly in ‘sources’ (#2520)
    • perform early ‘raw’ parse of provided easyconfig file to check for syntax error or faulty inputs (#2523)
    • add ‘bitbucket_account’ easyconfig parameter and template, and let BITBUCKET* templates use it (#2525)
  • various bug fixes, including:
    • take into account --filter-deps when re-loading build dependencies in extensions_step (#2516)
    • fix for offline use of bootstrap script: ignore errors when determining source URLs if source tarballs are provided (#2517)
    • fix error message that is raised for incorrect type of value in sanity_check_paths (#2524)
  • other changes:
    • move flake8 config into setup.cfg + fix style issues in easybuild/tools/options.py (#2511)
    • make test that verifies that BuildOptions does not support updating a bit more flexible (#2518)

easyblocks

  • new software-specific easyblock for OpenCV (#1444)
  • minor enhancements, including:
    • use $CPATH/$LD_LIBRARY_PATH for CMake’s find_path/find_library functions in CMakeMake easyblock (#1165)
    • make cdft lib compilation optional for Intel MKL, by detecting MPI availability (#1393)
    • add use_glibcxx11_abi easyconfig parameter in Boost easyblock (#1434)
    • enable filtering of paths in $CPATH and $LIBRARY_PATH in TensorFlow easyblock (#1436)
    • add support for building GROMACS with --optarch=GENERIC (#1440)
    • check current stack limit and set it to ‘unlimited’ if possible in Python easyblock (#1441)
    • trivial update for Q&A in SAS easyblock (#1448)
    • allow skipping tests when installing Perl extensions, by setting ‘runtest’ to False (#1451)
    • add support for installing Intel products using serial numbers (#1452)
    • update version check to FFTW 3.3.8 for tests to pass on POWER (ppc64le) (#1454)
  • various bug fixes, including:
    • build MPFR in GCC stage 1 without LTO if (system) GCC used is too old (#1435)
    • make sure xmlpatterns always gets built with Qt (#1437)
    • fix symlink check in NWChem easyblock + use change_dir/remove_file/symlink functions (#1438)
  • other changes:
    • move flake8 configuration to setup.cfg and make HoundCI aware of it (#1430)

easyconfigs

  • added easyconfigs for new toolchains: foss/2018b (#6424), fosscuda/2018b (#6555) and intel/2018b (#6409)
  • added example easyconfig files for 28 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • GROMACS 2018.2, HDF5 1.10.2, IPython 6.3.1, Kraken 1.0, Mesa 18.1.1, netCDF 4.6.1, NWChem 6.8, OpenBLAS 0.3.1, OpenMPI 3.1.1, Perl 5.28.0, Python 2.7.15, R 3.5.0, X11 20180604
  • minor enhancements, including:
    • add hint on file name differences between downloaded and expected in cuDNN easyconfig (#6042)
    • add ‘gee’ extension to R 3.4.4 easyconfigs (#6376)
    • enable building of MPI libraries in VTK 8.1.0 easyconfigs (#6460, #6429)
  • minor changes, including:
    • rename ‘Canu’ to ‘canu’ for v1.7 (#6389)
    • update existing easyconfigs for OpenCV 3.4.1 to use new custom easyblock for OpenCV (#6509)
    • fix software name in Bsoft easyconfig (#6557)
  • various bug fixes, including:
    • fix SAMtools dependency for ChimPipe, required SAMtools < 1.0 (#5930)
    • skip installing of documentation in easyconfig for jemalloc 5.0.1 (#6428)
    • stop including GCCcore 6.4.0 as build dep for GCCcore 8.1.0 (#6431)
      • no longer needed with updated GCC easyblock
    • add patch for GCCcore 6.4.0 to fix compilation problems on glibc 2.26 systems (#6432, #6495)
    • fix checksums for pkgmaker/rngtools/RWeka/RcppProgress/mgcv extensions in R 3.4.4 easyconfigs (#6446, #6502)
    • added necessary compiler flag for Guile 1.8.8 (#6457)
    • build hwloc 1.11.10 with -fno-tree-vectorize to avoid segfaulting lstopo on Intel Skylake (#6461)
    • add patch for binutils 2.30 to fix assertion failure (#6463)
    • sync extensions in Python-3.6.4-iomkl-2018a.eb easyconfig with other Python 3.6.4 easyconfigs using 2018a toolchain (#6471)
    • enable checking/setting of unlimited stack limit in Python 3.6.x easyconfigs using an ‘intel’ toolchain (#6485, #6492)
    • add missing libxml2 dependency for HDF5 1.10.1 (#6498)
    • also copy eggnog-mapper scripts (#6522)
    • fix missing dependencies for Perl modules included as extensions for Perl 5.26.1 (#6532) and 5.28.0 (#6533)
    • fix location of include directory in libffi 3.2.1 easyconfigs (#6565)
  • other changes
    • also check for multiple dependency variants in easyconfigs using GCCcore 7.3.0 & newer (#6444)

EasyBuild v3.6.1 (May 26th 2018)

bugfix/update release

framework

  • various enhancements, including:
    • add support for enabling fallback in sanity check to consider lib64 equivalent for seemingly missing libraries (#2477)
    • add GITHUB_LOWER_SOURCE constant (#2491)
    • add ‘exts_download_dep_fail’ as known easyconfig parameter (#2493)
    • add support for passing custom messages on failing sanity check for extensions (#2494)
    • add definition for fosscuda toolchain (#2507)
  • various bug fixes, including:
    • make --inject-checksums always re-order source_urls/sources/patches/checksums (#2487)
    • fix git remote url in CONTRIBUTING.md (#2490)
    • make flake8 happy in easyblock.py (#2492)
    • handle missing permissions for adding labels in --new-pr (#2497)
    • restore tweaked $TMPDIR value after loading module (for sanity check) (#2498)
    • enhance get_module_path function to auto-detect generic vs software-specific easyblock class names (#2502)
    • don’t blindly overwrite an existing easyconfig in tweak_one (#2504)
    • take account that PlaintextKeyring may be provided via keyrings.alt (#2505)
    • prepend location for temporary module file to $MODULEPATH with high priority + mark it as default in load_fake_module method (#2506)

easyblocks

  • minor enhancements, including:
    • add support for detecting auto-downloaded dependencies in PythonPackage easyblock (#1377)
      • disabled by default, can be enabled using “download_dep_fail = True” in easyconfig file
    • add support to enable integration of pscom in psmpi easyblock (#1397)
    • set $CMAKE_*_PATH when CMake is loaded in PythonPackage easyblock (#1398)
    • update WIEN2k easyblock for v17 (#1405)
    • disable jemalloc support in TensorFlow on CentOS 6 & co (+ minor cleanups) (#1412)
    • update Maple easyblock to support recent versions (#1414)
    • enable nc-config usage for netCDF in ESMF >=7.1 (#1419)
    • enhance PETSc easyblock for version 3.9 (#1421)
    • check output of MATLAB installation command for invalid installation key error (#1423)
    • fix suffix for Boost Python library in Boost 1.67.0 & newer (#1424)
    • support adding specific paths to $PATH for generic Binary easyblock via ‘prepend_to_path’ custom easyconfig parameter (#1426)
  • minor changes, including:
    • assume PGI Community edition is used when no license file is specified (#1427)
  • various bug fixes, including:
    • fix imkl sanity check overwriting base libs with interface libs (#1392)
    • install Chimera in a subdirectory to avoid its dependencies being added to the environment (#1413)
    • add conditional so “--with-x” is only added to configopts if left unspecified in R easyblock (#1415)
    • make configure and make look for FoX in $EBROOTFOX in QuantumESPRESSO easyblock (#1420)
    • fix path for $ICEM_ACN in ANSYS easyblock (#1422)
    • avoid hardcoding defaults in question patterns in Doris easyblock (#1428)

easyconfigs

  • added easyconfigs for new toolchains fosscuda/2018a (#6363) and giolfc/2017b (#5799)
  • added example easyconfig files for 24 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • Boost 1.67.0, ESMF 7.1.0r, GATK 4.0.4.0, GCC 8.1.0, GROMACS 2018, OpenBLAS 0.3.0, PETSc 3.9.1, PGI 18.4, TensorFlow 1.8.0, WIEN2k 17.1
  • minor enhancements, including:
    • add py_expression_eval extension to (recent) Python 2.7.14 & 3.6.4 easyconfigs (#6285)
    • add README for Java with information on downloading source tarball (#6294)
    • add several extensions to Perl 5.26.1 easyconfigs, incl Dist::Zilla & dependencies (#6297)
    • also include archive URLs for Bioconductor 3.6 (#6311)
    • add README.md file for installing icc/ifort (#6317)
  • various bug fixes, including:
    • consistently specify ‘intel-mkl’ component in recent Intel MKL easyconfigs (#6234)
    • add pkg-config as build dependency to libdrm (#6243)
    • add pkg-config build dep to most recent libdrm easyconfigs (#6244)
    • fix checksum for foreign extension in R 3.4.3 and R 3.4.4 easyconfigs (#6245)
    • fix installation of Libint 2.4.2 by building with -std=c++11 (#6251)
    • fix source spec for networkx 2.1 extension in scikit-image easyconfig (#6254)
    • avoid that Nipype downloads dependencies for included extensions (#6261, #6263)
    • consistently include patch for FLTK 1.3.4 (#6265)
    • fix Perl shebang in MCL v14.137 scripts (#6269)
    • add patch to build particular source file of matrixStats extension in R 3.4.4 easyconfig with -O1 to work around ICE in Skylake systems (#6278)
    • add pkg-config build dependency to FFmpeg >= 3.3.1 (#6291)
    • change back checksum for libdap 3.19.1 (#6305)
    • add patch for Automake 1.15 to fix issue with recent Perl versions (#6358)
    • fix glog causing intel error in Intel compilers on Intel Skylake (#6360)
    • include ICU as dependency in recent R easyconfigs (v3.4.3 & v3.4.4) (#6371)
    • fix checksum for RSEM 1.3.0 after sneaky re-release (#6379)

EasyBuild v3.6.0 (April 26th 2018)

feature release

framework

  • (experimental) support for generating Singularity container recipes & (optionally) images via ‘sudo singularity’ (#2332, #2480, #2481, #2482, #2483)
  • include -ftree-vectorize and -fno-math-errno in default compiler optimisation flags for GCC (#2388)
    • this significantly improves performance of generated binaries when building with a GCC-based toolchain
    • can be disabled if needed via the vectorize toolchain option
  • several enhancements/fixes to GitHub integration support:
    • loosen commit message requirements for --new-pr w.r.t. to patches as long as all easyconfigs are new (#2438)
    • automatically add ‘new’ and/or ‘update’ labels in --new-pr (#2384)
    • add force_in_dry_run=True to copy_file in copy_patch_files (#2442)
    • test for custom commit message when deleting a file instead of when adding a patch (#2443)
    • make diff_stat pattern also match output of older git versions in tests for --new/update-pr (#2444)
    • remove duplicates from --new-pr title (#2478)
  • add support for “eb --fetch” to only download sources (even without having a modules tool installed) (#2457)
  • add definitions for a bunch of new toolchains:
    • golf (#2458), gmkl (#2460), gomkl (#2455), pmkl (#2460)
    • toolchains including CUDA: gmklc, gomklc, iimklc, iompic, iomklc (#2461)
  • various minor enhancements, including:
    • avoid that ‘--inject-checksums’ adds lines longer than 120 characters (#2434)
    • enable caching of $HOME/.cache/pip in Travis config (#2435)
    • replace raw strings with bytes literal as iterator sentinels in checksum calculation (#2446)
    • new command-line option ‘--job-max-jobs’ to cap nr of submitted build jobs with GC3Pie (#2378)
    • add configuration for houndci + flake8 (#2451)
    • add Accept header when downloading file (#2437)
    • include running of ‘eb --check-github’ in Travis config (#2449, #2454)
    • flesh out common code blocks in test/framework/options.py (#2452)
    • support ‘depends_on’ load statements in generated modules via --module-depends-on and module_depends_on easyconfig parameter (#2391)
    • fix compatibility with Modules v4.1.x (#2470)
    • add support to run_cmd to enable streaming output (#2476)
  • various bug fixes, including:
    • determine whether included easyblocks are generic or not based on class they define (#2432)
    • make sure GitHub token is used in test for --preview-pr (#2436)
    • take into account that toolchain components may be hidden when determining toolchain composition (#2440)
    • stick to autopep8 1.3.4 when testing with Python 2.6 (#2462)
    • strip off .lua extension when backing up modules to ensure Lmod 6.x doesn’t pick up on them (#2463)
    • check for modulecmd.tcl before modulecmd in bootstrap script to discriminate between Modules 4.1.x vs 3.2.10 (#2468)
    • fix derive_alt_pypi_url after PyPI switching to sha256 in package URLs + fix broken test for pypi_source_urls + fix bootstrap script (#2471)
    • make sure that both ‘get_git_revision’ and ‘this_is_easybuild’ return regular strings rather than Unicode strings (#2472)

easyblocks

  • new software-specific easyblock for Nim (#1402)
  • minor enhancements, including:
    • enhance RPackage easyblock to support installing from unpacked sources (#1383)
    • add support to PythonPackage easyblock to install with ‘pip install --editable’ (#1384)
    • add $EBROOTIFORT/include in $CPATH for ifort (#1385)
    • add houndci + flake8 configuration (#1388)
    • add additional location to $PATH for FLUENT installations (#1389)
    • make PythonPackage generic easyblock aware of ‘unpack_options’ easyconfig parameter (#1391)
    • minor updates to ABAQUS easyblock to support latest version (#1394)
    • add support for extracting sources in Binary easyblock (#1401)
  • various bug fixes, including:
    • fix linking to FFTW for Doris: should be -lfftw3f (#1387)
    • fix for installing TensorFlow 1.6.0: use the absolute path for the C compiler when compiling with GPU support (#1386)
    • also take lib64 into account for binutils libraries (#1399)
    • make sanity check in MPICH easyblock aware of libraries in lib64 subdir (#1403)
    • take into account that self.debuggerpath may not be set in icc easyblock (#1408)
    • extend noqa in configure step of Qt easyblock (#1409)

easyconfig

  • added easyconfigs for new toolchain golf/2018a (#6080)
  • added example easyconfig files for 39 new software packages:
  • added new easyconfigs for existing toolchains:
  • added additional easyconfigs for various supported software packages, including:
    • ABINIT 8.6.3, Anaconda2 5.1.0, Anaconda3 5.1.0, binutils 2.30, dask 0.17.2, FFmpeg 4.0, GCC(core) 7.3.0, GROMACS 2016.5, HTSlib 1.8, LLVM 6.0.0, Mesa 17.3.6, netCDF 4.6.0, Octave 4.2.2, OpenCV 3.4.1, PLUMED 2.4.1, PROJ 5.0.0, PostgreSQL 10.3, Qt5 5.10.1, R 3.4.4, SAMtools 1.8, Spack 0.11.2, TensorFlow 1.7.0, VTK 8.1.0
  • minor enhancements, including:
    • add test to ensure there’s only one variant for each dependency in dep graph of easyconfigs using particular toolchains (#5970, #6023)
    • add extensions required by CODEX2 v20180227 to Bioconductor w/ R 3.4.3 (#5972)
    • add config file for https://pre-commit.com/ (#5785)
    • add custom sanity check paths for GraphicsMagick consistently (#5997)
    • add custom sanity check paths to recent Ghostscript easyconfigs (#5998)
    • add svd, Rssa, JBTools, RUnit, DistributionUtils and gapfill extensions for R 3.4.3 (#6099)
    • add additional extensions to Bioconductor 3.6 bundle (#6136)
    • add xlrd extension to recent Python 2.x and 3.x easyconfigs (#6162)
  • minor changes, including:
    • use gettext 0.19.8.1 on top of libxml2 2.9.7 as dep for git built with foss/2018a (#5993)
    • bump hwloc dep for OpenMPI 2.1.2 that is part of iomkl/2018a to v1.11.8 (#5994)
    • use non-interactive plotting backend by default for matplotlib 2.1.2 (#6024)
    • don’t use bare Perl as dependency for git with foss/2018a, use variant with extensions (#6058)
  • various bug fixes, including:
    • fix moduleclass & add custom sanity_check_paths in gettext easyconfigs (#5991)
    • drop use of --disable-dlopen in (recent) OpenMPI easyconfigs due to negative performance impact (#6060)
    • add missing XZ dep in Python 3.6.4 easyconfigs built with */2018a toolchain (#6065)
    • add 10 packages that were previously downloaded in Python 3.6.4 easyconfigs (#6081)
    • add patch for Tensorflow 1.6 & 1.7 to include missing -lrt link flag (needed in CentOS6) (#6089)
    • fix checksums for R extensions that were updated in place in easyconfigs for R versions 3.4.3 & 3.4.4 (#6118)
    • include pkg-config as build dep in recent R easyconfigs (required for at least nloptr) (#6122)
    • remove Intel-specific workaround for ‘undefined symbol: __stack_chk_guard’ issue from Python 3.6.4 foss/2018a easyconfig (#6130)
    • add configopt --without-matlab/octave to all NLopt easyconfigs (#6132)
    • also consider lib64 in sanity_check_paths for Bison 3.0.4 (#6170)
    • don’t use libyaml built with dummy as dep for PyYAML (#6208)
    • add missing pkg-config build dep in recent GObject-Introspection, GLib & cairo easyconfigs (#6216)
    • don’t include (ancient version of) Time::HiRes as Perl extension, since it’s a core Perl module (#6225)
      • this fixes problems with the installation of BioPerl and proovread
    • add missing XML-LibXML dependency in recent BioPerl easyconfigs (#6226)
    • add --without-ada configure option in recent ncurses easyconfigs (#6228)
    • add patch for snaphu to fix segmentation fault due to use of short integer (#6230)

EasyBuild v3.5.3 (March 7th 2018)

bugfix/update release

framework

  • various enhancements, including:
    • re-enable testing against environment modules, bump Lmod to 7.7.16 (#2425)
    • print which hook is being executed in the command line output (#2427)
  • various bug fixes, including:
    • fix order in result of gen_list_easyblocks and gen_easyblocks_overview_rst (#2421)
    • fix target account for branch pushed when using --new-pr (#2426)

easyblocks

  • minor enhancements, including:
    • make GROMACS easyblock select build type based on value for ‘debug’ in ‘toolchainopts’ (#1374)
    • re-enable testing against environment modules, bump Lmod to 7.7.16 (#1376)
    • enhance Gurobi easyblock to support installing Python bindings (#1378)

easyconfigs

  • added example easyconfig files for 2 new software packages:
    • CNVkit and hmmlearn (#5954)
  • added additional easyconfigs for various supported software packages, including:
    • matplotlib 2.1.2, TensorFlow 1.6.0
  • minor enhancements, including:
    • re-enable testing against environment modules, bump Lmod to 7.7.16 (#5944)
    • add cghFLasso extension to R 3.4.3 easyconfigs (#5953)
    • add ‘Math::CDF’ extension to recent Perl modules (#5957)
  • various bug fixes, including:
    • add missing --enable-ld-version-script configure option for LibTIFF 4.0.9 built with GCCcore/6.4.0 (#5945)
    • hard disable UCX support in recent OpenMPI versions, to dance around bug in OpenMPI configure script (#5949)

EasyBuild v3.5.2 (March 2nd 2018)

bugfix/update release

framework

  • various enhancements, including:
    • add functionality to skip devel module with naming scheme (#2374)
    • add pagination support in clean_gists.py (#2379)
    • allow basic compiler modulenames to be specified as keys in --optarch (#2387)
    • initial set of OHPC module meta data for EasyBuild (#2392)
    • allow different target account in post_comment_in_issue (#2399)
    • declare support for RPATH linking stable (#2409)
  • various bug fixes, including:
    • update bootstrap script to be compatible with Modules v4 (#2390)
    • avoid fatal error when determining glibc version on non-glibc Linux system (e.g. Alphine Linux) (#2398)
    • exclude location of RPATH wrappers from $PATH to avoid fork bomb (#2410)
    • fix target account for --update-pr in case it’s different from GitHub account being used to push branch (#2419)

easyblocks

  • new software-specific easyblocks for COMSOL (#1317), Stata (#1241) and TensorFlow (#1287, #1361)
  • enhance GCC easyblock to support building generically (via ‘generic’ easyconfig parameter or --optarch=GENERIC) (#1336)
  • minor enhancements, including:
    • make GROMACS easyblock aware of building for KNL via --optarch=MIC-AVX512 (#1360)
    • unset $PERL_MM_OPT and $PERL_MB_OPT when installing Perl modules to avoid problems (#1362)
    • add custom ‘use_pip_for_deps’ easyconfig parameter to PythonPackage easyblock (#1366)
    • add support for ‘default_component_specs’ easyconfig parameter in Bundle easyblock (#1369)
  • various bug fixes, including:
    • fix logic in icc easyblock w.r.t. location of debugger libraries (libipt library for gdb) (#1224)
    • fix Tkinter easyblock to install Tkinter 3.x (#1347)
    • let impi modules also update $MANPATH (#1354)
    • enhance Octave extension filter to avoid false positives (#1355)
    • make CUDA easyblock aware of ‘preinstallopts’ easyconfig parameter (#1367)
    • fix handling of per-component (checksums for) patches in Bundle easyblock (#1369)

easyconfigs

  • added example easyconfig files for 24 new software packages:
  • added new easyconfigs for existing toolchains: giolf/2018a (#5777), goolfc/2017b (#5768), iomkl/2018a (#5878)
  • added additional easyconfigs for various supported software packages, including:
    • CP2K 5.1, IPython 6.2.1, OpenFOAM v1712, Perl 5.26.1, Python 3.6.4, TensorFlow 1.5.0, X11 20180131
  • minor enhancements, including:
    • add feather and tidyverse as extensions for R 3.4.3 (#5693)
    • build recent PLUMED versions with all modules enabled (#5696)
    • add MAST/splatter/scDD to Bioconductor 3.6 bundle (#5704)
    • add dummies as extension for R 3.4.3 + monocle/scde/ROTS (+ deps) to Bioconductor 3.6 bundle (#5724)
    • include io and statistics extensions to Octave 4.2.1 easyconfigs (#5798)
    • switch to using TensorFlow as backend for recent versions of Keras (#5821)
  • various bug fixes, including:
    • using the correct binutils in jemalloc 5.0.1 easyconfig using GCCcore/6.4.0 (#5659)
    • fix source URLs for MPC (#5662)
    • add Tkinter as dependency for ASE & matplotlib using Python 3.6.3 (#5658)
    • fix versions for updated extensions in Bioconductor 3.6 bundle (#5704, #5724, #5880)
    • fix missing M4 build dependency in nettle easyconfigs (#5722)
    • fix homepage for OpenFOAM 4.x & 5.x, should be openfoam.org (#5422, #5780)
    • add matplotlib, cairo & PyCairo dependencies for graph-tool 2.26 + enhance sanity check (#5787)
    • fix hardcoded version in scikit-image easyconfigs (#5822)
    • fix pkgconfig moduleclass, ‘data’ doesn’t make much sense (#5817)
    • add sanity check in recent matplotlib easyconfigs to ensure that Tkinter is available (#5689, #5896)
    • correct MPI path when building ABINIT with ‘foss’ toolchain (#5760)
    • patch Hyperopt to make it work with networkx 2.0 (#5642)
    • add Tkinter sanity check to ASE easyconfigs (#5691, #5909)
    • include autotools as build dep in git easyconfigs (#5718)
    • fix sanity check paths for Debian OS in JasPer easyconfigs (#5897)
    • fix source_urls for recent versions of ABINIT (#5908)
    • add patch for recent GDAL easyconfigs using intel toolchain to fix icc get stuck on compiling ceos.c (#5915)
    • add explicit zlib dependency in Tkinter 2.x and 3.x (#5797, #5926)
    • fix source URLs & homepage in Singularity easyconfigs (#5927)
    • fix installation of TensorFlow 1.3 via binary wheel after introducing TensorFlow easyblock (#5938)

EasyBuild v3.5.1 (January 16th 2018)

bugfix/update release

framework

  • various enhancements, including:
    • add definition of giolfc toolchain (#2359)
    • add support for Environment Modules 4 (#2365)
  • various bug fixes, including:
    • install SQLAlchemy < 1.2.0 with Python 2.6 in Travis config (#2367)
    • make code in easybuild/tools/job/gc3pie.py forward-compatible with GC3Pie 2.5 (#2373)

easyblocks

  • minor enhancements, including:
    • auto-detect default build target for Clang (#1115)
    • build GROMACS for target architecture based on --optarch (#1163)
    • ensure correct $PYTHONPATH for recent OpenBabel versions (#1219)
    • enhance Amber easyblock with support for OpenBLAS and better Intel MPI support (#1305)
    • also support only installing AmberTools through Amber easyblock (#1305)
    • also pick locations for CUPTI headers & libraries in CUDA easyblock (#1306)
    • update patching out of sanitizer tests for recent Clang versions (>=5.0) (#1327)
    • update known questions for Qt5 to support installing recent versions (#1328)
    • update BamTools easyblock for v2.5.0 (#1332, #1337)
    • disable libfox target if external module found in QuantumESPRESSO easyblock (#1333)
    • add support for linking Octave with multi-threaded BLAS/LAPACK library (#1340)
    • support install_target in PythonPackage + deprecate use_easy_install & use_setup_py_develop (#1341, #1342)
  • various bug fixes, including:
    • make RubyGem easyblock use $GEM_* environment variables except if as extension of Ruby itself (#1247)
    • move initialisation in SystemCompiler & SystemMPI easyblocks to the prepare step (#1282)
    • enable skipping sanitizer tests by default in Clang easyblock, they can’t be relied on (#1329)
    • fix quotes when using $ORIGIN in RPATH locations for DOLFIN (#1338)
    • fix sanity check for shared libraries in Trilinos easyblock (#1339)

easyconfigs

  • added easyconfigs for foss/2018a and intel/2018a common toolchains (#5577), (#5578)
  • added example easyconfig files for 26 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • BLAST+ 2.7.1, BamTools 2.5.0, Boost 1.66.0, Clang 5.0.0, dask 0.16.0, FFmpeg 3.4.1, GROMACS 2016.4, HDF5 1.8.20, matplotlib 2.1.1, PLUMED 2.4.0, Pillow 5.0.0, Qt5 5.9.3, QuantumESPRESSO 6.2, Ruby 2.5.0, Rust 1.22.1
  • minor enhancements, including:
    • include gomms in list of extensions for R 3.4.3 (#5547)
    • clean up BamTools easyconfigs to rely on updated easyblock + add SHA256 checksums (#5575)
    • add Time::HiRes to recent Perl versions (#5616)
    • add DNAcopy & dupRadar extensions to bundle for Bioconductor 3.6 (#5587, #5618)
    • switch to using install_target rather than now deprecated use_easy_install and use_setup_py_develop (#5625)
  • various bug fixes, including:
    • avoid auto-downloading of parcel in gdc-client 1.3.0 easyconfig (#5523)
    • fix permissions on make_raw_alos.pl script in ROI_PAC installation (#5546)
    • remove erroneous patch for Intel compiler support in Perl 5.26.0 easyconfig built with GCCcore/6.4.0 (#5561)
    • include HWxtest as extension to fix issue with diveRsity in R 3.4.3 easyconfig file (#5570)
    • add pkg-config as build dependency for fontconfig, harfbuzz, gnuplot, pango (#5580)
    • fix versions of updated extensions in BioConductor bundle (#5587, #5618)
    • add missing libpng dependency in ROOT 6.10.08 easyconfigs (#5595)
    • fix option passed to configure in M4 (#5606)
    • rename SIBELia to Sibelia (#5603)
    • add patch for binutils 2.26 to fix compatibility with GCC 6.x (#5611)
    • fix for dependencies was set twice in OpenMPI 3.0.0 easyconfig (#5619)
    • fix download URL in comment of Kent tools easyconfigs (#5633)
    • add SHA256 checksums to various easyconfigs (#5635, #5636, #5639)
    • add rdma-core-devel to OS dependencies for OpenMPI 3.0.0 (#5648)

EasyBuild v3.5.0 (December 15th 2017)

feature release

framework

  • add support for implementing pre- and post-step hooks (#2343)
  • various enhancements, including:
  • various bug fixes, including:
    • fix typo in ‘giolf’ toolchain definition (#2327)
    • fix minor issues with --inject-checksums (#2333)
    • fix error message when ‘gv’ Python package is not available (#2340)
    • install paramiko version < 2.4.0 for Python 2.6 in Travis config (#2344)
    • disable broken log rotation, avoid duplicate logging of output of executed commands under ‘--debug’ (#2347)
    • also include $ORIGIN and absolute paths to ‘lib’ and ‘lib64’ subdirectories in RPATH locations (#2358)
    • fix repo references in install-EasyBuild-develop.sh script (#2360)

easyblocks

  • new software-specific easyblock for Bazel (#1286) and Octave (#1304)
  • new generic easyblock for installing Octave packages as extensions (#1304, #1318)
  • minor enhancements, including:
    • remove foamExec & wdot from sanity checks, add blockMesh & checkMesh + enable logging for recent OpenFOAM versions (#1205, #1272)
    • add exceptions for FFTW/3.3.6 on POWER with GCC 5/6/7 (#1274)
    • add support for Spectrum MPI to the SystemMPI easyblock (#1275)
    • allow skipping of steps for Bundle components + fix issues with templates & formatting of error message (#1278)
    • update HPCG easyblock for v3.0 by changing configure syntax (#1284)
    • correctly configure for BLAS/LAPACK in R easyblock & check configure output (#1292, #1300)
    • make R easyblock set configure options for dependencies (#1297, #1303)
    • allow tuning of build command in PythonPackage via custom ‘buildcmd’ easyconfig parameter (#1299)
    • set default Java encoding to UTF8 when installing Trinity (#1302)
    • also define $CUDA_ROOT in generated module for CUDA (#1234)
    • make the ScaLAPACK easyblock capable of building in parallel (#1288, #1321, #1324)
  • various bug fixes, including:
    • avoid changing $CPATH, $LD_LIBRARY_PATH an $LIBRARY_PATH in generated modules for Intel Advisor, Inspector, and VTune (#1229)
    • fix check for Intel MKL in PSI easyblock (#1273)
    • fix missing space in fftw easyblock (#1277)
    • fix use of FFTW on top of Intel MKL in CP2K easyblock (#1281)
    • fix wrong sanity check for Boost when using Python 3.x (#1283)
    • pick up per-component checksums in Bundle generic easyblock (#1285)
    • correctly pass down optimization flags in CP2K easyblock (#1293)

easyconfigs

  • added example easyconfig files for 39 new software packages:
  • added new easyconfigs for existing toolchains: intel/2017.09 (#5303), intel/2018.00 (#5129), intel/2018.01 (#5345)
  • added additional easyconfigs for various supported software packages, including:
    • CGAL 4.11, CMake 3.10.0, Caffe 1.0, FFTW 3.3.7, GATE 8.0, gnuplot 5.2.2, HPCG 3.0, HTSlib 1.6, Keras 2.1.2, LLVM 5.0.0, Mesa 17.2.5, mpi4py 3.0.0, netCDF 4.5.0, OpenFOAM 5.0, ParaView 5.4.1, R 3.4.3, Ruby 2.4.2, Rust 1.21.0, SCons 3.0.1, Szip 2.1.1, Theano 1.0.0, VTK 8.0.1, X11 20171023
  • minor enhancements, including:
    • add SHA256 checksums to Autoconf (#5304), Automake (#5305), libtool (#5306) and M4 (#5307) easyconfigs
    • avoid hardcoding extension versions in worker easyconfig, include ‘perl’ as OS dep (#5324)
    • enable building ScaLAPACK in parallel with enhanced ScaLAPACK easyblock (#5331)
    • include RInside extension in R 3.4.0 easyconfig (#5354)
    • clean up configure options that are now handled by R easyblock (#5478, #5485)
    • update Octave easyconfigs to use Octave easyblock, add extensions for latest Octave versions (#5484, #5503, #5507)
    • add Log4perl extension to Perl 5.26.0 easyconfigs (#5511)
  • various bug fixes, including:
    • add missing extensions required by MultiQC & stick to networkx 1.11 (#5240)
    • disable optarch when using Intel compilers and enable tests in all libxc easyconfigs (#5256, #5257)
    • avoid downloads when installing matplotlib 2.1.0 w/ Python 2.7.14 (#5267)
    • fix $CPATH in recent libffi easyconfigs + enhance sanity check & add checksum (#5271)
    • use Github source URL, run autogen.sh + include Autotools build dep for numactl (#5286, #5296, #5297, #5299, #5302)
    • add hwloc to GROMACS dependencies (#5295)
    • fix source_urls (& sources spec) for GATE (#5367)
    • consistently add Autotools build dep in recent netCDF easyconfigs (#5394)
    • fix check in test suite for binutils build dep when GCCcore used as toolchain (#5436)
    • libdap 3.19.1 checksum changed (#5473)
    • disable new rfkill feature in easyconfig for util-linux 2.31 since it requires a recent kernel (#5480)
    • add missing PROJ dependency in recent GDAL easyconfigs (#5481)
    • fix name in TensorFlow easyconfigs (was ‘TensorFlow’) (#5495)
    • fix checksum for Szip 2.1.1 (#5517)
    • fix order of extensions for FSLeyes, add missing MarkupSafe (dep for Jinja2) (#5520)

EasyBuild v3.4.1 (October 17th 2017)

bugfix/update release

framework

  • various enhancements, including:
    • improve trace output for executed commands + drop requirement for --experimental for --trace (#2306)
    • add giolf toolchain definition: GCC, IntelMPI, OpenBLAS, (Sca)LAPACK and FFTW (#2310)
    • add support for --force-download and --ignore-checksums (#2313, #2314)
    • flesh out pypi_source_urls from derive_alt_pypi_url (#2319)
  • various bug fixes, including:
    • also check for use of --rebuild next to --force to skip sanity check with --module-only (#2307)
    • ensure $TMPDIR is set to a short path for OpenMPI v2.x (#2311)
    • guard ‘module load’ commands in generated modules under --recursive-unload to avoid load storms (#2316)
    • correctly deal with use of special characters in description & co (#2320)
    • fix incorrect FFT_INC_DIR for Intel MKL (#2323)

easyblocks

  • add generic ‘SystemMPI’ easyblock (#1106, #1261, #1262)
  • add software-specific easyblock for SAS (#1263)
  • minor enhancements, including:
    • run ‘wcleanAll’ or ‘wcleanPlatform -all’ before building OpenFOAM (#780, #1258)
    • enhance generic ‘SystemCompiler’ easyblock (#1106)
    • clean up --trace output for Python & Python packages (#1248)
    • update Intel MPI easyblock to support 2018.* versions (#1253)
    • add support for Intel MPI and Intel MKL to ScaLAPACK easyblock (#1255)
    • enhance GCC easyblock to also put symlinks in place for cc/c++/f77/f95 commands (#1256)
  • various bug fixes, including:
    • allow that ‘gcc -print-multiarch’ fails in icc easyblock (#1249)
    • fix prefix subdirectory for older versions of icc (in particular 2011.3.174) (#1250)
    • use remove_file rather than os.remove in generic IntelBase easyblock to correctly deal with broken symlinks (#1251)
    • fix sanity check for MXNet easyblock + correctly detect unpacked source directory (#1257)
    • avoid building CP2K twice due to incorrect attempt at running ‘make clean’ first (#1266)

easyconfigs

  • added easyconfigs for new toolchain giolf/2017b (#5140)
  • added example easyconfig files for 13 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • Anaconda2/3 4.4.0, Blender 2.79, Boost 1.65.1, CMake 3.9.4, FFmpeg 3.3.4, GCC 5.5.0, h5py 2.7.1, Keras 2.0.8, matplotlib 2.1.0, mympingpong 0.8.0, OpenCV 3.3.0, OpenFOAM-Extend 4.0, OpenMPI 2.1.2 + 3.0.0, Pillow 4.3.0, Python 2.7.14 + 3.6.3, SAMtools 1.6, scikit-image 0.13.0, scikit-learn 0.19.0, Tensorflow 1.3.0, vsc-mympirun 4.0.2
  • minor enhancements, including:
    • add xkeyboard-config component in X11 bundle (#5066)
    • clean up use of wcleanAll in OpenFOAM-Extend easyconfigs, now handled by OpenFOAM easyblock (#5131)
    • also install run_rcorrector.pl with Rcorrector (#5135)
    • add SHA256 checksum to PyCUDA easyconfig (#5154)
    • fix/improve description in HDF5 easyconfigs (#5182)
    • include heatmap3 extension for R 3.4.0 (#5185)
    • add ComplexHeatmap to Bioconductor 3.5 bundle + dep pkgs in R 3.4.0 easyconfig (#5195)
  • various bug fixes, including:
    • fix source URLs for AUGUSTUS 3.2.3 (#5119)
    • fix building Bison 2.5 on systems with recent glibc (#5130)
    • also consider rdma-core-devel as alternative to libibverbs-devel OS dependency (#5132)
    • consistently use empty toolchain version in icc & ifort easyconfigs to ensure that GCC(core) dep is loaded during installation (#5133, #5134)
    • add patches for Boost 1.64.0 to fix known issues (#5148)
    • remove PyCUDA easyconfig for intel/2017a, doesn’t work due to incompatibility between GCC 6.3.0 & CUDA 8 (#5156)
    • add missing Perl extensions in easyconfig for Worker 1.6.7 (#5157)
    • fix checksums for packages that download from github.com/x/y/archive (#5162)
    • add missing libpng dependency to g2lib-1.4.0 easyconfig using intel-2017a (#5196)
    • fix source_urls for Szip 2.1 & include SHA256 checksum (#5206)
    • remove unneeded --with-fft-incs configure option for ABINIT (#5207)
    • disable optarch for libjpeg-turbo 1.5.1 built with intel/2017a (#5214)
    • update $R_LIBS in plotly easyconfig (#5215)
    • include NLopt as a dependency in R easyconfigs that include nloptr as extension (#5217)

EasyBuild v3.4.0 (September 10th 2017)

feature release

framework

easyblocks

  • minor enhancements, including:
    • update Siesta easyblock for versions 4.0.1 and 4.1-b3 (#1218)
    • updates GAMESS-US easyblock for version 20170420R1 + move ddikick.x when ddi_comm is set to ‘sockets’ (#1221)
    • update MRtrix easyblock for 3.0 & beyond + use copy function (#1230)
    • update ROOT easyblock to support recent versions that require using CMake, add sanity check, clean up/enhance make_module* (#1236)
    • enhance icc easyblock to include multipath include dir in $CPATH (#1237, #1242)
  • various bug fixes, including:
    • use plumed-patch command rather than ‘plumed patch’ in GROMACS easyblock (#1212)
    • remove ‘provides’ line from setup.py (#1217)
    • fixed wrong use of build_type in self.cfg in WRF easyblock that resulted in an raised exception (#1220)
    • added a call to super post_install_step in CUDA easyblock (#1226)
    • fix $MCRROOT definition in generated module file under --module-only in MCR easyblock (#1228)
    • fix permissions for directories in SuiteSparse (#1238)
    • fix function signature for fetch_extension_sources in OCaml easyblock (#1240)

easyconfigs

  • added easyconfigs for foss/2017b and intel/2017b common toolchains (#4768), (#4618)
  • added new easyconfigs for existing toolchains:
  • added example easyconfig files for 31 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • Boost 1.65.0, binutils 2.29, GAMESS-US 20170420-R1, GCC(core) 7.2.0, gzip 1.8, HDF5 1.8.19, LLVM 4.0.1, MRtrix 3.0_RC2, Perl 5.26.0, ROOT 6.10.04, Spark 2.2.0
  • minor enhancements, including:
    • add checksums to Perl 5.24.1 easyconfigs (#4973, #4992)
    • add additional extensions for R 3.4.0 and Bioconductor 3.5 bundle (#5007, #5028, #5029, #5062, #5079)
    • also define $INCLUDEPATH and $LIBRARY_PATH in Tesla-Deployment-Kit easyconfig (#5018)
    • add check to see whether binutils is included as build dep when GCCcore toolchain is used (#5084)
  • various bug fixes, including:
    • added Rmpi patch file for R built with intel toolchains incl. impi 5.x (#4623)
    • use single-line description in setup.py (#4881)
    • fix version and source for Seurat + add extensions required by Seurat in R 3.4.0 easyconfig (#4889)
    • add zlib as dependency to util-linux easyconfigs (#4900, #4998)
    • use modextrapaths instead of modextravars in OpenMM easyconfig (#4903)
    • update deprecated PLINK urls (#4920, #5006)
    • fix moduleclass for Cookiecutter (#4947)
    • fix order of OpenMPI dependency in iomkl/2016.09* easyconfigs, must come after icc/ifort (#5024)
    • fix typo in comment in util-linux easyconfigs & add SHA256 checksums (#5052)
    • remove superfluous $CPATH update in GLib 2.44.0 easyconfig (#5053)
    • update ncurses to not build a separate libtinfo but provide a soft link instead + force linking to ncurses in libreadline (#5067, #5074)
    • include Autotools as build dep for netCDF (#5077)
    • add missing binutils build dep for texinfo (#5099)

EasyBuild v3.3.1 (July 12th 2017)

bugfix/update release

framework

  • various enhancements, including:
    • add support for ‘allow_prepend_abs_path’ easyconfig parameter (#2254)
    • support for --merge-pr (#2266)
  • various bug fixes, including:
    • resolve symlinks to location of ‘eb’ in get_paths_for (#2248)
    • fall back to checking location relative to ‘eb’ location in find_eb_script (#2249)
    • respect --suffix-modules-path value for user-specific module path extensions (#2250)
    • update EasyBuild bootstrap script to download distribute tarball from http://easybuilders.github.io/easybuild/files (#2256)
    • fix default target GitHub account/organisation for --new-pr & co + fix tests that got broken by migration to github.com/easybuilders (#2258)
    • fix checking for new easyconfigs in copy_easyconfigs, pick up specified commit message as PR title if none was provided (#2259)
    • get rid of references to hpcugent after move to github.com/easybuilders (#2261)
    • automatically enable --ignore-osdeps under --new-pr and --update-pr (#2262)

easyblocks

  • minor enhancements, including:
    • enhance HDF5 easyblock: define $HDF5_DIR & include -DMPICH_IGNORE_CXX_SEEK in $CXXFLAGS (#1200)
    • consistently pass down (named) arguments in prepare_step, and check for it in the tests (#1202)
    • remove no longer supported VersionIndependentPythonPackage generic easyblock (#1202)
    • update ABAQUS easyblock for recent versions, incl. support for installing hotfixes (#1203)
    • get rid of references to ‘hpcugent’ organisation after move to github.com/easybuilders (#1206)
    • make Boost easyblock fully aware of (pre)configopts, (pre)buildopts and (pre)installopts (#1207)
    • drop check for ‘ipython’ in sanity check of Anaconda easyblock, to also support Miniconda (#1210)

easyconfigs

  • added example easyconfig files for 6 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • ABAQUS 2017, GCC(core) 6.4.0, Keras 2.0.5, NCBI-Toolkit 18.0.0, numpy 1.13.0, Tensorflow 1.2.0
  • minor enhancements, including:
    • add SVG and Statistics::Basic to recent Perl versions (#4796)
    • remove buildopts from HDF5 easyconfigs, taken care of by updated HDF5 easyblock now (#4779)
    • include joblib as extension in recent Python easyconfigs (#4805)
    • changed moduleclass in mpi4py to better reflect what it is and to not confuse HMNS (#4807)
    • get rid of references to ‘hpcugent’ organisation after move to github.com/easybuilders (#4815, #4837)
    • add Rtsne as extension to R 3.4.0 (#4831)
  • various bug fixes, including:
    • use PYPI_SOURCE as source URL in Tensorflow easyconfigs (#4786)
    • fix homepage for skewer (#4791)
    • sync/fix source_urls & homepage in HDF5 easyconfigs (#4800)
    • fix ubsan error blocking build of GCCcore 6.1.0, 6.2.0, 6.3.0 with system GCC 7.1 (#4813)

EasyBuild v3.3.0 (June 26th 2017)

feature release

framework

  • various enhancements, including:
  • various bug fixes, including:
    • make sure test account & accompanying token is used in tests for github.py (#2220, #2224)
    • only use MPD for old versions of Intel MPI (<4.1) in mpi_cmd_for (#2221)
    • escape dots in package filename to ensure correct match in derive_alt_pypi_url (#2225)
    • fix GNU_SOURCE template by adding missing /gnu/ (#2235)
    • catch exception shutil.Error in copy_file (#2239)
    • report full error and traceback on unhandled exception in test report (#2240)
    • fix --set-default-module flag (#2243)

easyblocks

  • added easyblocks for MXNet (#1135), Tkinter(#1184)
  • minor enhancements, including:
    • enhance sanity check for NCL (#1169, #1179)
    • enable building of shared FFTW libraries (#1180)
    • include update statements for $CPATH and $*LIBRARY_PATH in generated module in numpy easyblock (#1183)
    • stop using deprecated ‘copytree’ function from easybuild.tools.filetools (#1185)
    • update SAMtools easyblock for v0.1.17 (#1189)
    • update MATLAB easyblock for 2016b & 2017a versions (adjust permissions and change dir) (#1182, #1197)
    • consider $EB_*_LICENSE_SERVER(_PORT) in MATLAB and ANSYS easyblocks (#1195)
    • add omp_num_threads custom parameter in CP2K easyblock to allow defining $OMP_NUM_THREADS during testing (#1196)
  • various bug fixes, including:
    • fix Siesta easyblock to enable and verify parallel build (#1186)
    • fix bug in alias definition in impi easyblock for mpigxx, mpiicpc and mpiifort (#1192)

easyconfigs

  • enable automatic style checks in easyconfig tests (#2506)
  • added example easyconfig files for 28 new software packages:
  • added new easyconfigs for existing toolchains:
  • added additional easyconfigs for various supported software packages, including:
    • ABINIT 8.2.2, BLAST+ 2.6.0, Bowtie2 2.3.2, FFmpeg 3.3.1, NCL 6.4.0, Rust 1.18.0, SAMtools 1.5, VTK 7.1.1
  • minor enhancements, including:
    • use ‘git diff --name-only’ and $TRAVIS_COMMIT_RANGE in Travis config to get list of changed files (#4606, #4619)
    • add tuneR, seewave, soundecology, vcfR extensions for R 3.4.0 (+ libsndfile as dep) (#4628, #4680, #4747)
    • also copy README for GapFiller (#4631)
    • enable inclusion of version symbol by using --enable-ld-version-script configure option for LibTIFF (#4639)
    • add SHA256 checksums for libpciaccess to discriminate from old tarballs that required running autogen.sh (#4688)
    • fix NE_GLOBAL_DIR path for ne by also specifying PREFIX in buildopts (#4698)
    • more (trivial) style fixes (#4761)
    • avoid use of import in ANSYS & MATLAB easyconfigs (#4762)
    • set $OMP_NUM_THREADS during CP2K test step via dedicated easyconfig parameter (#4763)
    • avoid use of ‘import’ in BFAST easyconfigs, just strip of ‘a’ from version (#4764)
    • add the docopt module to all Python 2017a easyconfigs (#4770)
    • stop using deprecated 2-element tuple format in sources, use equivalent dict format instead (#4774)
  • various bug fixes, including:
    • fix typo in statsmodels source url (/sources/ -> /source/) (#4612)
    • add location to DotLib.pm to $PERL5LIB for SSPACE_Basic (#4638)
    • add missing /gnu/ in ftpmirror.gnu.org source_urls, or use GNU_SOURCE where possible (#4653)
    • consistently use --with-harfbuzz=no configure option in freetype easyconfigs (#4668)
    • use --with-x=yes in R easyconfigs that include X11 as a dependency (#4701)
    • remove ‘4.0’ in tbb description (#4707)
    • add lib sanity check paths for Debian compatibility in nettle (#4722)
    • fix source URLs for HDF5 (#4749)

EasyBuild v3.2.1 (May 12th 2017)

bugfix/update release

framework

  • various enhancements, including:
    • make hardcoded max ratio for failures in adjust_permissions configurable (#2213)
    • allow https:// on direct download in sources (#2214)
  • various bug fixes, including:
    • bump version bootstrap script to sync with latest update (#2208)
    • fix crash during module generation when ‘%’ character is used in description (#2209)

easyblocks

  • added easyblock for Siesta (#1105)
  • minor enhancements, including:
    • enhance GROMACS easyblock to build with PLUMED support (#1121)
    • enhance NAMD easyblock: add OpenMP support, update for recent NAMD versions (2.12), fix compatibility with Tcl versions other than 8.5 (#1173)

easyconfigs

  • added example easyconfig files for 12 new software packages:
  • added new easyconfigs for existing toolchains:
  • added additional easyconfigs for various supported software packages, including:
    • HDF5 1.10.1, NAMD 2.12, OpenFOAM 4.1, pandas 0.20.1, ParaView 5.2.0, R 3.4.0, R-bundle-Bioconductor 3.5, Tensorflow 1.1.0
  • minor enhancements, including:
    • update source URLs in libpciaccess easyconfigs (#3960)
    • enable use of double precision floating point in METIS 5.1.0 foss/2016a easyconfig (#4555)

EasyBuild v3.2.0 (May 5th 2017)

feature release

framework

  • various enhancements, including:
    • add support for marking installed module file as new default version using --set-default-module (#2110)
    • additional easyconfig parameters for documentation: docpaths, examples, site_contacts, upstream_contacts, usage (#2113)
    • add support for --allow-use-as-root-and-accept-consequences (#2123)
    • enable extraction of patches from compressed files before applying them (#2128)
    • alphabetically sort functions and methods in module_generator module (#2132)
    • introduce function ensure_iterable_license_specs (#2157)
    • bump Travis config to use Lmod 7.4 (#2176)
    • implement copy_dir function in filetools (#2177)
    • clarify error message when no software-specific easyblock was found (#2178)
    • make log.deprecated more verbose by also printing deprecation warnings to stderr (#2179)
    • add copy function to filetools for easy copying of lists of files/directories (#2180)
    • add support for --verify-easyconfig-filenames (#2185)
    • add support for --package-tool-options (#2187)
    • take into account inline trailing comments in fetch_parameters_from_easyconfig (#2192)
    • add support for customising easyconfig parameters on a per-extension basis (#2194)
    • perform sanity check after stage 2 of EasyBuild bootstrap script, module file should be in place (#2199)
    • change order in which module commands are checked, consider Lmod first (#2201)
  • various bug fixes, including:
    • fix use of compiler-specific --optarch value in combination with --job (#2183)
    • call run_all_steps in regtest mode rather than running steps individually (#2203)

easyblocks

  • added easyblocks for Doris (#1154, #1161), VMD (#1148) and WRF-Fire (#1153, #1159)
  • minor enhancements, including:
    • update IntelBase, PGI and TotalView easyblocks to allow list of license files/servers via ‘license_file’ easyconfig parameter (#1129)
    • update Bowtie2 easyblock to set correct build options, copy more files, extend sanity check (#1146)
    • added the option to build Boost with multi-threading support (#1147)
    • allow libpng as OS dependency for WPS (#1150)
    • extend Boost TIME_UTC patch to Boost versions <= 1.49.0 (#1152)
    • enhance Python sanity check to check for Tkinter support if Tk is included as a dependency (#1156, #1158)
    • add support to install Python extensions without unpacking (#1166)
    • enhance TBB easyblock to also support building open source versions (#1168)
  • various bug fixes, including:
    • update FFTW easyblock: --enable-avx-128-fma depends on the fma4 CPU feature (AMD), not fma (#1142)
    • fix problems when usempi not defined in toolchain in NAMD easyblock (#1162)

easyconfigs

  • added example easyconfig files for 34 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • BamTools 2.4.1, Boost 1.64.0, GCC 7.1.0, IPython 5.3.0, LLVM 4.0.0, Mesa 17.0.2, Octave 4.2.1, OpenMPI 2.1.0, PETSc 3.7.5, PGI 17.3, Perl 5.24.1, Python 2.7.13 + 3.6.1 (incl. numpy 1.12.1, scipy 0.19.0), R 3.3.3, SuiteSparse 4.5.5
  • various enhancements, including:
    • sync Bowtie2 easyconfigs, consistently use Bowtie2 easyblock (#4380)
    • use pl2 source tarball for FFTW 3.3.6 which already includes patch for F03 interface (#4529)
  • various bug fixes, including:
    • add missing XZ dep in easyconfig for libunwind 1.1 w/ GCC/4.9.2, sync sanity_check_paths across libunwind easyconfigs (#4369)
    • use ‘use_fma4’ rather than deprecated ‘use_fma’ easyconfig parameter in FFTW easyconfigs using intel toolchain (#4384)
    • fix pkgconfig patch for Qhull (#4451)
    • also use patch for METIS 5.1.0 to enable use of doubles in easyconfig for foss/2016b (#4467)
    • add dependency NLopt for R extension nloptr (#4481)
    • fix issue with configparser and backports namespace blocking inclusion of nbconvert with IPython (#4504)
    • change source_urls of pycrypto to encrypted https://pypi.python.org/... (#4505)
    • fix sources spec for HMMER 3.1b2 + minor style fixes + better sanity check (#4531)
    • also build IMB-IO in IMB 4.1 easyconfig using foss/2016a (#4539)

EasyBuild v3.1.2 (March 20th 2017)

bugfix/update release

framework

  • fix broken packaging support by fixing run_cmd bug with shell=False (#2153)
  • minor enhancements, including:
    • implement change_dir function in filetools module (#2155)
    • use checker_state in trailing whitespace style check + add dedicated test (#2160, #2169)
    • consider both pycodestyle and pep8 Python modules in style checks (#2161)
    • make bootstrap script aware various modules-related $EASYBUILD_* environment variables (#2170)
  • various bug fixes, including:
    • interpret statements that extend $MODULEPATH in modpath_extensions_for method (#2104)
      • also fixes inclusion of superfluous load statements in modules installed in user HMNS module tree (cfr. #2172)
    • take into account that $PATH or $PYTHONPATH may be empty when running tests (#2149)
    • handle duplicates in --include-* (#2151)
    • exclude dependencies of dependencies that extend $MODULEPATH (#2152)
    • add ld.bfd to RPATH wrappers (#2156)
    • fix test_vsc_location, vsc.__file__ may not be available when vsc is installed as a namespace package (#2159)
    • fix reported problems with scripts & docs tests (#2164)
    • fix --try-software-version using non-greedy matching + lookahead assertion, add test for tweak_one (#2166)
    • avoid creating empty modulefile directories when using modaltsoftname (#2168)
    • fix fftw_libs for MKL without interface libraries (#2171)

easyblocks

  • add easyblock for QScintilla (#1127)
  • minor enhancements, including:
    • auto-disable quad precision on POWER and ARM in FFTW (#1102, #1138)
    • allow “download install” for PETSc (#1114)
    • modify Trinity sanity check for versions 2.3 and above (#1133)
    • make unpacking Python extensions optional (#1134)
    • update SAMtools easyblock for version 1.4 (#1139)
  • various bug fixes, including:
    • reduce number of environment variables in icc and ifort modules (#1126, #1143)
    • also run tests with Tcl module syntax, Lua is the default in EasyBuild v3.x (#1128)
    • rename member variable to avoid conflict with member of base class in PGI (#1137)
    • don’t set $FPATH environment variable in multiple easyblocks (#1140)

easyconfigs

  • add patch to FFTW 3.3.6 easyconfigs to fix MPI F03 interface (#4334)
    • note that this warrants rebuilding FFTW that is a part of foss/2017a
  • added example easyconfig files for 14 new software packages:
  • added additional easyconfigs for various supported software packages, including GROMACS 2016.3, PGI 17.1, SAMtools 1.4
  • various enhancements, including:
  • various bug fixes, including:
    • correctly set $PYTHONPATH in ROOT easyconfigs (#4239, #4331)
    • correct libjpeg turbo references in GDAL (#4276)
    • make sure that HDF5 provided via EasyBuild is used in BLASR easyconfigs (#4278)
    • fix issues with miRDeep2 installation (#4291, #4301, #4316)
    • also run tests with Tcl module syntax, Lua is the default in EasyBuild v3.x (#4315)
    • fix PostgreSQL homepage + minor style fixes (#4318)
    • detect use of ‘$root’, which is not compatible with module files in Lua syntax (#4330)
    • fix homepage/source_urls for ViennaRNA (#4338)
    • pass down $FFLAGS via FLAGS_OPT in SWASH easyconfigs (#4341)
    • remove include/GL/wglext.h from Mesa sanity check (#4354)
    • rename S.A.G.E. to SAGE, can’t have directories with trailing dot in Windows (#4368)

EasyBuild v3.1.1 (March 7th 2017)

bugfix/update release

framework

  • minor enhancements, including:
    • print more useful error message when no compiler-specific optarch flag is defined (#1950)
    • add ec parameter to expand_toolchain_load() (#2103)
    • clarify unstable/closed PR warning message (#2129)
  • various bug fixes, including:
    • ensure that $EBEXTSLIST* is also included in generated module under --module-only (#2112)
    • fix formatting issues in generated documentation for --list-software and --avail-easyconfig-licenses (#2121)
    • fix problem with backticks in description breaking ‘fpm’ packaging command (#2124)
    • replace --enable-new-dtags with --disable-new-dtags instead of removing it in RPATH wrapper script (#2131)
    • only perform is_short_modname_for sanity check in det_short_module_name if modaltsoftname is available (#2138)
    • fix logic in make_module_dep w.r.t. excluding loads for toolchain & toolchain components (#2140)
    • skip test_check_style if pep8 is not available (#2142)

easyblocks

  • minor enhancements, including:
    • change the sanity check for MCR 2016b since the directory structure has changed (#1096)
    • update NWChem easyblock for version 6.6.x and to handle different versions of OpenMPI for older versions (#1104)
    • allow per-component source_urls with templating in Bundle easyblock (#1108)
    • add slib to $LD_LIBRARY_PATH for itac (#1112)
    • consider both lib and lib64 in CGAL sanity check (#1113)
    • add support for installing Intel tools that do not require license at installation time (#1117)
      • required for Intel MPI and Intel MKL version 2017.2.174
    • remove prefix_opt as custom easyconfig parameter for Qt easyblock (#1120)
  • various bug fixes, including:
    • use ‘-prefix <path>’ rather than ‘--prefix=<path>’ for configure in Qt (#1109)
    • fix indentation problem in PETSc easyblock (#1111)

easyconfigs

  • added example easyconfig files for 16 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • binutils 2.28, Cantera 2.3.0, CGAL 4.9, GMP 6.1.2, IPython 5.2.2, JasPer 2.0.10, NWChem 6.6, matplotlib 2.0.0, PCRE 8.40, Qt5 5.8.0, Vim 8.0, X11 bundle v20170129, VTK 7.1.0, Yade 2017.01a
  • added new easyconfigs for existing toolchains:
  • various enhancements, including:
    • fix style in several easyconfigs (#4174, #4176, #4190, #4233)
    • add sanity check command to Yade easyconfig to make sure that ‘import yade’ works, include bzip2 as dep (#4193)
    • add PDF::API2 extension to Perl 5.24.0 easyconfigs + sync exts_list (#4221)
  • various bug fixes, including:
    • add Bison and gettext as build deps for X11 (#4111)
    • clean up dependencies in libdrm (#4113)
    • make sure Ghostscript picks up external libraries (#4118)
    • fix ippicv source download and library install for OpenCV v3.1.0 (#4126)
    • fix software name for OrthoMCL + modernise OrthoMCL easyconfigs (#4134, #4135)
    • get rid of backticks in gettext descriptions, causes problems when packaging with FPM (#4146)
    • remove duplicate sources specification in OpenMPI (#4150)
    • fix definition of buildopts/installopts in Cantera easyconfig (#4133, #4164, #4177)
    • use http:// rather than ftp:// source URLs in CFITSIO easyconfigs (#4167)
    • add patch for XZ 5.2.2 to include 5.1.2alpha symbols required by ‘rpm’ command on CentOS 7.x (#4179)
    • add patch for Boost v1.61-1.63 to fix problem with make_array/array_wrapper in Boost serialization library (#4192)
    • set CMAKE_PREFIX_PATH to ncurses install directory in CMake easyconfigs (#4196)
    • switch to lowopt=True for libxc v2.2.* and v3.* (#4199)
    • remove custom sanity_check_paths, since it’s identical to that used by the R easyblock (#4200)
    • fix version (& homepage) in ea-utils easyconfigs (#4205)
    • remove --with-threads configure option in OpenMPI-2.* (#4213)
    • fix check for Szip library in configure script for netCDF 4.1.3 (#4226)
  • fix source_urls in several easyconfigs, including:
    • bsoft, cutadapt, EMBOSS, GnuTLS, ImageMagick, LibTIFF, Mercurial, netCDF, netCDF-Fortran, pigz, ROOT and Subversion (#4227)

EasyBuild v3.1.0 (February 3rd 2017)

feature release

framework

  • various enhancements, including:
    • ARM: GCC optimal/generic architecture compiler flags (#1974)
    • add support for --check-style to check style in easyconfig files (#1618, #2038)
    • add HOME and USER from env to available cfg file constants (#2063)
    • --optarch can now be specified on a toolchain basis (#2071)
    • implement get_cpu_features function in systemtools (#2074, #2078)
    • support use of linalg without MPI, add iimkl toolchain definition (#2082)
    • spoof HTTP request header with empty agent (#2083)
    • exclude dependencies of dependencies that extend $MODULEPATH in make_module_dep (#2091)
  • various bug fixes, including:
    • make fetch_github_token more robust against RuntimeError from keyring (#2070)
    • POWER: Fix --optarch=GENERIC for GCC (#2073)
    • fix docstring in toolchain class (#2075)
    • skip test cases involving .yeb if PyYAML is not installed, silence test in options subsuite (#2081)
    • fix traceback with ‘eb --check-github’ if GitPython is not installed (#2085)
    • fix regex for determining list of patched files in GitHub diff (#2088)
    • modify robot so that it only appends dependencies of tweaked easyconfigs (#2090)
    • escape metacharacters in paths passed to re.compile in dry_run_set_dirs (#2098)
    • fix broken error message in get_toolchain_hierarchy + dedicated test case (#2099)

easyblocks

  • new easyblock for FFTW (#1083)
  • various enhancements, including:
    • update sanity check for flex 2.6.3, no more libfl_pic.a library (#1077)
    • cleanup build before proceeding with full Boost (#1080)
    • update CP2K easyblock: copy data dir, support version 4.1, support ELPA, fix psmp build with foss toolchain (#996, #1020, #1043, #1084)
    • add sanity check support for OpenSSL 1.1 (#1087)
    • support the latest changes in Inspector 2017 (#1047)
    • update NEURON easyblock to support the lack of hoc_ed in 7.4 (#987)
    • add support for WPS 3.8 (#1079)
    • also consider setuptools in EasyBuildMeta easyblock (#1093)
  • various bug fixes, including:
    • (correctly) define $ROSETTA3_DB in Rosetta easyblock (#1092)

easyconfigs

  • added easyconfigs for foss/2017a and intel/2017a common toolchains (#3968, #3969)
  • added example easyconfig files for 16 new software packages:
  • added additional easyconfigs for various supported software packages, including:
    • Boost 1.62.0 + 1.63.0, CP2K 4.1, GSL 2.3, PLUMED 2.3.0, Qt5 5.7.1, WRF 3.8, WPS 3.8, Yade 2016.06a, zlib 1.2.11
  • various enhancements, including:
    • update FFTW 3.3.5 easyconfigs to use FFTW easyblock & enable running of tests (#3985)
    • add FME extensions (+ deps) in R 3.3.1 easyconfigs (#4063)
  • various bug fixes, including:
    • add libxml2 dependency on HDF5 (#3759)
    • remove unnecessary dependency in libmatheval (#3988)
    • fix permissions on SWASH binaries (#4003)
    • add conda-forge channel to perl-app-cpanminus (#4012)
    • add missing deps (libpthread-stubs, libpciaccess) to libdrm 2.4.70 (#4032)
    • modloadmsg style fixes in multiple easyconfigs (#4035)
    • include X11 as dep for Molden (#4082)
    • remove incorrect definition for $ROSETTA3_DB, now (correctly) defined via Rosetta easyblock (#4083)
  • fix source URLs for several easyconfigs, including:
    • arpack-ng 3.1.3 + 3.1.5 (#4050), ChIP-Seq 1.5-1 (#4050), Ghostscript 9.10, 9.14 + 9.16 (#4050), Git 1.7.12, 1.8.2 + 1.8.3.1 (#4050), HBase 1.0.2 (#4043), libevent 2.0.22 (#4037), libsodium 1.0.3 (#4046), lynx 2.8.7 (#4050), Maven 3.2.2 and 3.3.3 (#4039), MEME 4.8.0 (#4050), PCC 20131024 (#4044), S-Lang 2.3.0 (#4045), Spark 1.3.0 (#4041), splitRef 0.0.2 (#4040)

EasyBuild v3.0.2 (December 22nd 2016)

bugfix release

framework

  • various bug fixes, including:
    • also skip dependencies of dependencies marked as external module in get_toolchain_hierarchy (#2042)
    • disable verbose setvar in modules.py (#2044)
    • force copying of easyconfigs in –new-pr/–update-pr, even when combined with -x (#2045)
    • fix verification of filename for easyconfigs used to resolve deps (#2051)
    • skip RPATH sanity check when toolchain did not use RPATH wrappers (#2052)
    • check whether file-like paths are readable before reading them in systemtools module (#2065)
  • various small enhancements, including:
    • add ‘rpath’ toolchain option to selectively disable use of RPATH wrappers (#2047)

easyblocks

  • various enhancements, including:
    • enhance DL_POLY_Classic easyblock to support building with Plumed support (REVIEW) (#829)
    • make the Allinea easyblock search for the templates in the easyconfig paths (#1025)
    • make FortranPythonPackage aware of (pre)buildopts (#1065)
    • update sanity check for Mono to support recent versions (#1069)
    • fix Eigen sanity check for latest version 3.3.1 (#1074)
  • various bug fixes, including:
    • skip RPATH sanity check for binary installations (