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

The latest version of easybuild-easyconfig provides 1,340 easyconfig files, for 288 different software packages
and 19 different compiler toolchains.

v1.5.0.0 (May 31st 2013)
------------------------

feature + bugfix release
- added example easyconfig files for 23 new software packages:
    - bam2fastq (#287), CBLAS (#263), EMBOSS (#265, #290), FCM (#272), FRC_align (#273), freeglut (#271),
      FreeSurfer (#271), FSL (#271), GATK (#287), libharu (#290), libxslt (#235), MariaDB (#292), Mothur (#265)
      mpi4py (#276), OpenIFS (#272), orthomcl (#265), PAML (#287), pandas (#262), phonopy (#235), problog (#277),
      PSI (#258), PyYAML (#235), RAxML (#277)
- added additional example easyconfig files for:
    - ABINIT (#235), ACML (#267), BLAST (#275), Boost (#273), BWA (#270), bzip2 (#263), Chapel (#240), CMake (#290),
      FFTW2 (#247, #267), flex (#267), freetype (#235), grib_api (#272), gzip (#265), Java (#279), libpng (#240, #279),
      libreadline (#267), libxml2 (#235), libxml (#235), matplotlib (#235), MCL (#265), MUMmer (#265), ncurses (#267),
      numpy (#267), OpenFOAM (#267), Perl (#265), Python (#276, #263), R (#240, #279), SCOTCH (#267), ScaLAPACK (#267),
      TopHat (#289), Valgrind (#255), zlib (#267)
- various enhancements, including:
    - enhance unit test suite, include testing for module conflicts (#256) and presence of patch files (#264)
    - use provided constants and templates in easyconfig files where appropriate (#248, #266, #281)
- various 'bug' fixes, including:
    - get rid of hardcoded license_file paths for VTune, Inspector (#253)
    - assign proper moduleclass where they were missing (#278)
    - fix naming for LZO (#280)
    - make unit tests clean up after themselves more thoroughly (#283, #284, #285, #286)
    - fix TopHat dependencies (#289)
    - fix source URLs for XML (#279)
    - fix versions for all listed R extensions (#279)
    - fix CUDA easyconfig file for use on Debian Squeeze (#291)
    - correct easyconfig filename and module name mismatches (bbcp, DL_POLY Classic, ...) (#295)

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

feature + bugfix release
- added a unit test suite for easyconfigs (#228, #230)
- added example easyconfig files for 20 new software packages:
    - ABAQUS (#231), BioPerl (#242), Bowtie (#227), Clang (#177), CRF++ (#131), DL_POLY Classic (#132), ESMF, GROMACS (#165),
      HH-suite (#219), Inspector (#232), likwid (#131), Perl (#242), scikit (#133), TiCCutils (#131), TiMBL (#131), TinySVM (#131),
      UDUNITS (#167), VTune (#232), YamCha (#131)
- add example easyconfigs for new compiler toolchains (use `eb --list-toolchains` for a full list of supported toolchains):
    - the newly added toolchains only differ in compilers/MPI library, and all feature OpenBLAS, LAPACK, ScaLAPACK and FFTW
    - goolfc: GCC, CUDA (co-compiler), OpenMPI (#191)
        - a goolfc easyconfig for GROMACS is inluded as proof-of-concept (#165)
    - cgmpolf: Clang (C/C++ compilers), GCC (Fortran compilers), MPICH (#213)
    - cgmvolf: Clang, GCC, MVAPICH2 (#218)
    - cgoolf: Clang, GCC, OpenMPI (#213)
    - gmvolf: GCC, MVAPICH (#202, #222)
- ported already available easyconfigs to new compiler toolchains:
    - ictce-5.3.0: 193 easyconfigs (#229)
    - cgmpolf: 11 easyconfigs (#213)
    - cgmvolf: 11 easyconfigs (#218)
    - cgoolf: 12 easyconfigs (#213)
    - gmvolf: 10 easyconfigs (#215)
- added additional example easyconfig files for:
    - CMake (#163), git (#210), Java (#206), #221, Mercurial (#201, #215), ncurses (#225), TotalView (#160)
- various enhancements, including:
    - added ESMF and UDUNITS dependencies to NCL easyconfigs (#211)
    - changed value of source_urls in R easyconfigs, to be generic enough for version 3.0 and possibly beyond (#251)
- various 'bug' fixes, including:
    - add --enable-mpirun-prefix-by-default configure option for all OpenMPI easyconfigs (#205)

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

feature + bugfix release
- added example easyconfig files for 13 new software packages:
    - Bash, CUDA, ccache, Ferret, gzip, libxc, ns, numactl, OpenBLAS, otcl, Tar, tclcl, tcsh
        - several of these easyconfig files were contributed by attendees of the EasyBuild hackathon in Cyprus!
- added example easyconfigs for goolf toolchain (#158)
- added example easyconfigs for builds with goolf toolchain, i.e. for all goalf easyconfigs (#189)
    - for several software packages, a patch file was needed to get them to build with GCC 4.7:
        AMOS, BEAGLE, Cufflinks, DOLFIN, GATE, ns, Pasha, Trilinos, Trinity
    - for PETSc, a patch file was required to make it build with a toolchain that doesn't include BLACS
- added additional example easyconfig files for:
    gompi, hwloc, LAPACK, MVAPICH2, OpenMPI, ScaLAPACK
- various enhancements, including:
    - define a proper module class in *all* easyconfigs, cfr. default module classes defined in framework (#150, #159, #161, #162, #179, #181)
    - extend FFTW easyconfig to 'fat' builds that include single, double, long double and quad precision libraries in the same module
        - quad precision is disabled for Intel compiler based builds (it requires GCC v4.6+)
    - the imkl easyconfigs used for the ictce 3.2.2.u3 toolchain now also enable FFTW interfaces
- various 'bug' fixes, including:
    - fix filename for Mercurial and ROOT easyconfig files
    - fix homepage/description for Hypre
    - fix enabling OpenMP support in OpenMPI: use '--enable-openmp', not 'with-openmp'
    - use correct configure flag for enabling OpenMPI threading support in v1.6 (#186)
        - '--enable-mpi-thread-multiple' instead of '--enable-mpi-threads'
    - explicitely add '--without-openib --without-udapl' configure options in OpenMPI easyconfig using versionsuffix -no-OFED (#168)
        - this avoids that OpenMPI auto-detects that it can enable Infiniband (OpenIB) support, which doesn't fit the -no-OFED versionsuffix
        - Note: this makes goalf-1.1.0-no-OFED effectively not suitable to produce software builds that are IB-capable!
    - remove explicit '--with-udapl' from OpenMPI easyconfigs, does more harm than good (#178)
    - remove libibvers, libibmad, libibumad as explicit dependencies for OpenMPI/MVAPICH2 (#173, #182)
        leave it up to the OS to provide these, since the required version is too much tied to the version of IB drivers
    - use 'license_file' in Intel tools easyconfigs, as opposed to the new generic 'license' parameter with a different meaning (#180)
    - modify patch for impi to avoid installation problems due to hardcoded path in /tmp (#185)
        - now uses '$USER-$RANDOM' subdir to avoid clashes between different users on the same system
    - the patch file for numpy was extended to also supporting ATLAS and other BLAS libraries spread across multiple directories
        - the extension for ATLAS is required because we now no longer rely on the automatic numpy mechanism to find the ATLAS libs
    - fixed dependencies:
        - libibumad as dependency for libibmad
        - ncurses as dependency for libreadline
        - ncurses and zlib as dependency for SAMtools (+ enhanced patch)
        - remove explicit FFTW dependency for Meep, ... since toolchain already provided FFTW


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

feature + bugfix release
- added example easyconfig files for 41 new software packages:
    -  a2ps, AnalyzeFMRI, aria, bbcp, bbFTP, bbftpPRO, binutils, Bonnie++, ccache, cflow, cgdb, Corkscrew, EasyBuild,
       Elinks, EPD, FLUENT, fmri, GDB, GDAL, gnuplot, gnutls, gperf, Iperf, lftp, libyaml, lzo, MATLAB, mc, nano, NASM,
       nettle, numexpr, parallel, pyTables, QLogic MPI, Stow, TotalView, Valgrind, VTK, Yasm, zsync
- added example easyconfigs for iqacml and iiqmpi toolchains
- added additional example easyconfig files for:
    - ABINIT, ABySS, ACML, BFAST, Bison, BLACS, Cython, cURL, Doxygen, FFTW, flex, g2clib, g2lib, GHC, h5py, HDF, HDF5,
      HMMER, JasPer, icc, ictce, ifort, imkl, impi, libpng, libreadline, M4, matplotlib, MCL, MEME, mpiBLAST, NCL,
      ncurses, netCDF, netCDF-Fortran, NWChem, R, ScaLAPACK, Tcl, Tk, WPS, WRF, zlib
- various enhancements, including:
    - fix version of xtable R library in list of extensions for R, to avoid installation failures
- various 'bug' fixes, including:
    - fix toolchain and file names for ABINIT easyconfigs
    - fix sanity check paths for cURL
    - don't disable 'optarch' for WRF, it's not needed (only disable heavy optimizations is required)
    - fix homepage/description for ALADIN

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

feature + bugfix release
- added example easyconfig files for 48 new software packages:
    - ABINIT, ABySS, ACML, ALADIN, ant, BFAST, BLAST, Chapel, CLHEP, Cufflinks, ESPRresSo, GATE, GHC, Geant4,
      Greenlet, google-sparsehash, grib_api, HMMER, Java, JUnit, libibmad, libibumad, libibverbs, MCL, MDP,
      MEME, mpiBLAST, NCBI Toolkit, NEURON, NWChem, numpy, MDP, Oger, OpenPGM, paycheck, PyZMQ, QuantumESPRESSO,
      R, ROOT, SCOOP, scipy, Tophat, Trinity, util-linux, VSC-tools, wiki2beamer, XML, ZeroMQ
- added example easyconfigs for gmacml, gmvapich2, iccifort, ictce, iomkl toolchains
- added additional example easyconfig files for:
    - ATLAS, BLACS, Boost, Bowtie2, bzip2, CP2K, Doxygen, FFTW, GCC, HDF5, hwloc, icc, ifort, imkl, impi,
      JasPer, Libint, libreadline, libsmm, libxml, ncurses, netCDF, M4, Meep, MVAPICH2, OpenMPI, Python,
      ScaLAPACK, Szip, zlib
- various enhancements, including:
    - major style cleanup of all example easyconfig file (PEP008 compliance)
    - added setuptools to list of Python extensions
    - get rid of 'parallel' versionsuffix for HDF5, as its meaningless (MPI-enabled build is always parallel)
- various 'bug' fixes, i.e. added missing dependencies or replaced os dependencies with proper dependencies

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

bugfix release
- fixed source URL for ligtextutils (toolchain refactoring error)

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

bugfix release
- remove patch file for OpenMPI to resolve issue with pax hanging configure
    - tar_config_opts should be enabled as needed
- disable parallel build for PAPI, seems to be causing problems

v1.0.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
- added example easyconfig files for 106 new software packages:
    AMOS, Armadillo, ASE, Autoconf, BiSearch, Boost, Bowtie2, BWA, byacc, bzip2, CGAL, ClustalW2, CMake,
    CPLEX, cURL, CVXOPT, Cython, Docutils, DOLFIN, ECore, Eigen, expat, FASTX-Toolkit, FFC, FIAT,
    freetype, FSL, GEOS, git, glproto, GMP, gmvapich2, gompi, GPAW, GSL, guile, h5py, h5utils, Harminv,
    hwloc, Hypre, Infernal, Instant, Jinja2, libctl, libdrm, libffi, libgtextutils, libmatheval,
    libpciaccess, libpthread-stubs, libreadline, libtool, libunistring, libxcb, libxml2, makedepend,
    matplotlib, Meep, Mercurial, Mesa, MetaVelvet, METIS, MPFR, MTL4, MUMmer, ncurses, OpenFOAM, OpenSSL,
    ORCA, PAPI, ParMETIS, Pasha, PCRE, PETSc, petsc4py, pkg-config, Primer3, python-meep, RNAz, SAMtools,
    ScientificPython, SCOTCH, setuptools, Shapely, SHRiMP, SLEPc, SOAPdenovo, Sphinx, SuiteSparse, SWIG,
    Tcl, Theano, Tk, Tornado, Trilinos, UFC, UFL, Velvet, ViennaRNA, Viper, WIEN2k, xcb-proto, XCrySDen,
    xorg-macros, xproto
- added additional example easyconfig files (versions, builds) for several software packages
    Bison, BLACS, Doxygen, flex, GCC, HDF5, icc, ifort, libpng, M4, MVAPICH2, OpenMPI, Szip, tbb, zlib
- replaced GCC/OpenMPI based easyconfig files with equivalents using the gompi toolchain
    ATLAS, BLACS, FFTW, LAPACK, ScaLAPACK
- enhanced Python example easyconfig files (more dependencies required for features, e.g. libreadline, bzip2, zlib, ...)
- corrected file name of easyconfig files to adher to standard as followed by EasyBuild robot dependency resolver
- style cleanup in existing easyconfig files

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
