EasyBuild release notes¶
The latest version of EasyBuild provides support for building and installing 2,736 different software packages, including 37 different (compiler) toolchains. It contains 246 software-specific easyblocks and 37 generic easyblocks, alongside 15,020 easyconfig files.
Note
See also the concise overview of major changes in EasyBuild v4.0.
EasyBuild v4.6.0 (July 8th 2022)¶
feature release
framework
- various enhancements, including:
- allow searching for sources/patches in alternative location by specifying ‘
alt_location
’ in source/patch spec (#3994) - show URLs used for download attempts in trace output (#4026)
- add support for setting environment variables via ‘
pushenv
’ withmodextravars
(#4030) - add support for OneAPI compilers using toolchain option ‘
oneapi
’ (#4031, #4032, #4039) - make
check_linked_shared_libs
more robust by taking into account that ‘ldd
’ may fail (#4033) - fall back to sequential extension install if parallel install is not implemented (#4034)
- add support for using template values in name/version of extensions (#4036)
- allow searching for sources/patches in alternative location by specifying ‘
- various bug fixes, including:
- other changes:
easyblocks
- new software-specific easyblock for STAR-CCM+ (#1613)
- minor enhancements and updates, including:
- update Siesta EasyBlock to support GCC 10+ by adding
-fallow-argument-mismatch
Fortran compiler option (#2690) - enable building of shared library for Libint 2.7+ (#2738)
- allow some PyTorch tests to fail + print warning if one or more tests fail (#2742)
- also support OpenSSL 3.0 in OpenSSL wrapper easyblock (#2746)
- add more logging to
install_pc_files
method of OpenSSL wrapper easyblock (#2752) - make WPS easyblock aware of
(pre)buildopts
(#2754) - add Abseil system dependency for TensorFlow 2.9+ (#2757)
- disable altivec when building FFTW versions < 3.4 with single-precision with GCC on POWER (#2758)
- update Siesta EasyBlock to support GCC 10+ by adding
- various bug fixes, including:
- make VEP easyblock compatible with
--sanity-check-only
(#2743) - update Rosetta easyblock to take into account that
$LD_LIBRARY_PATH
,$CPATH
,$PATH
may not be defined (#2744) - only load temporary module file during sanity check for pybind11 for stand-alone installations, so it can be installed as extension (#2747)
- make sure that
CMakeMakeCp
uses correct build dir (#2748) - enhance Bazel easyblock to avoid writing to
$HOME
in sanity check (#2756)
- make VEP easyblock compatible with
easyconfigs
added easyconfigs for
foss/2022a
,intel/2022a
common toolchains (#15755)added example easyconfig files for 24 new software packages:
- BLT (#15624), category_encoders (#15638), fio (#10321), FSON (#15721), G-PhoCS (#7619), GCTA (#15649), Gibbs2 (#15702), InterProScan_data (#15717), Jorg (#15346), libopus (#15682), Minipolish (#15713), mm-common (#15764), MONA (#15696), NetPyNE (#15606), pfind (#15685), regionmask (#15786), samplot (#15686), SISSO (#15766), sklearn-pandas (#15637), STAR-CCM+ (#7398), SWIPE (#6795), topaz (#15739), uncertainty-calibration (#15612), Virtuoso-opensource (#14102)
added additional easyconfigs for various supported software packages, including:
- AlphaFold 2.2.2, Arriba 2.3.0, Arrow 8.0.0, Bracken 2.7, CellRanger 7.0.0, Clp 1.17.7, CoinUtils 2.11.6, cppy 1.2.1, deal.II 9.3.3, double-conversion 3.2.0, Doxygen 1.9.4, FLAC 1.3.4, fmt 7.1.1, FSL 6.0.5.1, GDAL 3.5.0, gdbm 1.21, geopandas 0.11.0, GEOS 3.10.3, Ghostscript 9.56.1, GLibmm 2.66.4, Groovy 4.0.3, GULP 6.1, h5py 3.7.0, HDF5 1.13.1, hifiasm 0.16.1, IGMPlot 2.6.9b, ImageMagick 7.1.0-37, InterProScan 5.55-88.0, IRkernel 1.3, jemalloc 5.3.0, JsonCpp 1.9.5, Julia 1.7.3, Leptonica 1.82.0, libgeotiff 1.7.1, libgit2 1.4.3, libiconv 1.17, libRmath 4.2.0, libsigc++ 2.10.8, libsndfile 1.1.0, libxc 5.2.3, libxml++ 2.42.1, line_profiler 3.5.1, LittleCMS 2.13.1, MaSuRCA 4.0.9, mayavi 4.7.4, MetaEuk 5, mold 1.3.0, NCCL 2.12.12, netCDF 4.9.0, nettle 3.8, networkx 2.8.4, NEURON 7.8.2, NLopt 2.7.1, nodejs 16.15.1, NSPR 4.34, NSS 3.79, nsync 1.25.0, nvtop 2.0.2, Osi 0.108.7, p4est 2.8, parasail 2.5, Pillow 9.1.1, PLUMED 2.8.0, PnetCDF 1.12.3, PRISMS-PF 2.2, PROJ 9.0.0, protobuf 3.19.4, protobuf-python 3.19.4, pyfaidx 0.7.0, PyOpenGL 3.1.6, pyproj 3.3.1, PyTorch 1.11.0, Qhull 2020.2, Qt5 5.15.5, QuantumESPRESSO 7.1, Qwt 6.2.0, R 4.2.1, rasterio 1.2.10, Ray-project 1.13.0, RE2 2022-06-01, redis-py 4.3.3, ReFrame 3.11.2, rioxarray 0.11.1, RNA-SeQC 2.4.2, Schrodinger 2022-2, Shapely 1.8.2, Siesta 4.1.5, SimpleITK 2.1.1.2, SpectrA 1.0.1, TensorFlow 2.7.1, Tk 8.6.12, Tkinter 3.10.4, Transformers 4.20.1, UCX-CUDA 1.12.1, utf8proc 2.7.0, WhatsHap 1.4, WPS 3.9.1, Xvfb 21.1.3
minor enhancements, including:
various bug fixes, including:
- switch to Rust 1.60.0 build dependency for bamtofastq, since build fails with Rust 1.52.1 (#15636)
- avoid that pygmo v2.18.0 installs stuff in Python installation directory + add custom sanity check paths to pygmo easyconfigs (#15657)
- add patch for Mmg v5.6.0 to remove library CI tests that point to external sources (#15691)
- correct configopts in deal.II v9.1.1 easyconfig (#15692)
- add missing Python dependency for HPDBSCAN to fix unresolved
%(pyshortver)s
template (#15694)
other changes:
- disable flaky GPU test for TensorFlow 2.6.0 (#15824)
EasyBuild v4.5.5 (June 8th 2022)¶
bugfix/update release
framework
- various enhancements, including:
- various bug fixes, including:
- fix copying of easyconfig file with
--copy-ec
without--rebuild
if module is already installed (#3993) - ignore deprecation warnings regarding cryptography in Python 3.6 + Blowfish with Python 3.10 in test suite output (#3999)
- fix typo in debug log message in
easyblock.py
(#4000) - fix printing of list of attempted download URLs when url-encoded characters are used in URL (#4005)
- set
$FFT(W)_LIB_DIR
to imkl-FFTW’s lib path in build environment if usempi toolchain option is enabled (#4011) - correctly identify Apple Silicon M1 as Arm 64-bit by also considering arm64 next to aarch64 (#4014)
- fix ‘
eb --show-system-info
’ on Apple M1 system (#4015)
- fix copying of easyconfig file with
- other changes:
easyblocks
- new software-specific easyblock for FFTW.MPI (#2724)
- minor enhancements and updates, including:
- update NEURON easyblock to use CMakeMake for recent versions (#2304)
- enhance Clang easyblock to add support for building with AMDGPU offload (#2684, #2729)
- update sanity check in OpenMPI easyblock to support OpenMPI v5.0.0 (#2709)
- don’t use
gold
linker by default for GCC >= 11.3 (#2711) - update sanity check in R easyblock for versions >= 4.2.0, since S.h is not included anymore (#2713)
- update ABAQUS easyblock for ABAQUS 2022 (#2716)
- update LLVM easyblock for LLVM v14.0.x (#2718)
- update Mesa easyblock to remove swr driver configopts for versions 22+ (#2719)
- enhance Clang easyblock to support also installing Python bindings (#2721, #2725)
- enhance SuperLU easyblock to support building on top of FlexiBLAS and be compatible with SuperLU v5.3 (#2722)
- update TensorFlow easyblock for version 2.8.0 (#2723)
- modify FFTW’s sanity check step to allow checking only for MPI parts of FFTW installation (#2724)
- add support to ConfigureMake for tweaking (first part of) test command via ‘
test_cmd
’ (#2726, #2737) - enhance MrBayes easyblock with custom sanity check command (#2727)
- update cudnnarch string templates used to compose source tarball names from cuDNN 8.3.3 onwards (#2728)
- add sanity check command to OpenSSL wrapper easyblock to verify that system certificates are available to OpenSSL (#2735)
- ignore exit code of
pkg-config
command in OpenSSL wrapper easyblock, since withpkgconf
they exit with a non-zero exit code if the OS package is not installed (#2736)
- various bug fixes, including:
easyconfigs
- add candidates for 2022a common toolchains:
foss/2022.05
(#15561), intel/2022.05 (#15485) - added example easyconfig files for 35 new software packages:
- Albumentations (#15302), AMPtk (#15435), arosics (#15249), CellTypist (#15530), detectron2 (#15442), EigenExa (#15234), Fastaq (#15332), FFTW.MPI (#15561), FreeBarcodes (#15350), gcloud (#15443), GST-plugins-bad (#15446), gsutil (#15507), GTK4 (#15447), hector (#15397), i7z (#15236), libde265 (#15395), libheif (#15395), ModelTest-NG (#15448), num2words (#15473), OGDF (#15407), panito (#15314), parameterized (#15481), purge_dups (#15385), redis-py (#15475), ruamel.yaml (#15531), SCGid (#15065), scPred (#15575), slow5tools (#15457), smooth-topk (#15506), SPOTPY (#15326), tmap (#14601), UCC (#14291), Wayland (#11107), XGrafix (#15268), XPLOR-NIH (#15479)
- added additional easyconfigs for various supported software packages, including:
- ABAQUS 2022, Arb 2.22.1, ARGoS 3.0.0, Arriba 2.2.1, astropy 5.0.4, ATK 2.38.0, Autotools 20220317, Bader 1.04, Bazel 4.2.2 + 5.1.1, BDBag 1.6.3, binutils 2.38, biom-format 2.1.12, BLIS 0.9.0, Boost 1.79.0, breseq 0.36.1, bx-python 0.8.13, cairo 1.17.4, CellRanger-ARC 2.0.1, CMake 3.23.1, cryoDRGN 1.0.0, CUDA 11.7.0, cuDNN 8.4.1.50, cURL 7.83.0, DBus 1.14.0, eggnog-mapper 2.1.7, elfutils 0.187, EvidentialGene 2022.01.14, expat 2.4.8, FlexiBLAS 3.2.0, FLINT 2.8.4, fontconfig 2.14.0, freebayes 1.3.6, freeglut 3.2.2, freetype 2.12.1, FriBidi 1.0.12, GCC 9.5.0 + 11.3.0 + GCC 12.1.0, Gdk-Pixbuf 2.42.8, geopandas 0.10.2, git 2.36.0, GLib 2.72.1, GMAP-GSNAP 2021-21-17, Go 1.18.1, GObject-Introspection 1.72.0, Graphene 1.10.8, GST-plugins-base 1.20.2, GStreamer 1.20.2, GTDB-Tk 2.0.0, GTK3 3.24.33, gzip 1.12, HarfBuzz 4.2.1, help2man 1.49.2, hwloc 2.7.1, hypothesis 6.46.7, Hypre 2.24.0, ICU 71.1, IGV 2.12.3, IMB 2021.3, inferCNV 1.10.1, InterProScan 5.52, IQ-TREE 2.2.1, jax 0.3.9, json-c 0.16, LAPACK 3.10.1, libarchive 3.6.1, libdeflate 1.10, libdrm 2.4.110, libedit 20210910, libepoxy 1.5.10, libfabric 1.15.1, libglvnd 1.4.0, libjpeg-turbo 2.1.3, libreadline 8.1.2, librsb 1.3.0.1, librsvg 2.52.8, libtool 2.4.7, libunwind 1.6.2, libxml2 2.9.13, LLVM 14.0.3, LocARNA 1.9.2.3, MACS2 2.2.7.1, magma 2.6.2, Mako 1.2.0, Mathematica 13.0.0, MCL 14.137, MCR R2022a.1, Mesa 22.0.3, Meson 0.62.1, MIRA 5.0rc2, Mmg 5.6.0, mold 1.2.1, mosdepth 0.3.3, MrBayes 3.2.7a, MultiQC 1.12, MUMPS 5.5.0, muParser 2.3.3, ncurses 6.3, neptune-client 0.16.2, Nextflow 22.04.0, Nim 1.6.6, NTPoly 2.7.1, OpenMPI 4.1.4, openpyxl 3.0.9, OpenSSL 1.1.1n, OpenStackClient 5.8.0, OSU-Micro-Benchmarks 5.9, pagmo 2.18.0, Pango 1.50.7, parallel-fastq-dump 0.6.7, PCRE2 10.40, Perl 5.34.1, Pillow 9.1.0, PLINK 2.00a3.1, PMIx 4.1.2, PyAMG 4.2.3, pybind11 2.9.2, PyCairo 1.21.0, pygmo 2.18.0, PyGObject 3.42.1, Python 3.10.4, R 4.2.0, RAxML-NG 1.1.0, R-bundle-Bioconductor 3.15, ReFrame 3.11.0, RNA-Bloom 1.4.3, rnaQUAST 2.2.2, Rust 1.60.0, Sambamba 0.8.2, SAMtools 1.15.1, ScaLAPACK 2.2.0, SciPy-bundle 2022.05, SeqKit 2.2.0, Shapely 1.8.1.post1, SpaceRanger 1.3.1, Spack 0.17.2, Spark 3.2.1, SQLite 3.38.3, StringTie 2.2.1, SUMO 1.12.0, SuperLU 5.3.0, tbl2asn 20220427, Tcl 8.6.12, TCLAP 1.2.5, tcsh 6.24.01, texlive 20220321, ToFu 1.5.0, UCX 1.12.1, util-linux 2.38, VEP 105, ViennaRNA 2.5.0, vsc-mympirun 5.2.11, worker 1.6.13, X11 2022050, YAXT 0.9.2.1, Z3 4.8.16, Zip 3.0, zlib 1.2.12, zstd 1.5.2
- minor enhancements, including:
- use OpenSSL wrapper dependency for CMake 3.18.4 with system toolchain (#15227)
- also build BLIS backend for FlexiBLAS v3.0.4 with GCC/10.3.0 (#15347)
- add extensions to R v4.1.2 + v4.2.0 easyconfigs: * Hmsc (#15393), MonteCarlo + RhpcBLASctl (#15438), chkptstanr (#15540), chkptstanr + MLmetrics + renv (#15573)
- add extensions to R-bundle-Bioconductor 3.14 easyconfig: DNABarcodes (#15405)
- use redist source_urls for cuDNN > 7.5 (#15411)
- add download_instructions to Java 1.8 > 200 (#15412)
- update Arrow to use EB versions of some dependencies and enable all compression codecs (#15512)
- add csh -> tcsh symlink in recent tcsh easyconfigs (#15571)
- allow external tools to be located elsewhere for ETE (#15578)
- add additional sanity check commands for IQ-TREE v2.2.1 (#15596)
- various bug fixes, including:
- fix source URL for freetype 2.6.5 with
foss/2016b
(#14204) - fix installation of easybuild-easyconfigs with setuptools>=61 by explicitly declaring there are no Python packages (#15206)
- use x.py to bootstrap Rust so that build options are properly passed through (#15211)
- fix RepeatMasker-4.1.2-p1 easyconfig by moving the database configure command to postinstallcmds (#15280, #15615)
- add hwloc dependency to tbb v2021.4.0 (#15294)
- tweak find command used in preconfigopts in easyconfig for pkg-config v0.29.2 with system toolchain to avoid descending into other filesystems (#15313)
- remove pkg-config use from SeqLib configure patch (avoids problem due to faulty autoconf macro) (#15316)
- update source URL for isl in GCCcore easyconfigs (#15320)
- update source URLs for YAXT 0.9.x to fix download (#15323)
- define
$HHLIB
as path to HH-suite installation directory, required by Perl scripts (#15324) - add missing parallel and tbl2asn dependencies for prokka 1.14.5 (#15360, #15381)
- add missing dependencies for libheif (libpng, libjpeg-turbo) (#15408)
- switch to configuring build of libheif with CMake so libde265 dependency is picked up (#15408)
- disable use of
-ftree-vectorize
for OpenFOAM v2112 withfoss/2021b
(#15495) - add patch for OpenMPI 4.1.1 to support building using
--with-cuda=internal
(#15528, #15589) - add patch to fix support for external PMIx v3.1 in OpenMPI v3.1.3 (#15566)
- also build shared library + fix
$PYTHONPATH
for gmsh 4.9.0 (#15579) - add patch for GLib 2.68.2 to fix use of close_range (#15594)
- fix download of thrift 0.12.0 for Arrow 0.16.0 (#15597)
- add Bison and flex build dependencies to SCOTCH 6.1.x (#15618)
- add alternative checksums for class, nnet, spatial extensions in R v4.2.0 easyconfig (#15619)
- add missing dependencies + switch to non-static build for Arriba v2.1.0 (#15623)
- fix source URL for freetype 2.6.5 with
- other changes:
- add R dependency to vcflib 1.0.3, and move from GCC/11.2.0 to
foss/2021b
toochain (#15216) - update fallback version for OpenSSL 1.1 wrapper to v1.1.1o (#15592)
- install sklearn meta-package with scikit-learn v1.0.1 (#15613)
- switch from
pkg-config
topkgconf
as build dependency for OpenSSL wrapper easyconfigs (#15616, #15617)
- add R dependency to vcflib 1.0.3, and move from GCC/11.2.0 to
EasyBuild v4.5.4 (March 31st 2022)¶
bugfix/update release
framework
- various enhancements, including:
- warn about potentially missing patches in
--new-pr
(#3759, #3966) - add support for ‘
clone_into
’ field in git_config source spec to specify different name for top-level directory (#3949) - add bash completion for easyconfigs from local dir but not robot search path (#3953)
- add a ‘sync pr’ message when the PR has a mergeable state but is showing a failed status for the test suite on the last commit (#3967)
- add
gmpit
toolchain definition (GCC + MPItrampoline) (#3971) - use ‘
zypper search -i
’ to check whether specified OS dependency is installed on openSUSE + make sure that rpm is considered for checking OS dependencies on RHEL8 (#3973) - add support for post-install patches (#3974)
- add support for ‘
download_instructions
’ easyconfig parameter key to specify some download or installation steps for user in case of complicated way of obtaining needed files (#3976, #3981) - also try collecting AMD GPU info (via
rocm-smi
) for--show-system-info
(#3978, #3982)
- warn about potentially missing patches in
- various bug fixes, including:
- other changes:
easyblocks
- minor enhancements and updates, including:
- update Clang-AOMP easyblock to add support for ROCm v5.0 (#2681)
- enable system SSL certificates in OpenSSL installations (#2683)
- enhance MRtrix easyblock: build in parallel + enable OpenMP support for MRtrix >= 3.0 (#2685)
- avoid dependency on ‘
which
’ command in sanity check for Python, use ‘command -v
’ instead (#2687) - enhance Tarball easyblock to support using it for installing extensions (#2688)
- update wxPython easyblock to support wxPython v4.1 (#2689)
- enhance Gurobi easyblock to also update
$MATLABPATH
(#2691) - build single-file shared libraries for imkl so it can be used as FlexiBLAS backend via
$FLEXIBLAS_LIBRARY_PATH
(#2694)
- various bug fixes, including:
- added regex to replace /lib/cpp with cpp in OpenFOAM’s wmake rules file (#2331)
- set
$NINJAFLAGS
to make sure Ninja doesn’t use all visible cores when building Qt5 (#2338) - update Siesta EasyBlock to use serial FFTW (#2662)
- fix support for imkl for numexpr 2.8.0+ in numexpr easyblock (#2678)
- make sure TensorFlow doesn’t see the
nvptx-none
dir when searching forgcc
include dir (#2682) - force use of bash for Anaconda install script (#2692)
- add guess for path to add to
$MANPATH
for intel-compilers (#2696) - change permissions of the Java build directory to avoid permission denied error (#2698)
- also consider
$MKLROOT/lib/pkgconfig
for$PKG_CONFIG_PATH
for imkl (#2701) - close log after installing Bundle component (#2702)
- fixes problem of log leaking across installations (framework issue #3533)
- replace hardcoded /tmp to make sure that Bazel build respects
$TMPDIR
(#2703)
- other changes:
easyconfigs
- added example easyconfig files for 29 new software packages:
- Abseil (#15102), AMS (#13155), ArchR (#15119), CMAverse (#14963), CmdStanR (#15198), CONN (#15052), Devito (#14984, #15009), GraphMap (#10299), gRPC (#14728), Hydra (#15025), jupyter-server-proxy (#14844), M1QN3 (#15002), MAGeCK (#15082), matplotlib-inline (#15084), MEGAN (#15064), MNE-Python (#15174), ONNX (#15158), ONNX-Runtime (#15158), ont-remora (#15162), Optuna (#15021), patch (#15035), porefoam (#15067), presto (#15119), PyFrag (#15184), skorch (#15175), SlamDunk (#15197), SPM (#15050), STRique (#14980), XML-Compile (#15177)
- added additional easyconfigs for various supported software packages, including:
- ABAQUS 2021, AlphaFold 2.1.2, AmberTools 21, archspec 0.1.3, Bandage 0.9.0, BLIS 3.1, c-ares 1.18.1, CCL 1.12.1, CharLS 2.3.4, Clang-Python-bindings 13.0.1, dcm2niix 1.0.20211006, DFTB+ 21.1, DIRAC 22.0, ELPA 2021.11.001, FlexiBLAS 3.1.3, FLUENT 2021R2, GATK 4.2.5.0, GetOrganelle 1.7.5.3, IgBLAST 1.18.0, IntelClusterChecker 2021.5.0, intervaltree-python 3.1.0, ITSx 1.1.3, Julia 1.7.2, kallisto 0.48.0, KMC 3.2.1, libobjcryst 2021.1.2, libtree 3.0.3, loompy 3.0.7, matplotlib 3.5.1, MCR R2022a, MDAnalysis 1.1.1+ 2.0.0, MDTraj 1.9.7, medaka 1.5.0, meshalyzer 20200308, MRtrix 3.0.3, NiBabel 3.2.2, NLTK 3.7, numexpr 2.8.1, ont-fast5-api 4.0.2, OpenAI-Gym 0.21.0, OpenBLAS 0.3.20, ORCA 5.0.3, parallel-fastq-dump 0.6.6, PIPITS 2.8, pocl 1.8, pycocotools 2.0.4, pyEGA3 4.0.0, pyobjcryst 2.2.1, RE2 2022-02-01, SAMtools 1.15, SBCL 2.2.1, shovill 1.1.0, SKESA 2.4.0, SOCI 4.0.3, sympy 1.9, TensorFlow 2.5.3, VirtualGL 3.0, vsc-mympirun 5.2.10, VSEARCH 2.21.1, VTK 9.1.0, VTune 2022.2.0, XGBoost 1.5.0
- minor enhancements, including:
- add Flask-Session to Flask v1.1.4 and Flask v2.0.2 (#15027)
- add check to verify that patch files touched in PRs have a description in place (#15061)
- add extensions to R v4.1.2 easyconfig: hash (#15098), nabor + harmony (#15117), apluster, DataCombine, docstring, gdalUtils, openair, mstate, SNFtool, and deps (#15141)
- also install rMATS_P commands in rMATS-turbo easyconfig (#15113)
- add extensions to Bioconductor v3.14 easyconfig: chromVAR (#15118), EnsDb.Hsapiens.v79 (#15154), WGCNA (#15178)
- add extensions to Perl v5.34.0 easyconfigs: Sys::Info, HTML::Template, Log::Report (#15176), Sys::Info::Driver::Unknown, Sys::Info::Driver::Linux, Unix::Processors (#15190)
- enable running of tests for MEME with
gompi/2021b
(#15191, #15199)
- various bug fixes, including:
- add missing xxd build dependency for recent PLUMED versions (2.6.2, 2.7.x) (#14847)
- downgrade dependency on nodejs + use jupyter-server-proxy in jupyter-matlab-proxy and configurable-http-proxy easyconfigs using
GCCcore/10.3.0
toolchain (#14942) - add additional valid checksum for extensions in R 4.1.0 and 4.1.2 easyconfigs: norm (#14987), optmatch (#14993)
- avoid pollution in the tmp directory when running the AlphaFold tests (#14989)
- consistently enable usempi toolchain option in OSU-Micro-Benchmarks easyconfigs (#15039)
- fix GBprocesS easyconfig by switching to source tarball created using
git_config
(#15048) - add patches for mauveAligner to fix build on RHEL8 (#15049)
- fix installation of RDKit by using
-DBoost_NO_BOOST_CMAKE=ON
(#15051) - add patch to fix linking error for imread extension in scikit-image easyconfigs using intel toolchain (#15054)
- avoid excessively long shebang in Autoconf/Automake Perl scripts + promote Perl to runtime dependency + fix Perl shebang for intltool (#15055)
- fix
python
shebang in cutadapt script for cutadapt 1.18 w/GCCcore/8.3.0
(#15059) - don’t use v2.1.0rc1 release candidate of gmpy2, stick to proper release v2.1.2 (#15060)
- add M4 as build dependency for CCL-1.12 (#15075)
- configure libffi 3.4.2 with
--disable-exec-static-tramp
to prevent segfaults (#15086) - set
XLA_PYTHON_CLIENT_ALLOCATOR=platform
for running tests in jax CUDA easyconfigs (#15097) - remove disable flag for RTTI in snappy v1.1.9 (#15099)
- fix grconvert build for Grace 5.1.25 with
foss/2021a
by adding libtirpc dependency + related patch (#15121) - clean up PSolver and futile easyconfigs and add dynamic libs (#15148)
- enhance vcflib easyconfigs to also install scripts (#15181)
- add patch to fix shared linking in vcflib (#15203)
- fix failing sanity check for PRINSEQ (#15205)
- other changes:
- use typing-extensions from Python v3.9.6 easyconfig in ArviZ and PyMC3 (#15003)
- disable building of documentation for DBus 1.13.18 (#15010)
- consistently use system toolchain in EasyBuild easyconfigs (#15126)
- use EasyBuild hwloc in likwid and move to GCC/intel-compiler level due to Fortran modules (#15149)
EasyBuild v4.5.3 (February 11th 2022)¶
bugfix/update release
framework
- various enhancements, including:
- various bug fixes, including:
- take into account that patch files can also be zipped when checking filename extension for patches (#3936)
- initialize
BACKUP_PKG_URL
with empty string ininstall_eb_dep.sh
script (#3939) - fix
get_os_name
andget_os_version
to avoid reportingUNKNOWN
in output ofeb --show-system-info
(#3942) - consistently use
actions/setup-python@v2
in CI workflows (#3944) - switch to using
pip3
for installing EasyBuild in container recipes generated by EasyBuild (#3945) - specify
easybuild.io
as EasyBuild homepage insetup.py
(#3947) - avoid crash in
get_os_version
on modern SLES-based OSs (#3955)
- other changes:
- indicate compatibility with Python 3.10 in
setup.py
(#3940)
- indicate compatibility with Python 3.10 in
easyblocks
- new software-specific easyblock for reticulate R package (#2668)
- minor enhancements and updates, including:
- various bug fixes, including:
- other changes:
- remove vulnerable binaries from sanity check of HDF5, no longer installed by default with HDF5 1.10.8 (#2670)
easyconfigs
- added example easyconfig files for 25 new software packages:
- Arcade-Learning-Environment (#14753), Bambi (#14811), CASTEP (#14420), Crumble (#14785), deepmedic (#14953), FoBiS (#14771), histolab (#14945), Iris (#14788), Jasmine (#14789), libexif (#14823), libgdiplus (#14823), MuJoCo (#14965), mujoco-py (#14776, #14965), namedlist (#14814), OpenCensus-python (#14837), PyEVTK (#14911), pyradiomics (#14851), PyTorch-Lightning (#14933), Redis (#14783), rising (#14952), SoXt (#14803), SURVIVOR (#14786), tensorboard (#14926), xtensor (#14944), xxd (#14846)
- added additional easyconfigs for various supported software packages, including:
- aiohttp 3.8.1, AOCC 3.2.0, ArviZ 0.11.4, BeautifulSoup 4.10.0, bokeh 2.4.2, Boost.Python 1.77.0, Bowtie 1.3.1, CheMPS2 1.8.11, Clang 13.0.1, CLHEP 2.4.5.1, ConnectomeWorkbench 1.5.0, Crumble 0.8.3, CUDA 11.5.1 + 11.6.0, cutadapt 3.5, dask 2022.1.0, deepdiff 5.7.0, deepTools 3.5.0, dm-tree 0.1.6, DROP 1.1.1, ecCodes 2.24.2, Emacs 27.2, FDS 6.7.7, file 5.41, Flask 2.0.2, FORD 6.1.6, GATE 9.1, Geant4 11.0.0, GEMMA 0.98.5, GnuTLS 3.7.3, Go 1.17.6, gpustat 1.0.0b1, Graphviz 2.50.0, GROMACS 2021.5, Guile 3.0.7, HDF5 1.10.8, imageio 2.13.5, JupyterLab 3.2.8, lftp 4.9.2, libBigWig 0.4.6, libpsml 1.1.10, libRmath 4.1.2, librsb 1.3.0.0, libtasn1 4.18.0, libunistring 1.0, likwid 5.2.1, MaxQuant 2.0.3.0, MEGA 11.0.10.eb, MethylDackel 0.6.1, methylpy 1.2.9, minimap2 2.24, Mono 6.12.0.122, MUSCLE 5.1, nanomax-analysis-utils 0.4.3, ncbi-vdb 2.11.2, NCIPLOT-4.0 20200624, Nextflow 21.10.6, NGS 2.11.2, nvtop 1.2.2, OpenCV 4.5.5, openslide-python 1.1.2, pftoolsV3 3.2.11, picard 2.26.10, pydicom 2.2.2, pyFAI 0.20.0, Pysam 0.18.0, pytest-xdist 2.5.0, Racon 1.5.0, RAxML 8.2.12, ReFrame 3.10.1, ROOT 6.24.06, scikit-image 0.19.1, SDL2 2.0.20, SeqKit 2.1.0, Siesta 4.1.5, SimpleITK 2.1.1, SqueezeMeta 1.5.0, tMAE 1.0.1, torchvision 0.11.3, Trim_Galore 0.6.7, typing-extensions 3.10.0.2
- minor enhancements, including:
- various bug fixes, including:
- update TALYS sources to (hopefully) ensure constant checksums (#14797)
- add missing graphite2 + HarfBuzz dependencies to Qt5 v5.15.2 (#14802)
- add missing UCX-CUDA dep to GROMACS for foss-2021a-CUDA-11.3.1 (#14859)
- specify
easybuild.io
as EasyBuild homepage insetup.py
(#14870) - add alternative checksum for MASS, class, nnet, spatial extensions in R 4.1.0 (#14873) and R 4.1.2 (#14880) easyconfigs
- add patch to fix Kraken2 ncbi
ftp
/https
check inrsync_from_ncbi.pl
for versions 2.0.9-2.1.1 (#14889) - disable building of tests/benchmarks for snappy 1.1.8 to avoid failing build (#14923)
- disable use of
-Werror
for recent NSS versions (#14924) - fix download URL in UDUNITS v2.2.28 easyconfigs (#14954)
- remove unnecessary CUDAcore dependency from nvtop v1.2.1 easyconfig (#14957)
- consistently apply patch for mapDamage 2.2.1 to use external seqtk (#14961)
- fix typo in templated source URL in RcppGSL 0.3.8 easyconfig:
$(name)s
should be%(name)s
(#14962)
- other changes:
EasyBuild v4.5.2 (January 24th 2022)¶
bugfix/update release
framework
- various enhancements, including:
- automatically prepend value for
env-for-shebang
configuration setting with sysroot (#3919) - enhance
update_build_option
to return original value + add support forupdate_build_options
(#3923) - fix compatibility with Python 3.10 (#3926, #3933)
- also take
/etc/os-release
into account inget_os_name
andget_os_version
(#3930) - enhance
get_cpu_architecture
andget_cpu_family
to be aware of RISC-V (#3931)
- automatically prepend value for
- various bug fixes, including:
- other changes:
- deprecate use of (actual) patch files that don’t have a filename ending with
.patch
(#3920) - remove version restriction for keyring in
requirements.txt
to test with latest version (#3925) - simplify
requirements.txt
by removing Python 2.6 support (#3927) - only run GitHub tests when testing with Lua module syntax, to avoid hitting GitHub rate limit when running tests (#3938)
- deprecate use of (actual) patch files that don’t have a filename ending with
easyblocks
- minor enhancements and updates, including:
- remove necessity for license for oneAPI versions (>= 2021.x) in itac easyblock (#2492)
- add CUDA support in SuiteSparse easyblock (#2627)
- use all available cores for running Perl test suite (#2637)
- add option to not copy the license file for Gurobi (#2639, #2641)
- update AOCC easyblock to support version 3.2.0 (#2643)
- don’t grep for specific version in
--version
output of Intel compiler commands for versions 2022.x (#2644) - add support for enabling sanity checks for specific components in the Bundle easyblock (#2649)
- update Libint easyblock for LibInt v2.7.0 which requires configuring via CMake (#2650)
- update Mathematica easyblock for version 13 (#2652)
- add sanity check command for Bazel (#2653)
- update NAMD easyblock to allow non-system csh (#2654)
- enhance CUDA easyblock to create version independent pkgconfig files (#2656)
- add
util
subdirectory to$PATH
for WPS (#2658)
- various bug fixes, including:
- convert version numbers to strictly numerical in Siesta easyblock (#2553)
- fix shebang of scripts in Perl installation if installation prefix is too long (#2640)
- enhance IntelBase easyblock to avoid crash when
$USER
is not set (#2642) - fix quotes in definition of default platform macro and enhance sanity check in GATE easyblock (#2645)
- avoid excessively long shebang line in compile script for WRF (#2648)
- fix checking of Intel Fortran compiler version in CP2K easyblock for recent toolchains (#2651)
easyconfigs
- added easyconfig for intel/2022.00 toolchain (#14620)
- added example easyconfig files for 48 new software packages:
- alevin-fry (#14617), AMD-uProf (#14626), ANGEL (#11857), atropos (#7580), Austin (#14596), AutoDock-GPU (#14671), AutoDock-Vina (#14675), boost_histogram (#14516), CAFE5 (#14603), Calcam (#7488), Carma (#14527), Cogent (#14278), dlib (#14556), DualSPHysics (#14632), dune-core (#14693), dune-fem (#14693), DyMat (#14615), elbencho (#14548), Embree (#7471), ExaML (#14530), FMPy (#14481), genozip (#14583), hivtrace (#14691), intervaltree-python (#8995), IsoNet (#14075), MACSE (#14709), MetaPhlAn (#12917), MicrobeAnnotator (#14549), mold (#14595), numdiff (#14609), OpenFace (#14556), PhyloPhlAn (#14564), PREQUAL (#14722), PuLP (#14581), PyCalib (#14616), PyTorch3D (#13240), QCG-PilotJob (#14337), RaGOO (#8995), RAPSearch2 (#13199), SCopeLoomR (#14518), ShengBTE (#14557), SHTns (#14682), STRUMPACK (#14560), TALYS (#14716), TN93 (#14691), xxHash (#14251), yaml-cpp (#14547), Zgoubi (#14516)
- added additional easyconfigs for various supported software packages, including:
- annovar 20200607, antiSMASH 5.2.0, Armadillo 10.7.5, Arrow 6.0.1, Bismark 0.23.1, BLAST+ 2.12.0, cDNA_Cupcake 26.0.0, CHERAB 1.3.0, CMake 3.22.1, CP2K 8.2, DIAMOND 2.0.13, dotNET-Core-Runtime 6.0.1, dotNET-SDK 6.0.101, Extrae 3.8.3, fastp 0.23.2, FreeSurfer 7.2.0, GffCompare 0.12.6, gmsh 4.9.0, GTK3 3.24.31, h5py 3.6.0, igraph 0.9.5, Inspector 2022.0.0, IQ-TREE 2.1.3, itac 2021.5.0.eb, Java/15 + Java/17, JUBE 2.4.2, libdeflate 1.8, libxsmm 1.17, LSD2 2.3, MAGMA 1.09b, MATLAB 2021b, MinPath 1.6, MultiQC 1.11, MUSCLE 5.0.1428, numba 0.54.1, NVHPC 21.11, OBITools 1.2.13, occt 7.5.0p1, openCARP 8.2, OpenCV 3.4.1, OpenFOAM v2112, ORCA 5.0.2, phonopy 2.12.0, Pillow 8.3.2, Pillow-SIMD 8.3.2, PLUMED 2.7.3, poppler 22.01.0, PyQtGraph 0.12.3, python-igraph 0.9.8, PyZMQ 22.3.0, Raysect 0.7.1, Rgurobi 9.5.0, scanpy 1.8.2, Schrodinger 2021, SqueezeMeta 1.0.0, statsmodels 0.13.1, texlive 20210324, VTune 2022.0.0
- minor enhancements, including:
- add yaml-cpp dependency to Trilinos 12.12.1 with foss/2019b (#14547)
- include output of failing code style check in message produced by failing easyconfigs style test (#14578)
- bundle LAPACKE with FlexiBLAS 3.0.4 (#14591), #14769)
- add extensions to R v4.1.2 easyconfig: semTools, mirt, OpenMX (#14634), FactorCopula (#14648), rpact, ldbounds (#14750)
- add extensions to R-bundle-Bioconductor 3.14: ExomeDepth (#14684), DSS (#14748), pathview (#14806)
- various bug fixes, including:
- fix
homepage
andsource_urls
for GLIMMER 3.02b (#7945) - fix source URL for Trilinos 12.12.1 with foss/2019b (#14547)
- use proper Perl dependency for worker 1.6.12 with foss/2019a (fixes installation on RHEL8 OS) (#14565)
- fix checksum and versions of annovar v20191024 (#14579)
- add patch for Rust 1.52.2 and 1.54.0 to fix build when using alternate sysroot (#14584)
- retain version in filename for cromwell sources (#14586)
- specify compiler to use in WildMagic easyconfig (#14594)
- avoid need for git build dependency for recent x265 easyconfigs (#14605)
- fix broken patch file for recent GPAW versions (#14619)
- add alternative checksum for Siesta-4.1-MaX-1.0 (#14643)
- add missing PCRE dependency for pullseq + add sanity check commands (#14650)
- use
%(arch)s
template to avoid hardcodingx86_64
in recent XML-LibXML easyconfigs (#14655) - fix name for (binary) AutoDock-Vina v1.1.2 (#14675)
- add patch to fix memory leak in OpenMPI that heavily affects CP2K, SIESTA, QuantumESPRESSO, VASP, … (#14726)
- set
$GRPC_PYTHON_BUILD_EXT_COMPILER_JOBS
for installing grcpio extension included with: - enforce using internal boost for bcl2fastq2 with a GCC 10.x toolchain (#14741)
- add patch for hard-coded checksum value of downloaded source file in the source code of RDKit 2021.03.4 (#14743)
- also install
libaio.so.1
symlink in easyconfigs for libaio v0.3.112 (#14745) - do not use external libgcrypt or python for libxslt with recent toolchains (#14756)
- add patches to fix CVE-2021-23437 for Pillow (#14765) and Pillow-SIMD (#14792)
- add libXfont2 patch to fix build when libbsd is present (#14821)
- fix
- other changes:
- update Java 1.8 wrapper to 1.8.0_311 for x86_64 (#14644)
- bring gffread back down to GCCcore level for toolchain version 10.3.0 (#14660)
- update build dependencies for recent binutils + GCCcore easyconfigs to avoid depending on M4 1.4.18 with system toolchain (#14731), #14755)
- bump nbconvert extension in recent IPython easyconfigs to version 6.4.0 (#14738)
EasyBuild v4.5.1 (December 13th 2021)¶
bugfix/update release
framework
- various enhancements, including:
- also dump environment to reprod directory (#3374)
- determine which extensions can be skipped in parallel (if
--parallel-extensions-install
is enabled) (#3890) - fall back to sequential installation for extensions with unknown dependencies when using
--parallel-extensions-install
(#3906) - allow oversubscription in sanity check for OpenMPI-based toolchains (#3909)
- various bug fixes, including:
- don’t try to ensure absolute path for path part of
repositorypath
(#3893, #3899) - fix typo in EULA agreement error message (#3894)
- only remove lock if it was created in the same EasyBuild session (not if it existed already) (#3889)
- introduce
EasyBlock.post_init
method to correctly definebuilddir
variable whenbuild-in-installdir
mode is enabled in easyconfig or easyblock (#3900) - also show download progress bar when using
--inject-checksums
(#3905) - pick up custom
extract_cmd
specified for extension (#3907) - make
test_run_cmd_async
more robust against fluke failures (#3908)
- don’t try to ensure absolute path for path part of
easyblocks
- new software-specific easyblock for Clang-AOMP (#2617)
- minor enhancements and updates, including:
- enhance Rpm generic easyblock to support installing tarball of RPMs (by unpacking it first) + take into account
(pre)installopts
(#2580) - add option to control use of MKL-DNN in jaxlib easyblock (#2619)
- update SAMtools easyblock to support installation of SAMtools 1.14 (#2620)
- add option to ignore PLUMED version check for GROMACS (#2621)
- update Inspector easyblock for recent versions (>= 2021, oneAPI versions) (#2624)
- enhance tbb easyblock by adding option to build Python bindings (#2626)
- fix patching of
CMakeLists.txt
for Eigen v3.4 (#2633)
- enhance Rpm generic easyblock to support installing tarball of RPMs (by unpacking it first) + take into account
- various bug fixes, including:
- update CP2K easyblock to use
-D__MKL
for CP2K versions newer than 2.3 (#2586) - set OpenMPI configuration for ORCA sanity check (#2596)
- allow oversubscription in OpenMPI sanity check (#2611)
- set
wm_*
class variables in OpenFOAM easyblock constructor (to fix--sanity-check-only
) (#2616) - remove newline from easybuild-easyblocks package description (required to avoid installation error with setuptools>=59.0.0) (#2623)
- avoid patching binary files + other enhancements for MUMmer easyblock (#2630)
- enable
build-in-installdir
mode in constructor of PETSc and SLEPc easyblocks (#2631) - skip netcdf4-python tests that require network connectivity (#2634)
- update CP2K easyblock to use
easyconfigs
- added example easyconfig files for 71 new software packages:
- ANIcalculator (#14478, #14494, #14510), arrow-R (#14267), ASAP (#14367), BabelStream (#14503), bamtofastq (#14391), bcbio-gff (#14322), biom-format (#13205), Blosc2 (#14247), boto3 (#14452), Brotli-python (#14528), Brunsli (#14247), Clang-AOMP (#14327), CLEASE (#14413), CMSeq (#14326), cpu_features (#14385), cromwell (#12125), cxxopts (#14487, #14504), dRep (#14479), DUBStepR (#14495), eht-imaging (#14239), einops (#14373), ELFIO (#14488, #14504), elprep (#14422), epiScanpy (#14447), FMM3D (#14257), FORD (#13653), GPy (#14380), HIP (#14339), idemux (#14499), imagecodecs (#14247), InChI (#13902), jupyter-matlab-proxy (#14270), jxrlib (#14247), LBFGS++ (#14230), LERC (#14247), libaec (#14247), libavif (#14246), LibLZF (#14246), libnsl (#14494), libtree (#14501), LPeg (#14157), Megalodon (#14256), nnU-Net (#14249), PAL2NAL (#14430), photontorch (#14410), pkgconf (#14426), pmx (#14319), PPanGGOLiN (#14449), ProFit (#14340), pugixml (#14367, #14492), PySide2 (#13460), Relate (#14443), ROCm (#14355), rocm-cmake (#14327), ROCm-CompilerSupport (#14327), rocminfo (#14327), rocm-smi (#14354), ROCR-Runtime (#14327), ROCT-Thunk-Interface (#14327), SCENIC (#14260), Shasta (#14385), SimNIBS (#14257), SMV (#14157), SRST2 (#14253), STACEY (#14293), termcolor (#14489, #14504), ThemisPy (#14231), TOBIAS (#14452, #14458), zfp (#14246), zlib-ng (#14246), Zopfli (#14246)
- added additional easyconfigs for various supported software packages, including:
- ABINIT 9.6.2, ABRicate 1.0.0, AlphaFold 2.1.1, antiSMASH 6.0.1, Arrow 6.0.0, astropy 4.3.1, BCFtools 1.14, BeautifulSoup 4.9.3, Boost 1.77.0, bpp 4.4.0, Bracken 2.6.2, CapnProto 0.9.1, CellRanger 6.1.2, Eigen 3.4.0, enaBrowserTool 1.6, ESMF 8.2.0, Flye 2.9, FMRIprep 1.4.1, FSL 6.0.4, GATK 4.2.3.0, gc 8.2.0, GDB 11.1, git 2.33.1, Go 1.17.3, Gurobi 9.5.0, Horovod 0.23.0, HTSlib 1.14, HyPhy 2.5.33, Infernal 1.1.4, Inspector 2021.4.0 ITK 5.2.1, jax 0.2.24, Julia 1.7.0, Kent_tools 422, king 2.2.7, libdwarf 20210528, MAFFT 7.490, makeinfo 6.8, Mash 2.3, matplotlib 3.4.3, MCR R2021b, minimap2 2.22, MUST 1.7.2, NCO 5.0.3, NCO 5.0.3, nlohmann_json 3.10.4, NVHPC 21.9, OpenMPI 4.0.7 + 4.1.2, panaroo 1.2.9, pangolin 3.1.16, pkgconfig 1.5.5, plotly.py 5.4.0, pyfaidx 0.6.3.1, Pysam 0.17.0, PyTorch 1.10.0, R 4.1.2, R-bundle-Bioconductor 3.14, ReFrame 3.9.1, rpy2 3.4.5, scikit-image 0.18.3, scikit-learn 1.0.1 SimpleITK 2.1.0, snakemake 6.10.0, SPAdes 3.15.3, tbb 2021.4.0, torchtext 0.10.0, torchvision 0.11.1, tqdm 4.62.3, TRUST4 1.0.6, Trycycler 0.5.2, Unicycler 0.4.9, UShER 0.5.0, WPS 4.3.1, xarray 0.20.1, XlsxWriter 3.0.2, Yambo 5.0.4
- minor enhancements, including:
- various bug fixes, including:
- specify to use Python provided as dependency, remove
separate_build_dir
, and fix URL in comment for Arrow 0.17.1 (#14263) - fix
gettid
nameclash with glibc 2.30 in Bazel 0.25.2, 0.26.1, 0.29.1, and 1.1.0 (#14269) - restore and fix sanity check commands in RStudio-Server 1.4 (#14275)
- add pkg-config build dependency to Python easyconfigs, to ensure OpenSSL wrapper is detected (#14316)
- add patch for UCX v1.11.2 to fix missing include statement for
string.h
(#14317) - set
$DALTON_TMPDIR
to build directory to run Dalton tests (#14341) - add patch for libfabric v1.12.1 to fix
unknown link width 0x10
warning (#14387) - add missing Automake dependency to PhyML 3.3.20200621 (#14397)
- add git as build dependency to Python 3.8.x and 3.9.x easyconfigs (required for pbr extension) (#14421)
- add missing XZ dependency to recent PROJ easyconfigs (#14429)
- fix homepage/source URL for king v2.2.4 (#14444)
- add patch for GCCcore 9.1-9.3 to fix compatibility with recent kernel headers (#14453)
- add patch for GCCcore 10.1-11.1 to fix compatibility with recent kernel headers (#14454)
- add patch to fix CVE-2021-43527 in NSS (#14497)
- pass tests on A* GPUs by setting
NVIDIA_TF32_OVERRIDE=0
in jax 0.2.19 (#14502) - add patch to fix broken (hanging) Mash binaries (#14511)
- add missing Perl build dependency for Longshot (#14535)
- add googletest build dependency for Highway (#14536)
- seed in PCRE2 sources to fix broken MariaDB 10.5.8 + 10.6.4 easyconfigs (#14537)
- specify to use Python provided as dependency, remove
- other changes:
- rename R bindings for Arrow to arrow-R, so it can be used in a lowercase module naming scheme (#14262)
- comment out imkl build dependency for FlexiBLAS 3.0.4 with GCC/11.2.0 (#14335)
- don’t add
bin
subdir to$PATH
viamodextrapaths
in ReFrame easyconfigs (#14415) - consistently use ‘Grace’ software name + sync
homepage
/source_urls
(#14493) - move cxxopts, termcolor and ELFIO header only libraries to
SYSTEM
toolchain (#14504)
EasyBuild v4.5.0 (October 29th 2021)¶
feature release
framework
- various enhancements, including:
- add
--review-pr-max
and--review-pr-filter
options to limit easyconfigs used by--review-pr
+ retain order of easyconfigs being compared with (#3754) - use Rich (if available) to show progress bars when installing easyconfigs (#3823, #3826, #3833, #3835, #3844, #3864, #3867, #3882)
- add support for checking required/optional EasyBuild dependencies via
eb --check-eb-deps
(#3829) - add support for collecting GPU info (via
nvidia-smi
), and include it in--show-system-info
and test report (#3851) - added support for
--insecure-download
configuration option (#3859) - make intelfftw toolchain component aware of imkl-FFTW module (#3861)
- make sure the contrib/hooks tree is included in the source tarball for easybuild-framework (#3862)
- add
check_async_cmd
function to facilitate checking on asynchronously running commands (#3865, #3881) - add initial/experimental support for installing extensions in parallel (#3667, #3878)
- filter out duplicate paths added to module files, and print warning when they occur (#3770, #3874)
- add
- various bug fixes, including:
- ensure that path configuration options have absolute path values (#3832)
- fix broken test by taking into account changed error raised by Python 3.9.7 when copying directory via
shutil.copyfile
(#3840) - ensure newer location of CUDA stubs is taken into account by RPATH filter (#3850)
- replace
which
bycommand -v
ineb
wrapper script to avoid dependency onwhich
command (#3852) - refactor EasyBlock to decouple collecting of information on extension source/patch files from downloading them (#3860)
- in this context, the
EasyBlock.fetch_extension_sources
method was deprecated, and replaced byEasyBlock.collect_exts_file_info
- in this context, the
- fix library paths to add to
$LDFLAGS
for intel-compilers toolchain component (#3866) - remove
--depth 1
from git clone whencommit
specified (#3871, #3872) - make sure correct include directory is used for FlexiBLAS toolchain component (#3875)
- explicitly disable rebase when pulling develop branch to create a merge commit, since not specifying how to reconcile divergent branches is an error with Git 2.33.1 and newer (#3879)
- tweak
test_http_header_fields_urlpat
to download fromsources.easybuild.io
rather thanhttps://ftp.gnu.org
(#3883)
- other changes:
easyblocks
- new software-specific easyblock for imkl-FFTW (#2599)
- minor enhancements and updates, including:
- add support for installing R extensions in parallel (#2408)
- update MotionCor2 easyblock to consider to locations for built binary (#2541, #2598)
- let GROMACS runtime logs show EasyBuild was used by setting
-DGMX_VERSION_STRING_OF_FORK
configuration option (#2571) - adjust qa list in WIEN2k easyblock to handle new questions + fix sanity check for v21.1 (#2572)
- enhance GCC easyblock to add support for AMD GPU offloading (#2578)
- add support for specifying subdirectory for target installation directory in CMakeMake (#2579)
- enhance COMSOL easyblock to change permission on build directory during extract step (to allow using patches) (#2584)
- enhance FlexiBLAS easyblock to support building with Intel MKL (imkl) as backend (#2588)
- update MATLAB easyblock for 2021b (jre is no longer included) (#2589)
- update OpenCV easyblock to detect GTK3 and GTK2 dependencies (next to GTK+) (#2591)
- avoid that path to CUDA install directory is added to
$PATH
(#2593) - enhance imkl easyblock to add support for installing with NVHPC (#2595)
- enhance PETSc easyblock to run tests in parallel (#2601)
- update ELSI easyblock to support two new external dependencies (#2602)
- add custom custom easyconfig parameter
backends
in FlexiBLAS easyblock to specify backends (#2605) - detect problem with compiling CPU detection code in configure output in GROMACS easyblock (#2609)
- use correct include directory for FlexiBLAS (#2610)
- various bug fixes, including:
- unset
$EASYBUILD_*
environment variables when running sanity check in EasyBuildMeta easyblock + also unset$MODULES_LMCONFLICT
to avoid conflict when loading EasyBuild module (#2568) - ensure that all ABAQUS components get installed for ABAQUS 2021.x (+ add support for enabling/disabling fe-safe) (#2569)
- fix subdir path in VTune easyblock for 2021.x versions + add sanity check command (#2576)
- make sure custom easyblock for installing EasyBuild respects requested version of Python (like
$EB_PYTHON
) (#2581) - restore RPATH wrappers for OpenMPI sanity check (#2582)
- fix installation of libcp2k for recent CP2K versions (#2585)
- make version regex in OpenSSL wrapper easyblock less strict (version string does not always end with a letter) (#2597)
- redefine
collect_exts_file_info
instead of now deprecated fetch_extension_sources in OCaml easyblock (#2603)
- unset
- other changes:
- don’t use
--config=mkl
for TensorFlow 2.4+ (#2583)- this fixes some performance related issues for TensorFlow, see https://github.com/easybuilders/easybuild-easyblocks/issues/2577 and https://github.com/easybuilders/easybuild-easyconfigs/issues/14120
- fix support for recent imkl version in numexpr easyblock (#2606)
- derive custom easyblock from MotionCor2 from PackedBinary instead of EasyBlock (#2607)
- don’t use
easyconfigs
added easyconfigs for foss/2021b (#14217) and intel/2021b (#14218) common toolchains
added example easyconfig files for 39 new software packages:
- abTEM (#13974), ARTS (#9651), AutoGeneS (#13903), bashplotlib (#13942), CIRI-long (#13985), DFT-D4 (#12803), ELSI-RCI (#14147), ESL-Bundle (#14179), expecttest (#14106), fdict (#14161), flook (#14161), FreeTDS (#13952), HDBSCAN (#14062), imkl-FFTW (#14195), isoCirc (#13982), libfdf (#14173), libmbd (#14129), libpspio (#14173), libSBML (#14050), longread_umi (#13987), Mesa-demos (#14123), MixMHC2pred (#14041), NTPoly (#14183), OpenSceneGraph (#14197), panaroo (#14203), PEPT (#14077), pycoQC (#14012), python-docx (#13930), QD (#14122), radeontop (#14124), Rgurobi (#14188), RInChI (#14049), scGeneFit (#13963), swifter (#14114), TOML-Fortran (#13929), TRUST4 (#14035), ucx-py (#14051), vawk (#14040), VMTK (#14023)
added additional easyconfigs for various supported software packages, including:
- AlphaFold 2.0.1, artic-ncov2019 2021.06.24, BerkeleyGW 3.0.1, bokeh 2.4.1, Boost.Python 1.76.0, canu 2.2, Cartopy 0.20.0, CP2K 8.2, CUDA 11.4.2, Dalton 2020.0, dask 2021.9.1, edlib 1.3.9, ELSI 2.7.1, FFTW 3.3.10, GD 2.73, GDAL 3.3.2, GTDB-Tk 1.7.0, ImageJ 1.52q, jax 0.2.20, Kraken2 2.1.2, leidenalg 0.8.7, libfabric 1.13.2, libspatialindex 1.9.3, libxc 5.1.6, libxsmm 1.16.2, lifelines 0.26.3, Longshot 0.4.3, LSD2 2.2, MAFFT 7.487, MEME 5.4.1, MotionCor2 1.4.4, NCCL 2.11.4, netCDF 4.8.1, networkx 2.6.3, Nextflow 21.08.0, OpenBLAS 0.3.18, OpenCV 4.5.3, OrthoFinder 2.5.4, OSU-Micro-Benchmarks 5.8, PhyML 3.3.20200621, PostgreSQL 13.4, pygraphviz 1.7, pyproj 3.1.0, python-Levenshtein 0.12.1, PyTorch-Geometric 2.0.1, QIIME2 2021.8.eb, Qiskit 0.31.0, QuantumESPRESSO 6.8, Racon 1.4.21, rampart 1.2.0, rclone 1.56.0, RDKit 2021.03.4, SAMtools 1.13, scanpy 1.8.1, scikit-allel 1.3.3, SciPy-bundle 2021.10, Seaborn 0.11.2, SHAPEIT4 4.2.2, spglib 1.16.2, UCX 1.11.2, UCX-CUDA 1.11.2, VSEARCH 2.18.0, Z3 4.8.12, zarr 2.10.1
minor enhancements, including:
- add JASPAR2020 to R-bundle-Bioconductor 3.13 (#13962)
- add Autotools as build dependency for CubeGUI-4.6 (#14109)
- add compiler/parallel/tcltk R libraries included in base installation to extensions in recent R easyconfigs (#14189, #14190, #14194)
- required for parallel installation of extensions for these R easyconfigs
- also add location to MPI startup tests to
$PATH
in OSU-Micro-Benchmarks easyconfigs (#14126)
various bug fixes, including:
- add missing Brotli dependency to freetype (#13915, #14002)
- add patch for OpenBLAS 0.3.15 to fix failing numpy tests on aarch64 (#13923)
- fix source URL + add alternate checksum for ADMIXTURE 1.3.0 (#13933)
- just use
cp
to copystereo_chemical_props.txt
to AlphaFold installation directory (#13938) - add UnZip build dependency to TensorFlow 2.4.1 (#13958), 2.5.0 (#13959) and 2.6.0 easyconfigs (#13960)
- add missing Python dependency for WIEN2k 21.1 + patch to fix build failure for
lapw0_mpi
with libxc (#13961) - add additional valid checksum for lhs 1.1.1 extension in recent R 4.0.x and 4.1.0 easyconfigs (#13969)
- fix Fortran system call stdout/err redirection for WIEN2k v21.1 (#13972)
- add OpenSSL dependency to Kent_tools 418 easyconfig to fix a link error (#13989)
- make binutils a build-only dependency for Brotli + add sanity check command (#14004)
- fix installation of Racon v1.4.7 with gcccuda/2019b after move of ClaraGenomicsAnalysis repository (#14010)
- fix source URL for KEGG.db extension in R-bundle-Bioconductor 3.13 easyconfig (since it’s a deprecated library now) (#14013)
- add patch for BLIS 0.8.1 to fix dgemm FPE signalling on Broadwell (#14018)
- add patch to fix installation of TensorFlow 2.2.3 on POWER (#14025)
- fix AmberTools v20 easyconfig using intel/2020a toolchain (#14028)
- fix download + permissions of binary for USEARCH v11.0.667 (#14036)
- remove h5py 3.x dependency for Keras with 2020b toolchain, since TensorFlow provides (and requires) h5py 2.x (#14052)
- correctly specify install prefix for CUDA in OSU-Micro-Benchmarks after renaming CUDAcore to CUDA for 2021a (#14063)
- add patch to fix failing file system cache test for jax on recent Linux kernels (#14067), #14070)
- fix compilation of BWA 0.7.17 with GCC/10.2.0 on POWER (#14073)
- add missing dependencies for recent LibTIFF versions: XZ, jbigkit, zstd (#14079)
- add missing header file to existing versions of jbigkit (#14081)
- fix source URL for SUNDIALS 5.x (#14092, #14096)
- add Perl and Python runtime dependencies to Bowtie2 2.4.4 (#14097)
- fix source URL for SCOTCH 6.1.0 (#14099)
- drop tcmalloc from SymEngine as it causes crashes with scipy (#14119)
- fix homepage + description in SimpleITK easyconfigs (#14125)
- add missing scripts from
utils
andanalysis_scripts
tobin
for cryoDRGN (#14137) - patch
rsync_from_ncbi.pl
in Kraken2 v2.1.2 to allow syncing with NCBI servers over HTTPS (#14148) - skip
mkl_fused_batch_norm_op_test
test (broken on AMD EPYC systems) for TensorFlow 2.5.0 and 2.6.0 (#14151, #14153) - fix incorrect module load message and update morphology plugin of ImageJ 1.51k (#14152)
- fix XCrySDen v1.6.2 linking to libdl and Togl (#14160)
- add patch to fix PMIx detection in OpenMPI v4.0.3, v4.0.5, v4.1.0 (#14177)
- add patch for OpenBLAS 0.3.17 + 0.3.18 to fix segfault triggered by scipy tests (#14178)
- fix spatstat.* downloads for Seurat v4.0.1 (#14199)
- add patch for GROMACS 2019.3 easyconfigs using CMake 3.15.3 to fix CPU detection (#14212)
other changes:
remove help2man build dependency for flex using system toolchain (because it requires Perl) (#13922)
use proper dependency for python-Levenshtein in CIRI-long easyconfig (#13985)
in-place updates for foss/2021b and intel/2021b common toolchains
- update to UCX(-CUDA) 1.11.2 as dependency for OpenMPI v4.1.1 + NCCL v2.10.3 (#14090)
- update libfabric to 1.13.1 in OpenMPI and add it as a dependency in PMIx for the upcoming foss 2021b toolchain (#14164)
- update to OpenBLAS 0.3.18 as dependency for FlexiBLAS 3.0.4 with GCCcore/11.2.0 toolchain (#14167)
- update libfabric to 1.13.2 in OpenMPI v4.1.1 + PMIx 4.1.0 for the upcoming foss/2021b toolchain (#14176)
remove format mapping from homepage of Subread easyconfigs (#14145)
add BLIS and imkl (x86_64 only) builddependencies to FlexiBLAS 0.3.4 with GCC/11.2.0 toolchain (#14225)
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 toEasyConfig
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)
- add per-extension timing in output produced by
- 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
tochar
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 tointel-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)
- remove Python 2.6 from list of supported Python versions in
- other changes:
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 enhancebuildcmd
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__
ofeasybuild.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)
- handle failure of running
- other changes:
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:
- AlphaFold (#13867), andi (#13768), aria2 (#13709), AUTO-07p (#13831), babl (#13216), BAli-Phy (#13484), biogeme (#13735), Bio-SearchIO-hmmer (#13419), BuDDy (#13907), c-ares (#13709), CellRank (#13408), Coin (#13818), Co-phylog (#13769), cppy (#13823), CREST (#13648), CRISPR-DAV (#13139), CSBLAST (#13794), DGL (#13793), DistributedStream (#13659), Excel-Writer-XLSX (#13139), FBPIC (#13500), freebayes (#12859), freud-analysis (#13354), fumi_tools (#13517), GEGL (#13216), GIMP (#13216), glib-networking (#13216), GOATOOLS (#13364, #13629), gofasta (#13651), GTK2 (#13900), GTK3 (#13900), Highway (#13453), hipSYCL (#13837), ISA-L (#13663), jax (#13760), JSON-GLib (#13216), Kalign (#13463), LADR (#13351), lDDT (#13794), libdivsufsort (#13768), libjxl (#13453, #13829), libmypaint (#13216), libtecla (#13908), lie_learn (#13793), longestrunsubsequence (#13800), Maude (#13909), mimalloc (#13726), MINPACK (#13802), Mish-Cuda (#13759, #13784), muparserx (#13779), nlohmann_json (#13777), OpenStackClient (#13644), OSPRay (#12852), pandapower (#13687), pangolin (#13733, #13848), PSIPRED (#13794), PYPOWER (#13689), PyPSA (#13673), PyRosetta (#13793), pysamstats (#13139), pytest-benchmark (#13622), python-isal (#13663), QCxMS (#13650), RepeatModeler (#13126), Schrodinger (#11698), sklearn-som (#13699), SoQt (#13818), spdlog (#13778), SpectrA (#13743), SymEngine-python (#13652), SyRI (#13800), torchinfo (#13662), TRAVIS-Analyzer (#13503), UShER (#13708), Vampire (#13352), VBZ-Compression (#13536), VisPy (#13468), wgsim (#13475), Yices (#13906)
- 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 ininstallopts
(#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)
- fix LAMMPS 3Mar2020 easyconfigs using intel toolchain on AMD CPUs by patching out hardcoded
- 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
inconfigopts
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)
- enhance detection of patch files supplied to
- various bug fixes, including:
- don’t override
COMPILER_MODULE_NAME
, inherited fromFfmpi
, in Fujitsu toolchain definition (#3721) - avoid overwriting
pr_nr
inpost_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 (likeimport 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, unlessshell=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 ofGitCommandError
(#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)
- don’t override
- other changes:
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 notTrue
(#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 forsource_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
andaltversion
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:
- AMPHORA2 (#13003), AOMP (#12909), CAMPARI (#13152), CSB (#12877), dijitso (#10719), DosageConvertor (#13278), dSFMT (#12971), exiv2 (#13204), FEniCS (#10719), FreeFEM (#9902), futhark (#12921), futile (#12864), gappa (#13186), GenomeWorks (#13083, #13092), gexiv2 (#13204), HAL (#13267), hipify-clang (#12961), inline (#12029), libcint (#13214), LTR_retriever (#13125), mapDamage (#13172), MbedTLS (#13061), microctools (#13010), Nektar++ (#12664), NINJA (#13125), OBITools3 (#12969), ont-fast5-api (#13033), OpenMM-PLUMED (#13268), phototonic (#13241), PyFoam (#12675), RagTag (#13247), RcppGSL (#13172), RECON (#13123), RepeatScout (#13124), retworkx (#13228), UCX-CUDA (#13260), unimap (#13247), Vala (#13204), WhatsHap (#12989)
- 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 thanpython2
(#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 thanboost_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 + usePythonBundle
rather thanBundle
easyblock (#13253, #13295, #13336) - update
README
with instructions for MATLAB easyconfigs (#12597)
- disable
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
andrequired-linked-shared-libs
EasyBuild configuration options - via
banned_linked_shared_libs
andrequired_linked_shared_libs
methods in toolchain support - via
banned_linked_shared_libs
andrequired_linked_shared_libs
methods in easyblock - via
banned_linked_shared_libs
andrequired_linked_shared_libs
easyconfig parameters
- via
- 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)
- enhance
- 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
, sinceswap
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
andback_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 ofwhich()
byon_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)
- deprecate adding a non-existing path to
easyblocks
- 3 new software-specific easyblocks:
- minor enhancements, including:
- also add
-pthread
toprebuildopts
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)
- also add
- 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
withself.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 inPythonPackage.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 deprecatedlog_error
named argument forwhich
function (#2406) - remove
cuda_compute_capabilities
from custom easyconfig parameters for Clang, LAMMPS and TensorFlow (now supported as general easyconfig parameter) (#2433)
- update
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:
- Archive-Zip (#12651), BirdNET (#12737, #12712, #12737), cell2location (#12448), cryoDRGN (#12704), dm-reverb (#12824), DROP (#12559, #12801, #12950), fastahack (#12841), fermi-lite (#12856), filevercmp (#12841), FlexiBLAS (#12476), freetype-py (#12918), fsom (#12841), garnett (#12529), gawk (#12716), gemmi (#12855), georges (#12570), hifiasm (#12897), intervaltree (#12838), LDC (#12671), libidn2 (#12670), librosa (#10477), librsb (#12780), line_profiler (#12556), loompy (#12804), mmtf-cpp (#12580), mongolite (#12632), msgpack-c (#12580), multichoose (#12839), networkTools (#12810), NewHybrids (#12528), Octopus-vcf (#12598), onedrive (#12671), p4-phylogenetics (#12549), pagmo (#12678), pyfaidx (#12872), pyfasta (#12952), pygmo (#12678), pysheds (#12791), R-INLA (#12955, #12927, #12955), RegTools (#12874), request (#12448), rMATS-turbo (#12982), scanpy (#12731), SeqLib (#12856), SeuratData (#12993), SeuratWrappers (#12994), smithwaterman (#12841), snp-sites (#12900), SSW (#12856), tabixpp (#12837), TagDust (#11599), TALON (#12963), tMAE (#12559), TranscriptClean (#12952), umap-learn (#12448), vcflib (#12841), xESMF (#12799), XlsxWriter (#12820)
- 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:
- 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 tovi
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)
- update
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
andmodule 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 anapproved
review by the same user (#3607, #3608) - sort output of
eb --search
in natural order (respecting numbers) (#3609) - enhance
eb
command to ensure thateasybuild.main
can be imported before settling on python* command to use (#3610) - add
--env-for-shebang
configuration option to define theenv
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)
- add support for filtering dependencies by using
- 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)
- fix
- other changes:
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)
- set
easyconfigs
- added easyconfig for goblf/2020b toolchain (#12381, #12535)
- added example easyconfig files for 41 new software packages:
- amplimap (#12205), BEEF (#12104), bpp (#12036), Brotli (#11651), CDAT (#12322), cicero (#12252), CIF2Cell (#12258), CompareM (#9377), DL_POLY_4 (#12324), DMCfun (#12412), ESMPy (#12339), FLAC (#12300), gdbm (#12322), GPyOpt (#12524), json-c (#12344), libcdms (#12322), libdrs (#12322), libogg (#12285), libvorbis (#12300), LncLOOM (#12287), LPJmL (#12344), maze (#12354), MetaEuk (#12188), mrcfile (#12497), Myokit (#12261), NCCL-tests (#12415), pyABC (#12329), PyCifRW (#12258), PyOD (#12507), pyro-api (#12447), pyro-ppl (#12447), R-opencv (#12226), Ratatosk (#12443), RevBayes (#12419), sansa (#12354), scikit-cuda (#12352), Seeder (#9057), suave (#12354), voltools (#12497), vorbis-tools (#12300), YACS (#12309)
- 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 whereuse_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)
- rename opencv_contrib and update to OpenCV v3.4.1 with contrib
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 usecp -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)
- advise PR labels in
- various bug fixes, including:
- add
--init
and--recursive
options togit 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
tolib64
if it doesn’t exist (#3580) - include
%(mpi_cmd_prefix)s
and%(cuda_*)s
templates in output of--avail-easyconfig-templates
(#3586)
- add
- other changes:
easyblocks
- 2 new software-specific easyblocks:
- 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 ifcmake3
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 whenpython
command is not available in OS (#2282) - guard
module unload
statements in modules for Cray* toolchains (#2286) - set
$PYTHONNOUSERSITE
inPythonBundle.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)
- filter out user packages in LAMMPS easyblock if corresponding dependency isn’t included + only set
- 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
toposix.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:
- AOCC (#11868), CHERAB (#7141), CaDiCaL (#11966), CellRanger-ARC (#12114), CuPy (#11749), DFA (#11979), FIGARO (#11924), FIRESTARTER (#12160), FIt-SNE (#8630), GPyTorch (#12010), GSEA (#10395), GetOrganelle (#11948), Glucose (#11965), GraPhlAn (#10707), ITSx (#10558), Kaleido (#11998), LAPACK (#6615), LSD2 (#11903), Lingeling (#11964), MPB (#7026), MiniCARD (#11963), MiniSat (#11962), NGSpeciesID (#11918), NanopolishComp (#11823), Nsight-Compute (#12043), Nsight-Systems (#12042), PHANOTATE (#8667), PIPITS (#10558), PyClone (#11940), PySAT (#12000), RNAmmer (#7262), Raysect (#7141), SICER2 (#12200), SOCI (#12045), SeisSol (#7194), SignalP (#11862), Stack (#11310), SuperLU_DIST (#11693), Teneto (#12056), Transformers (#12032), YANK (#11742), Z3 (#12013), bgen (#7456, #11867), bgen-reader (#7456, #11867), bpytop (#12040), byobu (#11932), chi2comb (#11867), cuTENSOR (#11914), dd (#11978), decona (#11891), dicom2nifti (#11955), eccodes-python (#12083), fftlib (#11944), flatbuffers-python (#12148), fpocket (#11980), gh (#11851), intel-compilers (oneAPI) (#11982), libGDSII (#7026), libpci (#11871), liknorm (#7456, #11867), limix (#7456, #11867), logaddexp (#11867), neptune-client (#11985), plinkQC (#12068), preCICE (#11886), py-aiger (#11999), py-aiger-bdd (#11999), pytest-xdist (#11883, #11893), samblaster (#7378), terastructure (#12197), typing-extensions (#11636), webin-cli (#8674)
- 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 viaGPU_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 + enhancesanity_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 viahttps://
(#12047) - fix OS dependencies for libfabric (#12058)
- fix vector
mul
anddiv
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)
- added missing space in
- 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
ineb --help
output (#3509) - add support for skipping unit tests (test step) via
--skip-test-step
(#3524)
- add support for toolchain options like
- various bug fixes, including:
- also ignore
vsc.*
imports coming from frompkg_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
inRPATH
wrappers (#3495) - avoid
TypeError
being raised bylist_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)
- also ignore
- 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
andinstallopts
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)
- add
- 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 torun_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
andglibpth
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)
- workaround for regression in
- add link to GCC mailing list thread confirming that binutils should not be configured with
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:
- alsa-lib (#11658), assimp (#11759), BioServices (#11602), carputils (#11270), cctools (#11799), code-server (#11778), CRISPResso2 (#11775), elfutils (#11783), EMU (#11641), fgbio (#11519), Flink (#11747), FreeSASA (#11699), Geant4-data (#11610), geocube (#11714), IPM (#11768, #11772), libmicrohttpd (#11783), libStatGen (#7982), libzeep (#11687), LLDB (#11822), meshalyzer (#11270), meshtool (#11270), Metagenome-Atlas (#11620), MLxtend (#11601), MRChem (#11604), MRCPP (#11579), mxml (#11769), mxmlplus (#11771), nanocompore (#11690), neon (#11797), Open-Data-Cube-Core (#11713), OpenSees (#11613), PEST++ (#11565), pyFAI (#11849), pymca (#11848), RE2 (#11718), scikit-bio (#11660), SpaceRanger (#11776), SplAdder (#11607), SWAT+ (#11615), velocyto (#11744), WCT (#11779)
- 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:
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
inapply_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 withrpm
& co (#3477) - don’t change directory in
download_repo
function intools.github
(#3486) - take
source_urls
,checksums
,patches
into account when extension source is specified viasources
(#3487)
- avoid
- other changes:
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
andcopy_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 overdummy
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)
- add
- other changes, including:
easyconfigs
- added easyconfigs for 2 new toolchains:
- added example easyconfig files for 75 new software packages:
- Bsoft (#6551, #11537), causallift (#11436), CAVIAR (#11158), CCfits (#11505), Cereal (#11506), CFDEMcoupling (#6465), Check (#11295), chewBBACA (#11418), COMSOL (#11513), CUDAcore (#11295), Dalton (#5808), DIRAC (#11414), ESMValTool (#6329), eSpeak-NG (#11236), ExifTool (#11521), FabIO (#11517), festival (#11236), fetchMG (#11283), FHI-aims (#11198), Flexbar (#11305), FRUIT (#6613), FRUIT_processor (#6631), Gaussian (#4247), GBprocesS (#11512), GDRCopy (#11295), Genome_Profiler (#6066), groff (#11200), ILAMB (#11309), kedro (#11436), leidenalg (#11407), libav (#6194), libmo_unpack (#6329), libobjcryst (#11321), makeinfo (#11368), mauveAligner (#11395), MBROLA (#11236), MDSplus-Java (#10705), MDSplus-Python (#10705), MyCC (#11283), nanomax-analysis-utils (#11517), Nek5000 (#6408), NVHPC (#11391), OPERA-MS (#11410), ORFfinder (#7031), phonemizer (#11236), Pingouin (#11280), Pint (#11151), pydantic (#11151), pyobjcryst (#11321), PyOpenCL (#11517), pyspoa (#11438), QtPy (#11517), Qtconsole (#11517), rasterio (#11468), rasterstats (#11468), ReMatCh (#6067), Ruby-Tk (#6613), SBCL (#11413), scikit-uplift (#11432), SDL (#6202), SDL2 (#6203), SDL2_image (#6203), SDL_image (#6202), SeqKit (#11538), silx (#11517), SiNVICT (#11404), sonic (#11236), speech_tools (#11236), Statistics-R (#11274), SUMO (#11435), tidybayes (#11335), treatSens (#11431), tsne (#11283), wandb (#11450), WisecondorX (#11399)
- 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
- to allow disabling generating of “devel” modules via
- set up a minimal build environment when using system compiler (#3399)
- by default,
$CC
is set togcc
and$CXX
is set tog++
when usingsystem
toolchain - minimal build environment can be customized via
--minimal-build-env
configuration option
- by default,
- 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)
- add script to create
- 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
tolib
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 usingpython -E -s -S
to runrpath_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 whenprecise
toolchain option is enabled (#3425) - make sure
self.start_dir
is set inExtensionEasyBlock
(#3426, #3435) - exclude local variables from typo check in easyconfig files (#3427)
- allow including easyblocks from multiple locations, by combining
- 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 thepip
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 + addgenerator
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 toTrue
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 disablingrenameat2
andgetentropy
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 to0
before running Perl’s configure script (#2169)
- make TensorFlow easyblock ignore the
- other changes:
easyconfigs
- added easyconfigs for 2 new toolchains:
- gomkl/2020a and iomkl/2020a (#11036)
- added example easyconfig files for 49 new software packages:
- almosthere (#11152), arcasHLA (#10867), BioPP (#11113), Bracken (#10829), BUFRLIB (#11140), Calib (#11111), CellRanger-ATAC (#11186), edlib (#10470, #11246), flatbuffers (#11109), gengetopt (#11117), graphite2 (#11168), HeFFTe (#10990), hierfstat (#11249), immunedeconv (#11136), ioapi (#10959), itpp (#10958), LiBis (#11059), libosmium (#11024), limix-bgen (#11152), minibar (#10470, #11246), misha (#11127), MOABS (#10747), moonjit (#11163), NGLess (#11128), nsync (#11109), openCARP (#11117), OpenForceField (#11048), OpenMMTools (#11046), OpenMS (#10994), PennCNV (#10986), plantcv (#10968), PlasmaPy (#10732), Portcullis (#11038), PycURL (#11169), PyGEOS (#11110), pySCENIC (#11115), Reapr (#9296), RnBeads (#11142), sf (#11248), SLiM (#11172), stars (#11215, #11248), Sumo (#11071), Telescope (#10943), tensorflow-probability (#10312), texlive (#11168), tidymodels (#11010), Trycycler (#11207), umi4cPackage (#11127), variant_tools (#11169)
- 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 witheb --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 wheneb --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
overftp
insource_urls
of IgBLAST easyconfig (#11244)
- don’t require custom
EasyBuild v4.2.2 (July 8th 2020)¶
bugfix/update release
framework
- various enhancements, including:
- 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 overbuilddependencies
(#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 inModulesTool.exist
(#3379)
- fix crash in
easyblocks
- 3 new software-specific easyblocks:
- minor enhancements, including:
- use
wclean -platform
instead ofwcleanPlatform
for OpenFOAM v2006 & newer (#2088)
- use
- various bug fixes, including:
- only build OpenCV with IPP support on x86_64 systems (#2056)
- make sure
CFLAGS
andMYCFLAGS
are used in Lua easyblock (#2062) - also accept
exist_lic
as valid value forlicense_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 correctpython
command in extensions filter + also addlib64/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 dropintel64/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:
- added example easyconfig files for 36 new software packages:
- AmrPlusPlus (#9919), arrow (#10882), attrdict (#10827), Cartopy (#10685), dm-tree (#10775), dotNET-SDK (#10661), FLAIR (#10860), fastqsplitter (#10706), GLFW (#10709), git-extras (#10440), hl7apy (#10728), hyperopt (#10735), IgBLAST (#10889), IntelDAAL (#9848), ichorCNA (#10595), MARS (#10691), MITObim (#10897), MUST (#10849), mhcnuggets (#9743), PAUP (#10830), Percolator (#10665), PyBerny (#10885), poetry (#10884), pycocotools (#10806), python-hl7 (#10673), SHAPEIT4 (#10814), SYMPHONY (#10058), SunPy (#10676), sdsl-lite (#10691), TEtranscripts (#10909, #10921), Tombo (#10646), tensorboardX (#10774), Unidecode (#10828), WHAM (#10736), XALT (#9792), Xvfb (#10512)
- 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
andTK_SRC_DIR
(#10662) - change Xerces-C++ to official CMakeMake build (fixes missing links to curl) (#10664)
- add
-fPIC
totoolchainopts
in easyconfig for Lua 5.3.5 with system toolchain (#10671) - remove hardcoded X86 target in LLVM easyconfigs (#10677)
- switch to https
homepage
andsource_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 tofiletools
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 fromMpi.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
andpr_descr
build_options innew_pr_from_branch
instead ofnew_pr
(and commit_msg in both) (#3298) - make
pypi_source_urls
more robust by usingHTMLParser
rather thanxml.etree.ElementTree
(#3303, #3329) - fix broken test for
--include-easyblocks-from-pr
(#3304) - don’t use
distutils.dir_util
incopy_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
ineb
command used in jobs, to prevent infinite job cycle (#3328) - avoid empty entries in
$LD_LIBRARY_PATH
and other path-like environment variables (#3333)
- make
- other changes:
- fix code style issues in
easybuild.tools
+ addflake8
linting test (#3282) - introduce
contextmanager
for disabling templating and reduce resolving errors (#3287) - add
change_into_dir
named argument toextract_file
+ print deprecation warning if it’s not specified (#3292) - improve
install_eb_dep.sh
script to install EasyBuild dependencies in CI environment (#3314)
- fix code style issues in
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 toTarball
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
inGCC
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)
- update
- 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 theUSER-INTEL
package viaconfigopts
(#2031) - let
CMakeMake
removeeasybuild_obj
build directory if it already exists (#2032) - include own lib dir in
RPATH
before system lib dirs inbinutils
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
inGCC
easyblock (#2059)
- use correct version in
- other changes:
easyconfigs
- added easyconfigs for new common toolchains: foss/2020a (#10483, #10492), intel/2020a (#10494)
- added example easyconfig files for 66 new software packages:
- Alpha (#9994), antiSMASH (#10589), Arlequin (#10620), artic-ncov2019 (#10459), augur (#10405), AutoMap (#10419), Bio-EUtilities (#10037), CaSpER (#10593), cdbfasta (#10547), cddlib (#10429), CoCoALib (#10429) dftd3-lib (#10351), DoubletFinder (#10603), E-ANTIC (#10429), FastViromeExplorer (#10571), FIX (#8870), FusionCatcher (#10134), geopandas (#10322), goalign (#10469), gotree (#10459), gretl (#10413), harmony (#10604), HDF-EOS (#10534), HDF-EOS5 (#10536), HMMER2 (#10588), HyPo (#10642), king (#10365), libdeflate (#10459), libfabric (#10616), libgit2 (#10453), libuv (#10444), mbuffer (#10524), MDAnalysis (#10545), MEM (#10605), MESS (#10597), metaerg (#10037), MinCED (#10037), MitoZ (#7735), nauty (#10429), nifti2dicom (#10598), NLMpy (#10029), ntCard (#10502), NTL (#10431), pIRS (#10508), popscle (#10550), ProtHint (#10549), protozero (#10495), pysndfx (#10452), PyVCF (#10564), PyWavelets (#10501), rampart (#10459), rickflow (#10641), RNA-Bloom (#10502), root_numpy (#10424), rstudio (#10619), ScaFaCoS (#10537), Scythe (#10524), SDSL (#10642), SHAP (#10379), SNPomatic (#10524), SoX (#10452), swissknife (#10037),) Taiyaki (#10573), TCLAP (#10598), torchaudio (#10516), wtdbg2 (#10524)
- 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 thanftp://
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 usesystem
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)
- for more information, see https://easybuild.readthedocs.io/en/latest/Locks.html
- 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)
- for more information, see https://easybuild.readthedocs.io/en/latest/Easyconfigs_index.html
- additional GitHub integration features:
- add support for targeting easyblocks and framework repositories in
--new-pr
(#1876, #3189) - add support for
--include-easyblocks-from-pr
(#3206) - for more information, https://easybuild.readthedocs.io/en/latest/Integration_with_GitHub.html
- add support for targeting easyblocks and framework repositories in
- 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
inprint_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 whenNone
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 failingtest_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)
- use correct module for
- other changes:
- increase timeout & use
api.github.com
for connectivity check incheck_github
(#3192) - restore
flake8
default ignores (#3193) - enable tracking of test suite coverage using coveralls (#3204)
- make tests use
easybuilders/testrepository
rather thanhpcugent/testrepository
after it was moved (#3238) - improve raised error in
remove_dir
and deprecatermtree2
(#3228)
- increase timeout & use
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 inbuildopts
totestopts
andinstallopts
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 inPythonPackage
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)
- make ParMETIS easyblock compatible with custom
- 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 forFATAL 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 renamedlibnvinfer_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 deprecatedrmtree2
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:
easyconfigs
- added example easyconfig files for 114 new software packages:
- ABRA2 (#10272), ABRicate (#10310), ADIOS (#10036), aNCI (#9929), any2fasta (#10310), apex (#10269), archspec (#9898), ArviZ (#10366), autopep8 (#9626), BAMSurgeon (#10330), BatMeth2 (#10323), BiG-SCAPE (#10352), BinSanity (#10001), Bonito (#10269), BSMAPz (#10283), BSseeker2 (#10039), BUStools (#9838), Cbc (#10052), Cgl (#10048), CGmapTools (#10288), Clp (#10033), CoinUtils (#9937), dtcwt (#9695), ELSI (#9857), EnsEMBLCoreAPI (#8734), fastq-pair (#9894), FigureGen (#10076), Fiona (#10321), FuSeq (#10004), GenomeTools (#9797), GraphMap2 (#10299), GRASP (#9896), Groovy (#9809), gsport (#9821), gubbins (#9689), igv-reports (#9977), inferCNV (#9686), iVar (#10291), joypy (#10212), JupyterLab (#9752), kma (#10259), LAMMPS (#10371), lancet (#10271), libBigWig (#10006), libGridXC (#9858), libPSML (#5859), LtrDetector (#10343), manta (#5104), medImgProc (#10228), MedPy (#9748), Mini-XML (#10036), mkl_fft (#9887), Monocle3 (#9825), MoreRONN (#10255), motionSegmentation (#10228), NanoComp (#10212), NanoFilt (#10212), nanoget (#10212), nanomath (#10212), NanoPlot (#10212), ngspice (#9922), ntEdit (#9836), ntHits (#9833), occt (#9939), OCNet (#9955), OpenAI-Gym (#10347), OpenPIV (#9959), OpenPyXL (#10115), orca (#9518), Osi (#10361), PartitionFinder (#9983), pauvre (#10212), polymake (#9904), pretty-yaml (#10041)), PRSice (#9988), pycodestyle (#9626), pydot (#9899), pygraphviz (#9969), pylift (#10051), PyMC3 (#10279), pyparsing (#9983), PyRe (#10095), python-weka-wrapper3 (#9704), PyTorch-Geometric (#9995), qcat (#10244), RAxML-NG (#9990), Ray (#10302), rclone (#7934), Red (#9856), rstanarm (#9964), scikit-build (#9762), scVelo (#9805), SECAPR (#9721), segmentation-models (#10211), SentencePiece (#10192), SEPP (#10047), Shapely (#10309), Singular (#10030), SLATEC (#7529), spatialreg (#9767), split-seq (#9749), spoa (#9705), SSN (#9955), STEAK (#10337), stpipeline (#9736), SVG (#9905), Togl (#9868), torchtext (#10193), units (#9682), UQTk (#10279), WildMagic (#10044), Winnowmap (#10005), xtb (#9993), Zip (#9972)
- 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
andSet::IntervalTree
(#10049) - add dat directory to aNCI (#9929)
- add patch to create a symlink from
libsvm.so.$(SHVER)
tolibsvm.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
andtbb
extensions (moved to oneAPI repo) in PyTorch easyconfigs (#10367) - update
Java/1.8
wrapper toJava/1.8.0_241.eb
(#10305)
- add easyconfig for Java 11.0.6 on
- 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
inconfigopts
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, sincehttps://
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://
inhomepage
/source_urls
ofzlib-1.2.11.eb
(#10018) - add
-GCCcore-9.2.0
versionsuffix forintel/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 (ineasybuild.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)
- add
- various bug fixes, including:
- ignore imports from
vsc
namespace made from pkgutil.py (#3120) - only actually change permissions using
os.chmod
inadjust_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
usingbufsize=0
, to fixrun_cmd_qa
missing output (#3130) - update pip & install wheel package in generated Singularity container recipes (#3136)
- avoid crash in
modify_env
& unsetunset_env_vars
when using (older versions) of Python 3.5 & 3.6 by usinglist(...)
(#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 leveragingsort_looseversions
function frompy2vs3
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)
- ignore imports from
- other changes:
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 + addPKG_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
+ addpython -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 toSetup
) (#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 inVersionIndependentPythonPackage
to hard setself.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:
- Autoconf-archive (#9658), breseq (#9603), CrossMap (#9483), CSBDeep (#9560), CNT-ILP (#9323), cytoolz (#9453), Faber (#9553), Fiji (#8748), GARLI (#9404), Globus-CLI (#9565), GtkSourceView (#9526), gradunwarp (#9648), gsettings-desktop-schemas (#9529), HyPhy (#9405), horton (#7449), IGMPlot (#9438), LEMON (#9323), Meld (#9530), mhcflurry (#9554), NCIPLOT (#9419), ncl (#9632), OpenSlide (#9499), openslide-python (#9499), pythran (#9488, #9594), Qualimap (#9411), TinyDB (#9555), TreeShrink (#9381)
- 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:
- 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
andXDG_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)
- disable running of
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
ingetLogger
, 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)
- performance improvements:
- various bug fixes, including:
- correctly handle
iccifortcuda
toolchain with standaloneiccifort
indet_toolchain_compilers
(#3055) - init git repo with
git.repo.clone()
instead ofcopy_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
andplatform.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 inexts_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)
- correctly handle
- other changes:
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:
- 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 & usechange_dir
,copy_dir
,copy_file
andmkdir
function fromfiletools
(#1848) - prepend
-L$EBROOTZLIB/lib
toLDFLAGS
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)
- clean up
- other changes:
- add GitHub Actions workflow to run easybuild-easyblocks test suite (#1844)
easyconfigs
- added example easyconfig files for 46 new software packages:
- Amara (#9340), anvio (#9387), Arriba (#9226, #9244), attr (#7824), bibtexparser (#9284), bwa-meth (#9217), CITE-seq-Count (#9237), CoordgenLibs (#9374), dtcmp (#9052), fatslim (#9193), GromacsWrapper (#9177), GULP (#9243), hdf5storage (#9195), ITSTool (#7260), kim-api (#8786), kwant (#9238), libarchive (#9052), libcircle (#9052), libxml2-python (#7260), lifelines (#9215), lwgrp (#9052), maeparser (#9374), MaxQuant (#9281), MethylDackel (#9216), MoviePy (#9205), mpifileutils (#9052), mpiP (#9059), nanofilt (#8502), NOVOPlasty (#9326), openkim-models (#8786), parallel-fastq-dump (#9218), pasta (#9348), pyqstem (#9277), python-Levenshtein (#9237), RapidJSON (#9373), RDFlib (#9346), RQGIS3 (#9125), Short-Pair (#9376), SpliceMap (#9375), TRIQS-cthyb (#9230), TRIQS-dft_tools (#9230), TRIQS-tprf (#9230), UMI-tools (#9237), VarDict (#7283), Xmipp (#9257), XSD (#9347)
- 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)
- explicitly set
- 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
inget_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)
- add ‘
- 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
’ inConfigureMake
(#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:
- ADOL-C (#9098), ALFA (#9106), ASTRID (#9088), Annif (#8536), bnpy (#8989), bpp-core (#9064), bpp-phyl (#9064), bpp-seq (#9064), Clang-Python-bindings (#9084), CPB (#5869), Centrifuge (#8714), Chromaprint (#9047), Con3F (#8755), DeepSurv (#8096), Essentia (#9054), FastRFS (#9088), GAT (#5871), Gaia (#9049), Gctf (#9097), GenomeMapper (#5872), Infomap (#9091), kpcalg (#8740), libglvnd (#9111, #9130), libsamplerate (#9046), libssh (#8865), libzip (#9073), MetaboAnalystR (#8773), Metaxa2 (#8939), MotionCor2 (#8942), NFFT (#9085), PhyML (#9103), PlaScope (#8714), PyCharm (#9100), pbcopper (#8928), pbmm2 (#8929), phylokit (#9088), phylonaut (#9088), phyx (#9090), pycma (#8834), Q6 (#9069), Qt5Webkit (#9120), ROME (#9050, #9062), rioxarray (#9007), SVDquest (#9088), savvy (#9124), sciClone (#7806), shapAAR (#8983), shrinkwrap (#9124), Structure (#5866), trimAl (#9063), thurstonianIRT (#9080), TurboVNC (#9110, #9111, #9128), Tracer (#8970), TagLib (#9048), TRIQS (#8835), THetA (#8875), vcfnp (#5862), WebSocket++ (#8842)
- 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:
EasyBuild v4.0.0 (September 20th 2019)¶
feature release (incl. backwards-incompatible changes)
framework
- fixed compatibility with Python 3.5+ (#2708, #2713, #2714, #2719, #2721, #2723, #2729, #2743, #2744, #2751, #2756, #2759, #2761, #2762, #2765, #2766, #2767, #2768, #2774, #2775, #2778, #2780, #2785, #2787, #2789, #2791, #2792, #2794, #2800, #2801, #2805, #2806, #2895, #2932, #2982, #2992, #3007, #3011)
- supported Python versions: 2.6, 2.7, 3.5, 3.6, 3.7
- some functionality from the Python standard library should be imported from the new
easybuild.tools.py2vs3
package - see Compatibility with Python 2 and Python 3 & Overview of relocated functions, classes and constants in EasyBuild v4.0
- ingested relevant code from
vsc-base
&vsc-install
(#2708, #2713, #2714, #2763, #2790, #2993)vsc-base
&vsc-install
are no longer required as dependencies- the functionality that was provided by these packages is now (mostly) available from the
easybuild.base
package - any import statements from the ‘
vsc
’ namespace will result in an error - see also Ingested functionality from vsc-base and vsc-install and Overview of relocated functions, classes and constants in EasyBuild v4.0
setuptools
is longer required (neither for installing or using EasyBuild) (#2836, #2837, #2984, #2986, #2988)- see also No more required Python packages
- this required moving some classes and constants, see Overview of relocated functions, classes and constants in EasyBuild v4.0
- the ‘
dummy
’ toolchain is deprecated and replaced by the ‘system
’ toolchain (#2877, #3001)- if ‘
dummy
’ is still used as a toolchain in easyconfig files, a warning will be printed - use “
toolchain = SYSTEM
” instead - for more information, see System toolchain
- if ‘
- a warning is printed when local variables in easyconfig file don’t follow the recommended naming scheme (#2938, #2968)
- see also Local variables in easyconfig files
- names of software installation directories are independent of module naming scheme by enabling
--fixed-installdir-naming-scheme
by default (#2999)- see --fixed-installdir-naming-scheme enabled by default for more information
- various other small enhancements, including:
- use requests instead of urllib2 for 403 errors (#2695)
- use pip requirements file in Travis (#2874)
- add support for
--fix-deprecated-easyconfigs
(#2881, 2898, #2938) - add
-L$EBROOTIMKL/lib/intel64
to$LDFLAGS
for MKL (#2930) - handle dict-type checksums in check_checksums_for (#2974)
- allow that
icc
&ifort
are not actual dependencies iniccifort
toolchain module (#2995) - define mapping for
iccifort
->``intel`` foriccifort
compiler-only toolchain for HMNS (#2996) - also consider concatenation of compiler module names to determine details of toolchain compiler component (#2997)
- update metadata for Cray-provided external modules (#3013)
- various bug fixes, including:
- update the PyPI trove classifiers in setup.py (#2875)
- reverse lists for
$LDFLAGS
and$CPPFLAGS
(#2931) - enhance/fix to_template_str function to do a better job at using template values in dumped easyconfigs (#2948)
- also take into account
--filter-deps
when finalizing parsed dependencies to fix problem with dependency filters using version ranges (#2983) - fix broken
--from-pr
tests due to archiving of easyconfigs (#2985) - fixes required to avoid breaking Cray support (#3008)
- fixes for
--read-only-installdir
: avoid crash withModuleRC
easyblock + also make log file in installdir read-only (#3012)
- other changes:
- add check to ensure that
--robot
argument specifies an existing directory (#2086) - remove old scripts that are no longer useful (+ minor fixes to others) (#2897)
- use ‘
command -v
’ to avoid requiring ‘which
’ in ‘eb
’ command (#2979) - add
modluafooter
&modtclfooter
at the end of the generated module file (#3003) - print warning when ‘
eb
’ command is not found in$PATH
and for empty robot search path (#3006)
- add check to ensure that
easyblocks
- fixes due to backwards-incompatible changes in easybuild-framework v4.0.0
- 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) andnumexpr
(#1803, #1804) - various other enhancements, including:
- 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 ifopenmp
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 thatpip
(ab)uses$HOME/.cache
(#1802) - don’t load modules for dependencies in
CrayToolchain.prepare_step
(#1805)
- other changes:
easyconfigs
- fixes due to changes in easybuild-framework v4.0.0
- use
SYSTEM
toolchain rather than deprecateddummy
toolchain (#8369, #8711, #8822) - fix names of local variables (#8682-#8688, #8690, #8695-#8702, #8709, #8710, #8715, #8717, #8718, #8720-#8732, #8822)
- enable
--local-var-naming-check=error
for easyconfigs tests (#8784) - stick to ‘
dummy
’ toolchain for now in easyconfig for latest EasyBuild 3.x (#8829)
- use
- 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)iccifort
is now installed as a single entity (no more separateicc
/ifort
installations fromintel/2019b
onwards) (see also #8879)versionsuffix
has been stripped down for toolchain components (GCC/binutils/OpenBLAS versions are no longer included)- see also https://easybuild.readthedocs.io/en/latest/Common-toolchains.html
- added example easyconfig files for 28 new software packages:
- AGFusion (#8840), Bonmin (#8855), causalml (#8871), ClonalFrameML (#6082), Control-FREEC (#8794), corner (#8886), CVXPY (#8662), cytosim (#8368), dill (#8885), Dsuite (#8713), GDCHART (#8679), gifsicle (#8664), guenomu (#8677), JsonCpp (#8841), libxml++ (#8896), LOHHLA (#7227), Longshot (#8830), MDBM (#8850), nglview (#8860), ownCloud (#6804), ptemcee (#8884), pubtcrs (#7500), pyiron (#8860), qpth (#8665), QtKeychain (#6804), rgdal (#8826), smallgenomeutilities (#8507), umis (#8812)
- 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
andCrayPGI
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 whenucx-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
insetup.py
, always usedistutils.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)
- escape ‘
- other changes:
- deprecate toolchains older than
gompi/2016a
andfoss/2016a
(#2951)
- deprecate toolchains older than
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:
easyconfigs
added example easyconfig files for 36 new software packages:
- ArrayFire (#8461), BRAKER (#8437), bwidget (#8477), Catch2 (#8703), core-counter (#8749), CubeGUI (#6328), CubeLib (#6328), CubeWriter (#6328), dagitty (#8606), enaBrowserTool (#8795), GEMMA (#8270), GeneMark-ET (#8437), GenomeThreader (#8437), ieeg-cli (#8793, #8811), Judy (#8543), Julia (#8578), libaio (#8543), libtirpc (#8792), magick (#8545), MSM (#8556), MSPC (#8531), mygene (#8809), OpenMolcas (#7699), PhiPack (#8750), plc (#8796), plotly.py (#8756), pymemcache (#8663), PySCF (#8736), qcint (#8736), Qiskit (#7592), QuaZIP (#8672), re2c (#8543), SeqAn3 (#8651), snippy (#8635), spaln (#8437), V8 (#8676)
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:
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:
- Arb (#8137), AtomPAW (#8506), ciftify (#8457), cysignals (#8459), deal.II (#8440), FastQTL (#8449), FLINT (#8137), gdbgui (#8488), gearshifft (#8482), jbigkit (#8442), lavaan (#8539), libRmath (#8449), OR-Tools (#8364, #8523), p4est (#8440), ppl (#8459), pplpy (#8459), PRISMS-PF (#8440), PyAPS3 (#8398), pyEGA3 (#8418), ReFrame (#8481), S4 (#8487), SALMON (#8478), TM-align (#8510), UnZip (#8474), XTandem (#8517)
- 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:
- 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
andcffi
must come beforecryptography
) (#8495) - suppress installation of
libbfd
andlibopcode
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
- add support for specifying container configuration via
- enhance (experimental) support for generating Singularity container recipes/images (#2884, #2900, #2902, #2903, #2907, #2909, #2910, #2913, #2915)
- 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)
- stick to vsc-base < 2.9.0 in bootstrap script to avoid requiring ‘
easyblocks
- new software-specific easyblock for ELPA (#1621)
- minor enhancements, including:
- various bug fixes, including:
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:
- other changes:
EasyBuild v3.9.1 (May 20th 2019)¶
bugfix/update release
framework
- various enhancements, including:
- add function to determine whether specified easyblock is generic or not (#2838)
- add support to
apply_regex_substitutions
function to skip creation of backup (#2844) - add support for
%(pymajver)s
(& co) (#2850) - add support for ‘
fix_python_shebang_for
’ and ‘fix_perl_shebang_for
’ easyconfig parameters (#2878) - add
multi_deps
information to generated module, help and whatis sections (#2882) - add support for ‘
eb --missing
’ (’eb -M
’) (#2883)
- 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
orFalse
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)
- only call ‘
- other changes:
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
andruntest
(#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
) inPythonPackage
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
inPythonBundle
, 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 genericBundle
easyblock (#1711) - avoid that
--no-build-isolation
option is specified multiple times inPythonPackage
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)
- fix Python classifiers in
easyconfigs
- added easyconfigs for new toolchains:
- added example easyconfig files for 52 new software packages:
- ADDA (#8207), AMD-LibM (#7164), AMD-RNG (#7165), AMD-SecureRNG (#7165), ARGoS (#8039, #8104), ARWEN (#8213), Canvas (#7716), cdsapi (#7970), charmm (#8202), emcee (#7989), FlexiDot (#8228, #8275), FreeImage (#8039), Hello (#7704), HLAminer (8094), hypothesis (#8307), imgaug (#8229), INTEGRATE (#8193, #8304), INTEGRATE-Neo (#8094), IRkernel (#8050, #8099), JiTCODE (#7148, #8327), libFLAME (#7163), libpsml (#5859), LibSoup (#8116), libutempter (#6426), LS-PrePost (#8070), LUSCUS (#7191, #8105, #8285), memory-profiler (#8255), metaWRAP (#7896), Net-core (#7716), netMHC (#8094), Nextflow (#8195), nvtop (#8024), openpyxl (#8121), py-cpuinfo (#8245), pyFFTW (#8198), PyQtGraph (#7525, #8253), R-tesseract (#7933), RBFOpt (#8178), rnaQUAST (#8040), RStan (#7996), scikit-multilearn (#8142), simpy (#8177, #8250), SMARTdenovo (#7630), socat (#8305), SymEngine (#7148, #8327), unixODBC (#8074), VAtools (#7938), VirtualGL (#8008), WebKitGTK+ (#8118, #8241), xmlf90 (#5858), YAPS (#7976), zingeR (#7264)
- 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:
- 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
’ inCompiler._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
totest_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
toFFTW_MAP_CLASS
, otherwiseFFTW_STATIC_LIBS_MT
are incorrectly defined (#2822) - sort available version list when selecting/generating easyconfig (#2732)
- fix argument name in
- other changes:
- use
assertEqual
rather thanassertEquals
(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)
- use
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
andCMakeMake
generic easyblocks to allow changingconfigure_cmd
,build_cmd
andinstall_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
andSCons
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 + makesanity_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 inlib/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
inPythonPackage.set_pylibdirs()
, which is important when installing Python packages for multiple Python versions viamulti_deps
(#1671) - fix custom definition of
load_module
method in LAPACK module (#1675)
- create symlinks to
- other changes:
easyconfigs
- added easyconfigs for new toolchains:
intel/2019.02
(#7598),intel/2019.03
(#7846) - added example easyconfig files for 68 new software packages:
- ACT (#7928), aiohttp (#7728), at-spi2-atk and at-spi2-core (#7658), Bader (#7804), barrnap (#7738), BCEL (#7937), biscuit (#5868), bitarray (#7772), BlobTools (#7565, #7583), bmtagger (#7890), bsddb3 (#7642), CheckM (#7712), Cheetah (#7952), CONCOCT (#7891), cyvcf2 (#8031), DAS_Tool (#7741), ExaBayes (#7801), FastANI (#7992), fastp (#7693), Flask (#7734), giflib (#7663), Giza (#7843), glew (#7685), gpustat (#8025), GRASS (#7489), GTDB-Tk (#7995), HPCX (#7725), IntelPython (#7920), KNIME (#7554), KronaTools (#7721), KyotoCabinet (#7955), Leptonica (#7932), libepoxy (#7655), libpsl (#7666), MAGMA (#7829), MATLAB-Engine (#7758), MaxBin (#7767), MetaBAT (#7746, #7931), MinPath (#7763), ncdu (#7505), NGSadmix (#7524), NIMBLE (#7564), PCAngsd (#7727), pizzly (#7724), Ploticus (#7545), pocl (#7681), POT (#8011), ProjectQ (#7576), pullseq (#7740), pyBigWig (#7600), Pyke3 (#8034), PyRETIS (#8041), RDKit (#7973), RNAIndel (#8009), scikit-optimize (#7613), SciPy-bundle (#7922), sep (#8032), slidingwindow (#7909), SPLASH (#7843), SqueezeMeta (#7771), SRPRISM (#7890), taxator-tk (#7894), TensorRT (#7584), tesseract (#7932), Transrate (#5108), VCF-kit (#7786, #7882), VV (#7297)
- 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)
- add various extensions to R 3.5.1 easyconfigs:
- 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
fromlinker_bin_path_flag
incuda_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 usingdummy
toolchain with proper ncurses dependency (#7834) - use
PythonBundle
forsnakemake-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://
overftp://
for source_urls in recent GROMACS easyconfigs (#7948) - rename arrow to Arrow for old easyconfig (#8007)
- avoid use of
EasyBuild v3.8.1 (January 29th 2019)¶
bugfix/update release
framework
- various minor enhancements, including:
- various bug fixes, including:
- add timestamp to reprod dir while in tmp space (#2705)
- avoid ‘
+
’ in directory name forg++
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:
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)
- check current
- other changes
- cleanup in Perl and PerlModule easyblocks (#1603)
easyconfigs
- added easyconfigs for new toolchains
foss/2019a
(#7371),intel/2019a
(#7372) andiomkl/2019.01
(#7375) - added example easyconfig files for 43 new software packages:
- Assimulo (#6740), C3D (#7059), CellMix (#7422), CESM-deps (#6654, #6675, #6823), DSA (#7422), DeMixT (#7422), deconf (#7422), DeconICA (#7422), double-conversion (#7307), dxpy (#7079), EPIC (#7422), expect (#7387), Flye (#7430), FMILibrary (#6740), FMRIprep (#7059), FUSE (#7078), GDCM (#7310), HDDM (#7396), ICA-AROMA (#7059), IntaRNA (#7334), imageio (#6738), KWIML (#7308), kWIP (#7444), MagresPython (#7395), medaka (#7426), MINC (#7311), MuSiC (#7422), netMHCIIpan (#7377), NIfTI (#7311), OPERA (#7408), psrecord (#7331), pyfits (#7273), PyFMI (#6740), PyGWAS (#5852), Pylint (#6675), QDD (#7284), RERconverge (#7289), samclip (#7226), SCIPhI (#7419), swarm (#7453), VXL (#7309), wrf-python (#6736), xCell (#7422)
- 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:
- 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:
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 viatoolchainopts
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)
- support use of version ranges in
- 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 insanity_check_paths
(#2649) - change PGI F90 Fortran compiler to pgf90 (#2650)
- use
--set-upstream-to
ininstall-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 infetch_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)
- make
- fixes for Travis CI config:
- 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
andgoolfc
toolchains (#2676) - deprecate
intel
toolchains older thanintel/2016a
(+iccifort
&iimpi
subtoolchains) (#2677) - deprecate ancient
gompi
toolchain versions (#2684) - use ‘
tar xzf
’ (gzip) rather than ‘tar xZf
’ (ancientcompress
) to unpack*.tar.Z
source files (#2686) - flesh out ‘
set_parallel
’ method to it can be called separately (#2687)
- always skip symlinks in
easyblocks
- new generic easyblocks:
- 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 usingSCons
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)
- add
- 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
- pass
- 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)
- make FDTD_Solutions easyblock do the install by copying files instead of ‘
- 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:
- 4ti2 (#7040), ARPACK++ (#6750), CellRanger (#7242), CharLS (#6762) cscope (#7057), ctags (#7057), datamash (#6693), dcm2niix (#6762), DCMTK (#6761), deepdiff (#7109), Drake (#7182), fast5 (#7250), gap (#7040), Gerris (#7211), GPAW-setups (#6984), iCount (#7080), ipyparallel (#6797), Kratos (#7149), LCov (#7160), libvdwxc (#6984), libwebp (#7065), lrslib (#7040), MuPeXI (#6991), netMHCpan (#6991), Normaliz (#7040), OpenColorIO (#7146), OpenJPEG (#7216), PHLAT (#7036), poppler (#7069), RECON (#7042), RepeatMasker (#7281), TreeMix (#7133), unrar (#7117), utf8proc (#7083), VSEARCH (#7153), XMDS2 (#7121)
- 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)
- fix installation of scikit-image 0.13.x by including missing required
- 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 thanintel/2016a
(#7231) - deprecate easyconfigs for
goolf(c)
+ correspondinggompi(c)
subtoolchains (#7243)
- update
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)
- generate
- 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 incopy_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 indump
method (#2619) - making CUDA capability detection more robust (#2621)
- stop relying on ‘
- 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
inConfigureMake
(#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)
- support bypassing use of system type obtained with recent
- 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 inConfigureMake
easyblock (#1532) - use short module name when creating module wrapper in
ModuleRC
generic easyblock (#1535) - use
DOT_MODULERC
constant inModuleRC
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 thanself.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)
- fix checking for downloaded dependencies for stand-alone installations in
- other changes:
- cleanup Tarball easyblock by using
copy_dir
function (#1541)
- cleanup Tarball easyblock by using
easyconfigs
- added easyconfigs for new toolchain
foss/2018.08
with GCC/8.2.0 (#6992) - added example easyconfig files for 26 new software packages:
- ARCH (#6939), fbm (#6948), GenomeTester4 (#6970), GlobusConnectPersonal (#6974), MMseqs2 (#6964), NAG (#5772), NAGfor (#5772), NSPR (#7005), NSS (#7005), NeuroKit (#6947), novoalign (#6944), OptiType (#6924), OrthoFinder (#6964), pandas-datareader (#6938), pFUnit (#6949), PMIx (#6930), PSolver (#6888), PyDatastream (#6951), PyFR (#6846), Pyomo (#6910), Quandl (#6950), RTG-Tools (#6862), seq2HLA (#6969), suds (#6951), UCX (#6931), XMLSec (#6929)
- 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:
- 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 forNet::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)
- inhibit
- 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) whenurllib2
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)
- equivalent with
- 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 toModuleGenerator
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:
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:
- 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
inIntelBase
+ 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
andlib64
subdirectories (#1479) - use short build dir for Trilinos to dance around “
Argument list too long
” problem + link withlibmetis.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)
- drop useless definition of
- other changes:
easyconfigs
- added easyconfigs for new toolchains:
fosscuda/2017b
(#6706),intelcuda/#2017b
(#6709),iomkl/2018b
(#6661) - added example easyconfig files for 49 new software packages:
- alleleCount (#6676), BCALM (#6796), BDBag (#6672), BFC (#6647), Bio-DB-HTS (#6854), bioawk (#6865), biomart-perl (#6745), BLIS (#6614), Boost.Python (#6763), BWISE (#6802), CapnProto (#6542), CaVEMan (#6708), CCL (#5802), cDNA_Cupcake (#6787), cget (#6780), coevol (#6589, #6642), Delly (#6735), earthengine-api (#6556), fineRADstructure (#6586), GIMIC (#6575), GitPython (#6850), HiC-Pro (#5873), Inelastica (#6831), JAXFrontCE (#6837), jq (#6632), KAT (#6808), KMC (#6553), Kraken2 (#6569), Lighter (#6553), Mash (#6542), MetaPhlAn2 (#6600), Minimac4 (#6781), mordecai (#6670), NCCL (#5802), NxTrim (#6646), parasail (#6601), PheWAS (#6030), Pilon (#6553), python-parasail (#6601), SearchGUI (#6637), shovill (#6553), SKESA (#6553), snakemake (#6851), strelka (#6742), SWIPE (#6795), ToFu (#6322), tqdm (#6721), TRUST (#6601), VEP (#6854)
- 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 towish8.6
in recent Tk easyconfigs (#6870) - add
libXp
andprintproto
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)
- define ‘
- 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 letBITBUCKET*
templates use it (#2525)
- add support for including environment variable that is resolved at “module load time” in user module path (#2395)
- various bug fixes, including:
- take into account
--filter-deps
when re-loading build dependencies inextensions_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)
- take into account
- other changes:
easyblocks
- new software-specific easyblock for OpenCV (#1444)
- minor enhancements, including:
- use
$CPATH
/$LD_LIBRARY_PATH
for CMake’sfind_path
/find_library
functions inCMakeMake
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
’ toFalse
(#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)
- use
- various bug fixes, including:
- other changes:
- move flake8 configuration to
setup.cfg
and make HoundCI aware of it (#1430)
- move flake8 configuration to
easyconfigs
- added easyconfigs for new toolchains:
foss/2018b
(#6424),fosscuda/2018b
(#6555) andintel/2018b
(#6409) - added example easyconfig files for 28 new software packages:
- CUnit (#6469), eggnog-mapper (#6513), FANN (#6468), FTGL (#6421), FreeFem++ (#5918), fastStructure (#6448), fastq-tools (#5396), fullrmc (#6422), GDGraph (#6529), heaptrack (#6450), libgpuarray (#5429), lz4 (#6449), MAJIQ (#5983), makedepf90 (#6504), nanopolish (#6464), opencv_contrib (#6441), PRC (#6477), Pillow-SIMD (#6152), Pytorch (#6152), poretools (#6467), pystran (#6395), R-keras (#6530), Scoary (#6521), Scrappie (#6469), torchvision (#6152), WISExome (#6524), WannierTools (#6539), zstd (#6449, #6452)
- 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:
- minor changes, including:
- 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)
- add support for enabling fallback in sanity check to consider
- various bug fixes, including:
- make
--inject-checksums
always re-ordersource_urls
/sources
/patches
/checksums
(#2487) - fix git remote url in
CONTRIBUTING.md
(#2490) - make
flake8
happy ineasyblock.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 viakeyrings.alt
(#2505) - prepend location for temporary module file to
$MODULEPATH
with high priority + mark it as default inload_fake_module
method (#2506)
- make
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
- disabled by default, can be enabled using “
- add support to enable integration of pscom in psmpi easyblock (#1397)
- set
$CMAKE_*_PATH
whenCMake
is loaded inPythonPackage
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)
- add support for detecting auto-downloaded dependencies in
- 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
andmake
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) andgiolfc/2017b
(#5799) - added example easyconfig files for 24 new software packages:
- BAGEL (#6332), Bottleneck (#6334), cisTEM (#6370), cftime (#6337), dotNET-Core-Runtime (#6345), ecCodes (#6235), feh (#6300), Graphene (#5043), gffread (#6306), HOME (#6227), HiCExplorer (#6342), ICU (#6371), Imlib2 (#6300), KmerGenie (#5929), libgeotiff (#6262), NetPIPE (#6062), Pandoc (#6247), Pisces (#6347), Proteinortho (#6333), pyshp (#6364), SIMPLE (#6019), STIR (#6349), SimpleElastix (#6114), wxWidgets (#6370)
- 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)
- add
- 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)
- consistently specify ‘
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)- see documentation at http://easybuild.readthedocs.io/en/latest/Containers.html
- 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
tocopy_file
incopy_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)
- loosen commit message requirements for
- 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:
- 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
andmodule_depends_on
easyconfig parameter (#2391) - fix compatibility with Modules v4.1.x (#2470)
- add support to
run_cmd
to enable streaming output (#2476)
- avoid that ‘
- 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 forpypi_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)
- enhance
- 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)
- fix linking to FFTW for Doris: should be
easyconfig
- added easyconfigs for new toolchain golf/2018a (#6080)
- added example easyconfig files for 39 new software packages:
- ARAGORN (#6138, #6219), amask (#6105), BamBam (#5490), Bandage (#6053), bcgTree (#6057), biobambam2 (#6040), CODEX2 (#5972), coverage (#5964), DANPOS2 (#5870), EasyQC (#6175), elastix (#6074), FRANz (#6035), Filtlong (#6050), FriBidi (#6181), Gblocks (#6057), Grace (#6036), LMfit (#6119), libmaus2 (#6040), MathGL (#6033), MiGEC (#6047), MiXCR (#6045), Miniconda3 (#6075), Multiwfn (#5403), mosdepth (#6169), Nim (#6167), Porechop (#6051), propy (#6091), Roary (#6056), Rtree (#6222), SALib (#6145), SMRT-Link (#6218), SimpleITK (#6172), spectral.methods (#6104), supernova (#6193), TEToolkit (#5912), tbl2asn (#6139), udocker (#5770), vartools (#6102), XCfun (#5975)
- 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)
- use gettext 0.19.8.1 on top of libxml2 2.9.7 as dep for git built with
- various bug fixes, including:
- fix
moduleclass
& add customsanity_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
insanity_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)
- fix
EasyBuild v3.5.3 (March 7th 2018)¶
bugfix/update release
framework
- various enhancements, including:
- various bug fixes, including:
easyblocks
- minor enhancements, including:
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:
- various bug fixes, including:
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 toPythonPackage
easyblock (#1366) - add support for ‘
default_component_specs
’ easyconfig parameter inBundle
easyblock (#1369)
- make GROMACS easyblock aware of building for KNL via
- 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:
- AMPL-MP (#5800), AmberTools (#5632), bcolz (#5864), detonate (#5709), dropEst (#5734), EvidentialGene (#5627), faceswap (#5825), fineSTRUCTURE (#5663), Gradle (#5828), gbs2ploidy (#5877), HIPS (#5725), Ipopt (#5800), libMemcached (#5804), MEGAHIT (#5748), Mmg (#5807), methylpy (#5874), pstoedit (#5884), python-igraph (#5905), RNAcode (#5854), Seq-Gen (#5695), Stata (#5102), scikit-allel (#5864), TetGen (#5681), zarr (#5864)
- 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
andtidyverse
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
andstatistics
extensions to Octave 4.2.1 easyconfigs (#5798) - switch to using TensorFlow as backend for recent versions of Keras (#5821)
- add
- 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 compilingceos.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)
- using the correct binutils in jemalloc 5.0.1 easyconfig using
EasyBuild v3.5.1 (January 16th 2018)¶
bugfix/update release
framework
- various enhancements, including:
- various bug fixes, including:
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 + deprecateuse_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
inRPATH
locations for DOLFIN (#1338) - fix sanity check for shared libraries in Trilinos easyblock (#1339)
- make RubyGem easyblock use
easyconfigs
- added easyconfigs for
foss/2018a
andintel/2018a
common toolchains (#5577), (#5578) - added example easyconfig files for 26 new software packages:
- BeautifulSoup (#5601), Calendrical (#5588), ChimPipe (#5560), crb-blast (#5124)), dammit (#5125), deepTools (#5536), FastQ_Screen (#5404), FoX (#5496), GffCompare (#5581), GlimmerHMM (#5559), LocARNA (#5548), MapSplice (#5566), MariaDB-connector-c (#5557), NextGenMap (#5430), nd2reader (#5545), PIMS (#5545), Pysolar (#5585), phono3py (#5551), preseq (#5569), proovread (#5513), QUAST (#5610), RNA-SeQC (#5589), RNAclust (#5607), Ragout (#5608), SOAPfuse (#5417), TransDecoder (#5125)
- 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 deprecateduse_easy_install
anduse_setup_py_develop
(#5625)
- include
- 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 withdiveRsity
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)
- documentation available at http://easybuild.readthedocs.io/en/latest/Hooks.html
- various enhancements, including:
- add support for foss-like toolchain with Spectrum MPI:
gsolf
(#2329) - add support for
--preview-pr
(#2331, #2337, #2348) - flesh out
find_extension
function, hoist dict with extract commands into a constant (#2336) - add support for using
self.start_dir
rather than usingself.cfg['start_dir']
(#2339) - add support for ‘
exts_default_options
’ easyconfig parameter (#2345, #2346) - allow use of ‘
start_dir
’ easyconfig parameter in extensions (#2353)
- add support for foss-like toolchain with Spectrum MPI:
- 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)
- fix typo in ‘
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, addblockMesh
&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)
- remove
- 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)
- avoid changing
easyconfigs
- added example easyconfig files for 39 new software packages:
- AmberMini (#5476), arrow (#5416), bat (#5416), CIRCexplorer (#5356), CIRCexplorer2 (#5470), CIRI (#5358), FALCON (#5265), FastaIndex (#5465), find_circ (#5348), future (#5236), GapCloser (#5465), glibc (#5428), GRNBoost (#5373), HDFView (#5391), Horovod (#5239), HPDBSCAN (#5371), Hyperopt (#5455), IntelClusterChecker (#4970), ITK (#5434), LAST (#5465), MDTraj (#5317), Meson (#5228), mkl-dnn (#5319, #5362), Ninja (#5228), OpenKIM-API (#5479), ParmEd (#5476), PCRaster (#5386), piSvM (#5308), piSvM-JSC (#5316), PTESFinder (#5359), pybedtools (#5347), pymbar (#5476), pyScaf (#5465), QIIME2 (#5355), QTLtools (#5361), Redundans (#5465), Rmath (#5361), sbt (#5373), SNAP (#5465)
- 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
fromderive_alt_pypi_url
(#2319)
- improve trace output for executed commands + drop requirement for
- 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)
- also check for use of
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)
- run ‘
- 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 thanos.remove
in genericIntelBase
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)
- allow that ‘
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)
- add
- 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 tolibibverbs-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
- various enhancements, including:
- add support for backing up modules via
--backup-modules
(#2134)- enabled automatically with
--module-only
and--skip
- see also http://easybuild.readthedocs.io/en/latest/Backup_modules.html
- enabled automatically with
- add support for
--search-paths
to extend list of locations considered by--search
/-S
(#2255) - include
userInGroup
check in Lua modules when installation is group-restricted (#2274) - add experimental support for ‘
eb --trace
’ (#2285) - add support for ‘
eb --inject-checksums
’ (#2286, #2292, #2293) - add support for
append_paths
in module generator (#2294)
- add support for backing up modules via
- various bug fixes, including:
- strip provided GitHub token of spaces in
--install-github-token
(#2270) - remove ‘
provides
’ line fromsetup.py
(#2275) - pass down stdin in ‘
import
’ check for extensions during sanity check (#2276) - make sure location to ‘eb’ installed during stage 1 is included in
$PATH
during stage 2 of bootstrap procedure (#2281) - make resolve_path robust against
None
path being provided (#2282) - ensure clean error message on easyconfig file parse failure (#2290)
- fix regex to avoid sucking up additional lines prior to module file path in
modulefile_path
(#2291) - fix error message when
--use-ccache
is used butccache
is not available in$PATH
(#2295)
- strip provided GitHub token of spaces in
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
whenddi_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 fromsetup.py
(#1217) - fixed wrong use of
build_type
inself.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)
- use
easyconfigs
- added easyconfigs for
foss/2017b
andintel/2017b
common toolchains (#4768), (#4618) - added new easyconfigs for existing toolchains:
iomkl/2017b
(#5097)
- added example easyconfig files for 31 new software packages:
- BAMM (#4650), BamM (#4650), bcl2fastq2 (#4902), CGNS (#5078), CLAPACK (#5096), CLISP (#4926, #4986), cadaver (#4873), destiny (#5009), GroopM (#4650), Lucene-Geo-Gazetteer (#5064), libffcall (#4850), libsigsegv (#4840), MERCKX (#5056), minimap2 (#4991), ncompress (#4852), OpenNLP (#5059, #5061), OpenRefine (#5058), PHAST (#5096), PYTHIA (#5083), ParallelIO (#5071), PnetCDF (#5071), plotly (#5010), QML (#5101), Quorum (#5095), Rcorrector (#5095), SCnorm (#5008), SOAPdenovo-Trans (#5095), Shannon (#5095), Tika (#5063), UNAFold (#4997), VERSE (#4843)
- 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 ofmodextravars
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:
- various bug fixes, including:
- resolve symlinks to location of ‘
eb
’ inget_paths_for
(#2248) - fall back to checking location relative to ‘
eb
’ location infind_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)
- resolve symlinks to location of ‘
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)
- enhance HDF5 easyblock: define
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
andStatistics::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)
- add
- various bug fixes, including:
EasyBuild v3.3.0 (June 26th 2017)¶
feature release
framework
- various enhancements, including:
- clean up easyconfigs that are copied for inclusion in pull request (#2197, #2227)
- use devel logging where relevant in
easybuild.tools.toolchain
(#2198) - check exit code for executed
module
commands (#2200) - also copy patches to installation directory & easyconfigs archive along with easyconfig file (#2202, #2241)
- add support for SHA256 checksums (#2215)
- also auto-detect whether provided checksum is MD5 or SHA256 based on length (if not checksum type is specified)
- add support for
--enforce-checksums
, to require availability of checksums for sources/patches - see http://easybuild.readthedocs.io/en/latest/Writing_easyconfig_files.html#source-files-patches-and-checksums
- add support for renaming sources on download (#2223)
- also involves deprecating use of 2-tuple elements in list of sources, see http://easybuild.readthedocs.io/en/latest/Deprecated-functionality.html#depr-sources-2-element-tuple
- add support for
--detect-loaded-modules
(#2228) - give extensions access to
module_generator
of parent (#2229) - pass down additional arguments to
copy_dir
down toshutil.copytree
(#2230) - avoid reloading already loaded modules that extend
$MODULEPATH
(#2232)
- 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
incopy_file
(#2239) - report full error and traceback on unhandled exception in test report (#2240)
- fix
--set-default-module
flag (#2243)
- make sure test account & accompanying token is used in tests for
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 fromeasybuild.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:
easyconfigs
- enable automatic style checks in easyconfig tests (#2506)
- added example easyconfig files for 28 new software packages:
- ada (#4594), Aspera-CLI (#4635), AUGUSTUS (#4624), ada (#4594), Bio-SamTools (#4637), Bpipe (#4590), BUSCO (#4624), CNVnator (#4649), davix (#4755), EricScript (#4594), FUNWAVE-TVD (#4743), gmpy2 (#4609), gSOAP (#4755), libsndfile (#4628), lpsolve (#4264), LUMPY (#4682), MaSuRCA (#4706), modred (#4729), MXNet (#4765), NRGLjubljana (#4651), OrfM (#4703), Perl4-CoreLibs (#4670), prodigal (#4468), pydlpoly (#4756), SeqAn (#4603), sharutils (#4745), Spyder (#4627), Tkinter (#4620), VariantMetaCaller (#4632)
- added new easyconfigs for existing toolchains:
gimkl/2017a
(#4646)
- 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 specifyingPREFIX
inbuildopts
(#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)
- use ‘
- 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.orgsource_urls
, or useGNU_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)
- fix typo in statsmodels source url (
EasyBuild v3.2.1 (May 12th 2017)¶
bugfix/update release
framework
- various enhancements, including:
- various bug fixes, including:
easyblocks
- added easyblock for Siesta (#1105)
- minor enhancements, including:
easyconfigs
- added example easyconfig files for 12 new software packages:
- added new easyconfigs for existing toolchains:
- goolfc 2017.01 (#4577)
- 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:
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 infiletools
(#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 tofiletools
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)
- add support for marking installed module file as new default version using
- various bug fixes, including:
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)
- update
- various bug fixes, including:
easyconfigs
- added example easyconfig files for 34 new software packages:
- ACTC (#4386), atomate (#4484), BreakDancer (#4455), bx-python (#4486), ClusterShell (#4432), custodian (#4484), DFTB+ (#4398), Doris (#4404), ED2 (#4402), FireWorks (#4484), GETORB (#4414), GapFiller (#4462), IPy (#4450), imbalanced-learn (#4373), ipyrad (#4507), libiconv (#4499), MultiQC (#3564), NLopt (#1750), Node-RED (#4542), PyCUDA (#4523), pymatgen-db (#4484), QuTiP (#4371), ROI_PAC (#4414), Rascaf (#4459), RepastHPC (#4395), rootpy (#4242), SSPACE_Basic (#4461), Sambamba (#4442), Spack (#4431), SpiceyPy (#4406), StaMPS (#4454), samblaster (#4435), VMD (#4391), WRF-Fire (#4403)
- 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:
- various bug fixes, including:
- add missing XZ dep in easyconfig for libunwind 1.1 w/
GCC/4.9.2
, syncsanity_check_paths
across libunwind easyconfigs (#4369) - use ‘
use_fma4
’ rather than deprecated ‘use_fma
’ easyconfig parameter in FFTW easyconfigs usingintel
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
andbackports
namespace blocking inclusion ofnbconvert
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)
- add missing XZ dep in easyconfig for libunwind 1.1 w/
EasyBuild v3.1.2 (March 20th 2017)¶
bugfix/update release
framework
- fix broken packaging support by fixing
run_cmd
bug withshell=False
(#2153) - minor enhancements, including:
- implement
change_dir
function infiletools
module (#2155) - use
checker_state
in trailing whitespace style check + add dedicated test (#2160, #2169) - consider both
pycodestyle
andpep8
Python modules in style checks (#2161) - make bootstrap script aware various modules-related
$EASYBUILD_*
environment variables (#2170)
- implement
- various bug fixes, including:
- interpret statements that extend
$MODULEPATH
inmodpath_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 whenvsc
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 fortweak_one
(#2166) - avoid creating empty modulefile directories when using
modaltsoftname
(#2168) - fix
fftw_libs
for MKL without interface libraries (#2171)
- interpret statements that extend
easyblocks
- add easyblock for QScintilla (#1127)
- minor enhancements, including:
- various bug fixes, including:
- reduce number of environment variables in
icc
andifort
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)
- reduce number of environment variables in
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
- note that this warrants rebuilding FFTW that is a part of
- 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
viaFLAGS_OPT
in SWASH easyconfigs (#4341) - remove
include/GL/wglext.h
from Mesa sanity check (#4354) - rename
S.A.G.E.
toSAGE
, can’t have directories with trailing dot in Windows (#4368)
- correctly set
EasyBuild v3.1.1 (March 7th 2017)¶
bugfix/update release
framework
- minor enhancements, including:
- 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 indet_short_module_name
ifmodaltsoftname
is available (#2138) - fix logic in
make_module_dep
w.r.t. excluding loads for toolchain & toolchain components (#2140) - skip
test_check_style
ifpep8
is not available (#2142)
- ensure that
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 inBundle
easyblock (#1108) - add slib to
$LD_LIBRARY_PATH
for itac (#1112) - consider both
lib
andlib64
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:
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:
- 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 thanftp://
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
andUSER
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, addiimkl
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 againstRuntimeError
fromkeyring
(#2070) - POWER: Fix
--optarch=GENERIC
for GCC (#2073) - fix docstring in toolchain class (#2075)
- skip test cases involving
.yeb
ifPyYAML
is not installed, silence test in options subsuite (#2081) - fix traceback with ‘
eb --check-github
’ ifGitPython
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
indry_run_set_dirs
(#2098) - fix broken error message in
get_toolchain_hierarchy
+ dedicated test case (#2099)
- make
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
inEasyBuildMeta
easyblock (#1093)
- update sanity check for flex 2.6.3, no more
- various bug fixes, including:
- (correctly) define
$ROSETTA3_DB
in Rosetta easyblock (#1092)
- (correctly) define
easyconfigs
- added easyconfigs for
foss/2017a
andintel/2017a
common toolchains (#3968, #3969) - added example easyconfig files for 16 new software packages:
- ack (#3983), cclib (#4065), ConnectomeWorkbench (#3411), GroIMP (#3994), hyperspy (#3991), I-TASSER (#1216), ImageJ (#4023, #4062), libconfig (#4051), libspatialindex (#4002), mahotas (#3990), Minia (#3949), muParser (#4007), NetLogo (#3941), QIIME (#3868), QwtPolar (#4019), Tensorflow (#4084, #4095)
- 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:
- 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 (#1056)
- pass CXXFLAGS and LDFLAGS to Boost bjam (#1064)
- make pip ignore already installed versions of the package being installed (#1066)
- don’t pass empty string as custom installopts for numpy in test_step (#1067)
- make the Rosetta EasyBlock work in –module-only mode (#1073)
easyconfigs
- added example easyconfig files for 13 new software packages:
- added additional easyconfigs for various supported software packages, including:
- Mono 4.6.2.7, PGI 16.10, ROOT 6.08.02
- various enhancements, including:
- various bug fixes, including:
- add X11 develop libs to ncview easyconfig (#3881)
- fix source_urls in pkg-config easyconfigs (#3907)
- install numpy/scipy as .egg to ensure shadowing of numpy/scipy in parent Python installation (#3921)
- fix broken source URL + homepage for Infernal (#3928)
- fix test that verifies dumped easyconfig, take into account that dumped dependencies may include hardcoded dependency (#3932)
- include libGLU as dependency in freeglut easyconfigs with recent Mesa (#3936)
- add patch for FreeSurfer to fix issue with MATLAB 2013 (#3954)
EasyBuild v3.0.1 (November 30th 2016)¶
bugfix release
framework
- important changes
- always use Intel-specific MPI compiler wrappers (
mpiicc
,mpiicpc
,mpiifort
) for toolchains using both Intel compilers and Intel MPI (#2005)
- always use Intel-specific MPI compiler wrappers (
- various small enhancements, including:
- various bug fixes, including:
- fix testing of bootstrap script in Travis config (#2003)
- use correct module syntax in bootstrap script if Lmod is not used (i.e. Tcl) (#2007)
- fix packaging issue with non-Python scripts in easybuild/scripts (#2015)
- fixes issue where RPATH wrapper template script (
rpath_wrapper_template.sh.in
) was not included in the v3.0.0 release
- fixes issue where RPATH wrapper template script (
- make tests more robust against running headless (#2016)
- avoid rewrapping already wrapped compiler/linker command with RPATH wrapper script (#2022)
- fix
log.error
traceback due to ‘raise EasyBuildError
’ involving a ‘%s
’ in error message (#2024) - make sure ‘
modules_tool
’ attribute is also defined for extensions (#2026) - only dump easyconfig with modified deps due to
--minimal-toolchains
to ‘reprod’ subdir of install dir (#2028) - avoid appending ‘
-h'
to sanity check commands specified as a string (#2030) - fix bug in
list_software_rst
: always include version suffix regardless of value (#2032)
easyblocks
- various enhancements, including:
- update SAMtools easyblock for recent versions (#1048)
- various bugfixes, including:
easyconfigs
- added example easyconfig files for 7 new software packages:
- added additional easyconfigs for various supported software packages
- various enhancements, including:
- various bug fixes, including:
EasyBuild v3.0.0 (November 16th 2016)¶
feature release
framework
- backward-incompatible changes:
- make robot always consider subtoolchains, even without
--minimal-toolchains
(but in reverse order) (#1973) - clean up behaviour that was deprecated for EasyBuild v3.0 (#1978)
- change default config to use
Lmod
/Lua
for modules tool/syntax,GC3Pie
as job backend (#1985) - the minimal required version of Lmod was bumped to 5.8 (#1985)
- make robot always consider subtoolchains, even without
- major new features:
- various other small enhancements, including:
- add support for ‘
devel
’ log level (#1815) - make
remove_file
aware of--extended-dry-run
+ add dedicated unit test (#1932) - add support for filtering out setting/updating particular environment variables from generated modules (#1943)
- see
--filter-env-vars
- see
- clean up output of EasyBuild bootstrap script & add version (#1944)
- improved ARM platform/CPU detection (#1953)
- use ‘
0
’ as letter dir for funky software names that don’t start with a letter, e.g.,3to2
(#1954) - make bootstrap script aware of
vsc-install
for offline installation (#1955) - add support for
blas_family()
andlapack_family()
methods inToolchain
instances (#1961) - make
copy_file
dry-run aware (#1963) - reorganise test easyconfigs to match structure in easyconfigs repo (#1970)
- add a toolchain compiler option for enforcing IEEE-754 conformance (#1975)
- support for
intelcuda
compiler toolchain (#1976) - check that each glob pattern matches at least one file
expand_glob_paths
(important for--include-*
) (#1980) - enhance bootstrap to auto-skip stage 0 in case a suitable setuptools is already available (#1946, #1984)
- simplify
GC3Pie
version check (#1987) - include suggestion on how to change configuration w.r.t. modules tool/syntax (#1989)
- add support for ‘
- various bug fixes, including:
- fix test for
find_easybuild_easyconfig
(#1931) - remove existing module file under
--force
/--rebuild
(#1933) - fix combining
--search
and--try-*
(#1937) - fix appending to existing
buildstats
inFileRepository.add_easyconfig
(#1948) - fix handling of iterate easyconfig parameters, restore them during cleanup (#1949)
- fix filtering loads for (hidden) build deps from generated module (#1959)
- handle multi-flag compiler options on all types of options (#1966)
- fix
--list-software
by makingletter_dir_for
function aware of ‘*
’ wildcard name (#1969) - skip dependencies of toolchain marked as external modules when determining module hierarchy (#1977)
- bump page limit in
fetch_latest_commit_sha
, spit out more meaningful error if too many branches were encountered (#1981) - fix CUDA-related issues in
HierarchicalMNS
(#1986)
- fix test for
easyblocks
- backwards incompatible changes:
- new easyblock for installing Anaconda (#950)
- add generic easyblock for Conda installations (#950)
- various enhancements, including:
- enable use of
GCCcore
as toolchain for Clang, fail if no GCC prefix is found (#1002) - also build Boost MPI library in parallel (#1005, #1038)
- enhance g2clib easyblock to allow to install 1.6.0 or higher (#1006)
- update QuantumESPRESSO easyblock to support packaging changes in 6.0 (#1007)
- add support to
Scons
generic easyblock to provide argument to specify installation prefix (#1008) - update
IntelBase
and imkl easyblocks to handle the 2017 versions of compilers/imkl (#1012) - leverage
toolchain.linalg
functionality in ScaLAPACK easyblock, usecopy_file
(#1014) - allow netCDF-C++4 to be used with ESMF (#1019)
- update Advisor easyblock to support latest versions (#1021)
- update CBLAS easyblock to build with
foss
toolchain (#1024) - update Gurobi easyblock to use
copy_file
(#1028) - add support for giving
/lib
preference over/lib64
& co in GCC installation (#1030, #1035) - enable installation of
libiberty
by default for binutils (#1030) - avoid CMake fiddling with the RPATHs injected by EasyBuild via
--rpath
in CMakeMake and METIS easyblocks (#1031, #1034) - simplify scipy sanity check to make it more robust w.r.t. version updates (#1037)
- enable use of
- various bug fixes, including:
- make sure ‘
None
’ doesn’t appear in modules generated with--module-only
(#998) - fix ATLAS easyblock for non-x86 systems (#1003)
- fix ‘
usempi
’ and ‘with_mpi
’ usage to allow for a serial build of Amber 16 (#1013) - add both
lib/python2.7/site-packages/{,wx-3.0-gtk2}
to$PYTHONPATH
for wxPython (#1018) - only hard inject RPATH for
/usr/lib*
directories when building binutils withdummy
toolchain (#1026) - make HDF5 easyblock handle
--filter-deps
correctly (#1027) - update Travis config w.r.t. changes framework config defaults and required Lmod version (#1029)
- be more patient when running Mathematica Q&A installer (#1036)
- make sure ‘
easyconfigs
- backwards incompatible changes:
- archive easyconfigs using old inactive toolchains
- see #3725, #3728, #3729, #3730, #3731, #3732, #3733, #3735, #3736, #3737, #3738
- only taken into account by EasyBuild if
--consider-archived-easyconfigs
is enabled - no easyconfigs available outside of archive for QLogicMPI + 15 toolchains:
ClangGCC
,cgmpich
,cgmpolf
,cgmvapich2
,cgmvolf
,cgompi
,cgoolf
,gmacml
,goalf
,gpsmpi
,gpsolf
,iiqmpi
,intel-para
,ipsmpi
,iqacml
- fix name in PyTables easyconfigs (was ‘pyTables’) (#3785)
- archive easyconfigs using old inactive toolchains
- added example easyconfig files for 32 new software packages:
- 3to2 (#3655), Anaconda2 (#3337), Anaconda3 (#3337), ART (#3724), atools (#3631), awscli (#3645), behave (#3751), Blosc (#3785), bokeh (#3790), Cantera (#3655), Cargo (#3764), dadi v1.7.0, distributed (#3786), ea-utils (#3634), Elk (#3644), FGSL (#3638), gencore_variant_detection (#3337), help2man (#3768), lbzip2 (#3791), Log-Log4perl (#3574), Minimac2 (#3783), mypy (#3694), OBITools (#3573), perl-app-cpanminus (#3337), PGDSpider (#3625), prokka (#3755), Reads2snp (#3609), spglib-python (#3620), SUNDIALS (#3654, #3655), SelEstim (#3626), XMLStarlet (#3797), x265 (#3090)
- added easyconfigs for new ‘
intelcuda
’ toolchain (#3750) - added new easyconfigs for existing toolchains:
- added additional easyconfigs for various supported software packages, including:
- Advisor 2017 update 1, Amber 16, ATLAS 3.10.2, GROMACS 2016, Octave 4.0.3, OpenFOAM 3.0.1, PyTables 3.3.0, QuantumESPRESSO 6.0, Rust v1.12.1
- various other enhancements, including:
- STREAM builds using ~56GiB and ~111GiB (#3670)
- various bug fixes, including:
- fix source spec in VASP easyconfig, ensure static linking with Intel MKL (#3381)
- fix source URL in GCCcore 6.2.0 easyconfig (#3608)
- correct STAMP dependency in i-cisTarget, must be 1.3 (#3613)
- consistently specify to use
-fgnu89-inline
flag in M4 1.4.17 easyconfigs (#3623) - fix source URLs for Cython (#3636)
- add Bison as build dep and M4 as runtime dep for flex 2.6.0 (#3656)
- enable parallel building of flex 2.6.0 (#3630)
- add zlib and bzip2 dependencies to X11 bundle (#3662)
- use ‘
letter_dir_for
’ function rather than just grabbing 1st letter of software name in easyconfigs tests (#3664) - add patch to fix typo in GRIT 2.0.5 (#3675)
- fix typo in patch for WRF 3.8.0 (#3702)
- use
$CC
,$CXX
rather than$I_MPI_CC
,$I_MPI_CXX
in patch for OpenFOAM 4.0 (#3703) - patch FLTK to fix ‘
undefined symbol
’ issue when building Octave (#3704) - include Pillow as a proper dep for scikit-image rather than as extension, since it has deps itself (#3723)
- update Travis config w.r.t. changes framework config defaults and required Lmod version (#3773)
- don’t limit parallellism to 4 in recent GCC easyconfigs (#3776, #3777, #3778)
- include M4 as dependency in flex 2.5.39 easyconfigs + fix consistency issues (#3782)
- consistently apply patch for ncurses 6.0 (#3792)
- eliminate dependency on
mpi-mic-rt
in ifort (#3793) - include Autotools as build dependency in all beagle-lib and MrBayes easyconfigs (#3794)
- make OpenBLAS use the LAPACK version specified in the easyconfig (v0.2.18 & v0.2.19) (#3795)
- include original download URL for ISL source tarball in GCC easyconfigs (#3798)
- disable installing
libiberty
for binutils built with intel toolchain (#3802)
EasyBuild v2.9.0 (September 23rd 2016)¶
feature release
framework
- note: vsc-base 2.5.4 or more recent is now required
- various small enhancements, including:
- change option
--color
choices to auto/always/never (#1701, #1898, #1911) - add support for ‘
hidden
’ easyconfig parameter (#1837) - add support for using
ccache
andf90cache
compiler caching tools (#1844, #1912)- see
--use-ccache
and--use-f90cache
- see
- update Cray metadata for 16.06 CrayPE release (#1851)
- also include patch files in
--new-pr
and--update-pr
(#1852) - handle deleted files in
--new-pr
(#1853) - add support for
--install-latest-eb-release
(#1861) - add support for hiding toolchains, see
--hide-toolchains
and ‘hidden
’ key in ‘toolchain
’ spec (#1871) - add template for GitHub source URL (#1872)
- add support for combining
--new-pr
/--update-pr
and--robot
(#1881) - add support for
--list-software
and--list-installed-software
(#1883, #1910, #1917) - print message on which extension is being installed, incl. progress counter (#1886, #1914)
- add support for
--github-org
to specify GitHub organisation rather than GitHub user (#1894) - add support for running Lmod in debug mode (#1895)
- avoid needless use of deepcopy, speed up support for templating in easyconfigs (#1897)
- convert
all_dependencies
to a property inEasyConfig
class (#1909) - add support for
--mpi-cmd-template
(#1918) - add support for
--disable-mpi-tests
(#1920)
- change option
- various bug fixes, including:
- merge with develop when using
--from-pr
(#1838, #1867) - ensure
--new-pr
doesn’t open empty pull requests (#1846) - better error handling for outdated
GitPython
module in--check-github
(#1847) - fix formatting for generated easyblocks documentation (#1860)
- make sure the robot ignores filtered dependencies when creating toolchain cache (#1862)
- honor
--filter-deps
under--minimal-toolchains
(#1863) - correct format for ‘
param
’ and ‘author
’ tags in docstrings (#1866) - ignore failing bootstrap test in Travis config file (#1870)
- make sure all output of executed command is included in generated temporary log file (#1873, #1874)
- ensure
--show_hidden
is used in the correct location for ‘avail
’ with Lmod (#1875) - make sure
self.path
is passed down in copy method ofEasyConfig
object (#1884) - take into account possible multi-line modloadmsg in
ModuleGeneratorLua
(#1885) - fix extracting
.bz2
source files (#1889) - don’t resolve path to Lmod command (#1892)
- fix skipping of stage 0 in bootstrap script (#1893)
- fix function signature of
log.deprecated
compared tofancylogger.deprecated
(#1896, #1899) - apply patch to Tcl/C environment modules tool for Tcl 8.6 support in Travis config (#1901)
- fix combining
--extended-dry-run
with--from-pr
(#1902) - also template dict keys (#1904)
- don’t pass ‘
--try-*
’ command-line options to EB instance running within job script (#1908) - add workaround for incorrectly passing command line arguments with
--job
(#1915) - fix issues with
--module-only
(#1919, #1924, #1925)- correctly deal with specified start_dir
- do not remove installation directory when build-in-installdir is enabled
- make sure ‘
which
’ function returns path to a file (#1921) - fix
:param:
,:return:
tags in docstrings & add test for it (#1923)
- merge with develop when using
easyblocks
- new easyblocks for 6 software packages that require customized support:
- various enhancements, including:
- extend OpenFoam-Extend sanity check for decomp libraries (#784)
- enhance Java easyblock to support installing Java 6.x (#940)
- make QuantumESPRESSO easyblock aware of multithreaded FFT (#954)
- extend PSI easyblock to use PCMSolver and CheMPS2 (#967)
- make Boost easyblock add definition for
$BOOST_ROOT
to generated module file (#976) - add support to Bundle easyblock to install list of components (#980)
- enhance & clean up libxml2 easyblock to also enable installing without Python bindings (#984)
- update Libint easyblock for Libint 2.1.x (#985)
- update sanity check for OpenFOAM to support OpenFOAM 4.x (#986)
- make easyblocks that run MPI tests aware of ‘
mpi_tests
’ build option (#993)
- various bug fixes, including:
- fix compatibility of OpenFOAM easyblock with
--module-only
(#784) - fix testing of
--module-only
compatibility for OpenFOAM and IMOD easyblocks (#784) - add ‘
include/libxml2
’ to$CPATH
in libxml2 easyblock (#981) - fix compatibility of IntelBase generic easyblock with
--module-only
(#994) - make sure correct config script is used for Tcl/Tk deps of R (#995)
- fix compatibility of OpenFOAM easyblock with
easyconfigs
- added example easyconfig files for 88 new software packages:
- ADMIXTURE (#3359), angsd (#3593), ASHS (#3429), AutoDock (#3465), AutoGrid (#3466), BayeScan (#2748, #3356), BayPass (#3451), Bazel (#3379), Blender (#3553, #3558), bwakit (#3567), BXH_XCEDE_TOOLS (#3410), CastXML (#3403), CHASE (#3304), configparser (#3368, #3424), configurable-http-proxy (#3380), cppcheck (#3508), CRPropa (#779), DicomBrowser (#3432), DMTCP (#3422), entrypoints (#3368, #3424), f90cache (#3570), fastPHASE (#3343), fastQValidator (#3192), FFindex (#1135), FragGeneScan (#1198), gdc-client (#3399), gflags (#3417), glog (#3417), GRIT (#3561), H5hut (#3431), HAPGEN2 (#3344), HEALPix (#779), IMOD (#1187, #3347), IronPython (#607), jhbuild (#3476), jupyterhub (#3380), Keras (#3581), khmer (#1158), LeadIT (#3345, #3599), LevelDB (#3417), libbitmask (#3481), libcpuset (#3481), LMDB (#3417), log4cplus (#1136), MACH (#3346), Mako (#3460), Maq (#3428), MetaGeneAnnotator (#3307), Metal (#3324), Mono (#607), MyMediaLite (#607), nco (#2575), nose-parameterized (#3579), OpenEXR (#3553), OpenImageIO (#3553), path.py (#3368, #3424), PCRE2 (#3325), pftoolsV3 (#3317), PHASE (#3385), PLAST (#3288), PLINKSEQ (#3402), POV-Ray (#3551), ProbABEL (#3108), prompt-toolkit (#3368, #3424), protobuf-python (#3563), PSORTb (#3317), py (#3403, #3482), pygccxml (#3403, #3482), pyGIMLi (#3403, #3482), pyplusplus (#3403, #3482), PyQt5 (#3533), Pyro4 (#3527), pytest (#3403, #3482), QCA (#3595), RDMC (#1137), S.A.G.E. (#3427), SDL2 (#3551), SHORE (#3531), SimVascular (#3555), SortMeRNA (#3326), SUMACLUST (#3316), SUMATRA (#3316), Text-CSV (#3323), Triangle (#3403), VEGAS (#3457), VirSorter (#3307), wcwidth (#3368, #3424), X11 (#3340)
- added new easyconfigs for existing toolchains:
- added additional easyconfigs for various supported software packages, including:
- FFTW 3.3.5, GCC 4.9.4 + 6.2.0, GROMACS 5.1.4, IPython 5.1.0, LLVM 3.9.0, Mesa 12.0.1, OpenCV 3.1.0, OpenFOAM 4.0, OpenMPI 2.0.1, ParaView 5.1.2, PGI 16.7, QuantumESPRESSO 5.4.0, Qt5 5.7.0, R-bundle-Bioconductor 3.3, VTK 7.0.0, Yade 2016.06a
- various enhancements, including:
- adjust PSI4 easyconfigs for updated easyblock (#3312)
- clean up libxml2 easyconfigs according to updated libxml2 easyblock (#3479, #3509)
- significantly speed up verifying of dumped easyconfig by resorting to ‘shallow’ parsing (#3520)
- include sanity checks for all MATIO config files (#3528)
- remove
--with-tcl-config
/--with-tk-config
from R easyconfig, already done in R easyblock (#3580)
- various bug fixes, including:
- disable testing in all ParaView 4.4.0 easyconfigs, required download is too much of a PITA (#3178)
- add SQLite as dep to GDAL 2.1.0 easyconfigs (#3342)
- add zlib/SQLite/LibTIFF as dep to R 3.3.1 easyconfigs (#3342)
- add bzip2 as a dependency of freetype (#3464)
- specify correct MPI target in FDS easyconfigs (#3488)
- add tcsh as OS dep in NAMD easyconfigs (#3491)
- statically link ncurses/libreadline in Lua easyconfig with ‘
dummy
’ toolchain (#3545) - add M4 as dep for flex 2.6.x (#3542, #3550)
- add bzip2 and libxcb dependencies to FFmpeg 3.x easyconfigs (#3548)
- make sure & check that Graphviz does not install Tcl bindings in Tcl install prefix (#3556)
- add missing patches for extensions in Python 3.x easyconfigs (#3557)
- add missing XZ dependency to libxml2 2.9.4 easyconfigs, change gettext dep of XZ to build-only dep (#3568)
- enable running of tests for HPCG (#3578)
- fix
buildopts
in tabix easyconfigs (#3584)
EasyBuild v2.8.2 (July 13th 2016)¶
bugfix release
framework
- various small enhancements, including:
- add support for rst output for
--list-*
and--avail-*
(#1339) - add support for ‘
eb --check-conflicts
’ (#1747, #1807, #1833) - ensure nice error message when non-existing path is passed to
apply_regex_substitutions
(#1788) - add check for module output, empty stdout is a sign of trouble with Lmod (#1793)
- add multi-threaded FFT to toolchain (#1802)
- avoid special characters like ‘[’, ‘]’ in path to temporary directory (#1808)
- add support for
--zip-logs
(#1820) - add support for
--extra-modules
(#1821) - add type conversion for ‘checksums’ and ‘patches’ parameter in .yeb easyconfigs (#1826, #1840)
- add support for filtering tests by name (#1828)
- add support for
--avail-toolchain-opts
(#1830, #1839) - use absolute path for robot and easyconfig files (#1834)
- add backup URL for tarballs hosted on SourceForge in
install_eb_dep.sh
script (#1843)
- add support for rst output for
- various bug fixes, including:
- fix installation of Lua in
install_eb_dep.sh
script (#1789) - fix OpenMP flag for Cray compiler wrappers (#1794)
- only reset
$MODULEPATH
before loading a module if environment was reset (#1795) - include vsc-install as dependency in
setup.py
(#1805) - cache
$PATH
&$PYTHONPATH
in test setUp, restore them in tests where ‘eb
’ is used (#1806) - don’t reset
$MODULEPATH
in stage 2 of bootstrap script, support forced installation during stage 2 (#1810) - fix issue with templates defined by deps being required while still parsing deps (#1812)
- skip unneeded unuse/use commands on tail of
$MODULEPATH
incheck_module_path
(#1813) - fix auto-convert for all
*dependencies
params in.yeb
easyconfigs, ensure version is a string (#1818) - fix
keyring
version in Travis config (#1819) - fix dumping of
.yeb
easyconfig files in easyconfigs archive (#1822) - fix format of supported easyconfig templates in help output (#1825)
- stick to
pydot
1.1.0 for Python 2.6 in Travis config (#1827)
- fix installation of Lua in
easyblocks
- new easyblocks for 5 software packages that require customized support:
- various enhancements, including:
- add support for building & installing old GROMACS versions (#569, #960)
- add support for building Boost with Cray toolchain (#849)
- libxsmm support for CP2K (#942)
- pick up specified components for imkl (#943)
- add support for building GROMACS with double precision (#946, #960)
- add support for building GROMACS with CUDA support and using dynamic libraries using
Cray
toolchains (#951, #960) - also install vsc-install in
EasyBuildMeta
easyblock, if tarball is provided (#957) - enhance PSI easyblock to support PSI4 1.0 (#965)
- various bug fixes, including:
- also install scripts with MRtrix 0.3.14 (#941)
- enhance Qt easyblock to support Qt3 (#944)
- create ‘
release
’ symlink in MRtrix install dir (#947) - fix
make_installdir
in Inspector & VTune easyblocks (#952) - make
Binary
andMakeCp
easyblocks aware of ‘keepsymlinks
’ (#959) - correctly define
$G4*
environment variables in Geant4 easyblock (#961, #970) - prepend tmp install path to
$PYTHONPATH
in numpy test step, move to build dir when removing ‘numpy
’ subdir (#963) - correct full path to ALADIN config file & patch it to use right Fortran compiler flags (#964)
- ensure correct compiler command/flags are used for SAMtools (#966)
easyconfigs
- added example easyconfig files for 54 new software packages:
- Amber (#3200), Bullet (#3175), CONTRAlign (#690), Cluster-Buster (#3191), damageproto (#3222, #3308), DCA++ (#3219), EIGENSOFT (#3147, #3163), Extrae (#507), fdstools (#3237), ffnet (#3273), GP2C (#3257), Gurobi (#3239), gc (#3202, #3261), gputools (#546), IMa2p (#3300), IOzone (#3253), i-cisTarget (#3191, #3194), icmake (#3243), io_lib (#3255), Kent_tools (#3191), libcmaes (#3256), libpsortb (#3259), libxsmm (#3099), MEGACC (#3263), MM-align (#1428), MOSAIK (#880), MView (#1345), MySQL-python (#3172, #3189), magma (#3219), mrFAST (#862), mrsFAST (#862), mysqlclient (#3172, #3232), NTL (#3183), PARI-GP (#3257), Paraver (#508), psutil (#3171, #3231), PSI4 (#3293), Qwt (#3157), RMBlast (#3142), STAMP (#3191), Seqmagick (#3264), splitRef (#946), TAU (#509), TRF (#3141), TVB (#3053, #3247, #3251), TVB-deps (#3053, #3247, #3251), tvb-data (#3053, #3247, #3251), tvb-framework (#3053, #3247, #3251), tvb-library (#3053, #3247, #3251), VampirTrace (#509), Voro++ (#3174), wheel (#3235), wxPropertyGrid (#508), xonsh (#3159)
- added easyconfigs for update of common toolchains:
foss/2016b
(#3271),intel/2016b
(#3270) - added new easyconfigs for existing toolchains:
CrayGNU/2016.03
&CrayGNU/2016.04
(#3291),foss/2016.06
(#3184),intel/2016.03-GCC-5.4
(#3185) - added additional easyconfigs for various supported software packages, including:
- Boost 1.61.0, GCC 5.4.0, GROMACS 3.3.3, HDF5 1.8.17, netCDF 4.4.1, numpy 1.11.0, Perl 5.24.0, PETSc 3.7.2, Python 2.7.12, Python 3.5.2, Qt 3.3.8, R 3.3.1
- various enhancements, including:
- use
check_conflicts
function in easyconfigs tests (#2981) - also include vsc-install in list of sources for recent EasyBuild easyconfigs, to support offline installation (#3203)
- enable building of
libmysqld.*
in MariaDB easyconfigs (#3230) - add ALDEx2, phyloseq to bundles for Bioconductor 3.2 (#3211, #3241)
- add biom, geepack, lubridate, pim to list of R 3.2.3 extensions (#3186, #3211, #3275)
- use
- various bug fixes, including:
- add patch for Boost 1.60.0 to fix bug resulting in
TypeError
(#3162) - add fftw dependency to CP2K 2.6.0 easyconfigs using CrayGNU (#3176)
- fix location of
libelf.h
, only (also) installed asinclude/libelf.h
is there’s no/usr/include/libelf.h
(#3201) - fix software name for Guile & GnuTLS (was ‘guile’ & ‘gnutls’) (#3207)
- added missing space in Geant4 configopts to specify
-DGEANT4_INSTALL_DATA
(#3209) - fix Cython download URL in Python 2.7.11 easyconfigs (#3212)
- add missing build deps for X stack in easyconfigs using
foss/2016a
orintel/2016a
(#3222, #3308) - fix overruling of exts_list in Perl 5.22.2 easyconfig (#3224)
- add missing dependency on GMP in R 3.2.3 easyconfigs (#3226)
- don’t hard specify toolchain for binutils build dep in likwid easyconfig, since it matches parent toolchain (#3240)
- fix
homepage
&source_urls
in HMMER easyconfigs (#3246) - stick to
pydot
1.1.0 for Python 2.6 in Travis config (#3282) - add
python-dev(el)
to OS deps in GC3Pie easyconfigs (#3310)
- add patch for Boost 1.60.0 to fix bug resulting in
EasyBuild v2.8.1 (May 30th 2016)¶
bugfix release
framework
- various bug fixes, including:
- fix error message on missing module command in bootstrap script (#1772)
- expand ‘
~
’ in paths specified to--include-*
(#1774) - break after deleting cache entry to avoid attempt to delete cache entry again (#1776)
- avoid changing
$MODULEPATH
when prepending with symlink of path already at head of$MODULEPATH
(#1777) - filter out duplicates in
find_flexlm_license
(#1779) - stick with GitPython < 2.0 with Py2.6 in Travis configuration (#1781)
- don’t use
LooseVersion
to defineversion_major
/version_minor
(#1783)
easyblocks
- various enhancements, including:
easyconfigs
- added example easyconfig files for 13 new software packages:
- added new easyconfigs for existing toolchains:
intel/2016.03-GCC-4.9
(#3088) - added additional easyconfigs for various supported software packages, including:
- Boost 1.61.0, ESMF 7.0.0, Inspector 2016 update 3, IPython 4.2, netCDF-C++4 4.3.0, netCDF-Fortran 4.4.4, Perl 5.22.2, VTune 2016 update 3
- various bug fixes, including:
- apply libreadline patch to fix bug triggering segmentation fault (#3086)
EasyBuild v2.8.0 (May 18th 2016)¶
feature + bugfix release
framework
- significant speedup improvements of EasyBuild itself, thanks to:
- add support for using PGI as toolchain compiler (#1342, #1664, #1759, #1761, #1764)
- incl. new toolchain definitions
pompi
andpomkl
(#1724)
- incl. new toolchain definitions
- add test configuration for Travis (#1733, #1737, #1743, #1767)
- various other enhancements, including:
- add
get_total_memory()
function insystemtools
module (#1623) - ignore
__init__.py
files in--include-*
(#1704) - use
-fopenmp
rather than-openmp
for Intel compilers, since-openmp
is deprecated (#1718) - add modules to metadata for Cray modules (#1721)
- make sure user write permissions are set after failed removal attempt of installation directory (#1722)
- escape special characters in software name in
find_related_easyconfigs
(#1726) - add support for
CrayPGI
compiler toolchain (#1729) - ensure read permission to all installed files for everybody (unless other options specify otherwise) (#1731)
- also consider
$LMOD_CMD
in bootstrap script (#1736) - translate PyPI download URL to alternate URL with a hash (#1749)
- make
get_software_libdir
compatible with-x
(#1750) - set
$LMOD_REDIRECT
to ‘no
’ when initialising Lmod (#1755) - add test for broken modules tool setup affecting ‘
module use
’ (#1758)
- add
- various bug fixes, including:
- isolate ‘
options
’ tests from easyblocks other than the ones included in the tests (#1699) - don’t run ‘
module purge
’ in tests, since EasyBuild may be made available through a module (#1702) - avoid rehandling
--include-*
options over and over again during--show-config
(#1705) - remove useless
test_cwd
(#1706) - fix bootstrap script: make sure setuptools installed in stage0 is still available at end of stage1 (#1727)
- forcibly create target branch in
--update-pr
(#1728) - remove check whether ‘
easybuild
’ is being imported from dir that containseasybuild/__init__.py
(#1730) - (re)install vsc-base during stage1 using
--always-copy
in bootstrap script, if needed (#1732) - use
os.path.realpath
intest_wrong_modulepath
to avoid symlinked path breaking the test (#1740) - unset
$PYTHONPATH
in before tested bootstrapped EasyBuild module (#1743) - take into account that paths in modulepath may be symlinks in
test_module_caches
(#1745) - change to install dir rather than buildpath in sanity check of extension, latter may not exist (#1746, #1748)
- only load modules using short module names (#1754)
- (re)load modules for build deps in extensions_step (#1762)
- fix
modpath_extensions_for method
: take into account modules in Lua syntax (#1766) - fix broken link to VSC website in license headers (#1768)
- isolate ‘
easyblocks
- add test configuration for Travis (#895, #897, #900, #926)
- new easyblocks for 4 software packages that require customized support:
- various other enhancements, including:
- update SuiteSparse easyblock for version >= 4.5 (#863)
- enhance imkl easyblock to install on top of PGI (#866, #916)
- enable runtime logging of install cmd in
IntelBase
(#874) - enhance Qt easyblock to support installing with
dummy
toolchain (#881) - delete libnuma symbolic links in PGI installation directory (#888)
- enhance PDT easyblock to support installing with
dummy
toolchain (#894) - add support for building Clang with OpenMP support (#898)
- update Score-P easyblock for additional compilers, MPI libraries & dependencies (#889)
- drop deprecated ‘
testrb
’ from sanity check in Ruby easyblock (#901) - enhance WRF easyblock to support versions >= 3.7 (#902)
- update QuantumESPRESSO easyblock for version 5.3.0 (#904)
- add support in PythonPackage easyblock to use ‘
setup.py develop
’ (#905) - update Qt easyblock for Qt 5.6.0 (#908)
- extend bzip2 easyblock to also build dynamic libraries (#910)
- make threading an explicit option rather than relying on MPI library in SCOTCH easyblock (#914)
- update PGI easyblock to install siterc file so PGI picks up
$LIBRARY_PATH
(#919) - enhance sanity check paths for compiler commands in PGI easyblock (#919)
- also filter out
-ldl
from $LIBBLAS & co for Intel MKL in numpy easyblock (#920) - define
$MIC_LD_LIBRARY_PATH
for impi (#925)
- various bug fixes, including:
- don’t hardcode Python version in
test_make_module_pythonpackage
(#876) - make PythonPackage easyblock compatible with
--module-only
(#884, #906) - remove check whether ‘
easybuild
’ is being imported from dir that containseasybuild/__init__.py
(#891) - fix passing compiler configure option in PDT easyblock (#894)
- fix bug in Score-P easyblock w.r.t.
--with-libbfd
(#889) - fix extension filter for Ruby (#901)
- fix
ACTIVATION_TYPES
list in IntelBase + minor style change (#913) - correctly define
$MIC_LD_LIBRARY_PATH
in imkl 11.3.x and newer (#915) - fix broken link to VSC website in license headers (#927)
- don’t hardcode Python version in
easyconfigs
- added example easyconfig files for 69 new software packages:
- ALPS (#2888), annovar (#3010), BayeScEnv (#2765), BayesAss (#2870), BerkeleyGW (#2925), Blitz++ (#2784, #3004), bam-readcount (#2850), Commet (#2938), CrossTalkZ (#2939), cuDNN (#2882), DBus (#2855), DFT-D3 (#2107), DIAL (#3056), dask (#2885), dbus-glib (#2855), FFLAS-FFPACK (#2793), FLAC (#2824), FLANN (#3015, #3029), FLEUR (#3043), GConf (#2855), GROMOS++ (#1297), GST-plugins-base (#2855), GStreamer (#2855), GTOOL (#2805), Givaro (#2793), gdist (#2935), gromosXX (#1297), HISAT2 (#2809), i-PI (#2940), Kraken (#3037, #3041), LAME (#2823), LASTZ (#3002), LinBox (#2793), Loki (#2839), libQGLViewer (#2923, #3008), libXxf86vm (#2855), MDSplus (#2787, #2838, #3027), MRIcron (#2831), Mawk (#2732), minieigen (#2839), mpmath (#3058), NBO (#3047, 3048), NGS (#2803), NGS-Python (#2810), ncbi-vdb (#2808), OptiX (#2795), PCL (#3024), PEAR (#2731), PLplot (#2990), Postgres-XL (#2891), PyGTS (#2969), RSeQC (#2788), Rust (#2920, #2943), rainbow (#2730), SHAPEIT (#2806), SIONlib (#2908), Saxon-HE (#2773), Singularity (#2901), SoX (#2825), Subread (#2790), SuperLU (#2665), travis (#2953), VASP (#2950), Wannier90 (#2906, #3042), wget (#3041), wxPython (#2855), xf86vidmodeproto (#2855), Yade (#2839), Yambo (#2932)
- add test configuration for Travis (#2942, #2944, #2954, #3061)
- added easyconfigs for new PGI-based toolchains
- added new easyconfigs for existing toolchains:
- added additional easyconfigs for various supported software packages: version updates, different toolchains, …
- incl. CGAL 4.8, Clang 3.8.0, icc/ifort 2016.2.181 & 2016.3.210, imkl 11.3.2.181 & 11.3.3.210, impi 5.1.3.181, LLVM 3.8.0, OpenCV 2.4.12, pandas 0.18.0, Qt 5.6.0, Scalasca 2.3, Score-P 2.0.1, SuiteSparse 4.5.2, WRF 3.8
- various other enhancements, including:
- enhance ORCA easyconfig for compatibility with SLURM (#1819)
- enable
-fPIC
in GraphicsMagick easyconfig, required by Octave (#2764) - clean up binutils easyconfigs to use binutils easyblock (#3006)
- add
include/GraphicsMagick
to$CPATH
in GraphicsMagick easyconfigs (#3034) - update SuiteSparse easyconfigs according to updated SuiteSparse easyblock (#3050)
- various bug fixes, including:
- fix Perl extensions download urls (#2738)
- add Autoconf as build dep for
GCCcore
(#2772) - fix versions of extensions in Bioconductor 3.2 bundles (#2769)
- fix (build) deps for
intel/2016a
easyconfigs of cairo, libXext, libXrender (#2785, #2874) - use ‘
env
’ wherever preconfig/build/installopts is used to set environmental variables (#2807, #2811, #2812) - add zlib as explicit dep in Tk easyconfigs (#2815)
- consistently specify to use
-fgnu89-inline
flag in M4 1.4.17 easyconfigs (#2774, #2779, #2816) - fix homepage and description in Pygments easyconfigs (#2822)
- include pkg-config as build dependencies for libXau, libXdmcp, libxcb (#2827)
- consistently use
XORG_*_SOURCE
constants (#2829, #2830, #2848) - update source URLs in ScientificPython easyconfig files (#2847)
- add checksums in SuiteSparse easyconfigs (#2849)
- fix build deps for GObject-Introspection (#2852)
- correctly specify Perl location in git easyconfig (#2866)
- fix bitstring 3.1.3 download URL in Python easyconfigs, source tarball on PyPI disappeared (#2880)
- fix Perl dependency in worker easyconfigs, it requires non-standard Perl modules (#2884)
- add XZ as dependency in Python 3.5.1 easyconfigs, required for lzma (#2887)
- fix download URL for packmol (#2902)
- drop
usempi
toolchain in numexpr easyconfigs, not needed (#2937) - fix use of
resolve_dependencies
in tests according to changes in framework (#2952) - add dependency extensions for MarkupSafe and jsonscheme in IPython 3.2.3 easyconfigs (#2967)
- add patch for matplotlib 1.5.1 to fix Tcl/Tk library paths being used (#2971)
- add xproto build dependency for makedepend v1.0.5 (#2982)
- disable parallel build for Doxygen (#2986)
- fix source URLs for
FreezeThaw
andTie::Function
extensions for Perl v5.22.1 (#2988) - add
sed
command in worker easyconfig files to fix module_path in conf/worker.conf (#2997, #3000) - drop toolchainopts from Eigen easyconfigs, since it is headers-only (#3025)
- clean up dummy bzip2 easyconfig, define buildopts rather than defining
$CC
and$CFLAGS
viaos.environ
(#3036) - use
%(pyshortver)s
template rather than hardcoding 2.7 in VTK easyconfigs (#3052) - correct install location of OpenCV Python bindings (#3054)
- include XZ as dependency for libunwind (#3055)
- add patch to fix broken OpenSSL tests due to expired certificates (#3057)
- fix broken link to VSC website in license headers (#3062)
EasyBuild v2.7.0 (March 20th 2016)¶
feature + bugfix release
framework
- stabilize Cray support
- enable ‘
dynamic
’ toolchain option by default forCray*
toolchains (#1581) - remove FFTW from the Cray toolchains definition (#1585)
- add external modules metadata for Cray systems (#1638)
- fix independency of Cray toolchains w.r.t. toolchain build environment (#1641, #1647)
- remove requirement to use
--experimental
for Cray toolchains (#1663)
- enable ‘
- enable Python optimization mode in ‘
eb
’ (#1357) - improved GitHub integration
- improve error handling on git commands + better logging for
--new-pr
/--update-pr
(#1590) - use
git
rather thanhttps
in--new-pr
/--update-pr
(#1602) - add
-u
as shorthand for--upload-test-report
(#1605) - fix
--from-pr
for PRs that include renamed/deleted files (#1615) - add support for
--install-github-token
and--check-github
(#1616) - fix
fetch_easyconfigs_from_pr
w.r.t. duplicate files in PRs (#1628)
- improve error handling on git commands + better logging for
- various other enhancements, including:
- add support for
--search-filename
and--terse
(#1577) - support complete bash completion (#1580)
- add support for
%(*ver)s
and%(*shortver)s
templates (#1595, #1604)- incl.
%(javaver)s
,%(javashortver)s
,%(perlver)s
,%(perlshortver)s
,%(pyver)s
,%(pyshortver)s
,%(rver)s
,%(rshortver)s
- incl.
- define
HOME
constant that can be used in easyconfig files (#1607) - implement support for generating ‘
swap
’ statements in module files (#1609) - add support for
--show-config
(#1611, #1620) - simplified support for
--minimal-toolchains
(#1614, #1619, #1622, #1625, #1646) - add support for
--dump-env-script
(#1624) - enhance ModulesTool.exist to also recognize partial module names (#1630)
- improve error message for toolchain definition errors (#1631)
- make default is_short_modname_for check less strict to support versionless external modules as deps (#1632)
- mention hostname in comment made by
--upload-test-report
(#1635) - support providing additional relative path for prefix in external module metadata (#1637)
- add
ThematicModuleNamingScheme
(#1645) - enhance logging format: remove logger name, mention location instead (#1649, #1654)
- update kernel versions for SLES12 (#1659)
- raise
EasyBuildError
rather thanImportError
inonly_if_module_is_available
decorator (#1662)
- add support for
- various bug fixes, including:
- fix Lmod spider output in generated modules (#1583)
- correctly define ‘
easybuild
’ namespaces (#1593, #1666, #1680)- this change requires that the
setuptools
Python package is available (at runtime) - using custom easyblocks by adding them in the Python search path (
$PYTHONPATH
) may require adjustments, i.e. also usingpkg_resources.declare_namespace
in the__init__.py
files; we highly recommend to use--include-easyblocks
instead, see http://easybuild.readthedocs.org/en/latest/Including_additional_Python_modules.html - note: this has the side-effect of not being able anymore to reliably use ‘
eb
’ in the parent directory of the easybuild-framework repository (#1667)
- this change requires that the
- fix template for
savannah.gnu.org
source URL (#1601) - stop running ‘
module purge
’, only restore environment (#1608) - fix license headers: Hercules foundation is now FWO (#1629)
- avoid that
fancylogger
tries to importmpi4py
to determine MPI rank (#1648) - fix error in tests when ‘
file
’ backend is not available in Python keyring (#1650) - update develop install script (#1651)
- handle allowed system deps during
prepare_step
rather than during parsing of easyconfig (#1652) - add function to find FlexLM licenses:
find_flexlm_license
(#1633, #1653) - fix availability check for external modules with partial module name (#1634, #1643)
- fix bootstrap script to ensure
setuptools
is also installed (#1655) - fix issue in bootstrap script with
vsc-base
being picked up from the OS (#1656) - fix bootstrap script for environment where ‘
python
’ is Python 3.x (#1660) - remove
--experimental
for tests related to--package
(#1665) - ensure path to setuptools is included in
$PYTHONPATH
being used to test scripts (#1671) - sanitize environment before initializing easyblocks (#1676)
- remove
reload
statements ininclude.py
, since they are not required and break--include-toolchains
(#1679)
easyblocks
- new easyblocks for 6 software packages that require customized support:
- various other enhancements, including:
- implement support for ‘
use_pip
’ in PythonPackage easyblock (#719, #831) - add support in CUDA easyblock to install wrappers for host compilers (#758)
- update sanity check for picard version 1.124 and above (#796)
- use ‘
module swap
’ for all components inCrayToolchain
(#823) - update PSI4 easyblock to cope with changed name of PSI4 data dir (#824)
- use
find_flexlm_license
function and avoid defining$CPATH
in PGI easyblock (#837) - use
find_flexlm_license
function inIntelBase
generic easyblock (#839) - add unit test to check module file generated by
PythonPackage
easyblock (#841) - rework MVAPICH2 easyblock on top of new MPICH easyblock (#844)
- add CUDA support in CP2K easyblock (#850)
- also define
$LD
inbuildopts
for GATE (#855) - use
find_flexlm_license
function in TotalView easyblock (#839) - enhance
MakeCp
easyblock to also support renaming of files while copying them (#859) - hunt for usable ‘
python
’ command inPythonPackage
easyblock when system Python is used (#861) - add sanity check in
easybuild/__init__.py
w.r.t. current working dir (#869) - change suffix of original file to
.easybuild
when usingfileinput
in impi easyblock (#870)
- implement support for ‘
- various bug fixes, including:
- make sure Python unicode settings match that of the system Python (#817)
- remove FFTW related statements in HPL easyblock, since HPL doesn’t require FFTW at all (#822)
- use
pkg_resources.declare_namespace
rather thanpkgutil.extend_path
to declare ‘easybuild
’ namespaces (#827) - fix license headers: Hercules foundation is now FWO (#836)
- fix check for non-empty lib dirs in
PythonPackage
easyblock (#840) - consider all Python lib dirs in sanity check for libxml2 (#842)
- correctly handle deprecated configure options (
--with-hwloc
/--enable-mpe
) in MVAPICH2 easyblock (#853) - use correct configure option for checkpoint/restart in MVAPICH2 easyblock (#854)
- ensure list of Python lib dirs always has a ‘
lib/...
’ entry (#858) - check whether
rpm
/rpmrebuild
commands are available using ‘which
’, rather than checking for OS deps (#864) - fix
test_step
in UFC easyblock (#872)
easyconfigs
- added example easyconfig files for 63 new software packages:
- ATSAS (#616, #2587), astropy (#2724, #2727), attr (#2706), BamUtil (#2654), BBMap (#2322), BH (#2508), CheMPS2 (#2445), CosmoloPy (#2723, #2727), csvkit (#2639), Firefox (#2648), FreeXL (#2422), GL2PS (#2667), Glade (#2631), htop (#2538), IGV (#2019), IGVTools (#2019), ImageMagick (#2438), jModelTest (#2529), KEALib (#2420), libcerf (#2656), libgcrypt (#2201), libglade (#2631), libgpg-error (#2201), libspatialite (#2431), LittleCMS (#2438), MAST (#2542), MLC (#2577), MPJ-Express (#2529), mutil (#2201), neon (#758), NextClip (#2544), npstat (#2686, #2703), Octopus (#2643), QuickFF (#2721), p4vasp (#2328), PCMSolver (#2445), PFFT (#2643), PHYLIP (#2694), pkgconfig (#2475, #2476), Platypus (#2618), pplacer (#1056), PRINSEQ (#2437, #2444, #2585), PyFFmpeg (#2501, #2519), PyGObject (#2443), PyGTK (#2443), PyOpenGL (#2628), pyringe (#2533), qrupdate (#2675), rgeos (#2635), rpmrebuild (#2402), shift (#2201), SNAPE-pooled (#2688), SNPhylo (#2701), sratoolkit (#2715), STAR-Fusion (#2463), statsmodels (#2719), StringTie (#2527), synchronicity (#2508), testpath (#2461), USEARCH (#2537), VarScan (#2464), vsc-install (#2165), Whoosh (#2725), xprop (#2645)
- added new easyconfigs for existing toolchains:
- stable Cray-specific easyconfigs
- delete deprecated Cray toolchains and easyconfig files (#2400)
- don’t hardcode
PrgEnv
version, removecraype
andfftw
components in Cray toolchains (#2554) - remove
-XC
versionsuffix for stable definitions forCray*
toolchains (#2714) - support for various software packages with
CrayGNU
andCrayIntel
toolchains: CP2K, GROMACS, WRF
- added additional easyconfigs for various supported software packages: version updates, different toolchains, …
- including BWA 0.7.13, CMake 3.4.3, GATE 7.2, GROMACS 5.1.2, Mesa 11.1.2, netCDF 4.4.0, Perl 5.22.1, Python 3.5.1, R 3.2.3, R-bundle-Bioconductor 3.2, scipy 0.17.0, SuiteSparse 4.5.1
- various other enhancements, including:
- copy
contrib
dir in Velvet easyconfigs so scripts are also available (#2456) - redefine matplotlib 1.5.1 easyconfig as a bundle, also include
cycler
extension (dep for matplotlib) (#2470) - add bitstring extension to Python 2.7.11 easyconfigs (#2471)
- enable building of MetaVelvet in Velvet 1.2.10 easyconfigs (#2473)
- add custom sanity check for libjpeg-turbo (#2480)
- add Velvet easyconfigs that include BioPerl dependency, so VelvetOptimizer can use it (#2495, #2729, #2733)
- add source URL in RAxML 7.2.6 easyconfigs (#2536)
- update MPICH easyconfigs to use new MPICH easyblock (#2589)
- free libX11 & co from unneeded Python dependency/versionsuffix (#2549, #2563, #2605, #2664)
- add ‘
--enable-utf --enable-unicode-properties
’ configure options in PCRE easyconfigs (#2561) * required for latest R versions - add HCsnip, metagenomeSeq in Bioconductor 3.1 bundles (#2553, #2578)
- add additional extensions in R 3.2.x easyconfigs that are required for extra Bioconductor extensions (#2547, #2556)
- update psmpi easyconfig files to use the new psmpi easyblock (#2619)
- add easyconfig for Python 2.7.11 on top of X11-enabled Tk (#2614, #2621)
- add virtualenv as extension in Python 2.7.11 easyconfigs (#2660)
- copy
- various bug fixes, including:
- fix software name for GTK+ (was ‘gtk+’), PyCairo (was ‘pycairo’) and Gdk-Pixbuf (was ‘gdk-pixbuf’) (#2468)
- don’t hardcode
CC
/CXX
in OpenMPI easyconfigs (#2472) - remove Google Code source URL for mpi4py (#2474)
- rename ffmpeg to FFmpeg (#2425, #2481)
- use available easyblock for flex (#2486)
- fix determining list of easyconfigs in unit test suite, don’t assume locations are correct (#2530)
- fix specifying DB dependency in DB_File easyconfigs (#2539)
- remove hard-coded
-xSSE4.2
for numpy/scipy with Intel compilers (#2546) - fix license headers: Hercules foundation is now FWO (#2550)
- add
--with-zlib
configure argument in libxml easyconfigs (#2555) - don’t hardcode
optarch=True
in xextproto/xtrans easyconfigs (#2601) - change toolchain version to ‘’ in easyconfigs that use
dummy
toolchain and include dependencies (#2612) - GLib doesn’t require libxml2 with Python bindings (#2632)
- add patch file to imkl 10.2.6.038 32-bit easyconfig to fix installer not being able to deal with ‘
--
’ in build path (#2634) - add missing ‘pkgconfig’ dependency for h5py (#2476, #2650)
- correct software name in FastQC easyconfigs (was ‘fastqc’), use ‘
dummy
’ toolchain for all FastQC version (#2657, #2666) - add missing libxml2 dependencies in GLib easyconfigs (#2658)
- fix Xerces-C++ download location (#2668)
- enable
XML::Bare
extension in all Perl easyconfigs (#2672) - update dead link for SuiteSparse (#2679)
- remove custom
exts_filter
in easyconfigs usedPythonPackage
easyblock (#2683, #2685) - add M4 as build dep for binutils & flex (#2681)
- add missing dependencies in Python 3.5.x easyconfigs: SQLite, Tk, GMP (#2704)
- fix (OS) deps, add checksums, remove parameter definition with default values in MVAPICH2 easyconfigs (#2707)
- style cleanup in various easyconfigs (#2378, #2387, #2395, #2396, #2488-#2493, #2496-#2500, #2502-#2504, #2602)
- working towards automated style review of pull requests
EasyBuild v2.6.0 (January 26th 2016)¶
feature + bugfix release
framework
- add (experimental) support for opening/updating (easyconfigs) pull requests (
--new-pr
,--update-pr
) (#1528) - sanitize environment before each installation by undefining
$PYTHON*
(#1569, #1572) - various other enhancements, including:
- allow user-local modules with hierarchical naming schemes (
--subdir-user-modules
) (#1472) - enhance
--extended-dry-run
output to include paths for requirements inmake_module_req
(#1520) - rewrite read_file to use ‘
with
’ (#1534) - add support for
eb --last-log
(#1541) - support using fixed install dir scheme (
--fixed-installdir-naming-scheme
) (#1546) - add edge attributes for build dependencies in
--dep-graph
output (#1548) - check whether dependencies marked as external module are hidden (#1552)
- implement support for
--modules-header
(#1558) - add support to specify ‘
else
’ body for conditional statements in modules (#1559) - add extra test for
--include-easyblocks
for generic easyblocks (#1562) - allow user to define the default compiler optimization level (
--default-opt-level
) (#1565) - make
toolchain.get_variable
more robust w.r.t. dummy toolchain (#1566)
- allow user-local modules with hierarchical naming schemes (
- various bug fixes, including:
- fix missing ‘
yaml
’ module check in tests (#1525) - fix ‘develop’ install script (#1529)
- correctly quote FPM option values in packagin support (#1530)
- correctly handle ‘
.
’ in software name w.r.t.$EB*
environment variables (#1538) - exclude logs and test reports from packages (#1544)
- also pass down
--job-cores
forpbs_python
job backend (#1547) - skip dependencies marked as external modules when packaging (#1550)
- fix syntax for
set_alias
statement in Lua syntax (#1554) - handle the case of all ‘offline’ nodes correctly for
--job
(#1560) - fix
test_modules_tool_stateless
unit test for stateless ModulesTool with Lmod as modules tool (#1570)
- fix missing ‘
easyblocks
- add generic easyblock for Cray toolchains (#766)
- new easyblocks for 2 software packages that require customized support:
- various other enhancements, including:
- update BamTools easyblock for versions 2.3.x and newer: some shared libraries are now static) (#785)
- don’t hardcode
.so
, useget_shared_lib_ext
instead (#789, #790, #791, #793, #794, #803, #815) - enhance CPLEX easyblock by adding more subdirs to
$PATH
, define$LD_LIBRARY
and$CPLEXDIR
(#797) - make sanity check for netcdf4-python work with both egg and non-egg installs (#799)
- update sanity check in PETSc/SLEPc easyblocks for v3.6.x (#800)
- update Trinity easyblock for 2.x versions (#802)
- update DOLFIN easyblock for v1.6.0 (#804)
- check for
libkokkoscore.a
rather thanlibkokkos.a
for Trilinos 12.x (#805) - add an option to skip the sanitizer tests of Clang (#806)
- update Molpro easyblock to support binary installs and 2015 version (#807)
- make
ConfigureMake
more robust w.r.t. custom easyconfig parameters (#810)
- various bug fixes, including:
easyconfigs
- add easyconfigs for
foss/2016a
andintel/2016
common toolchains (#2310, #2311, #2339, #2363)- incl. easyconfigs for Boost, CMake, Python, Perl using these toolchains
- added example easyconfig files for 21 new software packages:
- BLASR (#922), BioKanga (#2247), BoltzTraP (#2365), basemap (#2221), CppUnit (#2271), EggLib (#2335), FLASH (#2281), GLM (#2288), hub (#2249), MACS2 (#1983), MotEvo (#843), numba (#2243), PGI (#1833, #2367), PLY (#2305), PaStiX (#2319, #2326), patchelf (#2327), pip (#2284), RSEM (#2316), RcppArmadillo (#2289), SCDE (#2289), slepc4py (#2318)
- added additional easyconfigs for various supported software packages: version updates, different toolchains, …
- including BamTools 2.4.0, Boost 1.60.0, Clang 3.7.1, DOLFIN/FFC/FIAT/Instant/UFL 1.6.0, GATE 7.0, GCC 5.3.0, LLVM 3.7.1, pandas 0.17.1, PETSc 3.6.3, SAMtools 1.3, scipy 0.16.1, SLEPc 3.6.2, Trilinos 12.4.2, Trinity 2.1.1, VTK 6.3.0
- various other enhancements, including:
- various bug fixes, including:
- various style fixes, including:
EasyBuild v2.5.0 (December 17th 2015)¶
feature + bugfix release
framework
- add support for IBM XL compilers on Power7 and PowerPC (BlueGene) (#1470)
- add support for generic compilation using
--optarch=GENERIC
(#1471) - update experimental support for
.yeb
easyconfigs (#1515)- support clean way to specify toolchain + dependencies in
.yeb
easyconfigs
- support clean way to specify toolchain + dependencies in
- various other enhancements, including:
- add support for ‘
whatis
’ easyconfig parameter (#1271) - add support for SLES 12 and kernel 3.12.x (#1412)
- add GCCcore toolchain definition (#1451)
- use ‘
diff --git
’ lines to determine patched files in pull request with--from-pr
(#1460) - add proper option parser to bootstrap script (#1468)
- add
get_gcc_version()
function in systemtools module (#1496) - don’t load fake module in sanity_check_step during a dry run (#1499)
- allow string values to be passed in
make_module_req
by hoisting them into a list (#1502) - add support for listing build dependencies as hidden dependencies (#1503)
- also consider
lib32/pkgconfig
andlib64/pkgconfig
for$PKG_CONFIG_PATH
(#1505) - add support to
make_module_dep
to specify module to unload before loading a dependency module (#1506) - add support to
make_module_extra
to specify alternative root/version for$EBROOT
/$EBVERSION
(#1508) - packaging support is no longer considered experimental (#1510)
- add support for ‘
- various bug fixes, including:
- also consider
lib64
in sanity check performed during EasyBuild bootstrap (#1464) - also add description/homepage to packages created with FPM (#1469)
- fix develop setup script to install EasyBuild-develop module in subdirectory (#1480)
- don’t create a whole set of temporary ‘
minimal-easyconfigs
’ subdirs with--minimal-toolchains
(#1484) - only keep polling if exit code is
None
inrun_cmd_qa
, to correctly deal with negative exit codes (#1486) - fix bootstrap script for missing sys_platform by using newer distribute 0.6.49 in stage 0 (#1490)
- make sure that extra custom easyconfig parameters are known for extensions (#1498)
- add missing import for
EasyBuildError
ineasybuild/toolchains/linalg/libsci.py
(#1512) - isolate tests from possible system-wide configuration files (#1513)
- only use
glob
inmake_module_req
on non-empty strings (#1519) * this fixes the problem where$CUDA_HOME
and$CUDA_PATH
are not defined in module files for CUDA
- also consider
easyblocks
- update easyblocks for Intel tools to support 2016 versions (#691, #745, #756, #777)
- IntelBase easyblock has been enhanced to support specifying which components to install
- new easyblocks for 3 software packages that require customized support:
- various other enhancements, including:
- update numpy and SuiteSparse easyblock to use scikit-umfpack (#718)
- add an option to allow removal of the
-Dusethreads
flag in Perl easyblock (#724) - update Doxygen easyblock for 1.10.x (CMake) (#734)
- update sanity check in Qt easyblock for Qt 5.x (#740)
- add support for multilib build of GCC on PowerPC (#741)
- add support to OpenFOAM and SCOTCH easyblocks to support 64-bit integers, via ‘i8’ toolchain option (#744)
- fix sanity check to support numpy 1.10 (dropped _dotblas.so) (#757, #761, #762)
- update IPP easyblock for v9.x (#759)
- cleaner output for PythonPackage under dry run, make numpy easyblock dry-run aware (#760, #671)
- add support for using netCDF-Fortran as dependency in ALADIN easyblock (#764)
- add support for tbb 4.4.x in tbb easyblock (#769)
- add support for specifying altroot/altversion in Bundle easyblock (#773)
- update OpenFOAM easyblock for OpenFOAM-Extend 3.2 + use apply_regex_substitutions (#770)
- various bug fixes, including:
- fix module path extension of system compiler in HMNS setup (#742)
- only restore
$PYTHONPATH
if it was defined in EasyBuildMeta easyblock (#743) - make sure
$PYTHONPATH
is defined correctly in module file for Python packages created with--module-only
(#748) - fix WRF easyblock to produce correct module under
--module-only --force
(#746, #752) - don’t hardcode ‘
openPBS
’ in GATE easyblock, use value fordefault_platform
easyconfig parameter (#753) - avoid adding lib subdirs to
$*LIBRARY_PATH
if no libraries are there inPythonPackage
easyblock (#755) - fix installing Python bindings for libxml2 to correct installation prefix (#765)
easyconfigs
- add GCCcore easyconfig that can be used as base for all compilers (without getting in the way) (#2214)
- along with easyconfig for
GCC/4.9.3-2.25
: bundle of GCCcore 4.9.3 and binutils 2.25 - intended to replace the GNU toolchain
- along with easyconfig for
- added example easyconfig files for 39 new software packages:
- DIRAC (#2212), GeoIP (#2172, #2185), GeoIP-C (#2172, #2185), graph-tool (#1591), gtkglext (#2217), Intel Advisor (#2210), InterProScan (#2225, #2227, #2234), intltool (#2136), kallisto (#2173), LibUUID (#1930), LuaJIT (#2153), libXcursor (#2136), libXrandr (#2136), libXtst (#2143), libdap (#1930), libtasn1 (#2208), libxkbcommon (#2136), MRtrix (#2217, #2218), MultiNest (#2166, #2168), Nipype (#2150), PPfold (#2183, #2187), p11-kit (#2208), pangox-compat (#2217), Qt5 (#2136), randrproto (#2136), rhdf5 (#2175), Stampy (#2180, #2182), scikit-umfpack (#2061), scp (Python pkg) (#2196), sleuth (#2175), traits (#2150), vincent (#2169, #2185), XKeyboardConfig (#2136), xcb-util (#2136), xcb-util-image (#2136), xcb-util-keysyms (#2136), xcb-util-renderutil (#2136), xcb-util-wm (#2136), zlibbioc (#2175)
- added additional easyconfigs for various supported software packages: version updates, different toolchains, …
- including CMake 3.4.1, HDF5 1.8.16, netCDF 4.3.3.1, netCDF-Fortran 4.4.2, numpy 1.10.1, Octave 4.0.0, OpenFOAM 3.0.0, OpenFOAM-Extend 3.2, Python 2.7.11
- various other enhancements, including:
- add tidyr to R 3.2.1 easyconfigs (#2174)
- enable C++ support in MIGRATE-N (#2178)
- also installed shared libraries for AMD and UMFPACK in SuiteSparse (#2061)
- fix software name for ParaView (was: Paraview) (#2132)
- enable building of shared libraries for binutils (#2133)
- harden binutils built with dummy toolchain by linking to system libraries via
RPATH
(#2228) - enhance easyconfig unit tests to check that each easyconfig file is in the right subdirectory (#2232)
- various bug fixes, including:
- fix ALADIN patch file to not use relative paths, and adjust list of ALADIN sources accordingly ((#2207), (#2213))
- rename patch files for OpenFOAM to be in line with other patches (#2226)
- fix typo in bzip2 source URLs (#2204)
- force linking of ncurses in libreadline (#2206)
- enable
-fPIC
in all zlib 1.2.8 easyconfigs (#2220) - move Net-LibIDN/SRA-Toolkit/bbftpPRO/o2scl easyconfigs to right location (#2232)
- restrict parallel build in OpenFOAM-Extend easyconfigs via ‘
maxparallel
’, not ‘parallel
’ (#2233)
EasyBuild v2.4.0 (November 10th 2015)¶
feature + bugfix release
framework
- add support for
--extended-dry-run
/-x
(#1388, #1450, #1453, #1455)- detailed documentation is available at Extended dry run
- fix checking of sanity check paths w.r.t. discriminating between files and directories (#1436)
- this impacts several easyconfig files where
sanity_check_paths
was not 100% correct
- this impacts several easyconfig files where
- make ‘
eb
’ script aware of Python v3.x, fall back to usingpython2
if required (#1411) - add experimental support for parsing .yeb easyconfig files in YAML syntax (#1447, #1448, #1449)
- add experimental support for resolving dependencies with minimal toolchains (#1306)
- various other enhancements, including:
- refactor
extract_cmd
function to get rid of if/elif/else spaghetti blob (#1382) - add support for
--review-pr
(#1383) - add
apply_regex_substitutions
function to perform runtime patching from easyblocks (#1388, #1458) - add support for specifying alternate name to be part of generated module name (#1389)
* via ‘
modaltsoftname
’ easyconfig parameter - support overriding # used cores via
--parallel
(#1393) - also define
$FC
and$FCFLAGS
in build environment (#1394) - add support extracting for
.tar.Z
files (#1396) - include easybuild/scripts in installation (#1397)
- ignore hidden directories in find_base_dir (#1413, #1415)
- add
only_if_module_is_available
decorator function to guard functionality that uses optional dependencies (#1416) - give easyblocks the possibility to choose
maxhits
forrun_cmd_qa
(#1417) - use class name (string) rather than License instances as values for software license constants (#1418)
- support controlling recursive unloading of dependencies via ‘
recursive_module_unload
’ easyconfig parameter (#1425) - implement basic support for type checking of easyconfig parameters (#1427)
- support auto-converting to expected value type for easyconfig parameters (enabled by default) (#1428, #1437)
- add support for
--rebuild
command line option, alternative for--force
which doesn’t imply--ignore-osdeps
(#1435) - add support for Mercurial easyconfig repository (#979, #1446)
- add dedicated class for psmpi toolchain MPI component, and use it in gpsmpi and ipsmpi toolchains (#1454)
- refactor
- various bug fixes, including:
- fix extracting of comments from an easyconfig file that includes ‘tail’ comments (#1381)
- fix dev version to follow PEP-440, as required by recent setuptools versions (#1403)
- required to avoid that setuptools transforms the version itself
- see also https://www.python.org/dev/peps/pep-0440/#developmental-releases
- allow
get_cpu_speed
to returnNone
if CPU freq could not be determined (#1421) - relax
sanity_check_paths
in EasyBuild bootstrap script to deal with possible zipped .egg (#1422) - use empty list as default value for src/patches in Extension class (#1434)
- skip symlinked files in
adjust_permissions
function (#1439) - fix HierarchicalMNS to always use full version number (#1440)
easyblocks
- 3 new generic easyblocks: OCamlPackage (#467), SCons (#689, #700), Waf (#722)
- new easyblocks for 2 software packages that require customized support:
- various other enhancements, including:
- add support for installing OpenFOAM with external METIS, CGAL and Paraview (#497)
- update netCDF easyblock updated for netCDF v4.3.3.1 (#674)
- update Rosetta easyblock for recent Rosetta versions (#677)
- make unpacked source dir detection in easyblock for VSC-tools a little bit more flexible (#679)
- add support for building with Plumed support enabled in CP2K easyblock (#681)
- update Go easyblock for Go v1.5 (#683)
- use
apply_regex_substitutions
function in WRF easyblock (#685) - update MUMPS easyblock for 5.x (#686)
- implement runtime patching of
$WM_*
and compiler variables for OpenFOAM (#688) - specify sequential compiler to use in compiler command that gets injected in OpenFOAM easyblock (#692)
- make
PythonPackage
and WRF easyblocks dry-run aware (#696)- see also Guidelines for easyblocks
- add support in
PythonPackage
for installing witheasy_install
+ installing zipped eggs (#698, #711, #715) - update Bowtie easyblock for recent Bowtie versions (#707)
- update CUDA easyblock for CUDA 7.x(#708)
- also consider
config/make.sys.in
for want in QuantumESRESSO easyblock (#714) - define
$NWCHEM_LONG_PATH
if needed in NWChem easyblock (#720) - remove custom post-install step in PDT easyblock (#723)
- no longer needed now that
adjust_permissions
functions ignores symlinks
- no longer needed now that
- use
$LIBS
in HPL easyblock (#727, #736)
- various bug fixes, including:
- also define
$MCRROOT
for MCR in module (#687) - add missing ‘
super
’ call inconfigure_step
of easyblock for python-meep (#694) - only prepend existing non-empty paths to
$PYTHONPATH
inPythonPackage
easyblock (#697) - fix extra_options definition in
CMakePythonPackage
easyblock (#698) - fix dev version to follow PEP-440, as required by recent setuptools versions (#702, #703, #704)
- required to avoid that setuptools transforms the version itself
- see also https://www.python.org/dev/peps/pep-0440/#developmental-releases
- consider both
lib
andlib64
in sanity check paths for flex (#705) - also copy signature file and don’t copy CMake files in Eigen easyblock (#709)
- fix directory names in
make_module_req_guess
of ANSYS easyblock (#713) - fix imports for
set_tmpdir
in easyblock unit tests after function was moved in EasyBuild framework (#726) - use
--with-tcltk*
configure options for Python to point to ensure Tcl/Tk deps are picked up (#729) - fix order of subdirs for QuantumESPRESSO binaries (#730)
- correctly handle having both
$FC
/$FCFLAGS
and$F90
/$F90FLAGS
defined when building MVAPICH2 (#732) - fix OpenSSL sanity check paths: lib/engines is a directory (#731, #733)
- fix sanity check paths for netcdf-python (#735)
- also define
easyconfigs
- added example easyconfig files for 45 new software packages:
- animation (#2007), ANSYS CFD (#1969), ANTLR (#1191, #1980), APR (#1970), APR-util (#1970), Aspera Connect (#2005), ChIP-Seq (#2119), deap (#2082), DISCOVARdenovo (#1932), FastQC (#1984), fontsproto (#1618, #2038), GraphicsMagick (#2007), HBase (#1990), ISIS (#1972), libedit (#293), libfontenc (#1618, #2038), libGLU (#1627), libXdamage (#1618, #2038), libXfont (#1618, #2038), LLVM (#1620, #1989, #2031), MIGRATE-N (#1944), MIRA (#1938), mympingpong (#2049), MySQLdb (#2011), NCO (#1191, #1980), NIPY (#2064), Nilearn (#2064), NiBabel (#2064), PBZIP2 (#1038), PIL (#2062), PhyloCSF (#2018), pycairo (#2085), pydicom (#2063), Salmon (#2051), Samcef (#1941), scikit-image (#1974, #2006), Serf (#1970), SSAHA2 (#1039), Subversion (#1970), SWASH (#2059), time (#1954), Trim_Galore (#1984), Trimmomatic (#1987), WEKA (#1986), x264 (#2017)
- added new easyconfigs for existing toolchains:
gimkl/2.11.5
(#2093) - added additional easyconfigs for various supported software packages: version updates, different toolchains, …
- including Clang + LLVM 3.7.0, CMake 3.3.2, CUDA 7.5.18, hanythingondemand v3.0.1, Mesa 11.0.2, mpi4py v2.0.0, ncurses 6.0, OpenFOAM 2.4.0, Paraview 4.4.0, Python 3.5.0, QuantumESPRESSO v5.2.1
- various other enhancements, including:
- various bug fixes, including:
- fix software name for
BEEF
(was ‘libbeef
’) (#1679) - add patch to install
qhull.pc
(pkgconfig) file with Qhull (#1975) - don’t enable experimental nouveau API in libdrm easyconfigs (#1994)
- fix dev version to follow PEP-440, as required by recent setuptools versions (#1997)
- required to avoid that setuptools transforms the version itself
- see also https://www.python.org/dev/peps/pep-0440/#developmental-releases
- correct homepage in Cufflinks easyconfigs (#2060)
- fix imports for
set_tmpdir
in easyblock unit tests after function was moved in EasyBuild framework (#2097) - add patch for Tk 8.6.4 to fix problem with
tk.tcl
not being found (#2102) - don’t use
%(version)s
template in toolchain version, causes problems with HierarchicalMNS (#2104) - fix sanity check paths in several easyconfig (#2109, #2120, #2121, #2125)
- required because of bug fix in
sanity_check_step
implementation - CVXOPT, h5py, LIBSVM, libunistring, MDP, monty, PhyloCSF, Pyke, pandas, pycosat, pyhull, pymatgen, python-dateutils, Seaborn, Theano, XML-LibXML, XML-Simple
- required because of bug fix in
- fix software name for
EasyBuild v2.3.0 (September 2nd 2015)¶
feature + bugfix release
framework
- requires vsc-base v2.2.4 or more recent (#1343)
- required for
mk_rst_table
function invsc.utils.docs
- required for
- various other enhancements, including:
- add support for generating documentation for (generic) easyblocks in
.rst
format (#1317) - preserve comments in easyconfig file in
EasyConfig.dump()
method (#1327) - add
--cleanup-tmpdir
option (#1365)- enables to preserve the used temporary directory via
--disable-cleanup-tmpdir
- enables to preserve the used temporary directory via
- enhance
EasyConfig.dump()
to reformat dumped easyconfig according to style guidelines (#1345) - add support for extracting
.iso
files using 7z (p7zip) (#1375)
- add support for generating documentation for (generic) easyblocks in
- various bug fixes, including:
- correctly deal with special characters in template strings in
EasyConfig.dump()
method (#1323) - rework
easybuild.tools.module_generator
module to avoid keeping state w.r.t. fake modules (#1348) - fix dumping of hidden deps (#1354)
- fix use of
--job
with hidden dependencies: include--hidden
in submitted job script when needed (#1356) - fix
ActiveMNS.det_full_module_name()
for external modules (#1360) - fix
EasyConfig.all_dependencies
definition, fix tracking of job dependencies (#1359, #1361) - fix
ModulesTool.exist()
for hidden Lua module files (#1364) - only call
EasyBlock.sanity_check_step
for non-extensions (#1366)- this results in significant speedup when installing easyconfigs with lots of extensions, but also results in checking the default sanity check paths if none were defined for extensions installed as a module
- fix using module naming schemes that were included via
--include-module-naming-schemes
(#1370)
- correctly deal with special characters in template strings in
easyblocks
- new easyblocks for 2 software packages that require customized support:
- various other enhancements, including:
- enhance BWA easyblock to also install man pages (#650)
- enhance tbb easyblock to consider lib dirs in order and also define
$CPATH
,$LIBRARY_PATH
,$TBBROOT
(#653, #654) - call
PythonPackage.configure_step
inConfigureMakePythonPackage.configure_step
(#668) - add ‘
foldx3b6
’ as possible binary name in FoldX easyblock (#671) - enhance/cleanup MATLAB easyblock (#672)
- move preparing of ‘
intel
’ subdir in$HOME
toconfigure_step
inIntelBase
easyblock (#673)
- various bug fixes, including:
- add missing super call in
post_install_step
of imkl easyblock (#648, #660) - fix regex used to correct
I_MPI_ROOT
in impimpivars.sh
scripts (#662) - fix regex used to patch
.mk
file in configure step of SuiteSparse easyblock (#666) - correctly specify installation prefix via
$GEM_HOME
inRubyGem
easyblock (#667) - add custom sanity check in scipy easyblock (#669)
- specify to always use the bfd linker for OpenFOAM, to stay away from using
ld.gold
(#670)
- add missing super call in
easyconfigs
- added example easyconfig files for 19 new software packages:
- ATK (#1780), Atkmm (#1780), cairomm (#1780), GLibmm (#1780), GlobalArrays (#1868), gdk-pixbuf (#1780), gtk+ (#1780), Gtkmm (#1780), libbeef (#1827), libsigc++ (#1780), libsodium (#1876), MACS (#1869), MCR (#1677), Molpro (#1880), NFFT (#1921), p7zip (#1931), Pangomm (#1780), pygraphviz (#1861), pycosat (#1859)
- added new easyconfigs for existing toolchains: GNU/4.9.3-2.25 (#1836), foss/2015b (#1695), intel/2015b (#1696)
- add easyconfigs using this toolchain for BLAST+ 2.2.31, Boost 1.58.0, CP2K 2.6.1, OpenFOAM 2.3.1, Perl 5.20.2 + 5.22.0 (bare), Python 2.7.10, R 3.2.1
- added additional easyconfigs for various supported software packages: version updates, different toolchains, …
- including Boost 1.59.0, CP2K 2.6.1, GCC 5.2.0
- various other enhancements, including:
- various bug fixes, including:
- fix enabling MPI support for h5py 2.5.0 (#1825)
- fix versions of Bioconductor packages + add a couple extra (#1828, #1852, #1895, #1917)
- put dummy values in place for
builddir
/installdir
templates in easyconfigs unit tests (#1835) - fix easyconfigs unit tests w.r.t. changes made in framework (#1853, #1870, #1874, #1875)
- add GMP as missing dep in Python 2.7.10 easyconfigs, required for pycrypto extension (#1858)
- specify installation prefix for SIP (#1888, #1892)
- add custom sanity check paths in various easyconfigs (#1889, #1894, #1897 - #1909)
- required because of fix in EasyBuild framework, causing default sanity check paths to be considered for extensions that are installed as a module
- affected easyconfigs include: AnalyzeFMRI, Biggus, bibtexparser, DB_File, DBD-Pg, DBD-SQLite, DBD-mysql, evmix, fmri, FPM, GraphViz, gsl, GSSAPI, MDP, mpi4py, ncdf, ncdf4, netifaces, NetLibIDN, networkx, ordereddict, Parallel-ForkManager, paycheck, PyQuante, Pyke, PyQt, r2py, rjags, runjags, scikit-learn, SOBAcl, vsc-processcontrol, vsc-mympirun-scoop, XML, XML-Dumper, XML-Parser, XML-Twig, YAML-Syck
- don’t enable ‘
static
’ toolchain option in SuiteSparse 4.4.3 easyconfig (#1911) - add –exclude unpack options for OpenFOAM 2.3.1 to avoid cyclic symlink causing problems when unpacking (#1925)
EasyBuild v2.2.0 (July 15th 2015)¶
feature + bugfix release
framework
- add support for using GC3Pie as a backend for
--job
(#1008)- see also Submitting jobs using --job
- add support for
--include-*
configuration options to include additional easyblocks, toolchains, etc. (#1301) - add (experimental) support for packaging installed software using FPM (#1224)
- various other enhancements, including:
- use https for PyPI URL templates (#1286)
- add GNU toolchain definition (#1287)
- make bootstrap script more robust (#1289, #1325):
- exclude ‘easyblocks’ pkg from
sys.path
to avoid thatsetup.py
for easybuild-easyblocks picks up wrong version - undefine
$EASYBUILD_BOOTSTRAP*
environment variables, since they do not correspond with known config options
- exclude ‘easyblocks’ pkg from
- improve error reporting/robustness in
fix_broken_easyconfigs.py
script (#1290) - reset keep toolchain component class ‘constants’ every time (#1294)
- make
--strict
also a build option (#1295) - fix purging of loaded modules in unit tests’ setup method (#1297)
- promote
MigrateFromEBToHMNS
to a ‘production’ MNS (#1302) - add support for
--read-only-installdir
and--group-writable-installdir
configuration options (#1304) - add support for not expanding relative paths in
prepend_paths
(#1310) - enhance
EasyConfig.dump()
method to use easyconfig templates where possible (#1314), #1319), #1320), #1321)
- various bug fixes, including:
- fix issue with cleaning up (no) logfile if
--logtostdout
/-l
is used (#1298) - stop making
ModulesTool
class a singleton since it causes problems when multilple toolchains are in play (#1299) - don’t modify values of ‘paths’ list passed as argument to prepend_paths in
ModuleGenerator
(#1300) - fix issue with
EasyConfig.dump()
+ cleanup (#1308), #1311) - re-enable (and fix) accidentally disabled test (#1316)
- fix issue with cleaning up (no) logfile if
easyblocks
- modified easybuild.easyblocks package declaration to support giving preference to custom easyblocks (#617)
- 2 new generic easyblocks: RubyGem (#565), SystemCompiler (#633)
- new easyblocks for 5 software packages that require customized support:
- various other enhancements, including:
- update CUDA easyblock for v6.x (#476)
- make METIS easyblock take into account configopts (#494)
- enable building of EOMIP and EOMEA for NWChem versions 6.5 and up (#508)
- make out-of-source build with CMake truly out-of-source (#615)
- add support in Bundle easyblock to run full sanity check (#627)
- also take platform-specific Python lib dirs into account in PythonPackage easyblock (#628)
- fix mpivars scripts in Intel MPI installation for versions where the installation is moved (#629)
- don’t restrict
det_pylibdir
function to only EasyBuild-provided Python (#631), #641) - support snappy and other optional native libs in Hadoop easyblock (#632), #638), #640), #642)
- various bug fixes, including:
- fix Xmipp easyblock, use provided
install.sh
script (#630) - update Clang easyblock to disable tests that may fail when unlimited stack size is used (#622)
- fix setting of
$INTEL_LICENSE_FILE
for port@server values (#635)
- fix Xmipp easyblock, use provided
easyconfigs
- added example easyconfig files for 62 new software packages:
- ADF (#899), AutoDock_Vina (#808), bibtexparser (#1726), Biggus (#1770), Bismark (#990), blasr (#1662), BSMAP (#1171), Check (#811), Circuitscape (#1222), CONTRAfold (#689), cramtools (#1741), DBD-Pg (#1066), DendroPy (#995), EMAN2 (#1737), ETSF_IO (#727), eudev (#1578), fastqc (#1636), FDS (#814), #1617), #1625), FPM (#1440), frealign (#1619), g2log (#1035), GC3Pie (#1692), #1756), #1768), GenotypeHarmonizer (#1672), gensim (#1762), GraphViz (#1658), hisat (#1674), IDBA-UD (#1045), IMa2 (#828), IMPUTE2 (#824), JUBE (#1396), LAMARC (#760), libXScrnSaver (#1653), MATIO (#1004), MuTect (#1483), ncdf (#617), NEMO (#1640), ngspice (#1116), ordereddict (#1774), OSU Micro-Benchmarks (#1777), Parallel-ForkManager (#847), pBWA (#1009), PeakSeq (#1412), Pillow (#1702), Pindel (#1126), PLUMED (#1596), #1665), PostgreSQL (#1066), PROJ (#1006), PyAMG (#1222), Pyke (#1776), rpy2 (#1775), Sailfish (#1035), SCANMS (#1386), Seaborn (#1763), snpEff (#1680), SOBAcl (#1658), SPIDER (#1624), #1723), STAR (#1043), #1676), system GCC (#1778), tabix (#1059), tecplot360ex (#1100), Vampir (#512), VampirServer (#512), verifyBamID (#1675)
- added easyconfigs for 4 new software bundles:
- added easyconfigs for new GNU toolchain (#1346), #1669)
- added new easyconfigs for existing toolchains: goolf/1.5.16, intel/2014.06
- added additional easyconfigs for various supported software packages: version updates, different toolchains, …
- including BLAST 2.2.31+, Clang 3.6.1, CUDA 6.x, GCC 4.9.3, GROMACS 5.0.5, HDF5 1.8.15 + 1.8.15-patch1, Python 2.7.10, R 3.2.0 + 3.2.1, WRF 3.6.1
- various other enhancements, including:
- update all ncurses easyconfigs to enable ncursesw and use ConfigureMake easyblock (#1337)
- update PDT easyconfigs to use PDT easyblock (#1687)
- add custom
sanity_check_paths
in libxml2 easyconfigs (#1690) - enhance unit tests to also cover EasyConfig.dump() method on all easyconfigs (#1761)
- include snappy as dependency in Hadoop easyconfigs (#1758), #1773)
- enable SSL support in CMake v3.2.3 easyconfigs (#1784)
- add additional extensions in R easyconfigs (#1637)
- various bug fixes, including:
- add patch file required for correct CUDA-aware OpenMPI v1.7.3 build (#631)
- fix issue with OpenMPI dependency in ECore easyconfigs (#777)
- don’t run the Bloom tests for Jellyfish, they can randomly fail (#1016)
- fix source URLs in BioPerl easyconfigs (#1075)
- patch out svnversion command in Python 2.5.6 to fix build on recent systems (#1576)
- consistently use https for PyPI URLs in homepage/source_urls (#1616), #1722)
- include Tcl and Tk as dependencies in R easyconfig (#1623)
- add patch for installing paycheck as Py3 extension (#1629)
- add Perl dependency in git 2.x easyconfigs (#1631)
- fix easyconfig for GMP 6.0.0, don’t use 6.0.0a sources (#1635)
- fix source_urls in QuantumESPRESSO 5.0.2 easyconfigs (#1652)
- include Tk as dependency in Python 2.7.9 easyconfigs (#1654)
- include tk-devel is list of OS deps for Python 2.7.9 Cray easyconfigs, make sure ‘
import Tkinter
’ works (#1655) - drop gpfs versionsuffix and stop using no longer existing
--enable-gpfs
configopt for recent HDF5 versions (#1657) - include missing libxml2 dep in GLib easyconfigs (#1666)
- fix source URLs in Qt easyconfigs (#1673)
- fix source URLs for argparse Python extension (#1697)
- fix source URLs for deap Python extension (#1699)
- fix easyconfigs unit tests after making ModulesTool a non-singleton class (#1708)
- fix names for Xmipp easyconfigs and patches (#1719)
- add patch for Qt 4.8.6 to fix build issue on RHEL6 with intel/2015a (#1734)
- add M4 as build dep for GCC 5.1.0 (#1735)
- fix Bioconductor extension versions in R 3.1.3 easyconfigs (#1748)
- remove custom exts_filter definition from Python 3.4.3 easyconfig (#1765)
- fix source_urls in netCDF easyconfigs (#1766)
- fix source_urls in netCDF-C++ and netCDF-Fortran easyconfigs (#1767)
EasyBuild v2.1.1 (May 18th 2015)¶
bugfix release
framework
- fix issue with missing load statements when
--module-only
is used, don’t skip ready/prepare steps (#1276) - enhance
--search
: only consider actual filename (not entire path), use regex syntax (#1281) - various other bug fixes, including:
- fix
generate_software_list.py
script w.r.t. dependencies marked as external modules (#1273) - only use
$LMOD_CMD
value iflmod
binary can’t be found in $PATH (#1275) - fix location of
module_only
build option w.r.t. default value (#1277) - fix combined use of
--hide-deps
andhiddendependencies
(#1280) - remove log handlers that were added during tests, to ensure effective cleanup of log files (#1282)
- this makes the unit test suite run ~3x faster!
- define
$CRAYPE_LINK_TYPE
if ‘dynamic
’ toolchain option is enabled for Cray compiler wrappers (#1283)
- fix
easyblocks
- fix compatibility of easyblocks with
--module-only
+ dedicated unit test module (#610) - minor enhancements, including:
- update GROMACS easyblock for version 5 (#513)
- various other bug fixes, including:
- only check compiler being used if FFTW interfaces are being built in Intel MKL easyblock (#606)
easyconfigs
- added example easyconfig files for 3 new software packages:
- added new easyconfigs for existing toolchains:
ictce/7.3.5
,CrayCCE/5.2.40
,CrayGNU/5.2.40
,CrayIntel/5.2.40
- added easyconfigs using
CrayGNU/5.2.25
andCrayGNU/5.2.40
toolchains (#1610, #1611) - added additional easyconfigs for various supported software packages: version updates, different toolchains, …
- including Boost 1.58.0, GROMACS 5.0.4, Python 3.4.3
- various bug fixes, including:
EasyBuild v2.1.0 (April 30th 2015)¶
feature + bugfix release
framework
- requires vsc-base v2.2.0 or more recent
- added support for LoggedException (vsc-base#160, vsc-base#163, vsc-base#165, vsc-base#167)
- added support for add_flex action in GeneralOption (vsc-base#162)
- added support to GeneralOption to act on unknown configuration environment variables (vsc-base#162)
- add support for only (re)generating module files:
--module-only
(#1018)- module naming scheme API is enhanced to include det_install_subdir method
- see Only (re)generating (additional) module files using --module-only
- add support for generating module files in Lua syntax (note: requires Lmod as modules tool) (#1060, #1255, #1256, #1270)
- see
--module-syntax
configuration option and Module files syntax (--module-syntax)
- see
- deprecate
log.error
method in favor of raisingEasyBuildError
exception (#1218) - add support for using external modules as dependencies, and to provide metadata for external modules (#1230, #1265, #1267)
- add experimental support for Cray toolchains on top of PrgEnv modules:
CrayGNU
,CrayIntel
,CrayCCE
(#1234, #1268) - various other enhancements, including:
- clear list of checksums when using
--try-software-version
(#1169) - sort the results of searching for files (e.g.,
--search
output) (#1214) - enhance test w.r.t. use of templates in cfgfile (#1217)
- define ‘
%(DEFAULT_REPOSITORYPATH)s
’ template for cfgfiles (seeeb --avail-cfgfile-constants
) (#1220) - also reset
$LD_PRELOAD
when running module commands, in case module defined$LD_PRELOAD
(#1222) - move location of ‘
module use
’ statements in generated module file (after ‘module load
’ statements) (#1232) - add support for
--show-default-configfiles
(#1240) - report error on missing configuration files, rather than ignoring them (#1240)
- clean up commit message used in easyconfig git repository (#1248)
- add
--hide-deps
configuration option to specify names of software that must be installed as hidden modules (#1250) - add support for appending/prepending to
--robot-paths
to avoid overwriting default robot search path (#1252) - enable detection of use of unknown
$EASYBUILD
-prefixed environment variables (#1253) - add
--installpath-modules
and--installpath-software
configuration options (#1258) - use dedicated subdirectory in temporary directory for each test to ensure better cleanup (#1260)
- get rid of
$PROFILEREAD
hack when running commands, not needed anymore (#1264)
- clear list of checksums when using
- various bug fixes, including:
- make bootstrap script robust against having
vsc-base
already available in Python search path (#1212, #1215) - set default value for unpack_options easyconfig parameter to
''
, soself.cfg.update
works on it (#1229) - also copy rotated log files (#1238)
- fix parsing of
--download-timeout
value (#1242) - make
test_XDG_CONFIG_env_vars
unit test robust against existing user config file in default location (#1259) - fix minor robustness issues w.r.t.
$XDG_CONFIG*
and$PYTHONPATH
in unit tests (#1262) - fix issue with handling empty toolchain variables (#1263)
- make bootstrap script robust against having
easyblocks
- replace ‘
log.error
’ with ‘raise EasyBuildError
’ in all easyblocks (#588) - one new generic easyblock:
ConfigureMakePythonPackage
(#540) - new easyblocks for 2 software packages that require customized support:
- various other enhancements, including:
- enhance WIEN2k easyblock for recent versions + cleanup (#486)
- define
$PYTHONNOUSERSITE
in PythonPackage easyblock so user-installed packages are not picked up (#577) - add support in CP2K easyblock for building on top of MPICH/MPICH2 (#579)
- enhance Hadoop easyblock to support parallel builds (#580)
- drop
-noroot
for recent FLUENT versions, honorinstallopts
, enable-debug
(#582) - include
prebuildopts
in build command for Python packages (#585) - also install
rosetta_tools
subdirectory for Rosetta (#586) - update SLEPc easyblock for v3.5 + style cleanup (#593)
- minor fix in HPL easyblock w.r.t. checking defined environment variables (#595)
- tweak CP2K easyblock w.r.t. LAPACK/FFTW support (#596)
- minor update to GCC easyblock to support GCC v5.x (#598)
- update sanity check in R easyblock for version 3.2.0 (#602)
- various bug fixes, including:
- fix Score-P easyblock for compiler-only toolchains, include Qt as optional dependency (#552)
- fix definition of
$MKLROOT
, should be set to ‘mkl
’ subdir of install dir (#576) - add
-libmpichf90
to list of MPI libraries in NWChem easyblock (#584) - stop using ‘
$root
’ to make easyblocks compatible with module files in Lua syntax (#590) - also set
$PYTHONPATH
before installing Python package in temporary directory intest_step
(#591) - unset
buildopts
/installopts
before installing Python extensions in Python easyblock (#597) - allow not including vsc-base sources when installing EasyBuild (gets installed with easybuild-framework) (#600)
- use
self.initial_environ
rather thanself.orig_environ
in EasyBuildMeta easyblock (#600) - make GCC easyblock compatible with
--module-only
by setting default value forself.platform_lib
in constructor (#603)
easyconfigs
- added example easyconfig files for 27 new software packages:
- AFNI (#1322, #1521), BCFtools (#1492), getdp (#1518), gmsh (#1518), gtest (#1244), hanythingondemand (#1530), mawk (#1369), Minimac (#815), Minimac3 (#1502), monty (#1548), Octave (#1563), pbs_python (#1530), pigz (#1036), Pygments (#1536), pyhull (#1539), pymatgen (#1549), PyQt (#1322, #1521), Ray (#1494), requests (#1536), seqtk (#1524), SIP (#1322, #1521), S-Lang (#1369), Spark (#1554), spglib (#1549), TINKER (#1465), tmux (#1369), Xmipp (#1489)
- added easyconfigs for new (Cray-specific) toolchains (#1538):
CrayGNU
,CrayIntel
,CrayCCE
- initially supported software (using CrayGNU toolchains): CP2K, GROMACS, HPL, Python + numpy/scipy, WRF (#1558)
- see also https://github.com/easybuilders/easybuild/wiki/EasyBuild-on-Cray
- added new easyconfigs for existing toolchains:
goolf/1.5.16
,intel/2014.06
- added additional easyconfigs for various supported software packages: version updates, different toolchains, …
- including GCC v5.1.0, OpenFOAM v2.3.1, R v3.1.3 and v3.2.0, PETSc/SLEPc v3.5.3, WIEN2k v14.1
- various other enhancements, including:
- include pbr dependency for lockfile Python extension in Python v2.7.9 easyconfigs + mock/pytz/pandas (#1462, #1540)
- include SQLite as dependency in Python v2.7.9 easyconfigs (#1468)
- set
$LD_PRELOAD
for Hoard and jemalloc (#1470) - fix homepage in SCOTCH easyconfigs (#1485)
- adding missing six/ecdsa dependencies for dateutil/paramiko Python packages in Python easyconfigs (#1504, #1505, #1506, #1507, #1508, #1509, #1510)
- enable
pic
toolchain option in expat easyconfigs (#1562) - extend list of source URLs for Bioconductor packages in R easyconfigs to include ‘release’ source URLs (#1568)
- various bug fixes, including:
- adding missing zlib dependency in all Tcl easyconfig files (#1344)
- fix homepage in FLUENT easyconfigs (#1472)
- use
--with-verbs
rather than deprecated--with-openib
in OpenMPI configure options (#1511) - stop relying on
OS_NAME
constant to specify OS dependencies in OpenMPI easyconfigs (#1512) - replace use of ‘
$root
’ with ‘%(installdir)s
’ to ensure compatibility with module files in Lua syntax (#1532) - stop relying on ‘
$MKLROOT
’ in ROOT easyconfigs (#1537) - use proper Bundle easyblock for biodeps/PRACE (#1566)
- make source_urls in Cube and Scalasca easyconfigs compatible with –try-software-version (#1574)
- add patch for Cube to fix configure script w.r.t. Qt dependency, add –without-java-reader configure option (#1574)
EasyBuild v2.0.0 (March 6th 2015)¶
feature + bugfix release
framework
- requires vsc-base v2.0.3 or more recent
- avoid deprecation warnings w.r.t. use of
message
attribute (vsc-base#155) - fix typo in log message rendering
--ignoreconfigfiles
unusable (vsc-base#158)
- avoid deprecation warnings w.r.t. use of
- removed functionality that was deprecated for EasyBuild version 2.0 (#1143)
- see Removed functionality
- the fix_broken_easyconfigs.py script can be used to update easyconfig files suffering from this (#1151, #1206, #1207)
- for more information about this script, see fix_broken_easyconfigs.py
- stop including a crippled copy of vsc-base, include vsc-base as a proper dependency instead (#1160, #1194)
- vsc-base is automatically installed as a dependency for easybuild-framework, if a Python installation tool is used
- see Required Python packages
- various other enhancements, including:
- add support for Linux/POWER systems (#1044)
- major cleanup in
tools/systemtools.py
+ significantly enhanced tests (#1044) - add support for ‘
eb -a rst
’, list available easyconfig parameters in ReST format (#1131) - add support for specifying one or more easyconfigs in combination with
--from-pr
(#1132)- see from_pr_specifying_easyconfigs
- define
__contains__
in EasyConfig class (#1155) - restore support for downloading over a proxy (#1158)
- i.e., use
urllib2
rather thanurllib
- this involved sacrificing the download progress report (which was only visible in the log file)
- i.e., use
- let
mpi_family
returnNone
if MPI is not supported by a toolchain (#1164) - include support for specifying system-level configuration files for EasyBuild via
$XDG_CONFIG_DIRS
(#1166) - make unit tests more robust (#1167, #1196)
- see Unit tests
- add hierarchical module naming scheme categorizing modules by
moduleclass
(#1176) - enhance bootstrap script to allow bootstrapping using supplied tarballs (#1184)
- see bootstrap_advanced_options
- disable updating of Lmod user cache by default, add configuration option
--update-modules-tool-cache
(#1185)- for now, only the Lmod user cache can be updated using
--update-modules-tool-cache
- for now, only the Lmod user cache can be updated using
- use available
which()
function, rather than running ‘which
’ viarun_cmd
(#1192) - fix
install-EasyBuild-develop.sh
script w.r.t. vsc-base dependency (#1193) - also consider robot search path when looking for specified easyconfigs (#1201)
- various bug fixes, including:
- stop triggering deprecated/no longer support functionality in unit tests (#1126)
- fix
from_pr
test by including dummy easyblocks for HPL and ScaLAPACK (#1133) - escape use of ‘
%
’ in string with command line options with--job
(#1135) - fix handling specified patch level 0 (+ enhance tests for fetch_patches method) (#1139)
- fix formatting issues in generated easyconfig file obtained via
--try-X
(#1144) - use
log.error
intools/toolchain/toolchain.py
where applicable (#1145) - stop hardcoding
/tmp
inmpi_cmd_for
function (#1146, #1200) - correctly determine variable name for
$EBEXTLIST
when generating module file (#1156) - do not ignore exit code of failing postinstall commands (#1157)
- fix rare case in which used easyconfig and copied easyconfig are the same (#1159)
- always filter hidden deps from list of dependencies (#1161)
- fix implementation of
path_matches
function intools/filetools.py
(#1163) - make sure plain text keyring is used by unit tests (#1165)
- suppress creation of module symlinks for
HierarchicalMNS
(#1173) - sort all lists obtained via
glob.glob
, since they are in arbitrary order (#1187) - stop modifying
$MODULEPATH
directly insetUp
/tearDown
of toolchain tests (#1191)
easyblocks
- one new generic easyblock for installing a bundle of modules:
Bundle
(#550)- and let the
Toolchain
generic easyblock derive fromBundle
- and let the
- new easyblocks for 2 software packages that require customized support:
- various other enhancements, including:
- move support for
staged_install
from CPLEX easyblock to genericBinary
easyblock (#502) - fix sanity check in picard easyblock for v1.119 that doesn’t include
sam.jar
(#522) - log warning message when unlinking jellyfish symlink fails in Trinity easyblock (#534)
- revamp
EB_libint2
easyblock intoEB_Libint
that works for both Libint v1x and v2.x (#536) - update CP2K easyblock for recent versions (no more ‘
fes
’) (#537) - update SuiteSparse easyblock for recent versions (#541)
- fix easyblock unit tests after dropping support for deprecated behaviour in framework (#543)
- rework PSI easyblock to support future releases (#545)
- enable always generating a ‘verbose’ Makefile in the generic CMakeMake easyblock (#546)
- remove functionality in (generic) easyblocks that was deprecated for EasyBuild v2.0 (#547)
- enhance generic RPackage easyblock to support installing extensions in a separate prefix (#551)
- deprecate GenomeAnalysisTK easyblock, since it’s basically equivalent to Tarball (#557)
- update SAMtools easyblock for v1.2 (#562)
- take
preconfigopts
easyconfig parameter into account in ROOT easyblock (#566) - update easyblock for installing EasyBuild
- update disabling sanitizer tests for Clang 3.6 (#570)
- move support for
- various bug fixes, including: * fix handling of LTO in GCC easyblock (#535) * relocate FDTD RPM to fix installation on SL6 (#538)
easyconfigs
- added example easyconfig files for 29 new software packages:
- bsoft (#1353), Coot (#1400), Cuby (#1258), DSRC (#1242), Exonerate (#568), fastqz (#1242), FSA (#568), fqzcomp (#1242), GAMESS-US (#1153, #1406), Grep (#1308), Hadoop (#1418), Hoard (#1415), IMB (#1284), ISL (#1389), jemalloc (#1416), libdwarf (#1283), libelf (#1283), MPC (#1310), multitail (#1327), Pmw (#1403), Quip (#1242), rCUDA (#720), SCALCE (#1242), SMALT (#568), STREAM (#1332), worker (#1307), Xerces-C++ (#1370), XQilla (#1370), ZPAQ (#1242)
- added easyconfigs for new (common) toolchains
- added new software bundle:
Autotools
(#1385) - various other enhancements, including:
- don’t define
$LDSHARED
in zlib easyconfigs (#1350)- this fixes the long-standing “
no version information available
” issue with zlib - see also framework#108
- this fixes the long-standing “
- add unit test to check that all
extra_options
keys are defined inEasyConfig
instance (#1378) - add source MD5 checksums in all GCC easyconfigs (#1391)
- speeding up the unit tests by avoiding rereading of same easyconfig file (#1432)
- fix conflict detection in unit tests by considering build deps separately from runtime deps (#1447)
- fix toolchain for Bison build dep in
MVAPICH2-1.9-iccifort-2011.13.367.eb
easyconfig (#1448) - use
Bundle
generic easyblock for HPCBIOS bundles and fixmoduleclass
(#1451)
- don’t define
- various bug fixes, including:
- revert version of Libint dependency to 1.1.4 in CP2K v2.5.1 easyconfig (#1144)
- added Java dependencies to EMBOSS easyconfigs (#1167)
- don’t list ‘
lto
’ as a language in GCC easyconfigs (#1286)- related to the fixes in the GCC easyblock, see easyblocks#535
- rename libint2 easyconfigs as Libint v2 easyconfigs (#1287)
- fix mpi4py
source_urls
in Python easyconfigs (#1306) - consistently use CLooG 0.18.0 for GCC 4.8 series (#1392)
- rename GenomeAnalysisTk easyconfigs to GATK (#1399)
- include
openssl-devel
SLES11 OS dependency in cURL/MySQL/Python easyconfigs (#1422) - add missing Perl dependency in parallel easyconfigs (#1430)
- correct name in BLAST+ easyconfigs (#1443)
- fix name for sparsehash easyconfigs (#1452)
EasyBuild v1.16.2 (March 6th 2015)¶
bugfix release
framework
(no changes compared to v1.16.1, simple version bump to stay in sync with easybuild-easyblocks)
easyblocks
- make
EB_EasyBuildMeta
easyblock aware of vsc-base to make upgrading to EasyBuild v2.0.0 possible (#573)
easyconfigs
(no changes compared to v1.16.1, simple version bump to stay in sync with easybuild-easyblocks)
EasyBuild v1.16.1 (December 19th 2014)¶
bugfix release
framework
- fix functionality that is broken with
--deprecated=2.0
or with$EASYBUILD_DEPRECATED=2.0
- other bug fixes
- fix logging issues in tests, sync with vsc-base v2.0.0 (#1120)
easyblocks
- fix EasyBuild versions for which
$EASYBUILD_DEPRECATED=1.0
is set in EasyBuild sanity check (#531)
easyconfigs
- set default easyblock to ConfigureMake in TEMPLATE.eb (#1277)
EasyBuild v1.16.0 (December 18th 2014)¶
feature + bugfix release
framework
- deprecate automagic fallback to
ConfigureMake
easyblock (#1113)- easyconfigs should specify
easyblock = 'ConfigureMake'
instead of relying on the fallback mechanism - note: automagic fallback to
ConfigureMake
easyblock will be removed in EasyBuild v2.0 - see also Automagic fallback to ConfigureMake
- easyconfigs should specify
- stop triggering deprecated functionality, to enable use of
--deprecated=2.0
(#1107, #1115, #1119)- see Deprecated functionality for more information
- various other enhancements, including:
- add script to clean up gists created via
--upload-test-report
(#958) - also use
-xHost
when using Intel compilers on AMD systems (as opposed to-msse3
) (#960) - add Python version check in
eb
command (#1046) - take
versionprefix
into account inHierarchicalMNS
module naming scheme (#1058) - clean up and refactor
main.py
, move functionality to other modules (#1059, #1064, #1075, #1087) - add check in
download_file
function for HTTP return code + show download progress report (#1066, #1090) - include info log message with name and location of used easyblock (#1069)
- add toolchains definitions for
gpsmpi
,gpsolf
,impich
,intel-para
,ipsmpi
toolchains (#1072, #1073)- support for Parastation MPI based toolchains
- enforce that
hiddendependencies
is a subset ofdependencies
(#1078)- this is done to avoid that site-specific policies w.r.t. hidden modules slip into contributed easyconfigs
- enable use of
--show_hidden
foravail
subcommand with recent Lmod versions (#1081) - add
--robot-paths
configure option (#1080, #1093, #1095, #1114) - support use of
%(DEFAULT_ROBOT_PATHS)s
template in EasyBuild configuration files (#1100)- see also Controlling the robot search path
- use
-xHost
rather than-xHOST
, to match Intel documentation (#1084) - update and cleanup
README
file (#1085) - deprecate
self.moduleGenerator
in favor ofself.module_generator
inEasyBlock
(#1088) - also support
MPICH
MPI family inmpi_cmd_for
function (#1098) - update documentation references to point to http://easybuild.readthedocs.org (#1102)
- check for OS dependencies with both
rpm
anddpkg
(if available) (#1111)
- add script to clean up gists created via
- various bug fixes, including:
- fix picking required software version specified by
--software-version
and clean uptweak.py
(#1062, #1063) - escape
$
characters in module load message specified viamodloadmsg
easyconfig parameter) (#1068) - take available hidden modules into account in dependency resolution (#1065)
- fix hard crash when using patch files with an empty list of sources (#1070)
- fix Intel MKL BLACS library being used for MPICH/MPICH2-based toolchains (#1072)
- fix regular expression in
fetch_parameter_from_easyconfig_file
function (#1096) - don’t hardcode queue names when submitting a job (#1106)
- fix affiliation/mail address for Fotis in headers (#1105)
- filter out
/dev/null
entries in patch file indet_patched_files
function (#1108) - fix
gmpolf
toolchain definition, to havegmpich
as MPI components (instead ofgmpich2
) (#1101)- ‘MPICH’ refers to MPICH v3.x, while MPICH2 refers to MPICH(2) v2.x (MPICH v1.x is ancient/obsolete)
- note: this requires to reinstall the
gmpolf
module, using the updated easyconfig from easybuild-easyconfigs#1217
- fix picking required software version specified by
easyblocks
- new easyblocks for 2 software packages that requires customized support:
- fix use of deprecated functionality, enhance unit tests to check for it (#523)
- various other enhancements, including:
- update PETSc easyblock for recent versions (v3.5) (#446)
- only include major/minor version numbers for FLUENT subdir (#480)
- factor out ‘move after install’ code from impi easyblock to
IntelBase
, use it for itac (#487) - support custom easyconfig parameters in
EB_impi
easyblock to correct behavior of MPI wrapper commands (#493) - consider both
lib
andlib64
in sanity check for GROMACS (#501) - take
preinstallopts
andinstallopts
into account inBinary
easyblock (#503) - add sanity check command
abaqus information=all
for ABAQUS (#504) - update and clean up
README
, refer to http://easybuild.readthedocs.org documentation (#505, #516) - rename deprecated
self.moduleGenerator
toself.module_generator
(#506)- see also easybuild-framework#1088
- check whether specified
type
value is a known value (psmp
orpopt
) in CP2K easyblock (#509) - add support to
SAMtools
easyblock for installing recent versions (v1.x) (#512) - fix version check + sanity check in Geant4 easyblock + style fixes (#517)
- added
$root/modlib
to$PYTHONPATH
guesses in Modeller easyblock (#525) - mark
license
custom easyconfig parameter as deprecated inIntelBase
(#527)
- various bug fixes, including:
- fix Libxc version check in CP2K easyblock (#478)
- correctly specify
mkl_libs
when building numpy with GCC and imkl (#485) - extend noqa for OpenFOAM-Extend in build_step (#488, #520)
- correctly set
$LD_LIBRARY_PATH
,$LIBRARY_PATH
and$PKG_CONFIG_PATH
forR
(#495) - fix default value for
files_to_copy
inMakeCp
easyblock (#500) - treat
MPICH
MPI family as MPICH v3.x instead of MPICH v1.x (#519)- see also easybuild-framework#1112
- fix affiliation/mail address for Fotis in headers (#521)
- clean up in
extra_options
methods, avoid casting return value todict
or returning via parent (#528)
easyconfigs
- added example easyconfig files for 39 new software packages:
- ANTs (#1232), BEOPS (#1264), Chhimera (#1255), ctffind (#1249), DBD-SQLite (#1064), DBD-mysql (#1063), DIALIGN-TX (#668), ffmpeg (#1088), GObject-Introspection (#1079), GTS (#1079), Graphviz (#1079), GraphViz2 (#1079), grace (#1131), HarfBuzz (#1079), HTSlib (#1161), GSSAPI (#1048), Kerberos_V5 (#1048), libevent (#1063), libXdmcp (#1129), libXft (#1017), libXinerama (#1017), libXrender (#1017), Maven (#1094), MySQL (#1063), Net-LibIDN (#1060), OpenCV (#1088), OpenMD (#1105), Qhull (#1105), Pango (#1079), psmpi (#1245, #1246), RELION (#1017), renderproto (#1017), rjags (#1125), runjags (#1125), SPRNG (#1138, #1141), xineramaproto (#1017), XML-Dumper (#1061), XML-Parser (#1061), XML-Twig (#1061)
- added easyconfigs for new toolchains
- include
easyblock = 'ConfigureMake'
in relevant easyconfigs to deal with deprecation of automagic fallback toConfigureMake
(#1248) - clean up use of deprecated functionality in existing easyconfigs (#1252, #1259)
- stop using deprecated
makeopts
,premakeopts
andshared_lib_ext
- check for use of deprecated functionality in easyconfigs unit tests
- see also http://easybuild.readthedocs.org/en/latest/Deprecated-functionality.html#easyconfig-parameters
- stop using deprecated
- various other enhancements, including:
- also build
fftw3_threads
libraries, and enhance sanity checks (#1013) - add unit test to verify specified
sanity_check_paths
(#1119) - update and clean up
README
, refer to http://easybuild.readthedocs.org documentation (#1184, #1224)
- also build
- various bug fixes, including:
- fix unit tests w.r.t. changes in framework (#1146)
- remove unnecessary build dependencies for OpenMPI (#1168)
- remove duplicate line in OpenMPI easyconfigs (#1207)
- fix affiliation/mail address for Fotis in headers (#1237)
- fix permissions of easyconfig files for consistency (#1210)
- disable symbol lookup feature in cairo to fix build on SL6 (#1241)
- fix easyconfig
gmpolf
toolchain w.r.t. MPICH software name (#1217)- see also easybuild-framework#1112
- fix
source_urls
for WRF and WPS (#1225) - fix and clean up GATE easyconfigs (#1228)
- fix broken CLHEP builds by including
-gcc
in$CXXFLAGS
(#1254) - add patch to fix broken test in Go (#1257)
- fix name of GMAP easyconfigs, should be GMAP-GSNAP (#1268)
- fix easyconfig filenames, enhance unit test to check easyconfig filenames (#1271)
EasyBuild v1.15.2 (October 7th 2014)¶
bugfix release
framework
- fix
$MODULEPATH
extensions for Clang/CUDA, to makegoolfc
/cgoolf
compatible withHierarchicalMNS
(#1050) - include
versionsuffix
in module subdirectory withHierarchicalMNS
(#1050, #1055) - fix unit tests which were broken with bash patched for ShellShock bug (#1051)
- add definition of gimpi toolchain, required to make gimkl toolchain compatible with
HierarchicalMNS
(#1052) - don’t override
COMPILER_MODULE_NAME
obtained fromClangGCC
in Clang-based toolchains (#1053) - fix wrong code in
path_to_top_of_module_tree
function (#1054)- because of this, load statements for compilers were potentially included in higher-level modules under
HierarchicalMNS
- because of this, load statements for compilers were potentially included in higher-level modules under
easyblocks
- only disable sanitizer tests for recent Clang versions (#481, #482)
- pass down installopts to CUDA install command (#483)
easyconfigs
- disable parallel build for slalib (#968)
- fix compatibility of goolfc with HierarchicalMNS by using GCC toolchain for installing CUDA (#1106, #1115)
- fix zlib OS dependency spec for Debian in Boost easyconfigs (#1109)
- fix compatibility of gimkl with HierarchicalMNS by using gimpi subtoolchain (#1110)
- make both GCC and Clang first-class members in Clang-based toolchains to fix compatibility with HierarchicalMNS (#1113)
EasyBuild v1.15.1 (September 23rd 2014)¶
bugfix release
framework
- take into account that multiple modules may be extending
$MODULEPATH
with the same path, when determining path to top of module tree (see #1047)- this bug caused a load statement for either
icc
orifort
to be included in higher-level modules installed with an Intel-based compiler toolchain, under theHierarchicalMNS
module naming scheme
- this bug caused a load statement for either
- make
HierarchicalMNS
module naming scheme compatible withcgoolf
andgoolfc
toolchain (#1049) - add definition of
iompi
(sub)toolchain to makeiomkl
toolchain compatible withHierarchicalMNS
(#1049)
easyblocks
(no changes compared to v1.15.0, simple version bump to stay in sync with easybuild-framework)
easyconfigs
EasyBuild v1.15.0 (September 12th 2014)¶
feature + bugfix release
framework
- various other enhancements, including:
- fetch extension sources in fetch_step to enhance
--stop=fetch
(#978) - add
iimpi
toolchain definition (#993) - prepend robot path with download location of files when
--from-pr
is used (#995) - add support for excluding module path extensions from generated modules (#1003)
- see
include_modpath_extensions
easyconfig parameter
- see
- add support for installing hidden modules and using them as dependencies (#1009, #1021, #1023)
- see
--hidden
andhiddendependencies
easyconfig parameter
- see
- stop relying on
conflict
statement in module files to determine software name of toolchain components (#1017, #1037)- instead, the
is_short_modname_for
method defined by the module naming scheme implementation is queried
- instead, the
- improve error message generated for a missing easyconfig file (#1019)
- include path where tweaked easyconfigs are placed in robot path (#1032)
- indicate forced builds in
--dry-run
output (#1034) - fix interaction between
--force
and--try-toolchain --robot
(#1035) - add
--software
option, disable recursion for--try-software(-X)
(#1036)
- fetch extension sources in fetch_step to enhance
- various bug fixes, including:
* fix
HierarchicalMNS
crashing when MPI library is installed with a dummy toolchain (#986) * fix list of FFTW wrapper libraries for Intel MKL (#987) * fix stability of unit tests (#988, #1027, #1033) * make sure$SCALAPACK_INC_DIR
(and$SCALAPACK_LIB_DIR
) are defined when usingimkl
(#990) * fix error message on missing FFTW wrapper libs (#992) * fix duplicate toolchain elements in--list-toolchains
output (#993) * filter out load statements that extend the$MODULEPATH
to make the module being installed available (#1016) * fix conflict specification included in module files (#1017) * avoid--from-pr
crashing hard unless--robot
is used (#1022) * properly quote GCC version string in archived easyconfig (#1028) * fix issue with--repositorypath
not honoring--prefix
(#1031) * sync with latest vsc-base version to fix log order (#1039) * increase # commits per page for--from-pr
(#1040)
easyblocks
- added support for 2 new software packages that requires customized support:
- various enhancements, including:
- fix locale used for running Perl unit tests (#425)
- fix Rmpi easyblock to correctly configure for Intel MPI (#435)
- add support in generic Rpackage easyblock for handling patches (#435)
- enhance OpenFOAM easyblock: fix building MPI build of Pstream and (pt)scotchDecomp + overall cleanup (#436)
- enhance NWChem easyblock for version 6.3, clean up running of test cases (#441)
- enhance noqa for interactive configuration of Qt build procedure (#447)
- add custom sanity check for R in easyblock (#449)
- make perlmodule take into account
(pre){config,build,install}opts
(#450) - add support for specifying an activation key after installing Mathematica (#452)
- consider both
lib
andlib64
directories in netCDF sanity check (#453) - fix sanity check for ANSYS for v15.0.x (#458)
- fix Trilinos easyblock for recent version (#462)
- enhance impi easyblock to handle install subdir for impi v5.0.1 and future version (#465, #472)
- include $CFLAGS in linker flags for HPL (#466)
- update sanity test checks for GROMACS 5.x (#471)
- various bug fixes:
- fix building of FFTW wrappers for Intel MKL v11.1.x + cleanup of imkl easyblock (#445)
easyconfigs
- added example easyconfig files for 13 new software packages:
- added easyconfigs for new toolchains (#986, #1051):
- gimkl/1.5.9, ictce/7.1.2
- added additional easyconfigs for various supported software packages: version updates, different toolchains, …
- including Python 2.7.8/3.4.1, Perl 5.20.0, R 3.1.1, NWChem 6.3, OpenFOAM-Extend 3.1, GCC 4.9.1, Clang 3.4.2, …
- various enhancements, including:
- make existing ictce/intel toolchains compatible with HierarchicalMNS (#1069)
- this involves installing impi with an iccifort toolchain, and imkl with an iimpi toolchain
- make existing ictce/intel toolchains compatible with HierarchicalMNS (#1069)
- various bug fixes, including:
- download link for Perl modules changed to use cpan.metapan.org
- fix missing MPI-based OpenFOAM libraries (
Pstream
,(pt)scotchDecomp
), make sure provided SCOTCH is used (#957)
EasyBuild v1.14.0 (July 9th 2014)¶
feature + bugfix release
framework
- important changes
- required Lmod version bumped to v5.6.3 (#944)
- required due to enhancements and bug fixes in Lmod, e.g. making
--terse avail
significantly faster, and correctly handling aprepend-path
statement that includes multiple directories at once
- required due to enhancements and bug fixes in Lmod, e.g. making
- required Tcl/C environment modules version set to 3.2.10 (
- hard requirement due to fixed
modulecmd
segmentation fault bug, that only tends manifests itself when making a large amount of changes in the environment (e.g.module load <toolchain>
)
- hard requirement due to fixed
- renamed
EasyBuildModuleNamingScheme
toEasyBuildMNS
- required Lmod version bumped to v5.6.3 (#944)
- enhanced custom module naming schemes functionality to support hierarchical module naming schemes (#953, #971, #975)
- extended API for custom module naming schemes to allow tweaking different aspects of module naming
- see
easybuild/tools/module_naming_scheme/mns.py
for abstractModuleNamingScheme
class - an example hierarchical module naming scheme is included, see
HierarchicalMNS
- see
- split up full module names into a module subdirectory part, which becomes part of
$MODULEPATH
), and a ‘short’ module name (is exposed to end-users)- example:
GCC/4.7.2
inCore
subdir,OpenMPI/1.6.5
inCompiler/GCC/4.7.2
subdir
- example:
- make
ModuleNamingScheme
class a singleton, move it intoeasybuild.tools.module_naming_scheme.mns
module - implement
ActiveMNS
wrapper class for querying active module naming scheme - implement toolchain inspection functions that can be used in a custom module naming scheme
det_toolchain_compilers
,det_toolchain_mpi
ineasybuild.tools.module_naming_scheme.toolchain
- significant code cleanup & enhanced unit tests
- extended API for custom module naming schemes to allow tweaking different aspects of module naming
- enhance & clean up
tools/modules.py
(#944, #953, #963, #964, #969)- make
ModulesTool
a singleton to avoid repeating module commands over & over again needlessly - use
module use
,module unuse
rather than fiddling with$MODULEPATH
directly - improve debug logging (include full stdout/stderr output of module commands)
- remove deprecated functionality (
add_module
,remove_module
, indirect module load)
- make
- various other enhancements, including:
- added toolchain definitions for ‘common’ toolchains:
intel
andfoss
(#956) - implement caching for easyconfig files, parsed easyconfigs and toolchains (#953)
- enable
--ignore-osdeps
implicitly when-D
,--dry-run
or--dep-graph
are used (#953) - flesh out
use_group
anddet_parallelism
function, include them ineasybuild.tools.systemtools
(#953) - make symlinking of module files part of module naming scheme API (#973)
- list of symlinks paths can be controlled using
det_module_symlink_paths()
method
- list of symlinks paths can be controlled using
- added support for new configuration options:
- tweaking compiler flags triggered by
optarch
toolchain options using--optarch
(#949) - filtering out dependencies from easyconfig files using
--filter-deps
(#957) - filtering environment included in test reports with
--test-report-env-filter
(#959) e.g.--test-report-env-filter='^SSH|USER|HOSTNAME|UID|.*COOKIE.*'
- made suffix used for module files install path configurable, using
--suffix-modules-path
(#973)
- tweaking compiler flags triggered by
- added support for additional easyconfig parameters:
* define aliases in module files (
modaliases
) (#952) * add print message on module load (modloadmsg
) and Tcl footer (modtclfooter
) in module files (#954, #974)
- added toolchain definitions for ‘common’ toolchains:
- various bug fixes, including:
easyblocks
- added one new generic easyblock: CmdCp (#395)
- added support for 2 new software packages that requires customized support:
- various enhancements, including:
- updated ABAQUS easyblock so that it works for version 13.2 (#406)
- enhance BLAT easyblock by using
super
’sbuild_step
andprebuildopts
/buildopts
(#423) - enhance Mothur easyblock to guess correct start dir for recent versions (#424)
- replace use of deprecated (pre)makeopts with (
pre
)``buildopts`` in all easyblocks (#427) - fix poor mans version of toolchain compiler detection in imkl easyblock (#429)
- various bug fixes:
easyconfigs
- added example easyconfig files for 17 new software packages:
- added easyconfigs for new toolchains (#935, #944, #948):
- foss/2014b, ictce/6.3.5, intel/2014b
- added additional easyconfigs for various supported software packages: version updates, different toolchains, …
- various enhancements, including:
- various bug fixes, including: * really enable OpenMP support in FastTree easyconfigs (#947) * fix easyconfigs unit tests after changes in framework (#958)
EasyBuild v1.13.0 (May 29th 2014)¶
feature + bugfix release
framework
- make
--try-X
command line options work recursively (i.e. collaborate with--robot
) (#922)- EasyBuild will first build a full dependency graph of the specified easyconfigs, and then apply the
--try
specifications- the elements of the dependency graph for the used toolchain and its dependencies are left untouched
- this makes
eb foo-1.0-goolf-1.4.10.eb --try-toolchain=ictce,5.5.0 --robot
also work whenfoo
has dependencies - caveat: the specified easyconfig files must all use the same toolchain (version)
- EasyBuild will first build a full dependency graph of the specified easyconfigs, and then apply the
- add support for testing easyconfig pull requests from EasyBuild command line (#920, #924, #925, #932, #933, #938)
- add
--from-pr
command line option for downloading easyconfig files from pull requests - add
--upload-test-report
command line option for uploading a detailed test report to GitHub as a gist- this requires specifying a GitHub username for which a GitHub token is available, using
--github-user
- with
--dump-test-report
, the test report can simply be dumped to file rather than being uploaded to GitHub - see also https://github.com/easybuilders/easybuild/wiki/Review-process-for-contributions#testing-result
- this requires specifying a GitHub username for which a GitHub token is available, using
- add
- the
makeopts
andpremakeopts
easyconfig parameter are deprecated, and replaced bybuildopts
andprebuildopts
(#918)- both
makeopts
andpremakeopts
will still be honored in future EasyBuild v1.x versions, but should no longer be used
- both
- various other enhancements, including:
- add
--disable-cleanup-builddir
command line option, to keep the build dir after a (successful) build (#853)- the build dir is still cleaned up by default for successful builds, i.e.
--cleanup-builddir
is the default
- the build dir is still cleaned up by default for successful builds, i.e.
- also consider lib32 in paths checked for
$LD_LIBRARY_PATH
and$LIBRARY_PATH
(#912) - reorganize support for file/git/svn repositories into
repository
package, making it extensible (#913) - add support for
postinstallcmds
easyconfig parameter, to specify commands that need to be run after the install step (#918) - make
VERSION=
part in version of C environment modules tool optional, which is required for older versions (#930)
- add
- various bug fixes, including:
- fix small issues in bootstrap script: correctly determine EasyBuild version and make sure modules path exists (#915)
- fix github unit tests (#916)
- disable useless debug logging for unit tests (#919)
- fix unit test for
--skip
(#929) - make sure
start_dir
can be set based on location of unpacked first source file (#931) - the
vsc
package shipped with easybuild-framework is synced with vsc-base v1.9.1 (#935)- fancylogger (used for logging in EasyBuild) is now robust against strings containing UTF8 characters
- the
deprecated
logging function now does a non-strict version check (rather than an erroneous strict check) - the
easybuild.tools.agithub
module is removed,vsc.utils.rest
now provides the required functionality
- fix support for unpacking gzipped source files, don’t unpack
.gz
files in-place in the source directory (#936)
easyblocks
- added support for 1 new software package that requires customized support:
- Go (#417)
- various enhancements, including:
- enhance OpenFOAM easyblock so OpenFOAM-Extend fork can be built too + style fixes (#253, #416)
- enhance CPLEX easyblock by adding support for staged installation (#372)
- include support for
configure_cmd_prefix
easyconfig parameter in ConfigureMake generic easyblock (#393) - enhance GCC easyblock for building v4.9.0 and versions prior to v4.5 (#396, #400)
- enhance easyblocks for Intel ipp and itac to support recent versions (#399)
- enhance Clang easyblock: install static analyzer (#402), be more robust against changing source dir names (#413)
- enhance FoldX easyblock, update list of potential FoldX binaries to support recent versions (#407)
- add runtime patching in Boost easyblock to fix build issue with old Boost versions and recent glibc (> 2.15) (#412)
- enhance
MakeCp
generic easyblock: use location of 1st unpacked source as fallback base dir forfiles_to_copy
(#415)
- various bug fixes:
- fix installing Mathematica when X forwarding is enabled (make sure
$DISPLAY
is unset) (#391) - fix permissions of installed files in SAMtools easyblock, ensure read/execute for group/other (#409)
- fix implementation of
det_pylibdir
function in PythonPackage generic easyblock (#419, #420)- determine Python lib dir via
distutils
Python, which works cross-OS (as opposed to hardcodinglib
)
- determine Python lib dir via
- fix installing Mathematica when X forwarding is enabled (make sure
easyconfigs
- added example easyconfig files for 32 new software packages:
- APBS (#742), BayesTraits (#770), bc (#888), BitSeq (#791), CEM (#789), CVS (#888), eXpress (#786), file (#888), GEMSTAT (#861), GMAP (#594), Go (#887), iscp (#602), IsoInfer (#773), Jellyfish (#868), less (#888), libcircle (#883), mcpp (#602), MMSEQ (#795), MUSTANG (#800), OpenFOAM-Extend (#437), popt (#759), pscom (#759), psmpi2 (#759), QuadProg++ (#773), rSeq (#771), RSEQtools (#870), Ruby (#873), segemehl (#792), SOAPec (#879), SOAPdenovo2 (#874), SRA-Toolkit (#793), texinfo (#888)
- added easyconfig for new toolchain goolfc/1.4.10
- added additional easyconfigs for various supported software packages: version updates, different toolchains, …
- e.g., older versions of Boost (1.47.0), GCC (4.1-4.4), & recent versions of Clang, GCC, Lmod, etc.
- various enhancements, including:
- various bug fixes, including:
EasyBuild v1.12.1 (April 25th 2014)¶
bugfix release
framework
- return to original directory after executing a command in a subdir (#908)
- fix bootstrap with Lmod, fix issue with module function check and Lmod (#911)
easyblocks
(no changes compared to v1.12.0, simple version bump to stay in sync with easybuild-framework)
easyconfigs
(no changes compared to v1.12.0, simple version bump to stay in sync with easybuild-framework)
EasyBuild v1.12.0 (April 4th 2014)¶
feature + bugfix release
framework
- various enhancements, including:
- completed support for custom module naming schemes (#879, #904)
- a fully parsed easyconfig file is now passed to the
det_full_module_name
function - this does require that an easyconfig file matching the dependency specification is available
- a fully parsed easyconfig file is now passed to the
- added more features to better support using a shared install target with multiple users (#902, #903, #904)
- further development on support for new easyconfig format (v2.0) (#844, #848)
- not considered stable yet, so still requires using
--experimental
- not considered stable yet, so still requires using
- enhanced bootstrap script to also support Lmod and
modulecmd.tcl
module tools (#869) - added support to
run_cmd_qa
function to supply a list of answers (#887) - detect mismatch between definition of
module
function and selected modules tool (#871)- allowing mismatch now requires
--allow-modules-tool-mismatch
; an emptymodule
function is simply ignored
- allowing mismatch now requires
- provide lib64 fallback option for directories in default sanity check paths (#896)
- add support for adding JAR files to
$CLASSPATH
(#898) - enhanced and cleaned up unit tests (#877, #880, #884, #899, #901)
- code cleanup and refactoring
- get rid of global variable for configuration settings in
config.py
, use singleton instead (#874, #888, #890, #892) - track build options via singleton in
config.py
rather than passing them around all over (#886, #889) - avoid parsing easyconfig files multiple times by passing a parsed easyconfig to the easyblock (#891)
- deprecate list of tuples return type of
extra_options
static method (#893, #894) - move OS dependency check to
systemtools.py
module (#895)
- get rid of global variable for configuration settings in
- completed support for custom module naming schemes (#879, #904)
- bug fixes, including:
- fix linking with
-lcudart
if CUDA is part of the toolchain, should also include-lrt
(#882)
- fix linking with
easyblocks
- various enhancements, including:
- various bug fixes:
* Clang: disable sanitizer tests when vmem limit is set (#366)
* make sure all libraries are installed for recent Intel MKL versions (#375)
* fix appending Intel MPI include directories to
$CPATH
(#371) * statically link readline/ncurses libraries in Python and NWChem easyblocks (#370, #383, #385) * fix easyblock unit tests after changes in framework (#376, #377, #378)
easyconfigs
- added example easyconfig files for 6 new software packages:
- added easyconfigs for new toolchains:
- added additional easyconfigs for various supported software packages: version updates, different toolchains, …
- various enhancements, including:
- various bug fixes, including:
* fix Qt source_urls (#756)
* enable
-fPIC
in ncurses 5.9 ictce/5.2.0 easyconfig, just like in the others (#801) * fix unit tests after changes to framework (#763, #766, #769)
EasyBuild v1.11.1 (February 28th 2014)¶
bugfix release
framework
- various bug fixes, including:
- fix hard crash when
$LMOD_CMD
specified full path to lmod binary, butspider
binary is not in$PATH
(#861, #873) - fix bug in initialisation of repositories, causing problems when a repository subdirectory is specified (#852)
- avoid long wait when dependency resolution fails if
--robot
is not specified (#875)
- fix hard crash when
easyblocks
(no changes compared to v1.11.0, simple version bump to stay in sync with easybuild-framework)
easyconfigs
(no changes compared to v1.11.0, simple version bump to stay in sync with easybuild-framework)
EasyBuild v1.11.0 (February 16th 2014)¶
feature + bugfix release
framework
- various enhancements, including:
- add checksum support for extensions (#807)
- make checksum functionality more memory efficient by reading in blocks (#836)
- rewrite of dependency solving for speed and better reporting of missing dependencies (#806, #818)
- refactoring of
main.py
(#815, #828)- function/method signatures to pass down build options
- move functions from main.py into easybuild.framework.X or easybuild.tools
- provide better build statistics (#824)
- add –experimental,
--deprecated
and--oldstyleconfig
command line options (#838)- with
--experimental
, new but incomplete (or partially broken) features are enabled - with
--deprecated
, removed of deprecated functionality can be tested (anything deprecated will fail hard) - with
--disable-oldstyleconfig
, support for the old style configuration is disabled
- with
- define
$LIBRARY_PATH
in generated module files (#832) - more constants for source URLs (e.g. for downloads from bitbucket) (#831)
- prefer
$XDG_CONFIG_HOME
and~/.config/easybuild
over~/.easybuild
for configuration files (#820) - add support for specifying footers to be appended to generated module files (#808)
- see
--modules-footer
command line option
- see
- track version of modules tool + cleanup of
modules.py
(#839) - move actual
run_cmd
andrun_cmd_qa
implementations fromtools.filetools
intotools.run
(#842, #843) - add support for generating modules that support recursive unloading (#830)
- see
--recursive-module-unload
command line option
- see
- add flexibility support for specifying OS dependencies (#846)
- alternatives can be specified, e.g. (
openssl-devel
,libssl-dev
)
- alternatives can be specified, e.g. (
- initial (incomplete) support for easyconfig files in new format (v2.0) (#810, #826, #827, #841)
- requires
--experimental
to be able to experiment with format v2 easyconfig files
- requires
- various bug fixes, including:
- fix problems with use of new-style configuration file (#821)
- fix removal of old build directories, unless
cleanupoldbuild
easyconfig parameter is set (#809) - fix support for different types of repository path specifications (#814)
- fix unit tests sensitive to
$MODULEPATH
and available easyblocks (#845)
easyblocks
- added one new generic easyblock:
VSCPythonPackage
(#348) - added support for 1 new software package that requires customized support:
- netcdf4-python (#347)
- various enhancements, including:
- add support for installing recent tbb versions (#341)
- use
makeopts
in the build step of the genericPythonPackage
easyblock (#352) - define the
$CMAKE_INCLUDE_PATH
and$CMAKE_LIBRARY_PATH
in the genericCMakeMake
easyblock (#351, #360) - update Clang easyblock to support v3.4 (#346)
- make sure Python is built with SSL support, adjust Python easyblock to pick up OpenSSL dep (#359)
- note: providing OpenSSL via an OS package is still recommended, such that security updates are picked up
- add support for recent netCDF versions (#347)
- update SuiteSparse easyblock for new versions, and clean it up a bit (#350)
- various bug fixes:
- fix name of
VersionIndependentPythonPackage
easyblock, deprecateVersionIndependendPythonPackage
easyblock (#348) - fix detection of machine architecture in FSL easyblock (#353)
- fix bug in NWChem easyblock w.r.t. creating local dummy
.nwchem
file (#360) - make sure
$LIBRARY_PATH
is set for Intel compilers and Intel MPI, fix 64-bit specific paths (#360)
- fix name of
easyconfigs
- added example easyconfig files for 30 new software packages:
- argtable (#669), Clustal-Omega (#669), Coreutils (#582), GMT (#560), gperftools (#596), grep (#582), h4toh5 (#597), libunwind (#596), Lmod (#600, #692), Lua (#600, #692), MAFFT (#654), Molekel (#597), NEdit (#597), netcdf4-python (#660), nodejs (#678), OCaml (#704), patch (#582), PhyML (#664), PRACE Common Production Environment (#599), protobuf (#680), python-dateutil (#438), sed (#582), sickle (#651), Tesla-Deployment-Kit (#489), TREE-PUZZLE (#662), VCFtools (#626), Vim (#665), vsc-mympirun-scoop (#661), vsc-processcontrol (#661), XZ (#582)
- added additional easyconfigs for various supported software packages: version updates, different toolchains, …
- OpenSSL with ictce toolchain (#703)
- various enhancements, including:
- various bug fixes, including:
EasyBuild v1.10.0 (December 24th 2013)¶
feature + bugfix release
framework
- various enhancements, including:
- set unique default temporary directory, add
--tmpdir
command line option (#695) - add support for computing and verifying source/patch file checksums (#774, #777, #779, #801, #802)
- cfr.
checksums
easyconfig parameter
- cfr.
- add support for eb –confighelp, which prints out an example configuration file (#775)
- add initial support for
eb
tab completion in bash shells (#775, #797, #798)- see also https://github.com/easybuilders/easybuild/wiki/Setting-up-tab-completion-for-bash
- note: may be quite slow for now
- enhancements for using Lmod as modules tool (#780, #795, #796):
- ignore Lmod spider cache by setting
$LMOD_IGNORE_CACHE
(requires Lmod 5.2) - bump required Lmod version to v5.2
- get rid of slow workaround for detecting module directories (only required for older Lmod versions)
- fix version parsing for Lmod release candidates (rc)
- improve integration with lmod spider by adding
Description: `` prefix to ``module-whatis
field of module
- ignore Lmod spider cache by setting
- add
--dry-short-short
/-D
and--search-short
/-S
command line options (#781) - add toolchain definition for ‘gompic’, intended for using with CUDA-aware OpenMPI (#783)
- add support for specifying multiple robot paths (#786)
- add various source URL constants, add support for
%(nameletter)s
and%(nameletterlower)s
templates (#793) - add
buildininstalldir
easyconfig parameter (#794) - add
--ignore-osdeps
command line option (#799, #802)
- set unique default temporary directory, add
- various bug fixes, including:
- enable
-mt_mpi
compiler flag if bothusempi
andopenmp
toolchain options are enabled (#771) - only use
libmkl_solver*
libraries for Intel MKL versions prior to 10.3 (#776) - fix toolchain support for recent Intel tools (#785)
- code style fixes in
main.py
to adhere more to PEP8 (#789) - make sure
easyblock
easyconfig parameter is listed ineb -a
(#791) - fix error that may pop up when using
skipsteps=source
(#792)
- enable
easyblocks
- added one new generic easyblock:
VersionIndependendPythonPackage
(#329, #334) - added support for 2 new software packages that require customized support:
- various enhancements, including:
- fix support for recent SAMtools version (>= 0.1.19) (#320)
- fix support for recent Intel tools (icc, ifort, imkl, impi) (#325, #327, #338)
- enhance generic easyblock for installing RPMs (#332)
- pick up
preinstallopts
in genericPythonPackage
easyblock (#334) - enhance CP2K easyblock (libxc support, new versions) + style cleanup (#336)
- various bug fixes:
- use unwanted env var functionality to unset
$MKLROOT
rather than failing with an error (#273) - always include
-w
flag for preprocessor to suppress warnings that may break QuantumESPRESSO configure (#317) - link with multithreaded LAPACK libs for ESMF (#319)
- extend
noqanda
list of patterns in CUDA easyblock (#328, #337) - add
import _ctypes
to Python sanity check commands to capture a common build issue (#329) - bug fixes in generic
IntelBase
easyblock (#331, #333, #335)- remove broken symlink
$HOME/intel
if present - fix use of gettempdir to obtain a common (user-specific) tmp dir to symlink
$HOME/intel
to
- remove broken symlink
- fix build of recent scipy versions with GCC-based toolchain (#334)
- fix use of gettempdir to obtain common (user-specific) tmp dir for
$HOME/.nwchemrc
symlink (#340, #342) - extend
noqanda
list in Qt easyblock (#342)
- use unwanted env var functionality to unset
easyconfigs
- added example easyconfig files for 18 new software packages:
- BEDTools (#579, #632, #635), CAP3 (#548), CHARMM (#584), cutadapt (#620), ErlangOTP (#556, #630), Ghostscript (#547, #632), HTSeq (#554, #632), Jansson (#545), libjpeg-turbo (#574), Molden (#566), netloc (#545), o2scl (#633), packmol (#566), PP (#405), qtop (#500), TAMkin (#566), vsc-base (#621), vsc-mympirun (#621)
- added easyconfigs for new toolchains (#545, #609, #629):
- gcccuda/2.6.10, gompic/2.6.10, goolfc/2.6.10, ictce/6.0.5, ictce/6.1.5
- added additional easyconfigs for various supported software packages: version updates, different toolchains, …
- various enhancements, including:
- various bug fixes, including:
- provide alternative download URL for Mesa (#532)
- add Python versionsuffix in OpenBabel filenames (#566)
- apply no-gets patch in all M4 v1.4.16 easyconfigs (#623)
- fix patching of Python w.r.t.
libffi
/_ctypes
issues (#625, #642) - bug fixes in GROMACS easyconfigs (#606)
- change versionsuffix for non-MPI GROMACS easyconfigs to
-mt
- stop using ‘CMakeMake’ easyblock for GROMACS now that there’s a dedicated GROMACS easyblock, which correctly specifies building against external BLAS/LAPACK libraries
- change versionsuffix for non-MPI GROMACS easyconfigs to
- fix Qt dependency for CGAL (#642)
- fix libctl, libmatheval, Meep, PSI build issues caused by full paths in
guile-config
/python-config
shebang (#642) - make sure HDF easyconfigs specify dedicated
include/hdf
include dir (#642)- this is required to avoid build issues with NCL, because HDF ships it’s own
netcdf.h
- this also triggered removal of patch files for NCL that rewrote
include/hdf
toinclude
- this is required to avoid build issues with NCL, because HDF ships it’s own
- fix WPS v3.5.1 patch file after upstream source tarball was changed, supply checksum for verification (#642)
EasyBuild v1.9.0 (November 17th 2013)¶
feature + bugfix release
framework
- add support for Tcl environment modules (
modulecmd.tcl
) (#728, #729, #739)- special care was taken to make sure also the DEISA variant of
modulecmd.tcl
can be used
- special care was taken to make sure also the DEISA variant of
- code refactoring to prepare for supporting two formats for easyconfig files (#693, #750)
- this prepares the codebase for supporting easyconfig format v2.0
- some initial work on adding support for the new easyconfig format is included, but it’s by no means complete yet
- the current easyconfig format (now dubbed v1.0) is still the default and only supported format, for now
- for more details, see https://github.com/easybuilders/easybuild/wiki/Easyconfig-format-two
- various other enhancements, including:
- include a full version of vsc-base (see the
vsc
subdirectory) (#740)- this is a first step towards switching to using vsc-base as a proper dependency
- implement get_avail_core_count function in systemtools module that takes cpusets and co into account (#700)
- the
get_core_count
function is now deprecated
- the
- add
impmkl
toolchain definition (#736) - make regtest more robust: put holds on jobs without dependencies, release holds once all jobs are submitted (#751)
- add support for specifying multiple alternatives for sanity check paths (#753)
- add
get_software_libdir
function to modules.py (along with unit tests) (#758) - add support for more file extensions and constants w.r.t. sources (#738, #760, #761)
- add MPICH2 support in
mpi_cmd_for
function (#761)
- include a full version of vsc-base (see the
- various bug fixes, including:
- fix checking of OS dependencies on Debian/Ubuntu that have
rpm
command available (#732) - make unit tests more robust w.r.t. non-writeable
/tmp
and loaded modules prior to starting unit tests (#752, #756) - also call
EasyBlock
’s sanity check inExtensionEasyblock
if paths/commands are specified in easyconfig (#757) - set compiler family for dummy compiler, add definition of toolchain constant for dummy (#759)
- fix checking of OS dependencies on Debian/Ubuntu that have
- other
easyblocks
- added support for 8 new software packages that require customized support:
- various enhancements, including:
- add support building ScaLAPACK on top of MPICH2, required for gmpolf toolchain (#274)
- add support to ConfigureMake easyblock to customize configure
--prefix
option (#287) - add support for specifying install command in Binary easyblock (#288)
- enhance CMakeMake easyblock to specify srcdir via easyconfig parameter, and to perform out-of-source builds (#303)
- various bug fixes:
- use correct configure flag for Szip in HDF5 easyblocks, should be
--with-szlib
(#286, #301) - add support for serial HDF5 builds (#290, #301)
- enhance robustness of Qt easyblock w.r.t. interactive configure (#295, #302)
- enhance support for picking up license specification via environment variables (#298, #307)
- extend list of values for
$CPATH
in libint2 easyblock (#300) - fix
extra_options
super
call in Clang easyblock (#306) - add support in Boost easyblock to specify toolset in easyconfig file (#308)
- use correct configure flag for Szip in HDF5 easyblocks, should be
- other:
- add build status badges for master/develop branches to README (#289)
easyconfigs
- added example easyconfig files for 58 new software packages:
- Allinea (#468), ARB + dependencies (#396, #493, #495), arpack-ng (#451, #481), CDO (#484, #521), Cube (#505), ed (#503), FLTK (#503), GenomeAnalysisTK (#467), GIMPS (#527), GTI (#511), IPython (#485, #519), LWM2 (#510), MPICH2 (#460), MUST (#511), ncdf (#496, #522), OPARI2 (#505), OpenBabel (#504, #524), OTF (#505), OTF2 (#505), PandaSEQ (#475), ParaView (#498, #514), ParFlow (#483, #520), PCC (#486, #528), PDT (#505), picard (#467), PnMPI (#511), PyQuante (#499, #523), pysqlite (#519), Scalasca (#505), Score-P (#505), SDCC (#486, #528), Silo (#483, #520), Stride (#503), SURF (#503), TCC (#486, #528)
- ARB dependencies (23): fixesproto, imake, inputproto, kbproto, libICE, libSM, libX11, libXau, libXaw, libXext, libXfixes, libXi, libXmu, libXp, libXpm, libXt, lynx, motif, printproto, Sablotron, xbitmaps, xextproto, xtrans
- added easyconfigs for new gmpich2/1.4.8, gmpolf/1.4.8 and goolf/1.6.10 toolchains (#460, #525, #530)
- added additional easyconfigs for various software packages (list too long to include here)
- version updates, different toolchains, …
- various bug fixes, including:
- other
- add build status badges for master/develop branches to README (#490)
EasyBuild v1.8.2 (October 18th 2013)¶
bugfix release
framework
- fix regular expression used for obtaining list of modules from
module avail
(#724)- modules marked as default were being hidden from EasyBuild, causing problems when they are used as dependency
easyblocks
- fix installing of EasyBuild with a loaded EasyBuild module (#280)
- this is important to make upgrading to the latest EasyBuild version possible with a bootstrapped EasyBuild
easyconfigs
- port thread pool patch to PSI 4.0b4 and include it to avoid hanging tests (#471)
EasyBuild v1.8.1 (October 14th 2013)¶
bugfix release
- various bug fixes, including:
- fix bugs in regtest procedure (#713)
- force 2nd and 3rd attempt of build in case 1st attempt failed
- fix copying of install log to install directory (#716)
- only create first source path if multiple paths are specified (#718)
- detect failed PBS job submission by checking obtained job ID for
None
value (#713, #717, #719, #720)
- fix bugs in regtest procedure (#713)
easyblocks
- various bug fixes:
easyconfigs
- added additional easyconfigs for various software packages (#457):
- Boost, bzip2, libreadline, ncurses, PSI, Python, zlib
- various bug fixes, including:
EasyBuild v1.8.0 (October 4th 2013)¶
feature + bugfix release
framework
- add support for using alternative module naming schemes (#679, #696, #705, #706, #707)
- see https://github.com/easybuilders/easybuild/wiki/Using-a-custom-module-naming-scheme for documentation
- module naming scheme classes that derive from the ‘abstract’
ModuleNamingScheme
class can be provided to EasyBuild- the Python module providing the class must be available in the
easybuild.tools.module_naming_scheme
namespace - a function named
det_full_module_name
must be implemented, that determines the module name in the form of an string based on the supplied dictionary(-like) argument
- the Python module providing the class must be available in the
- the active module naming scheme is determined by EasyBuild configuration option
--module-naming-scheme
- for now, only the
name
/version
/versionsuffix
/toolchain
easyconfig parameters are guaranteed to be provided- consistently providing all easyconfig parameters (i.e., also for dependencies) requires more work (see #687)
- implementing this involved a number of intrusive changes:
- the API of the modules.py module needed to be changed, breaking backward compatibility
- the function for which the signatures were modified are considered to be internal to the framework, so this should have very minor impact w.r.t. easyblocks not included with EasyBuild
- affected functions include:
available
,exists
,show
,modulefile_path
,dependencies_for
- the format for specifying dependencies was extended, to allow for specifying a custom toolchain
- this allows to fix inaccurate dependency specifications,
for example:
('OpenMPI', '1.6.4-GCC-4.7.2')" to "('OpenMPI', '1.6.4', '', ('GCC', '4.7.2'))
- see also easyconfigs#431
- this allows to fix inaccurate dependency specifications,
for example:
- the recommended version for Lmod was bumped to v5.1.5
- using earlier 5.x version still works, but may be very slow when ‘available’ is used, due to bugs and a missing feature in Lmod versions prior to v5.1.5 on which we rely
- the API of the modules.py module needed to be changed, breaking backward compatibility
- various other enhancements, including:
- various bug fixes, including:
- avoid importing toolchain modules over and over again to make toolchain constants available in toolchain module (#679 <https://github.com/easybuilders/easybuild-framework/pull/679>)
- only change the group id if current gid is different from what we want in
adjust_permissions
function (#685 <https://github.com/easybuilders/easybuild-framework/pull/685>) - restore original environment after running ‘module purge’ (#698 <https://github.com/easybuilders/easybuild-framework/pull/698>)
- important sidenote: this results in resetting the entire environment, and has impact on the sanity check step;
- any environment variables that are set before the EasyBlock.sanity_check_step method fires, are no longer there when the sanity check commands are run (cfr. easyblocks#268)
easyblocks
- added one new generic easyblock:
BinariesTarball
(#255) - added support for 5 new software packages that require customized support:
- various enhancements, including:
- various bug fixes:
- add zlib lib dir in link path dirs for WPS (#249)
- stop using deprecated
add_module
function in imkl easyblock (#250) - fixed PSI easyblock w.r.t. support for building plugins (#254, #269)
- move OS check for Clang to
check_readiness_step
, to allow a build job to be submitted from SL5 (#263, #264) - enable verbose build for DOLFIN, to allow for proper debugging if the build fails (#265)
- make sure
$LDFLAGS
and$INSTANT_*_DIR
env vars are set for DOLFIN sanity check commands (#268)- this is required after resetting the environment after running module purge (see framework release notes)
- don’t try to load module in LAPACK test-only build (#264, #266)
easyconfigs
- added example easyconfig files for 9 new software packages:
- added additional easyconfigs for goalf, gompi, ClangGCC, cgmvapich2, cgmvolf toolchains (#350, #441)
- added additional easyconfigs for various software packages:
- ATLAS, Bison, bzip2, Clang, CMake, cURL, EasyBuild, expat, FFTW, GDB, gettext, git, HPL, LAPACK, libreadline, M4, METIS, MVAPICH2, Mercurial, ncurses, OpenBLAS, OpenMPI, ParMETIS, Python, ScaLAPACK, SCOTCH, Valgrind, zlib
- various ‘bug’ fixes, including:
- fix source URL for lockfile in Python easyconfigs (#428)
- correct dependency specifications w.r.t. versionsuffix and toolchain (#431)
- this is required to support building the affected easyconfigs with a custom module naming scheme
- correct PSI patch file to avoid errors w.r.t. memcpy not being in scope (#446)
- fix gettext build with adding
--without-emacs
configure options, add gettext as dependency for a2ps (#448) - exclude EMACS support in a2ps because of build failures (#452)
EasyBuild v1.7.0 (September 2nd 2013)¶
feature + bugfix release
framework
- various enhancements, including:
- also search for patch files in directory where easyconfig file is located (#667)
- reduce false positives in reporting of possible errors messages (#669)
- make module update
$ACLOCAL
if a share/aclocal subdir is found (#670) - add
unwanted_env_vars
easyconfig parameter to list environment variables to unset during install procedure (#673) - add support for updating list easyconfig values (next to string values) (#676)
- add
--dry-run
command line option which prints installation overview for specified easyconfig files (#677)
- various bug fixes, including:
* ensure that all extensions are listed in
$EBEXTSLISTX
set by module, also when using--skip
(#671) * report reason for failed sanity check for extensions (#672, #678) * fix--list-toolchains
command line option (#675)
easyblocks
- added support for 3 new software packages that require customized support:
- various enhancements, including:
- allow building OpenFOAM without 3rd party tools (#230)
- also add sitelib path to
$PERL5LIB
, refactor code to add genericget_site_suffix
function (#232, #233) - support building imkl FFT wrappers using MVAPICH2 MPI library (#234)
- remove libnpp from CUDA sanity check to support installing CUDA v5.5 (#238)
- pick up
$INTEL_LICENSE_FILE
for Intel tools, if it is set (#243) * note: gets preference overlicense_file
easyconfig parameter
- various bug fixes:
- call WRF build script with ‘
tcsh <script>
to ensure that tcsh available in$PATH
is used (#231) - make sure some environment variables that may disrupt the GCC install procedure are unset (#237)
* e.g.,
$CPATH
,$C_INCLUDE_PATH
,$CPLUS_INCLUDE_PATH
,$OBJC_INCLUDE_PATH
,$LIBRARY_PATH
- code cleanup in GEANT4 easyblock: use
self.version
(instead ofself.get_installversion()
) (#242) - enhance list of
noqanda
patterns for CUDA, to get less failing installations (#244)
- call WRF build script with ‘
easyconfigs
- added example easyconfig files for 15 new software packages:
- added additional easyconfigs for various software packages:
- BLAST, BamTools, BioPerl, Bison, Boost, bzip2, CMake, Cython, CUDA, FFTW, FIAT, GCC, GMP, gettext, git, h5py, HDF5, libffi, libreadline, libxc, matplotlib, METIS, ncurses, Oases, Python, RAxML, ScientificPython, Szip, tcsh, imkl, MVAPICH2, TotalView, VTune, WRF, zlib
- added toolchain easyconfig files for HPCBIOS policies (#402, #407)
- HPCBIOS_BioInfo, HPCBIOS_Debuggers, HPCBIOS_LifeSciences, HPCBIOS_Math, HPCBIOS_Profilers
- various enhancements, including:
- added more XML Perl modules to non-bare Perl easyconfigs (#375)
- various ‘bug’ fixes, including:
- fix website/description in scipy easyconfigs (#399)
- specify OpenMPI libibverbs-dev(el) OS dependency in an OS-dependent way (#403)
- add patch file for M4 to fix building on systems with recent glibc (>=2.16) (#406)
- align moduleclass in R easyconfigs (#411)
- fixed filename of Biopython/CD-HIT easyconfig files (#407)
- disable parallel building of otcl (#419)
EasyBuild v1.6.0 (July 11th 2013)¶
feature + bugfix release
framework
- added support for using Lmod as module tool (#645)
- various other enhancements, including:
- various bug fixes, including:
easyblocks
- added support for 2 new software packages that require customized support:
- various enhancements, including:
- various bug fixes:
- make sure EasyBuild configuration is initialized when running unit tests (#220)
- make Boost easyblock pick up configopts easyconfig parameter (#221)
- add
-DMPICH_IGNORE_CXX_SEEK
compiler flag for Mothur when MPI support is enabled (#222) - fix Boost sanity check, only check for
libboost_python.so
if Python module is loaded (#223) - enhance Trinity support w.r.t. jellyfish (#225, #227)
- fix checking for
beagle-lib
dep (deprecate checking for BEAGLE) for MrBayes (#228)
easyconfigs
- added example easyconfig files for 26 new software packages:
- ALLPATHS-LG (#359), AutoMake (#347), BamTools (#319, #338), BLAT (#340), Biopython (#356), cairo (#361), CCfits (#327), CD-HIT (#344), CFITSIO (#327), Diffutils (#347), FASTA (#358, #361), findutils (#347), fontconfig (#361), gawk (#347), gettext (#361), GLIMMER (#357, #361), libidn (#361), LibTIFF (#347), libungif (#347), make (#355), MUSCLE (#339), Oases (#354), pixman (#361), PLINK (#352), RCS (#347), SQLite (#347)
- added additional easyconfigs for various software packages:
- ant, Bash, Bison, bzip2, cURL, expat, GCC, EasyBuild, freetype, FFTW, GDB, git, HMMER, JUnit, libreadline, libpng, libtool, libxml2, libxslt, M4, makedepend, Mothur, MVAPICH2, Mercurial, ncurses, OpenBLAS, Python, ScaLAPACK, Tcl, tcsh, TopHat, Trinity, Valgrind, Velvet, VTune, zlib (see #169, #297, #298, #301, #309, #323, #331, #332, #341, #347, #349, #351, #355, #361)
- various enhancements, including:
- added easyconfigs for
ictce/5.4.0
,ictce/5.5.0
andgmvolf/1.7.12
toolchain modules (#297, #332, #349) - added a template sanity_check_paths as ‘MUST’ in TEMPLATE.eb (#329)
- introduced biodeps ‘toolchain’ to ease keeping common dependencies for bio* software in sync (#309)
- added collection of easyconfigs for ictce/5.3.0 (#309, #323)
- bam2fastq, bbFTP, BLAST, Boost, DL_POLY Classic, EMBOSS, FFTW, libharu, libxml2, libxslt, libyaml, lxml, Mercurial, Mothur, mpi4py, ncurses, ns, orthomcl, otcl, PAML, Perl, PyYAML, pandas, problog, scikit-learn, TiCCutils, TiMBL, TinySVM, TopHat, tclcl, YamCha
- added missing dependencies for various software packages (#323, #328, #348, #361)
- style fixes in various easyconfigs (#309, #323, #345, #349, #355, #361)
- added easyconfigs for
- various ‘bug’ fixes, including:
- added
pic
toolchain option for Perl goolf easyconfig (#299) - fixed source URLs for R (use correct template
%(version_major)s
) (#302) - synced libreadline easyconfigs w.r.t. ncurses dependency (#303)
- make sure EasyBuild configuration is initialized when running unit tests (#334)
- specify
lowopt
(-O1) optimization level for OpenIFS, to avoid floating-point related issues (#328) - fix naming of ‘beagle-lib’ (used to be ‘BEAGLE’), to avoid name clashes with other software package(s) (#346)
- added
EasyBuild v1.5.0 (June 1st 2013)¶
feature + bugfix release
framework
- various enhancements, including:
- define
SHLIB_EXT
constant for shared library extension (.so
,.dylib
), deprecateshared_lib_ext
global var (#630) - enhance support for sanity checking extensions (#632, #649)
- add support for
modextrapaths
easyconfig parameter (#634, #637) - allow
source_urls
to be templated for extensions (#639, #646, #647) - set
OMPI_*
environment variables for OpenMPI (#640) - make BLACS optional as toolchain element, depending on ScaLAPACK version (#638)
- define
- various bug fixes, including:
easyblocks
- added one new generic easyblock:
MakeCp
(#208) - added support for 5 new software packages that require customized support:
- various enhancements, including:
- various bug fixes:
easyconfigs
- added example easyconfig files for 23 new software packages:
- bam2fastq (#287), CBLAS (#263), EMBOSS (#265, #290), FCM (#272), FRC_align (#273), freeglut (#271), FreeSurfer (#271), FSL (#271), GATK (#287), libharu (#290), libxslt (#235), MariaDB (#292), Mothur (#265) mpi4py (#276), OpenIFS (#272), orthomcl (#265), PAML (#287), pandas (#262), phonopy (#235), problog (#277), PSI (#258), PyYAML (#235), RAxML (#277)
- added additional example easyconfig files for:
- ABINIT (#235), ACML (#267), BLAST (#275), Boost (#273), BWA (#270), bzip2 (#263), Chapel (#240), CMake (#290), FFTW2 (#247, #267), flex (#267), freetype (#235), grib_api (#272), gzip (#265), Java (#279), libpng (#240, #279), libreadline (#267), libxml2 (#235), libxml (#235), matplotlib (#235), MCL (#265), MUMmer (#265), ncurses (#267), numpy (#267), OpenFOAM (#267), Perl (#265), Python (#276, #263), R (#240, #279), SCOTCH (#267), ScaLAPACK (#267), TopHat (#289), Valgrind (#255), zlib (#267)
- various enhancements, including:
- various ‘bug’ fixes, including:
- get rid of hardcoded license_file paths for VTune, Inspector (#253)
- assign proper moduleclass where they were missing (#278)
- fix naming for LZO (#280)
- make unit tests clean up after themselves more thoroughly (#283, #284, #285, #286)
- fix TopHat dependencies (#289)
- fix source URLs for XML (#279)
- fix versions for all listed R extensions (#279)
- fix CUDA easyconfig file for use on Debian Squeeze (#291)
- correct easyconfig filename and module name mismatches (bbcp, DL_POLY Classic, …) (#295)
EasyBuild v1.4.0 (May 2nd 2013)¶
feature + bugfix release
framework
- the unit tests for easybuild-framework were moved to test/framework, to make things consistent with easybuild-easyblocks and easybuild-easyconfigs (#611, #613, #624)
- running the framework unit tests should now be using
python -m test.framework.suite
- running the framework unit tests should now be using
- various other enhancements, including:
- various bug fixes, including:
- fixed default value for
--stop
(#601) - remove useless
sleep()
calls inrun_cmd
,run_cmd_qa
(#599) - determine module path based on class name, not software name (#606)
- remove unwanted characters in build dirs (#591, #607)
- ignore some error codes spit out by modulecmd that are actually warnings (#609)
- fix
agithub.py
w.r.t. changes in GitHub API (user-agent string is now obligatory for non-authenticated connections) (#617) - fix typo breaking the
adjust_cmd
decorator on SuSE (#615) - fix prepending paths with absolute paths in module file (#621)
- clean up open file handles properly (#620, #624)
- fix
--search
help and implementation (#622)
- fixed default value for
easyblocks
- added a unit test suite for easyblocks (#175, #177, #178)
- every easyblock is parsed and instantiated as a sanity check
- added one new generic easyblock:
PerlModule
(#183) - added support for 8 new software packages that require customized support:
- the
CMakeMake.configure_step
parameterbuilddir
was renamed tosrcdir
, because the namebuilddir
is incorrect (#151)builddir
will remain supported for legacy purposes up until v2.0
- various enhancements, including:
- reverted back to hardcoding Python library path, since it’s hardcoded by setuptools too (#184)
- added MPICH support in ScaLAPACK easyblock (#172)
- enhanced NCL easyblock: add support UDUNITS and ESMF dependencies (#171)
- enhanced MATLAB easyblock: avoid hardcoding Java options, make sure
$DISPLAY
is unset, extend list of sanity check paths (#181) - enhanced TotalView easyblock: add support for license file (#146)
easyconfigs
- added a unit test suite for easyconfigs (#228, #230)
- added example easyconfig files for 20 new software packages: * ABAQUS (#231), BioPerl (#242), Bowtie (#227), Clang (#177), CRF++ (#131), DL_POLY Classic (#132), ESMF, GROMACS (#165), HH-suite (#219), Inspector (#232), likwid (#131), Perl (#242), scikit (#133), TiCCutils (#131), TiMBL (#131), TinySVM (#131), UDUNITS (#167), VTune (#232), YamCha (#131)
- add example easyconfigs for new compiler toolchains (use
eb --list-toolchains
for a full list of supported toolchains):- the newly added toolchains only differ in compilers/MPI library, and all feature OpenBLAS, LAPACK, ScaLAPACK and FFTW
- goolfc: GCC, CUDA (co-compiler), OpenMPI (#191)
- a goolfc easyconfig for GROMACS is included as proof-of-concept (#165)
- cgmpolf: Clang (C/C++ compilers), GCC (Fortran compilers), MPICH (#213)
- cgmvolf: Clang, GCC, MVAPICH2 (#218)
- cgoolf: Clang, GCC, OpenMPI (#213)
- gmvolf: GCC, MVAPICH (#202, #222)
- ported already available easyconfigs to new compiler toolchains:
- added additional example easyconfig files for:
- various enhancements, including:
- various ‘bug’ fixes, including:
- add
--enable-mpirun-prefix-by-default
configure option for all OpenMPI easyconfigs (#205)
- add
EasyBuild v1.3.0 (April 1st 2013)¶
feature + bugfix release
framework
- added script to bootstrap EasyBuild with EasyBuild, see https://github.com/easybuilders/easybuild/wiki/Bootstrapping-EasyBuild (#531)
- reorganize framework/easyconfig.py module into framework/easyconfig package with modules (#574, #580)
- support EasyBuild configuration via command line, environment variables and configuration files (#529, #552, #556, #558, #559)
- various other enhancements, including:
- extended set of unit tests for eb command line options and EasyBuild configuration (#517, #556, #559, #571)
- made
--search
also useful when easybuild-easyconfigs package is not installed (#524) - extended set of default module classes (#525)
- add support for license easyconfig parameter (which will be mandatory in v2.x) (#526, #569)
- added
setup.cfg
forsetup.py
to allow creating RPMs (#528) - added support for obtaining system information, see
get_os_*
functions ineasybuild/tools/systemtools.py
(#543, #546, #547) - added support for iterated builds that require cycling over multiple sets of configure/build/install options, e.g. FFTW (#549)
- added support for OpenBLAS as toolchain lib for linear algebra (#537, #565)
- added support for tweaking prefix and separator for library toolchain variables (
LIB*
) (#572, #576) - skip already built modules in regression testing mode, to ease regression testing (#582)
- various bug fixes, including:
* added
zip_safe
flag tosetup.py
, to silence multitude of warnings (#521) * only defineLIBFFT
for Intel MKL if FFTW interface libraries are available (#518, #567, #579) * set POSIX group early in build process, make EasyBuild aware of consistent chmod/chown failures (#527) * properly order the name/version keys for the toolchain easyconfig parameter when using--try-toolchain
(#563) * take theskipsteps
easyconfig parameter into account in regression testing mode as well (#583)
easyblocks
- added support for 2 new software packages that require customized support:
- remove
license
easyconfig parameter fromIntelBase
, since it clashes with genericlicense
parameter (#153, #158)license_file
should be used instead (see framework#569)- using
license
instead oflicense_file
will be supported until v2.x for legacy purposes
- various enhancements, including:
- stop hardcoding Python site-packages library dir, obtain it via
distutils.sysconfig
instead (#141, #156, #159, #161) - stop hardcoding list of libraries for BLAS libs, ask toolchain modules or use
$LIBBLAS
instead (#150, #155) - enhanced CP2K easyblock, following Intel guidelines for
ictce
builds (#138) - added
setup.cfg
forsetup.py
to allow creating RPMs (#140) - clean up specifying BLAS/LAPACK libs for building numpy, check whether requires patch is being used for IMKL builds (#155, #161)
- stop hardcoding Python site-packages library dir, obtain it via
- various bug fixes, including:
- added
zip_safe
flag tosetup.py
, to silence multitude of warnings (#135) - install EasyBuild packages in reversed order to avoid funky setuptools issues (#139)
- fixed a typo in the ScaLAPACK easyblock, and set CCFLAGS and FCFLAGS for v2.x (#149, #162)
- fix sanity check for python-meep (#159)
- exclude Python tests from DOLFIN sanity check, since they hang sometimes (#161)
- add support in ALADIN easyblock for answering question on location of
libgrib_api.a
(#165)
- added
easyconfigs
- added example easyconfig files for 13 new software packages:
- Bash, CUDA, ccache, Ferret, gzip, libxc, ns, numactl, OpenBLAS, otcl, Tar, tclcl, tcsh
- several of these easyconfig files were contributed by attendees of the EasyBuild hackathon in Cyprus!
- added example easyconfigs for goolf toolchain (#158)
- added example easyconfigs for builds with goolf toolchain, i.e. for all goalf easyconfigs (#189)
- for several software packages, a patch file was needed to get them to build with GCC 4.7:
- AMOS, BEAGLE, Cufflinks, DOLFIN, GATE, ns, Pasha, Trilinos, Trinity
- for PETSc, a patch file was required to make it build with a toolchain that doesn’t include BLACS
- for several software packages, a patch file was needed to get them to build with GCC 4.7:
- added additional example easyconfig files for:
- gompi, hwloc, LAPACK, MVAPICH2, OpenMPI, ScaLAPACK
- various enhancements, including:
- define a proper module class in all easyconfigs, cfr. default module classes defined in framework (#150, #159, #161, #162, #179, #181)
- extend FFTW easyconfig to ‘fat’ builds that include single, double, long double and quad precision libraries in the same module
- quad precision is disabled for Intel compiler based builds (it requires GCC v4.6+)
- the imkl easyconfigs used for the ictce 3.2.2.u3 toolchain now also enable FFTW interfaces
- various ‘bug’ fixes, including:
- fix filename for Mercurial and ROOT easyconfig files
- fix homepage/description for Hypre
- fix enabling OpenMP support in OpenMPI: use
--enable-openmp
, not--with-openmp
- use correct configure flag for enabling OpenMPI threading support in v1.6 (#186)
--enable-mpi-thread-multiple
instead of--enable-mpi-threads
- explicitly add
--without-openib --without-udapl
configure options in OpenMPI easyconfig using versionsuffix-no-OFED
(#168)- this avoids that OpenMPI auto-detects that it can enable Infiniband (OpenIB) support, which doesn’t fit the -no-OFED versionsuffix
- Note: this makes goalf-1.1.0-no-OFED effectively not suitable to produce software builds that are IB-capable!
- remove explicit
--with-udapl
from OpenMPI easyconfigs, does more harm than good (#178) - remove libibvers, libibmad, libibumad as explicit dependencies for OpenMPI/MVAPICH2 (#173, #182)
- leave it up to the OS to provide these, since the required version is too much tied to the version of IB drivers
- use
license_file
in Intel tools easyconfigs, as opposed to the new genericlicense
parameter with a different meaning (#180) - modify patch for impi to avoid installation problems due to hardcoded path in /tmp (#185)
- now uses
$USER-$RANDOM
subdir to avoid clashes between different users on the same system
- now uses
- the patch file for numpy was extended to also supporting ATLAS and other BLAS libraries spread across multiple directories
- the extension for ATLAS is required because we now no longer rely on the automatic numpy mechanism to find the ATLAS libs
- fixed dependencies:
- libibumad as dependency for libibmad
- ncurses as dependency for libreadline
- ncurses and zlib as dependency for SAMtools (+ enhanced patch)
- remove explicit FFTW dependency for Meep, … since toolchain already provided FFTW
EasyBuild v1.2.0 (February 28th 2013)¶
feature + bugfix release
framework
- new backend module for option parsing: generaloption
- support for using constants and string templates in easyconfig files
- currently disabled for
exts_filter
andexts_list
easyconfig parameters, for backward compatibility
- currently disabled for
- various other enhancements, including:
- support for iqacml and iiqmpi toolchains (Intel compilers + QLogic MPI based)
- clearer errors messages when sanity check failed
- unit tests for (about half of) the
eb
command line options - support for specifying build/install steps to skip in easyconfig file (
skipsteps
) - support for allowing certain dependencies to be resolved by the system instead of modules (
allow_system_deps
) - cache ppn value required by regtest, clean up temporary files let behind by
--regtest
/--job
- make sure MPD is used as process manager for Intel MPI (required for impi v4.1 and later)
- rename template names
name
andversion
used in exts_filter toext_name
,ext_version
name
andversion
are still supported for legacy reasons
- cleaned up module docstrings w.r.t. list of authors
- various bug fixes, including:
- print correct (lowercase) toolchain names with
--list-toolchains
- correct easyconfig parameter name
license_server_port
- fix string quoting in develop modules
- ensure
modulecmd
is run with original$LD_LIBRARY_PATH
value- to avoid breaking
modulecmd
, see https://bugzilla.redhat.com/show_bug.cgi?id=719785
- to avoid breaking
- remove use of hardcoded files/dirs in unit tests
- fix various inconsistencies w.r.t. paths considered with
--robot
- various cleanup and fixes w.r.t. logging
- use correct logger instance in main script
- stop passing logger instances around
- make module logging variables private
- get rid of
ModuleGenerator
deconstructor, clean up viaEasyBlock.clean_up_fake_module
- fix disabling of
optarch
toolchain option (and extend unit tests to check on this)
- print correct (lowercase) toolchain names with
easyblocks
- added one new generic easyblock:
Rpm
- added support for 6 new software packages that require customized support:
- EasyBuild, EPD (Enthought Python Distribution), freetype, MATLAB, QLogic MPI (RPM), TotalView
- support for installing EasyBuild with EasyBuild enables bootstrapping an EasyBuild installation!
- various enhancements, including:
- corrections in WRF/WPS to also enable building with iqacml toolchain
- use
mpi_cmd_for
instead of hardcoding test commands, using correct Fortran compilers (F90)
- use
- fix NCL easyblock to also support v6.1.x
- use correct Fortran compiler (F90), set correct lib/include paths for dependencies (netCDF-Fortran, GDAL)
- cleanup sweep of license headers and authors list in easyblock module docstrings
- use new
ext_name
template name inexts_filter
in Python and R easyblocks
- corrections in WRF/WPS to also enable building with iqacml toolchain
- various bug fixes, including:
- general code cleanup
- don’t set
sanityCheckOK
inToolchain
easyblock - get rid of using
os.putenv
- don’t set
- NEURON easyblock: don’t hardcode number of processes used in test cases
- make sure
easybuild.easyblocks.generic
namespace is extendable
- general code cleanup
easyconfigs
- added example easyconfig files for 41 new software packages:
- a2ps, AnalyzeFMRI, aria, bbcp, bbFTP, bbftpPRO, binutils, Bonnie++, ccache, cflow, cgdb, Corkscrew, EasyBuild, Elinks, EPD, FLUENT, fmri, GDB, GDAL, gnuplot, gnutls, gperf, Iperf, lftp, libyaml, lzo, MATLAB, mc, nano, NASM, nettle, numexpr, parallel, pyTables, QLogic MPI, Stow, TotalView, Valgrind, VTK, Yasm, zsync
- added example easyconfigs for iqacml and iiqmpi toolchains
- added additional example easyconfig files for:
- ABINIT, ABySS, ACML, BFAST, Bison, BLACS, Cython, cURL, Doxygen, FFTW, flex, g2clib, g2lib, GHC, h5py, HDF, HDF5, HMMER, JasPer, icc, ictce, ifort, imkl, impi, libpng, libreadline, M4, matplotlib, MCL, MEME, mpiBLAST, NCL, ncurses, netCDF, netCDF-Fortran, NWChem, R, ScaLAPACK, Tcl, Tk, WPS, WRF, zlib
- various enhancements, including:
- fix version of xtable R library in list of extensions for R, to avoid installation failures
- various ‘bug’ fixes, including:
- fix toolchain and file names for ABINIT easyconfigs
- fix sanity check paths for cURL
- don’t disable
optarch
for WRF, it’s not needed (only disable heavy optimizations is required) - fix homepage/description for ALADIN
EasyBuild v1.1.0 (January 27th 2013)¶
feature + bugfix release
framework
- improvements w.r.t. support for software extensions (tested on Python and R, see easyblocks package)
- cleaned up support for building/installing extensions
- define
ExtensionEasyblock
class that implements support for installing extensions as stand-alone module as well - return to build dir before building/installing each extension
- define
EBEXTSLIST<NAME>
environment variable in module ifexts_list
was defined - make sure sanity check for extensions results in an error if it fails
- various enhancements, including:
- log both framework and easyblocks versions
- add support for
gimkl
,gmacml
,iccifort
,iomkl
andismkl
toolchains - define
*_SEQ compiler
variables for sequential compilers - add
--list-toolchains
command line option for listing supported toolchains - add support for customizing software and modules install path suffixes
- support both setuptools and distutils installation methods for finding installed easyconfigs
- also consider robot path in list of paths searched for patch files
- allow skipping of default extension sanity check (by setting
modulename
to False in options)
- various bug fixes, including:
- typos in toolchain Python modules w.r.t.
imkl
support, handling ofi8
/optarch
/unroll
options - purge before loading ‘fake’ module, unload ‘fake’ module before removing it, use original
$MODULEPATH
- restore environment after unloading fake module, set variables that were incorrectly unset, i.e., that were defined before as well
- unset
$TMPDIR
for builds submitted as jobs (required byIntelBase
easyblock) - correctly track easyconfig parse error
- always run all jobs in regtest, also if dependency jobs failed
- cosmetic adjustments to default EasyBuild configuration file to avoid confusion between e.g.
build_dir
andbuild_path
(only latter matters) - fix SuSe hack, only prefix command with sourcing of
/etc/profile.d/modules.sh
if it is there - leave build directory before it is removed during cleanup step
- load generated module file before running test cases
- typos in toolchain Python modules w.r.t.
easyblocks
- added 3 new generic easyblocks:
CMakePythonPackage
,JAR
,RPackage
- added support for 23 new software packages that require customized support:
- ACML, ALADIN, ant, Bioconductor (R packages), Chapel, Cufflinks, ESPResSo, FLUENT, Geant4, GHC, Java, NEURON, NWChem, PyZMQ, QuantumESPRESSO, R, Rmpi, ROOT, Rserve, SCOOP, Trinity, VSC-tools, XML
- various enhancements, including:
- clean up of
python.py
easyblock:- merge
EB_DefaultPythonPackage
andPythonPackage
easyblocks into generic easyblockPythonPackage
, which derives fromExtensionEasyblock
- move
EB_FortranPythonPackage
into dedicated genericFortranPythonPackage
easyblock module - split off support for building/installing
nose
,numpy
,scipy
into dedicatedEB_*
easyblock modules, which allows them to be built as stand-alone modules as well
- merge
- clean up testing of Python packages (
PythonPackage
easyblock) - make sure there is no
site.cfg
in home dir when building Python packages, because e.g.scipy
will pick it up - added support for building Intel MKL wrappers with OpenMPI toolchain
- cleaning up of fake module that was loaded for running tests
- move calls to functions that rely on environment up in the chain of steps (mostly for cleanup reasons)
- use better module name for UFC sanity check, minor change to sanity check paths for UFC
- clean up of
- various bug fixes, including:
- only call
make ptcheck
for ATLAS when multi-threading support is enabled - use a symbolic link for $HOME/intel instead of a randomly suffixed subdirectory in home and patching of Intel install scripts
- latter does not work anymore with recent versions of Intel tools (2013.x)
- only call
easyconfigs
- added example easyconfig files for 48 new software packages:
- ABINIT, ABySS, ACML, ALADIN, ant, BFAST, BLAST, Chapel, CLHEP, Cufflinks, ESPRresSo, GATE, GHC, Geant4, Greenlet, google-sparsehash, grib_api, HMMER, Java, JUnit, libibmad, libibumad, libibverbs, MCL, MDP, MEME, mpiBLAST, NCBI Toolkit, NEURON, NWChem, numpy, MDP, Oger, OpenPGM, paycheck, PyZMQ, QuantumESPRESSO, R, ROOT, SCOOP, scipy, Tophat, Trinity, util-linux, VSC-tools, wiki2beamer, XML, ZeroMQ
- added example easyconfigs for gmacml, gmvapich2, iccifort, ictce, iomkl toolchains
- added additional example easyconfig files for:
- ATLAS, BLACS, Boost, Bowtie2, bzip2, CP2K, Doxygen, FFTW, GCC, HDF5, hwloc, icc, ifort, imkl, impi, JasPer, Libint, libreadline, libsmm, libxml, ncurses, netCDF, M4, Meep, MVAPICH2, OpenMPI, Python, ScaLAPACK, Szip, zlib
- various enhancements, including:
- major style cleanup of all example easyconfig file (PEP008 compliance)
- added setuptools to list of Python extensions
- get rid of
parallel
versionsuffix for HDF5, as its meaningless (MPI-enabled build is always parallel)
- various ‘bug’ fixes, i.e. added missing dependencies or replaced OS dependencies with proper dependencies
EasyBuild v1.0.2 (December 8th 2012)¶
bugfix release
framework
- properly catch failing sanity check commands
- fix bug in toolchain support which cause linking environment variables set by toolchain to include too many libraries
- elements in toolchain variables were being passed by reference instead of by value
- fix selecting a compiler toolchain for a specified software package (
--software-name
) if only a template is a viable option - fix passing command line parameters with
--job
- fix list of valid stops (
-s
/--stop
) - fix minor issues in help messages (
-h
/--help
)
easyblocks
- fix typos in WIEN2k easyblock (missing commas after list elements)
easyconfigs
- fixed source URL for ligtextutils (toolchain refactoring error)
EasyBuild v1.0.1 (November 24th 2012)¶
bugfix release
framework
- fix support for installing with
distutils
(broken import insetup.py
) - fix support for ACML as a toolchain element (
toolchains/linalg/acml.py
) - add name to aggregated regtest XML so that is parsed correctly by Jenkins
- reorder code in
main.py
so that regtest also works with incomplete easyconfig paths - add bash script for running regression test and sending a trigger to Jenkins to pull in the XML with results
- get rid of assumption that loaded modules should have name like
foo/bar
, make it more flexible - retry failed builds in regtest twice to ignore fluke errors
- report leaf nodes in dependency graph when regtest is submitted
- this is required for setting job dependencies in the regtest script for the Jenkins trigger job
- implement and use rmtree2 as more (NFS) robust replacement for
shutil.rmtree
- bump max hit count for
run_cmd_qa
from 20 to 50, to make false positives of unasnwered questions less likely
easyblocks
- fix support for installing with
distutils
(broken import insetup.py
) - only build GMP/CLooG/PPL libraries during GCC build in parallel, don’t install in parallel
make -j N install
doesn’t work consistently for GMP
- fix GCC build on OS X
- location of libraries is slightly different (
lib
vslib64
dir)
- location of libraries is slightly different (
- add support to
ConfigureMake
easyblock for pre-passing tar options to configure- see
tar_config_opts
easyconfig parameter - workaround for issue with pax hanging
configure
with an interactive prompt
- see
- enhance Q&A for WRF and WIEN2k by adding entries to
qa
dict andno_qa
list - use
rmtree2
fromtools/filetools.py
as more (NFS) robust replacement forshutil.rmtree
easyconfigs
- remove patch file for OpenMPI to resolve issue with pax hanging configure
tar_config_opts
should be enabled as needed
- disable parallel build for PAPI, seems to be causing problems
EasyBuild v1.0 (November 13th 2012)¶
- split up EasyBuild across three repositories: framework, easyblocks and easyconfigs
- packaged EasyBuild, different parts can now be installed easily using
easy_install
framework
- various changes to both internal and external API:
- renamed main script to main.py (from
build.py
) - file and directory organisation
- module, class, function and function argument renaming and reorganisation
- split up
Application
intoEasyBlock
andConfigureMake
(see easybuild-easyblocks for the latter) - created
EasyConfig
class for handling easyconfig files - renaming of EasyBuild configuration parameters (non-camelCase)
- renaming of various easyconfig parameters (non-camelCase)
- rename
SOFTROOT
andSOFTVERSION
environment variables set in generated module files toEBROOT
andEBVERSION
- use ‘extension’ as generic terminology for Python packages, R libraries, Perl modules, …
- renamed main script to main.py (from
- added support for building software packages in parallel via PBS jobs
- added unit testing framework and initial set of unit tests for basic functionality
- and run them in Jenkins continuous integration service, see https://jenkins1.ugent.be/view/EasyBuild/
- implement single-command regression test (e.g. to test building all supported software)
- eb
--regtest
–robot
- eb
- switch to new style Python classes
- replaced
toolkit
module withtoolchain
package (total rewrite), providing modular support for toolchains - adjust default EasyBuild configuration to only use
$HOME/.local/easybuild
by default - added support for running EasyBuild without supplying an easyconfig file
- make EasyBuild search for a matching easyconfig file
- support automatic rewriting of an existing partially-matching easyconfig file (use this with care!)
- support for automatically generating an easyconfig file according to given specifications (best effort!)
- add support for looking for easyconfig file in Python search path if it can’t be found on specified (relative) path (that way, easyconfig files available in the easybuild-easyconfigs package can be used easily)
- various other enhancements and bug fixes, e.g.:
- extended sanity check capabilities
- cleaned up logging
- creating of devel module which allows to mimic environment that was used by EasyBuild to build the software
- support for creating dependency graphs for a set of easyconfig files
- grouped options in help output and categorised available easyconfig parameters
- more consistent code style
easyblocks
- implement class name encoding scheme, see wiki https://github.com/easybuilders/easybuild/wiki/Encode-class-names
- (non-generic) easyblock class names are now prefixed with
EB_
and non-alphanumeric characters are escaped
- (non-generic) easyblock class names are now prefixed with
- split off generic easyblocks into separate package
easyblocks.generic
- added custom support for 39 software packages:
- Armadillo, BiSearch, Boost, Bowtie2, BWA, bzip2, CGAL, CPLEX, DOLFIN, Eigen, flex, FSL, Hypre, libxml2, MetaVelvet, METIS, MTL4, MUMmer, ncurses, OpenFOAM, OpenSSL, ParMETIS, Pasha, PETSc, Primer3, python-meep, SAMtools, SCOTCH, SHRiMP, SLEPc, SOAPdenovo, SuiteSparse, SWIG, Tornado, Trilinos, UFC, Velvet, WIEN2k, XCrySDen
- various enhancements and bug fixes to existing easyblocks
easyconfigs
- added example easyconfig files for 106 new software packages:
- AMOS, Armadillo, ASE, Autoconf, BiSearch, Boost, Bowtie2, BWA, byacc, bzip2, CGAL, ClustalW2, CMake, CPLEX, cURL, CVXOPT, Cython, Docutils, DOLFIN, ECore, Eigen, expat, FASTX-Toolkit, FFC, FIAT, freetype, FSL, GEOS, git, glproto, GMP, gmvapich2, gompi, GPAW, GSL, guile, h5py, h5utils, Harminv, hwloc, Hypre, Infernal, Instant, Jinja2, libctl, libdrm, libffi, libgtextutils, libmatheval, libpciaccess, libpthread-stubs, libreadline, libtool, libunistring, libxcb, libxml2, makedepend, matplotlib, Meep, Mercurial, Mesa, MetaVelvet, METIS, MPFR, MTL4, MUMmer, ncurses, OpenFOAM, OpenSSL, ORCA, PAPI, ParMETIS, Pasha, PCRE, PETSc, petsc4py, pkg-config, Primer3, python-meep, RNAz, SAMtools, ScientificPython, SCOTCH, setuptools, Shapely, SHRiMP, SLEPc, SOAPdenovo, Sphinx, SuiteSparse, SWIG, Tcl, Theano, Tk, Tornado, Trilinos, UFC, UFL, Velvet, ViennaRNA, Viper, WIEN2k, xcb-proto, XCrySDen, xorg-macros, xproto
- added additional example easyconfig files (versions, builds) for several software packages
- Bison, BLACS, Doxygen, flex, GCC, HDF5, icc, ifort, libpng, M4, MVAPICH2, OpenMPI, Szip, tbb, zlib
- replaced GCC/OpenMPI based easyconfig files with equivalents using the gompi toolchain * ATLAS, BLACS, FFTW, LAPACK, ScaLAPACK
- enhanced Python example easyconfig files (more dependencies required for features, e.g. libreadline, bzip2, zlib, …)
- corrected file name of easyconfig files to adher to standard as followed by EasyBuild robot dependency resolver
- style cleanup in existing easyconfig files
EasyBuild v0.8 (June 29th 2012)¶
- added support for building/installing 17 additional software packages:
- BEAGLE, Doxygen, g2clib, g2lib, HDF, HDF5, JasPer, libpng, Maple, MrBayes, NCL, netCDF, netCDF-Fortran, Szip, WPS, WRF, zlib
- the build procedure for WRF and WPS includes running the tests available for these packages
- various bug fixes and enhancements:
- made support for interactive installers (
run_cmd_qa
) more robust - fixed Python git package check
- implemented toolkit functions for determine compiler family, MPI type, MPI run command, …
- made support for interactive installers (
EasyBuild v0.7 (June 18th 2012)¶
- fixed BLACS build
- diagnostic tools to determine
INTERFACE
andTRANSCOMM
values are now used
- diagnostic tools to determine
- added support for building Bison, CP2K, flex
- with regression test enabled for CP2K as part of build process
- note: BLACS built with EasyBuild prior to v0.7 needs to be rebuilt for CP2K to work correctly
- added
--enable-mpi-threads
to OpenMPI example easyconfigs- required for correct CP2K psmp build
- adjusted libsmm example easyconfig for lower build time
- to make the full regression test finish in a reasonable amount of time
- added script to make porting of easyblocks from old to new EasyBuild codebase easier
- takes care of refactoring, checks for PyLint warnings/errors, …
- fixed several small bugs
- prefixed EasyBuild messages with
==
- full regression test passed (58 easyconfigs tested)
EasyBuild v0.6 (May 11th 2012)¶
- added support for Intel compiler toolkit (ictce)
- which included the Intel compilers, Intel Math Kernel Library (imkl) and Intel MPI library (impi)
- added support for building Python with nose/numpy/scipy packages
- added simple regression test
- this version is able to build all supplied example easyconfigs
EasyBuild v0.5 (April 6th 2012)¶
- first public release of EasyBuild
- after a thorough cleanup of the EasyBuild framework of the in-house version
- supports building HPL with goalf compiler toolkit
- the goalf toolkit consists of the GCC compilers, and the OpenMPI, ATLAS, LAPACK, FFTW and ScaLAPACK libraries
- also support build and installation of MVAPICH2