Skip to content

Commit

Permalink
Merge pull request #3 from easybuilders/develop
Browse files Browse the repository at this point in the history
Bringing our develop branch up to date
  • Loading branch information
casparvl authored Aug 1, 2018
2 parents c574b08 + d741217 commit dab9e64
Show file tree
Hide file tree
Showing 86 changed files with 12,086 additions and 687 deletions.
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,7 @@ build/
dist/
*egg-info/
*.swp

Dockerfile.*
Singularity.*
test-reports/
4 changes: 4 additions & 0 deletions .hound.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# configuration for houndci, see https://houndci.com/configuration#python
flake8:
enabled: true
config_file: setup.cfg
19 changes: 13 additions & 6 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,14 @@ env:
# purposely specifying slowest builds first, to gain time overall
- LMOD_VERSION=5.8
- LMOD_VERSION=5.8 TEST_EASYBUILD_MODULE_SYNTAX=Tcl
- LMOD_VERSION=6.6.3
- LMOD_VERSION=6.6.3 TEST_EASYBUILD_MODULE_SYNTAX=Tcl
- LMOD_VERSION=7.4
- LMOD_VERSION=7.4 TEST_EASYBUILD_MODULE_SYNTAX=Tcl
- LMOD_VERSION=7.7.16
- LMOD_VERSION=7.7.16 TEST_EASYBUILD_MODULE_SYNTAX=Tcl
- ENV_MOD_VERSION=3.2.10 TEST_EASYBUILD_MODULES_TOOL=EnvironmentModulesC TEST_EASYBUILD_MODULE_SYNTAX=Tcl
- ENV_MOD_TCL_VERSION=1.147 TEST_EASYBUILD_MODULES_TOOL=EnvironmentModulesTcl TEST_EASYBUILD_MODULE_SYNTAX=Tcl
- ENV_MOD_VERSION=4.0.0 TEST_EASYBUILD_MODULE_SYNTAX=Tcl TEST_EASYBUILD_MODULES_TOOL=EnvironmentModules
- ENV_MOD_VERSION=4.1.2 TEST_EASYBUILD_MODULE_SYNTAX=Tcl TEST_EASYBUILD_MODULES_TOOL=EnvironmentModules
cache:
pip: true
matrix:
# mark build as finished as soon as job has failed
fast_finish: true
Expand Down Expand Up @@ -47,8 +48,10 @@ before_install:
- if [ "x$TRAVIS_PYTHON_VERSION" == 'x2.6' ]; then pip install 'paramiko<2.4.0'; else pip install paramiko; fi
# SQLAlchemy (dep for GC3Pie) 1.2.0 & more recent doesn't work with Python 2.6
- if [ "x$TRAVIS_PYTHON_VERSION" == 'x2.6' ]; then pip install 'SQLAlchemy<1.2.0'; else pip install SQLAlchemy; fi
# autopep8 1.3.4 is last one to support Python 2.6
- if [ "x$TRAVIS_PYTHON_VERSION" == 'x2.6' ]; then pip install 'autopep8<1.3.5'; else pip install autopep8; fi
# optional Python packages for EasyBuild
- pip install autopep8 GC3Pie pycodestyle python-graph-dot python-hglib PyYAML
- pip install GC3Pie pycodestyle python-graph-dot python-hglib PyYAML
# git config is required to make actual git commits (cfr. tests for GitRepository)
- git config --global user.name "Travis CI"
- git config --global user.email "travis@travis-ci.org"
Expand All @@ -74,6 +77,8 @@ script:
fi;
python -c "import keyring; $SET_KEYRING; keyring.set_password('github_token', 'easybuild_test', '$GITHUB_TOKEN')";
fi
- if [ ! -z $TEST_EASYBUILD_MODULES_TOOL ]; then export EASYBUILD_MODULES_TOOL=$TEST_EASYBUILD_MODULES_TOOL; fi
- if [ ! -z $TEST_EASYBUILD_MODULE_SYNTAX ]; then export EASYBUILD_MODULE_SYNTAX=$TEST_EASYBUILD_MODULE_SYNTAX; fi
# create 'source distribution' tarball, like we do when publishing a release to PyPI
- cd $TRAVIS_BUILD_DIR; python setup.py sdist
- ls -l $TRAVIS_BUILD_DIR/dist/
Expand All @@ -86,14 +91,16 @@ script:
# to run tests on an *installed* version of the EasyBuild framework;
# this is done to catch possible packaging issues
- cd $HOME
# check GitHub configuration
- eb --check-github --github-user=easybuild_test
# run test suite
- python -O -m test.framework.suite
# check bootstrap script version
# version and SHA256 checksum are hardcoded below to avoid forgetting to update the version in the script along with contents
- EB_BOOTSTRAP_VERSION=$(grep '^EB_BOOTSTRAP_VERSION' $TRAVIS_BUILD_DIR/easybuild/scripts/bootstrap_eb.py | sed 's/[^0-9.]//g')
- EB_BOOTSTRAP_SHA256SUM=$(sha256sum $TRAVIS_BUILD_DIR/easybuild/scripts/bootstrap_eb.py | cut -f1 -d' ')
- EB_BOOTSTRAP_FOUND="$EB_BOOTSTRAP_VERSION $EB_BOOTSTRAP_SHA256SUM"
- EB_BOOTSTRAP_EXPECTED="20180201.01 9d6278409b3d9ecf034bd28384da25c14ebfe773606d4fa800e51ed11667e851"
- EB_BOOTSTRAP_EXPECTED="20180531.01 21d9704055c4fcf2cd42fe9825dd5925fa508268e4c7c423cb5958a0903d7c2e"
- test "$EB_BOOTSTRAP_FOUND" = "$EB_BOOTSTRAP_EXPECTED" || (echo "Version check on bootstrap script failed $EB_BOOTSTRAP_FOUND" && exit 1)
# test bootstrap script
- python $TRAVIS_BUILD_DIR/easybuild/scripts/bootstrap_eb.py /tmp/$TRAVIS_JOB_ID/eb_bootstrap
Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ Pull the _develop_ branch from the main easybuild-framework repository:

```bash
cd easybuild
git remote add github_easybuilders git@github.com/easybuilders/easybuild-framework.git
git remote add github_easybuilders git@github.com:easybuilders/easybuild-framework.git
git branch develop
git checkout develop
git pull github_easybuilders develop
Expand Down
115 changes: 115 additions & 0 deletions RELEASE_NOTES
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,121 @@ For more detailed information, please see the git log.

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

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

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


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

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


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

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


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

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


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

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


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

Expand Down
Loading

0 comments on commit dab9e64

Please sign in to comment.