Dear EasyBuilders,
It is my pleasure to announce the release of EasyBuild v2.3.0 [1], by
far the best EasyBuild version up until now (surprise!).
Although I was initially planning a bugfix release (v2.2.1) early
August, things worked out differently because of a lack of time in the
last couple of weeks.
Since several minor enhancements have been merged since v2.2.0, it made
sense to me to promote it to a 'feature' release. I'm sure you don't
mind. ;-)
Nevertheless, most of the changes compared to v2.2.0 are bug fixes.
The most significant issue that was fixed is correcting the sanity check
being performed for software packages that are 'extensions' (Python
packages, R libraries, Perl modules, etc.). [2]
After avoiding that the sanity check paths/commands for the 'parent'
software are rechecked for every extension (which resulted in
potentially very slow installation of for example R or Perl), it turned
out that the default sanity check paths (i.e., checking for 'bin' and
'lib' or 'lib64' sub-directories) were not being considered for these
type of installations.
Because of this, the fact that the installations of FPM (Ruby gem) and
SIP (Python package) were not being performed in the intended
installation prefix (but that of the parent) went undetected [3, 4],
which highlights the importance of the seemingly excessive sanity check
step once again.
This indirectly affects a significant number of software packages, since
the default sanity check is not a valid fallback for these.
Software packages for which custom sanity check paths needed to be added
include mpi4py, scipy (via EB_scipy easyblock), and various other
R/Perl/Python extensions (a full list is available in the release notes
[5]).
Other bug fixes include:
- fix --package by making it pick up the installed module file, rather
than the (no longer existing) temporary 'fake' module [6]
- fix use of custom module naming scheme that was included via
--include-module-naming-schemes [7]
- fix problems with --job and (hidden) dependencies [8, 9]
- make sure hidden Lua modules are seen [10]
- fix and enhancements to the EasyConfig.dump method (relevant for
future work) [11, 12, 13]
A minor enhancement worth mentioning is the new configure option
--cleanup-tmpdir [14], which enables you to instruct EasyBuild to retain
its temporary directory rather than cleaning it up (using
--disable-cleanup-tmpdir). This is particularly useful together with
--dry-run/-D and --try-* .
Additionally, support for building and installing 19 new software
packages was added, including GlobalArrays and Molpro.
A complete and detailed overview of the changes is available in the
updated release notes [5].
Thanks to everyone who contributed to this release in one way or another!
To upgrade to EasyBuild v2.3.0, there are several options:
(i) (re)bootstrap EasyBuild to obtain an EasyBuild/2.3.0 module to
load [15]
(ii) install EasyBuild v2.3.0 with a previous version of EasyBuild,
using the easyconfig file available in [16]
(iii) install EasyBuild v2.3.0 from PyPI, using one of the standard
Python installation tools (easy_install, pip, ...) [17]
(iv) update your Git working copies of the different EasyBuild
repositories;
note: the minimal required vsc-base version has been bumped to
2.2.4, so you may need to update vsc-base as well with this approach
Enjoy!
regards,
Kenneth
EasyBuild release manager
[1] http://pypi.python.org/pypi/easybuild
[2] https://github.com/hpcugent/easybuild-framework/pull/1366 # fix
sanity_check_step for extensions
[3] https://github.com/hpcugent/easybuild-easyblocks/pull/667 # fix
install prefix for Ruby gems
[4] https://github.com/hpcugent/easybuild-framework/pull/1888 # fix
install prefix for SIP
[5] http://easybuild.readthedocs.org/en/latest/Release_notes.html
[6] https://github.com/hpcugent/easybuild-framework/pull/1348 # fix
--package
[7] https://github.com/hpcugent/easybuild-framework/pull/1370 # fix
--include-module-naming-schemes
[8] https://github.com/hpcugent/easybuild-framework/pull/1356 # install
hidden deps as hidden with --job
[9] https://github.com/hpcugent/easybuild-framework/pull/1359 #
correctly specify job dependencies
[10] https://github.com/hpcugent/easybuild-framework/pull/1364 # make
sure hidden Lua modules are seen
[11] https://github.com/hpcugent/easybuild-framework/pull/1327 #
preserve comments with dump
[12] https://github.com/hpcugent/easybuild-framework/pull/1345 # style
formatting with dump
[13] https://github.com/hpcugent/easybuild-framework/pull/1354 #
correctly handle hidden dependencies in dump
[14] https://github.com/hpcugent/easybuild-framework/pull/1365 #
--cleanup-tmpdir
[15]
http://easybuild.readthedocs.org/en/latest/Installation.html#bootstrapping-easybuild
[16] https://github.com/hpcugent/easybuild-easyconfigs/pull/1940
[17]
http://easybuild.readthedocs.org/en/latest/Installation_Alternative.html#standard-installation-of-latest-release