This file contains a description of the major changes to the easybuild-easyblocks EasyBuild package.
For more detailed information, please see the git log.

These release notes can also be consulted at http://easybuild.readthedocs.org/en/latest/Release_notes.html.

The latest version of easybuild-easyblocks provides 254 software-specific easyblocks and 43 generic easyblocks.


v4.9.0 (30 December 2023)
-------------------------

feature release

- add generic `CargoPythonBundle` easyblock (#2964)
- 3 new software-specific easyblocks: flook (#3034), HPCC (#3009), PALM (#3020)
- minor enhancements and updates, including:
  - add custom easyconfig parameter `cmake_options` to SuiteSparse easyblock (#3031)
  - update custom intel-compilers easyblock for versions >= 2024 (#3037)
  - update custom easyblock for Intel MPI easyblock for v2021.11 (#3039)
  - update numpy easyblock for v1.26+ (#3041)
  - update custom easyblock for Intel MKL for v2024.x (#3042)
  - update Ferret easyblock to be compatible with v7.6.0 (#3052)
- various bug fixes, including:
  - add support for allowing version mismatch + consider versionsuffix when creating `.modulerc` in `ModuleRC` easyblock (#3028)
  - update error detection for PyTorch tests (#3033)
  - disable LLVM build downloads from CI in Rust (#3038)
  - add requirement for EULA acceptance to CUDA easyblock (#3045)
  - make various fixes and enhancements to NWChem easyblock (#3049)
  - add binutils symlinks when building TensorFlow with `--rpath` (#3054, #3058)
  - fix specifying path to SuiteSparse header files and libraries in numpy, Trilinos, PETSc easyblocks (#3056)
  - fix `det_pylibdir` provided by `PythonPackage` easyblock for Python 3.12+ (#3057)
  - fix nvptx sanity check for Clang >= 14.x (#3059)
- other changes:
  - update SuiteSparse easyblock to only install SuiteSparse libraries with `make install` (#3004)
  - also consider `$EB_COMSOL_LICENSE_FILE` environment variable in custom easyblock for COMSOL (#3044)
  - import `LooseVersion` from `easybuild.tools` instead of `distutils.version` in easyblocks (#3048)


v4.8.2 (29 October 2023)
------------------------

update/bugfix release

- minor enhancements and updates, including:
  - allow use of `test_cmd` without `runtest` for `ConfigureMake` (#2837)
  - enhance `CMakeMake` easyblock to run `ctest` command if `runtest` is `True` (#2838)
  - enhance `Conda` easyblock: add support for using custom `conda` command (like `mamba`), and clean up after installation (#2996)
  - update WRF easyblock to correctly determine `WRF*` subdirectory for WRF versions >= 4.5.1 (#2997)
  - update numpy easyblock to be able to use FlexiBLAS with MKL as dependency (#2999)
  - add error regexp for PyTorch tests run in subprocess and enhance error message (#3003, #3005)
  - don't blindly overwrite `-Dccflags` + honour `preconfigopts` in Perl easyblock (#3010)
  - use more test programs in sanity check step of OpenMPI easyblock (#3016)
  - fix `CMAKE_PREFIX_PATH` in imkl easyblock (#3021)
  - update sanity check in wxPython easyblock for version 4.2.0 (#3023)
- various bug fixes, including:
  - fix creation of symlink for libraries in TBB easyblock (#2927)
  - fix `--sanity-check-only` and `--module-only` for UCX plugins (#3007)
  - replace umlaut in docstring of PerlBundle easyblock (to fix Non-ASCII character error when using Python 2.7) (#3008)
  - enhance TensorFlow easyblock to avoid use of `-mcpu=native` for XNNPACK component when building on aarch64 (#3011)
  - only use `-DCMAKE_SKIP_RPATH=ON` for CMake < 3.5.0 (#3012)
  - fix the blas/lapack name passed to meson when building recent scipy versions (>= 1.9.0) on top of Intel MKL (#3024)


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

update/bugfix release

- new custom easyblock for sympy (#2949) and tensorflow-compression (#2990)
- minor enhancements and updates, including:
  - drop unnecessary CUDA stub libraries from $LIBRARY_PATH (#2793)
  - update Score-P easyblock to use `--with-nocross-compiler-suite=nvhpc` for recent software versions (#2928)
  - unset `$CPPFLAGS`, `$LDFLAGS`, `$LIB` which may interfere with Score-P configure magic (#2928)
  - update Clang easyblock for versions >= 16 + run tests only for final stage of bootstrap build (#2929)
  - handle new directory structure for Intel Advisor (#2942)
  - use `DCPU_BASELINE=DETECT` for OpenCV when default optarch compiler option is used (#2954)
  - update MXNet easyblock + don't try to install R extension by default for MXNet >= 1.0 (#2955)
  - use checkMCR.sh to determine if we have the correct MCR for FreeSurfer (#2962)
  - add options to `MesonNinja` easyblock to customize `build_cmd`, `install_cmd`, `builddir` (#2963, #2993)
  - add support for building CP2K with libvori support (#2967)
  - enable system `pybind11` for PyTorch 1.10+ to make sure `pybind11` provided as dependency is used (#2968)
  - update LLVM easyblock for LLVM v16: symlink `third-party` to `third-party-<version>.src` (#2970, #2994)
  - update scipy easyblock for scipy >= 1.11.0 (#2971, #2980)
  - update sanity check for Mesa >= 22.3 (#2973)
  - update sanity check for OpenFOAM 11 (#2978)
  - add support to `PerlModule` easyblock to customize prefix option used in installation command (#2979)
  - update TensorFlow easyblock for v2.13 since LMDB is no longer a dependency (#2982)
  - enhance PyTorch easyblock to print individual failed tests (#2983)
  - enhance PETSc easyblock to support using custom `$PETSC_ARCH` (#2987)
- various bug fixes, including:
  - correctly determine path to active binutils in TensorFlow easyblock (#2218)
  - patch Java binaries/libraries when using alternate sysroot to ensure correct glibc & co are picked up + add custom sanity check (#2557, #2995)
  - update OpenMPI easyblock to fix sanity check for Clang-based compilers (#2774)
  - improve depot management in `JuliaPackage` easyblock (#2935)
  - disable disk space check in STAR-CCM+ installer (#2956)
  - fix type check for `optarch` value in `Cargo` easyblock (#2969)
  - conditionally add `-Wno-unused-command-line-argument` to `$CFLAGS` to fix error when installing `imkl-FFTW` with RPATH (#2975)
  - enhance PythonPackage easyblock to deal with `posix_local` installation scheme used by Python in recent Debian/Ubuntu versions (#2977, #2988)
  - don't add MATLAB libraries to `$LD_LIBRARY_PATH` (#2981)
  - enhance Mesa easyblock to append EGL vendor library directory path to `$__EGL_VENDOR_LIBRARY_DIRS` (#2985)
  - fix typo in TensorFlow easyblock when finding libdir of OpenSSL (#2989)


v4.8.0 (7 July 2023)
--------------------

feature release

- add `PerlBundle` generic easyblock for installing a bundle of Perl modules (#2945)
- add custom easyblock for Rust, which makes sure that all shared libraries use RPATH rather than RUNPATH if --rpath is used (#2952)
- minor enhancements and updates, including:
  - add support for NVIDIA Hopper CC 9.0 in LAMMPS (#2941)
  - add support for `install_cmds` in `Binary` easyblock (#2953)
- various bug fixes, including:
  - patch CMake's UnixPaths.cmake script if --sysroot is set (#2248)
  - fix incorrect sanity_check_step for torchvision (#2938)
  - update OpenBLAS easyblock since make shared is necessary and sufficient with OpenBLAS 0.3.23 + recent parallel build fixes (#2944)
  - improve handling of `optarch` in `Cargo` easyblock (#2947)
  - reset modules loaded by PythonPackage to let ExtensionEasyBlock handle `multi_deps` correctly (#2951)
- other changes:
  - stop running tests with Python 2.7 since it is no longer supported in GitHub Actions (#2943)


v4.7.2 (27 May 2023)
--------------------

- new generic easyblock for installing Rust crates with cargo: Cargo and CargoPythonPackage (#2902, #2934)
- minor enhancements and updates, including:
  - let MATLAB easyblock raise an error if the MATLAB installation key is not provided (#2905)
  - print message to inform that GPU package (instead of Kokkos) is used for LAMMPS (#2906)
  - enhance PyTorch easyblock to use FlexiBLAS for PyTorch >= 1.11.0 (#2915)
- various bug fixes, including:
  - use custom RPATH sanity check for Go packages that doesn't actually check for an RPATH section in the binary (#2913)
  - use string '0' to avoid problems when openssl version is not determined (#2914)
  - update GCC easyblock to ensure that --sysroot is passed to linker (but only when it needs to be) (#2921)
  - add output log to MATLAB installs, actually parse for common errors (#2924)
  - enhance Gurobi easyblock to allow using $EB_GUROBI_LICENSE_FILE environment variable (#2926)
  - force building torchvision with CUDA support if CUDA is included as dependency by setting `$FORCE_CUDA` (#2931)
  - fix exec permission on files in arch bindir for COMSOL (#2932)


v4.7.1 (March 20th 2023)
------------------------

update/bugfix release

- minor enhancements and updates, including:
  - fix TensorFlow easyblock for new versions of Bazel & TensorFlow (#2854)
  - make NAMD easyblock aware of (pre)testopts (#2856)
  - update MesonNinja easyblock for Meson >=0.64.0 (#2861)
  - update scipy easyblock for scipy >= 1.9.0 to use meson/ninja  (#2862, #2903)
  - modify logic in QScintilla easyblock to find the PyQt5 sipdir in more places (#2868)
  - add `testinstall` custom easyconfig parameter to PythonPackage easyblock (#2872)
  - use -x option for "go install" in GoPackage generic easyblock, to print commands as they are executed (#2878)
  - allow disabling pybind11 tests with `runtest = False` (#2892)
  - call parent post_install_step in EasyBuildMeta easyblock (so postinstallcmds are taken into account) (#2893)
  - update and enhance Maple easyblock for recent versions (#2895)
  - relax glob pattern to find Mathematica install script (#2896)
  - implement CUDA support in the ELPA EasyBlock & fix CPP configure issue on newer ELPA versions (#2898)
  - update Trilinos easyblock to allow disabling of building tests and forward deps + support Trilinos v13.x (#2900)
  - enhance Python easyblock to create non-versioned symlink for python-config + check for bin/python and bin/python-config in sanity check (#2904)
- various bug fixes, including:
  - do not use -g77 option when installing NVHPC 22.9+ (#2819)
  - check that sanity_check_module_loaded attribute exists before querying it in PythonPackage easyblock (#2865)
  - fix $JULIA_DEPOT_PATH in installation of multiple JuliaPackage extensions (#2869)
  - fix checking of CUDA/ROCR-Runtime dependencies for Clang to determine default build targets (#2873)
  - show template values of exts_default_options in PythonBundle (#2874)
  - fix missing initialization of CMakeMake in CMakePythonPackage (#2876)
  - fix error when failing pip version check during PythonPackage sanity check (#2877)
  - handle templating correctly in CMakeMake when playing with configopts (#2882)
  - avoid crash in test step of PyTorch easyblock if runtest is not a command (#2883)
  - fix check configure option in FlexiBLAS easyblock (#2886)
  - use older `ncgen -H` for older netCDF (#2889)
  - fix linking numexpr with Intel MKL's VML library for imkl >= 2021.x (#2897)
- other changes:
  - only give read permissions in GitHub Actions workflows (#2863)
  - use start dir of extension to install R packages (#2867)
  - fix website/docs links in README (#2870)
  - add deprecation notice to RPackage extensions with relative paths in start_dir (#2879)


v4.7.0 (January 9th 2023)
-------------------------

feature release

- add generic easyblocks for installing (bundle of) Julia packages: JuliaPackage (#2816) and JuliaBundle (#2830)
- minor enhancements and updates, including:
  - enhance TensorFlow easyblock to take into account provided OpenSSL dependency (#2575)
  - add fix_shebang to install_step of PythonPackage easyblock so that we can fix shebangs when installing extensions (#2680)
  - update PETSc easyblock for newer versions (>= 3.17) (#2796)
  - update Clang easyblock to add support for new directory structure in Clang versions >= 14 + support Flang (#2800)
  - update Xmipp easyblock since versions >= 3.20.07 use `noAsk` option to configure (#2809)
  - add include/opencv4 to $CPATH for OpenCV versions >= 4.0 (#2818)
  - add extra option for disabling LAPACK in ESMF (#2821)
  - enable building of static libraries for libxml2 >= 2.10 (#2825)
  - update Xmipp easyblock to handle effects of CUDA at SYSTEM level and newer CUDA version requirements for stdc++ (#2831)
  - update LLVM easyblock to put 'cmake' symlink in place so separate CMake modules required for LLVM 15+ can be found (#2832)
  - set $TEMPDIRPATH for testsuite in the BerkeleyGW easyblock, to avoid polluting /tmp (#2836)
  - add `configure_no_prefix` option to skip addition of prefix to configure command in ConfigureMake easyblock (#2842)
  - update qscintilla.py to be compatible with EB install of PyQt5 >= 5.15 (#2845)
  - add UCC to known_dependencies in OpenMPI EasyBlock (#2847)
  - update Clang-AOMP easyblock to handle version 5.2 and newer (#2851)
- various bug fixes, including:
  - fix installing of Clang with RPATH linking (#2799)
  - fix --module-only for Clang + fix sanity check for Clang 11.x (#2800)
  - create $XDG_CACHE_HOME for PyTorch tests (#2806)
  - make PythonPackage easyblock compatible with --sanity-check-only by loading module early during sanity check step (#2828)
  - fix docstring of PythonBundle generic easyblock (#2833)
  - fix counting of failures in PyTorch tests (#2834, #2840)
  - make sure that ANSYS INSTALL script has execute permissions (#2852, #2853)
- other changes:
  - remove useless -openmp build option for MRtrix v3.x (#2822)
  - update HDF5 easyblock to use --enable-threadsafe configure option to make C API thread safe (#2824)
  - use new EasyBuild logo in README (#2827)
  - automatically cancel Github Action workflow runs for outdated commits (#2835)
  - use fixed names for bazel/wrapper subdirectories used when building TensorFlow, to make debugging easier (#2841)
  - also run unit tests with Python 3.11 (#2844)
  - tweak docstring in some generic easyblocks so it renders nicely in auto-generated documentation (#2849)
  - update copyright lines for 2023 (#2850)


v4.6.2 (October 21st 2022)
--------------------------

update/bugfix release

- 2 new software-specific easyblock:
  - CUDA compatibility libraries (#2764) and mamba (#2808)
- minor enhancements and updates, including:
  - update OpenFOAM easyblock to support OpenFOAM 10 + clean up variant/version checks (#2766)
  - added support for ESMPy in ESMF (#2789)
  - enhance OpenBLAS easyblock to support running LAPACK test suite + checking how many tests fail (#2801)
  - make numexpr easyblock aware of toolchain with GCC + imkl (#2810)
  - add sanity check commands for netCDF (#2811)
- various bug fixes, including:
  - handle problems copying symlink that points to CUDA folder that is not created for non CUDA builds of SuiteSparse (#2790)
  - don't install docs (to avoid trouble with Java) + add Rocky support for ABAQUS (#2792)
  - correctly count the number of failing tests (not failing test suites) in PyTorch builds (#2794, #2803)
  - fix docstring for PyTorch easyblock (#2795)
  - handle iterative builds with MakeCp easyblock (#2798)
  - accept both None and empty value for optarch to let OpenCV detect host CPU (#2804)
  - enhance EasyBuildMeta easyblock: auto-enable installing with pip + fix setup.py of easyconfigs package so installation with setuptools >= 61.0 works (#2805)
  - use `python -m pip` instead of `pip` in PythonPackage easyblock (#2807)
- other changes:
  - make the test output from PythonPackage less verbose by disabling default search for error patterns done by run_cmd (2797)


v4.6.1 (September 12th 2022)
----------------------------

update/bugfix release

- minor enhancements and updates, including:
  - update LAMMPS easyblock for LAMMPS/23Jun22 (#2213)
  - reduce the number of command line options for 'cmake' command in CMakeMake generic easyblock (#2514)
  - update libQGLViewer easyblock to take into account changes in the shared library names depending on Qt versions they are compiled with (#2730)
  - improve PLUMED detection in GROMACS easyblock (#2749)
  - make `$LD_LIBRARY_PATH` detection more robust for LAMMPS (#2765)
  - enhance NVHPC easyblock to avoid superfluous warning (#2767)
  - enhance PyTorch easyblock to also capture tests failing with signal (#2768)
  - enhance PythonPackage easyblock to make sure all test command output makes it to the EasyBuild log, also when return_output_ec=True (#2770)
  - set $NVHPC_CUDA_HOME for NVHPC 22.7+ (#2776)
- various bug fixes, including:
  - make Amber easyblock aware of FlexiBLAS (#2720)
  - update PyTorch easyblock to configure without breakpad support on POWER (#2763)
  - use lib* in post_install step of FFTW.MPI easyblock to fix paths not being found on Linux distros favouring lib64 (like Suse/SLES) (#2771)
  - use det_cmake_version function to determine CMake version in CMakeMake generic easyblock (#2772)
  - don't enable building of ld.gold when installing binutils on a RISC-V system + don't configure GCC to use gold as default linker on a RISC-V system (#2780)
  - tweak Amber(Tools) easyblock to run tests from top-level directory (#2781)
  - fix version check for NVPTX library in sanity check of Clang easyblock (#2783)
- other changes:
  - update CI workflows to use Ubuntu 20.04 (since Ubuntu 18.04 is deprecated) (#2779)


v4.6.0 (July 8th 2022)
----------------------

feature release

- 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)
- 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)


v4.5.5 (June 8th 2022)
----------------------

update/bugfix release

- 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 with pkgconf they exit with a non-zero exit code if the OS package is not installed (#2736)
- various bug fixes, including:
  - remove system-compiled binutils dirs from $LDFLAGS in binutils easyblock (#2712)
  - fix for FreeSurfer easyblock: define $FREESURFER needed by recon_all (#2717)
  - also symlink cert.pem in from-source OpenSSL installation (if it exists) (#2735)


v4.5.4 (March 31st 2022)
------------------------

update/bugfix release

- 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 for gcc 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)
  - replace hardcoded /tmp to make sure that Bazel build respects $TMPDIR (#2703)
- other changes:
  - minor code cleanup in numexpr easyblock (#2679)
  - update copyright lines for 2022 (#2705)


v4.5.3 (February 11th 2022)
---------------------------

update/bugfix release

- new software-specific easyblock for reticulate R package (#2668)
- minor enhancements and updates, including:
  - set CUDA target architecture(s) for GROMACS based on cuda_cc_semicolon_sep template value (#2655)
  - add support to NAMD easyblock to opt out of building with CUDA support even if CUDA is included as dependency (#2666)
  - update sanity check in CUDA easyblock: CUDA 11.6 no longer includes samples (#2669)
- various bug fixes, including:
  - also run easyblocks test suite with Python 3.8-3.10 + consistently use actions/setup-python@v2 in CI workflows (#2664)
  - specify easybuild.io as EasyBuild homepage in setup.py (#2667)
- other changes:
  - remove vulnerable binaries from sanity check of HDF5, no longer installed by default with HDF5 1.10.8 (#2670)


v4.5.2 (January 24th 2022)
--------------------------

update/bugfix release

- 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 stricly 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)


v4.5.1 (December 13th 2021)
---------------------------

update/bugfix release

- 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 in for Eigen v3.4 (#2633)
- 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)


v4.5.0 (October 29th 2021)
--------------------------

feature release

- 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 CMakMake (#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)
- 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)


v4.4.2 (September 7th 2021)
---------------------------

update/bugfix release

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


v4.4.1 (July 6th 2021)
----------------------

update/bugfix release

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


v4.4.0 (June 2nd 2021)
----------------------

feature release

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


v4.3.4 (April 9th 2021)
-----------------------

update/bugfix release

- 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)


v4.3.3 (February 23rd 2021)
---------------------------

update/bugfix release

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


v4.3.2 (December 10th 2020)
---------------------------

update/bugfix release

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


v4.3.1 (October 29th 2020)
--------------------------

update/bugfix release

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


v4.3.0 (September 13th 2020)
----------------------------

feature release

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


v4.2.2 (July 8th 2020)
----------------------

update/bugfix release

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


v4.2.1 (May 20th 2020)
----------------------

update/bugfix release

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


v4.2.0 (April 14th 2020)
------------------------

feature release

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


v4.1.1 (January 16th 2020)
--------------------------

update/bugfix release

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


v4.1.0 (December 4th 2019)
--------------------------

update/bugfix release

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


v4.0.1 (October 15th 2019)
--------------------------

update/bugfix release

- 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. wmake rules (#1772)
  - add %(cudaarch)s template variable so that it can be used in CUDA sources (#1797)
  - update Boost easyblock for versions >=1.71.0 (#1814)
  - update RepeatMasker easyblock for version 4.0.9 (#1815)
  - add --verbose flag to 'pip install' when running EB in debug mode (#1822)
  - update TensorFlow easyblock to support TensorFlow 2.0 (#1823)
  - add support in TensorFlow easyblock to run a custom test script as smoke test (#1824)
  - add support for installing QScintilla on top of PyQt5 (#1825)
  - update VEP easyblock to make installation compatible with Bio::EnsEMBL::XS (#1828)
- various bug fixes, including:
  - enhance TensorFlow easyblock to support installing TF 1.14.0 with CUDA and MPI support (#1811, #1816)
  - avoid UnicodeDecodeError when reading 'configure' script and checking for 'Generated by GNU Autoconf' in ConfigureMake (#1817, #1821)
  - don't require 'python' command to install libxml2 without Python bindings (#1818)
  - make sure "generic=True" actually turns on generic build in GCC easyblock (#1826)
  - fix compatibility of Trilinos easyblock with Python 3 (#1831)


v4.0.0 (September 20th 2019)
----------------------------

feature release

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


v3.9.4 (August 23rd 2019)
-------------------------

update/bugfix release

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


v3.9.3 (July 8th 2019)
----------------------

update/bugfix release

- 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 verisons (#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)


v3.9.2 (June 9th 2019)
----------------------

update/bugfix release

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


v3.9.1 (May 20th 2019)
----------------------

update/bugfix release

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


v3.9.0 (April 12th 2019)
------------------------

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


v3.8.1 (January 29th 2019)
--------------------------

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


v3.8.0 (December 18th 2018)
---------------------------

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


v3.7.1 (October 18th 2018)
--------------------------

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


v3.7.0 (September 25th 2018)
----------------------------

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


v3.6.2 (July 11th 2018)
-----------------------

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


v3.6.1 (May 28th 2018)
----------------------

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


v3.6.0 (April 26th 2018)
------------------------

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


v3.5.3 (March 7th 2018)
-----------------------

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


v3.5.2 (March 2nd 2018)
-----------------------

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


v3.5.1 (January 16th 2018)
--------------------------

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


v3.5.0 (December 15th 2017)
---------------------------

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


v3.4.1 (October 17th 2017)
--------------------------

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


v3.4.0 (September 10th 2017)
----------------------------

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


v3.3.1 (July 12th 2017)
-----------------------

bugfix/update release
- 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)


v3.3.0 (June 26th 2017)
-----------------------

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


v3.2.1 (May 12th 2017)
----------------------

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


v3.2.0 (May 5th 2017)
---------------------

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


v3.1.2 (March 20th 2017)
------------------------

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


v3.1.1 (March 7th 2017)
-----------------------

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


v3.1.0 (February 3rd 2017)
--------------------------

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


v3.0.2 (December 22nd 2016)
---------------------------

bugfix release
- 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)


v3.0.1 (November 30th 2016)
---------------------------

bugfix release
- various enhancements, including:
  - update SAMtools easyblock for recent versions (#1048)
- various bugfixes, including:
  - fix QuantumESPRESSO easyblock to handle gipaw correctly (#1041)
  - always specify name of serial Fortran compiler to ALADIN, it already knows to use MPI wrapper commands (#1050)


v3.0.0 (November 16th 2016)
---------------------------

feature release
- backwards incompatible changes:
  - remove deprecated GenomeAnalysisTK/GATK easyblock (#1001)
  - remove deprecated 'get_netcdf_module_set_cmds' function from netCDF easyblock (#1015)
  - remove deprecated 'get_blas_lib' function from LAPACK easyblock (#1016)
  - remove QLogicMPI easyblock (#1023)
- 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, use copy_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)
- 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 with dummy 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)


v2.9.0 (September 23rd 2016)
----------------------------

feature release
- new easyblocks for 6 software packages that require customized support:
    cppcheck (#983), HEALPix (#982), IMOD (#847), IronPython (#321), Mono (#321), MyMediaLite (#321)
- various enhancements, including:
    - extend OpenFoam-Extend sanity check for decomp libaries (#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 compatiblity of IntelBase generic easyblock with --module-only (#994)
    - make sure correct config script is used for Tcl/Tk deps of R (#995)



v2.8.2 (July 13th 2016)
-----------------------

bugfix release
- new easyblocks for 5 software packages that require customized support:
    Amber (#958), Extrae (#955), Gurobi (#962), Paraver (#956), Tau (#887)
- 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 Craytoolchains (#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 and MakeCp 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)


v2.8.1 (May 30th 2016)
----------------------

- various enhancements, including:
    - update MRtrix easyblock for version 0.3.14 (#932)
    - update Inspector easyblock for recent versions (#934)
    - update VTune easyblock for recent versions (#935)
    - add debug message to IntelBase easyblock w.r.t. switching to 'exist_lic' (#936)


v2.8.0 (May 18th 2016)
----------------------

feature + bugfix release
- add test configuration for Travis (#895, #897, #900, #926)
- new easyblocks for 4 software packages that require customized support:
    - binutils (#907), libQGLViewer (#890), SuperLU (#860), wxPython (#883)
- 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 contains easybuild/__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)


v2.7.0 (March 20th 2016)
------------------------

feature + bugfix release
- new easyblocks for 6 software packages that require customized support:
    ADF (#826), MPICH (#844, #852, #868), mutil (#859), pplacer (#835), psmpi (#852), SNPhylo (#865)
- 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 in CrayToolchain (#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 in IntelBase 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 in buildopts 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 in PythonPackage 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 using fileinput in impi easyblock (#870)
- 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 than pkgutil.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)


v2.6.0 (January 26th 2016)
--------------------------

feature + bugfix release
- add generic easyblock for Cray toolchains (#766)
- new easyblocks for 2 software packages that require customized support:
    EggLib (#811), PGI (#658)
- 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, use get_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 than libkokkos.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:
    - add back support for Eigen 2.x in Eigen easyblock (#798)
    - fix for vsc-base being picked up from OS in EasyBuildMeta easyblock (#813)
    - remove setuptools.pth if it includes absolute paths after installing EasyBuild (#813)


v2.5.0 (December 17th 2015)
---------------------------

feature + bugfix release
- 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:
    Intel Advisor (#767), DIRAC (#778), MRtrix (#772)
- 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 for default_platform easyconfig parameter (#753)
    - avoid adding lib subdirs to $*LIBRARY_PATH if no libraries are there in PythonPackage easyblock (#755)
    - fix installing Python bindings for libxml2 to correct installation prefix (#765)

v2.4.0 (November 10th 2015)
---------------------------

feature + bugfix release
- 3 new generic easyblocks: OCamlPackage (#467), SCons (#689, #700), Waf (#722)
- new easyblocks for 2 software packages that require customized support:
    OCaml (#467), Samcef (#678)
- 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 http://easybuild.readthedocs.org/en/latest/Extended_dry_run.html#guidelines-for-easyblocks
    - add support in PythonPackage for installing with easy_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
    - use $LIBS in HPL easyblock (#727, #736)
- various bug fixes, including:
    - also define $MCRROOT for MCR in module (#687)
    - add missing super call in configure_step of easyblock for python-meep (#694)
    - only prepend existing non-empty paths to $PYTHONPATH in PythonPackage 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 and lib64 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(FLAGS) and $F90(FLAGS) 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)


v2.3.0 (September 2nd 2015)
---------------------------

feature + bugfix release
- new easyblocks for 2 software packages that require customized support:
    MCR (#623), Molpro (#665)
- 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 in ConfigureMakePythonPackage.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 to configure_step in IntelBase 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 impi mpivars.sh scripts (#662)
    - fix regex used to patch .mk file in configure step of SuiteSparse easyblock (#666)
    - correctly specify installation prefix via $GEM_HOME in RubyGem 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)

v2.2.0 (July 15th 2015)
-----------------------

feature + bugfix release
- modified easybuild.easyblocks package declaration to support giving preference to custom easyblocks (#617)
- 3 new generic easyblocks: BuildEnv (#583), RubyGem (#565), SystemCompiler (#633)
- new easyblocks for 5 software packages that require customized support:
    - NEMO (#564), pbdMPI (#612, #620), pbdSLAP (#620), PDT (#624), Ruby (#565)
- 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)

v2.1.1 (May 18th 2015)
----------------------

bugfix release
- 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)

v2.1.0 (April 30th 2015)
------------------------

feature + bugfix release
- 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:
    - TINKER (#578), Xmipp (#581)
- 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, honor installopts, 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 in test_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 than self.orig_environ in EasyBuildMeta easyblock (#600)
    - make GCC easyblock compatible with --module-only by setting default value for self.platform_lib in constructor (#603)

v2.0.0 (March 6th 2015)
-----------------------

feature + bugfix release
- one new generic easyblock for installing a bundle of modules: Bundle (#550)
    - and let the Toolchain generic easyblock derive from Bundle
- new easyblocks for 2 software packages that require customized support:
    - GAMESS-US (#470, #544, #558), Hadoop (#563)
- various other enhancements, including:
    - move support for staged_install from CPLEX easyblock to generic Binary 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 into EB_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
        - to support bootstrapping with provided source tarballs (#559)
        - to also cover vsc-base dependency, and verify easy-install.pth (#567)
    - update disabling sanitizer tests for Clang 3.6 (#570)
- various bug fixes, including:
    - fix handling of LTO in GCC easyblock (#535)
    - relocate FDTD RPM to fix installation on SL6 (#538)

v1.16.2 (March 6th 2015)
------------------------

- make EB_EasyBuildMeta easyblock aware of vsc-base to make upgrading to EasyBuild v2.0.0 possible (#573)

v1.16.1 (December 19th 2014)
----------------------------

- fix EasyBuild versions for which $EASYBUILD_DEPRECATED=1.0 is set in EasyBuild sanity check (#531)

v1.16.0 (December 18th 2014)
----------------------------

feature + bugfix release
- new easyblocks for 2 software packages that require customized support:
    - Chimera (#524), GATE (#518)
- 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 and lib64 in sanity check for GROMACS (#501)
    - take preinstallopts and installopts into account in Binary 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 to self.module_generator (#506)
        - see also easybuild-framework#1088
    - check whether specified type value is a known value (psmp or popt) 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 in IntelBase (#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 for R (#495)
    - fix default value for files_to_copy in MakeCp 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 to dict or returning via parent (#528)

v1.15.2 (October 7th 2014)
--------------------------

bugfix release
- only disable sanitizer tests for recent Clang versions (#481, #482)
- pass down installopts to CUDA install command (#483)

v1.15.1 (September 23rd 2014)
-----------------------------

(no changes compared to v1.15.0, simple version bump to stay in sync with easybuild-framework)

v1.15.0 (September 12th 2014)
-----------------------------

feature + bugfix release
- added support for 2 new software packages that require customized support: Modeller (#392), NAMD (#397)
- 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 and lib64 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)

v1.14.0 (July 9th 2014)
-----------------------

feature + bugfix release
- added one new generic easyblock: CmdCp (#395)
- added support for 2 new software packages that require customized support: ANSYS (#398), HPCG (#408)
- various enhancements, including:
    - updated ABAQUS easyblock so that it works for version 13.2 (#406)
    - enhance BLAT easyblock by using super's build_step and prebuildopts/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:
    - only check for idb for older versions of icc (#426)
    - fix issues with installing RPMS when rpmrebuild is required (#433)
    - correctly disable parallel build for ATLAS (#434)
    - fix sanity check for Intel MPI v5.x (only provides bin64) (#432)
    - add MIC_LD_LIBRARY_PATH for MKL v11.x (#437)

v1.13.0 (May 29th 2014)
-----------------------

feature + bugfix release
- 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 for files_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 hardcoding 'lib')


v1.12.1 (April 25th 2014)
-------------------------

(no changes compared to v1.12.0, simple version bump to stay in sync with easybuild-framework)

v1.12.0 (April 4th 2014)
------------------------

feature + bugfix release
- various enhancements, including:
    - also run 'Perl Build build' for Perl modules (usually not required, but sometimes it is) (#380)
    - added glob support in generic makecp block (#367, #384)
    - enhance sanity check in GCC easyblock such that it also passes/works on OpenSuSE (#365)
    - add multilib support in GCC easyblock (#379)
- 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)

v1.11.1 (February 28th 2014)
----------------------------

(no changes compared to v1.11.0, simple version bump to stay in sync with easybuild-framework)

v1.11.0 (February 16th 2014)
----------------------------

feature + bugfix release
- 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 generic PythonPackage easyblock (#352)
    - define the $CMAKE_INCLUDE_PATH and $CMAKE_LIBRARY_PATH in the generic CMakeMake 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, deprecate VersionIndependendPythonPackage 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)

v1.10.0 (December 24th 2013)
----------------------------

feature + bugfix release
- added one new generic easyblock: VersionIndependendPythonPackage (#329, #334)
- added support for 2 new software packages that require customized support:
    - Charmm (#318), GROMACS (#335, #339)
- 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 generic PythonPackage 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 supress 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
    - 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)

v1.9.0 (November 17th 2013)
---------------------------

feature + bugfix release
- added support for 8 new software packages that require customized support:
    - Allinea DDT/MAP (#279), ARB (#291), GenomeAnalysisTK (#278), OpenBabel (#305, #309), picard (#278),
      PyQuante (#297), Scalasca v1.x (#304), Score-P (#304)
        - the Score-P easyblock is also used for Cube 4.x, LWM2, OTF2, and Scalasca v2.x
- 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)
- other:
    - add build status badges for master/develop branches to README (#289)

v1.8.2 (October 18th 2013)
--------------------------

bugfix release
- 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

v1.8.1 (October 14th 2013)
--------------------------

bugfix release
- various bug fixes:
    - fix problems in PSI easyblock causing build to fail (#270)
    - fix issues with running NWChem test cases, fail early in case broken symlink is present (#275)

v1.8.0 (October 4th 2013)
-------------------------

feature + bugfix release
- added one new generic easyblock: BinariesTarball (#255)
- added support for 5 new software packages that require customized support:
    - DB (#226), FDTD Solutions (#239), FoldX (#256), Mathematica (#240), MUMPS (#262)
- various enhancements, including:
    - support optionally running configure in generic MakeCp easyblock (#252)
    - enhanced Clang easyblock to support building Clang 3.3 (#248)
    - add support for $INTEL_LICENSE_FILE specifying multiple paths (#251)
    - enhanced ATLAS easyblock to support building ATLAS 3.10.1 (#258)
- 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)

v1.7.0 (September 2nd 2013)
---------------------------

feature + bugfix release
- added support for 3 new software packages that require customized support:
    - Libint2 (#236), Qt (#210), Rosetta (#218)
- various enhancements, including:
    - allow building OpenFOAM without 3rd party tools (#230)
    - also add sitelib path to $PERL5LIB, refactor code to add generic get_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 over license_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 of self.get_installversion()) (#242)
    - enhance list of noqanda patterns for CUDA, to get less failing installations (#244)

v1.6.0 (July 11th 2013)
-----------------------

feature + bugfix release
- added support for 2 new software packages that require customized support:
    - BamTools (#224), BLAT (#214)
- various enhancements, including:
    - update impi easyblock to allow installing impi v4.1.1, which features a slight change in build procedure (refs #217)
    - enhance PackedBinary easyblock to copy both files and directories (refs #212)
    - added get sitearch_suffix to Perl search path and use it in PerlModule easyblock (refs #209)
- various bug fixes:
    - make sure EasyBuild configuration is initialized when running unit tests (refs #220)
    - make Boost easyblock pick up configopts easyconfig parameter (refs #221)
    - add '-DMPICH_IGNORE_CXX_SEEK' compiler flag for Mothur when MPI support is enabled (refs #222)
    - fix Boost sanity check, only check for libboost_python.so if Python module is loaded (refs #223)
    - enhance Trinity support w.r.t. jellyfish (refs #225, #227)
    - fix checking for beagle-lib dep (deprecate checking for BEAGLE) for MrBayes (refs #228)

v1.5.0 (June 1st 2013)
----------------------

feature + bugfix release
- added one new generic easyblock: MakeCp (#208)
- added support for 5 new software packages that require customized support:
    - CBLAS (#192), FreeSurfer (#194), Mothur (#206), OpenIFS (#200), PSI (#191)
- various enhancements, including:
    - add support for building ScaLAPACK 2.x on top of QLogic MPI (#195)
    - support newer BWA versions (#199)
    - explicitly list license server type in ABAQUS install options, required for correct installation of v6.12 (#198)
    - update SCOTCH and OpenFOAM easyblock for recent versions (#201)
- various bug fixes:
    - fix numpy easyblock to get an optimal build (w.r.t. numpy.dot performance) (#192)
    - correct build procedure for MUMmer to yield a complete installation (#196, #197)
    - make unit tests clean up after themselves more thoroughly (#203, #204)
    - fix getting Perl version for extensions (#205)

v1.4.0 (May 2nd 2013)
---------------------

feature + bugfix release
- 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:
    ABAQUS (#179), Bowtie (#174, #185, #186), Clang (#151), DL_POLY Classic (#118), ESMF (#171), Perl (#183),
    Intel VTune and Intel Inspector (#180)
- the CMakeMake.configure_step() parameter 'builddir' was renamed to 'srcdir', because the name 'builddir' 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)

v1.3.0 (April 1st 2013)
-----------------------

feature + bugfix release
- added support for 2 new software packages that require customized support:
    - CUDA (#145), Ferret (#160, #163)
- remove 'license' easyconfig parameter from IntelBase, since it clashes with generic 'license' parameter (#153, #158)
    - 'license_file' should be used instead (see https://github.com/easybuilders/easybuild-framework/pull/569/files)
    - using 'license' instead of 'license_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 for setup.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 (refs #155, #161)
- various bug fixes, including:
    - added zip_safe flag to setup.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)

v1.2.0 (February 28th 2013)
---------------------------

feature + bugfix release
- added 1 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)
    - 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 in 'exts_filter' in Python and R easyblocks
- various bug fixes, including:
    - general code cleanup
        - don't set sanityCheckOK in Toolchain easyblock
        - get rid of using os.putenv
    - NEURON easyblock: don't hardcode number of processes used in test cases
    - make sure easybuild.easyblocks.generic namespace is extendable

v1.1.0 (January 27th 2013)
--------------------------

feature + bugfix release
- 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 module:
        - merge EB_DefaultPythonPackage and PythonPackage easyblocks into generic easyblock PythonPackage, which derives from ExtensionEasyblock
        - move EB_FortranPythonPackage into dedicated generic FortranPythonPackage easyblock module
        - split off support for building/installing nose, numpy, scipy into dedicated EB_* easyblock modules,
          which allows them to be built as stand-alone modules as well
    - 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
- 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 + patching of Intel install scripts
        - latter does not work anymore with recent versions of Intel tools (2013.x)

v1.0.2 (December 8th 2012)
--------------------------

bugfix release
- fix typos in WIEN2k easyblock (missing commas after list elements)

v1.0.1 (November 24th 2012)
---------------------------

bugfix release
- fix support for installing easybuild-easyblocks with distutils (broken import in setup.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 vs lib64 dir)
- 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
- enhance Q&A for WRF and WIEN2k by adding entries to qa dict and no_qa list
- use rmtree2 from tools/filetools.py as more (NFS) robust replacement for shutil.rmtree

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

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, ...

v0.7 (June 18th 2012)
---------------------

- fixed BLACS build
    - diagnostic tools to determine INTERFACE and TRANSCOMM values are now used
- 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)

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

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
