Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1219 commits
Select commit Hold shift + click to select a range
6185501
Option to enable/disable build of `offload`
Crivella Feb 11, 2025
a7d6d8e
Fix
Crivella Feb 11, 2025
906dffc
Removed check for `clang-pseudo`
Crivella Feb 11, 2025
d0c5506
Merge pull request #3582 from smoors/20250207093025_new_pr_lammps
laraPPr Feb 11, 2025
670fb71
Support for AOCL-BLAS backend
lcniel Feb 11, 2025
befeb33
used more up-to-date easyblock
lcniel Feb 12, 2025
0933788
blank line no longer contains whitespacer
lcniel Feb 12, 2025
99a5851
Fix f-string
Flamefire Feb 12, 2025
6e92d69
Merge pull request #3576 from Flamefire/20250205103950_new_pr_cargo
Micket Feb 12, 2025
92043fd
Merge pull request #3559 from lexming/modload-syscomp
boegel Feb 12, 2025
b4f6b54
remove unused import of 'os' in Conda easyblock
boegel Feb 12, 2025
7eddeea
Merge pull request #3560 from lexming/modload-systemmpi
boegel Feb 12, 2025
d2b6f70
Merge pull request #3585 from lexming/fix-conda-modload-env
boegel Feb 12, 2025
2225ec2
Merge pull request #3587 from lexming/modload-cuda
boegel Feb 12, 2025
ad3e908
Merge pull request #3586 from lexming/modload-clang
boegel Feb 12, 2025
ac21a74
Merge pull request #3584 from lexming/modload-head-perl
boegel Feb 12, 2025
ae06c4e
adopt module_load_environment in Xmipp easyblock
boegel Feb 13, 2025
cb0a507
adopt module_load_environment in XALT easyblock
boegel Feb 13, 2025
0cd970a
adopt module_load_environment in AOCC easyblock + fix compatibility w…
boegel Feb 13, 2025
adf21d8
fix init + module-only tests for AOCC easyblock by using known version
boegel Feb 13, 2025
5521ed3
Update openfoam.py - add sanity_check_motorbike variable
pavelToman Feb 13, 2025
ef0ef28
Update openfoam.py - delete whitespace
pavelToman Feb 13, 2025
1d30c89
Update openfoam.py - fix whitespace
pavelToman Feb 13, 2025
e65aca8
adopt module_load_environment in WRF + WPS easyblocks
boegel Feb 13, 2025
52ccbc1
lint
Crivella Feb 13, 2025
6b03e98
Fix for possible different recognized triples
Crivella Feb 13, 2025
bf38429
Use context managers form templating changes in Bundle easyblock
Flamefire Jan 3, 2025
09e60d7
Allow partially resolved source_urls
Flamefire Feb 12, 2025
a748b75
Added clarifying comments
Crivella Feb 13, 2025
6a26673
Disable templating for more code
Flamefire Feb 13, 2025
378b92e
Merge pull request #3592 from boegel/20250213085208_new_pr_xmipp
lexming Feb 13, 2025
d0089d0
Merge pull request #3593 from boegel/20250213085817_new_pr_xalt
lexming Feb 13, 2025
13ae38e
replace HEADERS magic string with global MODULE_LOAD_ENV_HEADERS
lexming Feb 13, 2025
c55a9c9
replace make_module_req_guess with module_load_environment in cudacom…
lexming Feb 13, 2025
1aa14d0
remove hardcoded CPLUS_INCLUDE_PATH in favor of --module-search-path-…
lexming Feb 13, 2025
8b51ccf
Merge pull request #3595 from pavelToman/patch-1
boegel Feb 14, 2025
fcaad04
don't hardcode setting $C_INCLUDE_PATH and $CPLUS_INCLUDE_PATH in AOC…
boegel Feb 16, 2025
7ca7a29
keep list of supported BLAS libraries sorted alphabetically in FlexiB…
boegel Feb 16, 2025
df080b5
Merge pull request #3598 from lexming/modload-cudacompat
boegel Feb 16, 2025
898d222
adopt `module_load_environment` in FLUENT easyblock
boegel Feb 16, 2025
7e52fac
adopt `module_load_environment` in FreeSurfer easyblock
boegel Feb 16, 2025
49c5c81
Merge pull request #3589 from lcniel/20250211160422_new_pr_flexiblas
boegel Feb 16, 2025
6e322ec
adopt `module_load_environment` in VEP easyblock
boegel Feb 16, 2025
3681490
Merge pull request #3599 from lexming/modload-eigen
boegel Feb 16, 2025
e850b11
Merge pull request #3597 from lexming/kill-the-magic
boegel Feb 16, 2025
2fdd30b
adopt `module_load_environment` in Trinity easyblock
boegel Feb 16, 2025
b8a2814
Merge pull request #3600 from boegel/20250216141234_new_pr_fluent
lexming Feb 17, 2025
14b7f47
Merge pull request #3594 from boegel/20250213085943_new_pr_aocc
lexming Feb 17, 2025
d838197
Merge pull request #3596 from boegel/20250213133014_new_pr_wrf
lexming Feb 17, 2025
69dca16
fix init super call in freesurfer.py
lexming Feb 17, 2025
22499a7
replace old fomatting with f-strings in module step of vep.py
lexming Feb 17, 2025
8e5a293
remove return from init of freesurfer.py
lexming Feb 17, 2025
fc4668d
replace old formatting with f-stgring in trinity.py
lexming Feb 17, 2025
341aa9f
Merge pull request #3601 from boegel/20250216142135_new_pr_freesurfer
lexming Feb 17, 2025
3715abd
Merge pull request #3602 from boegel/20250216142749_new_pr_vep
lexming Feb 17, 2025
a8f8473
Merge pull request #3603 from boegel/20250216205558_new_pr_trinity
lexming Feb 17, 2025
368362e
replace make_module_req_guess with module_load_environment in freetyp…
lexming Feb 17, 2025
127f3f3
Fix name of FLEXIBLAS_DEFAULT in flexiblas easyblock
lcniel Feb 17, 2025
de73419
replace make_module_req_guess with module_load_environment in fsl eas…
lexming Feb 17, 2025
d9616dd
replace make_module_req_guess with module_load_environment in gromacs…
lexming Feb 17, 2025
9f39a0c
remove make_module_req_guess with default settings from hdf5 easyblock
lexming Feb 17, 2025
8beeea4
replace make_module_req_guess with module_load_environment in itac ea…
lexming Feb 17, 2025
20dcfd5
replace make_module_req_guess with module_load_environment in java ea…
lexming Feb 17, 2025
b9fa8d5
remove LIBRARY_PATH and CPATH from module load environment of itac
lexming Feb 17, 2025
318a8f3
replace make_module_req_guess with module_load_environment in libint …
lexming Feb 17, 2025
aacce05
replace make_module_req_guess with module_load_environment in imkl-ff…
lexming Feb 17, 2025
0eef7b4
replace make_module_req_guess with module_load_environment in mathema…
lexming Feb 17, 2025
829d159
replace make_module_req_guess with module_load_environment in molpro …
lexming Feb 17, 2025
96feb49
add additional guess of Molpro installation prefix to sanity check in…
lexming Feb 17, 2025
ec6c447
Merge pull request #3615 from lexming/modload-molpro
boegel Feb 17, 2025
431cb76
replace make_module_req_guess with module_load_environment in mrtrix …
lexming Feb 17, 2025
8f73d7f
Merge pull request #3604 from lexming/modload-freetype
boegel Feb 17, 2025
a8977e0
use os.path.join rather than hardcoding path to subdirs with / in FSL…
boegel Feb 17, 2025
315b538
Merge pull request #3606 from lexming/modload-fsl
boegel Feb 17, 2025
4e2923b
remove make_module_req_guess with default settings from mtl4 easyblock
lexming Feb 17, 2025
bc5d241
remove mtl4 easyblock because it has no active easyconfigs
lexming Feb 17, 2025
a4af6b0
remove code for old non-supported versions of NEURON
lexming Feb 17, 2025
19a932d
remove make_module_req_guess with default settings from NEURON easyblock
lexming Feb 17, 2025
01a3f74
python site-package directory is only present in version 7 of NEURON
lexming Feb 17, 2025
ca0c6fc
set PYTHONPATH to neuron python package in module load environment
lexming Feb 17, 2025
b4c0858
move MPI tests of NEURON to test phase as those need sources and neur…
lexming Feb 18, 2025
e9288ad
move python root detection to prepare step of NEURON
lexming Feb 18, 2025
bab8724
run MPI tests from easybuild_obj build directory
lexming Feb 18, 2025
5c956ac
Merge pull request #3608 from lexming/modload-hdf5
boegel Feb 18, 2025
91929d0
Merge pull request #3609 from lexming/modload-itac
boegel Feb 18, 2025
be524a1
fix use of nub + expand_module_search_path to get list of unique bin/…
boegel Feb 18, 2025
b4f4ffd
fix indent to appease the Hound
boegel Feb 18, 2025
161443d
Merge pull request #3610 from lexming/modload-java
boegel Feb 18, 2025
d6624bf
Merge pull request #3611 from lexming/modload-libint
boegel Feb 18, 2025
8924ac4
Merge pull request #3617 from lexming/modload-mtl4
boegel Feb 18, 2025
b75014e
Merge pull request #3613 from lexming/modload-mathematica
boegel Feb 18, 2025
31c86ea
Merge pull request #3616 from lexming/modload-mrtrix
boegel Feb 18, 2025
1c1cb7e
Merge pull request #3618 from lexming/modload-neuron
boegel Feb 18, 2025
f1b6a85
Merge pull request #3612 from lexming/modload-imklfftw
boegel Feb 18, 2025
4adc5b3
Merge branch '5.0.x' into parallel_prop
Flamefire Feb 18, 2025
422ee7c
replace make_module_req_guess with module_load_environment in ocaml e…
lexming Feb 18, 2025
58151c6
replace make_module_req_guess with module_load_environment in optisla…
lexming Feb 18, 2025
400d68b
set minimum supported version of PETSc to v3.9 and remove code for ar…
lexming Feb 18, 2025
c2d2053
remove unused primer3 easyblock
lexming Feb 19, 2025
c00bd40
replace make_module_req_guess with module_load_environment in pytorch…
lexming Feb 19, 2025
7aa0829
Merge pull request #3621 from lexming/modload-primer3
boegel Feb 19, 2025
f5cca5c
Merge pull request #3620 from lexming/modload-optislang
boegel Feb 19, 2025
dbe3924
Merge pull request #3622 from lexming/modload-torch
boegel Feb 19, 2025
0798bd6
Merge pull request #3619 from lexming/modload-ocaml
boegel Feb 19, 2025
f3a2042
adopt `module_load_environment` in custom easyblock for TINKER
boegel Feb 19, 2025
4fa1c45
adopt `module_load_environment` in custom easyblock for R
boegel Feb 19, 2025
cbcad03
replace make_module_req_guess with module_load_environment in petsc e…
lexming Feb 18, 2025
400afdb
remove unused easybuild.tools.filetools.symlink from PETSc easyblock
lexming Feb 19, 2025
b824221
make init tests aware of version requirements on PETSc easyblock
lexming Feb 19, 2025
25fa5d4
make module tests aware of version requirements on PETSc easyblock
lexming Feb 19, 2025
0dd6951
add comments indicating the possible locations of installation files …
lexming Feb 20, 2025
857b839
replace make_module_req_guess with module_load_environment in nvhpc e…
lexming Feb 19, 2025
2ad26dd
remove compiler commands from sanity checks of NVHPC with BYO enabled
lexming Feb 20, 2025
c1b767a
replace make_module_req_guess with module_load_environment in slepc e…
lexming Feb 20, 2025
574bc7c
set PETSC_ARCH in the build environment of SLEPc earlier
lexming Feb 20, 2025
624d634
replace make_module_req_guess with module_load_environment in repeatm…
lexming Feb 20, 2025
c295c16
replace make_module_req_guess with module_load_environment in repeatm…
lexming Feb 20, 2025
c0147bd
replace make_module_req_guess with module_load_environment in root ea…
lexming Feb 20, 2025
215ddd0
remove old reference from install step docstring in petsc easyblock
lexming Feb 20, 2025
e50b3f6
ignore install step for sourceinstall installations of SLEPc
lexming Feb 20, 2025
aeb19ec
call parent make module step in RepeatModeler easyblock
lexming Feb 20, 2025
0c52618
simplify code in R easyblock to control $LD_LIBRARY_PATH and $LIBRARY…
boegel Feb 20, 2025
d05117b
Merge pull request #3626 from boegel/20250219202327_new_pr_r
lexming Feb 20, 2025
0a1b016
append rather than overwrite in module_load_environment for TINKER
boegel Feb 20, 2025
2e7e571
Merge pull request #3625 from boegel/20250219201918_new_pr_tinker
lexming Feb 20, 2025
1d496e5
avoid that SLEPc overwrites defined by its PETSc dependency
lexming Feb 20, 2025
0c692f2
move definition of slepc_subdir and module load environment to prepar…
lexming Feb 20, 2025
685db10
Merge branch 'easybuilders:develop' into 20240313110424_new_pr_pytorch
Flamefire Feb 20, 2025
e5b0dc7
Use dataclass instead of NamedTuple
Flamefire Feb 20, 2025
b66420a
Small simplification of regex
Flamefire Feb 20, 2025
aeba74b
Rename test_result to parsed_test_result
Flamefire Feb 20, 2025
67b5ba1
change get_lib_subdir method to return all sub-directories found with…
lexming Feb 20, 2025
7d58d59
convert is_double_precision_cuda_build into a property of GROMACS eas…
lexming Feb 20, 2025
0635d87
fix indentation in GROMACS easyblock
lexming Feb 20, 2025
2c69a16
fix indentation in GROMACS easyblock
lexming Feb 20, 2025
3503c25
Merge pull request #3627 from lexming/modload-petsc
boegel Feb 20, 2025
fd53e8d
Merge pull request #3607 from lexming/modload-gromacs
boegel Feb 21, 2025
09c525c
Use dictionary for terminated_suites
Flamefire Feb 21, 2025
8bfb14e
Assemble final report once
Flamefire Feb 21, 2025
1c2a4d1
Fix message when all unaccounted suites terminated
Flamefire Feb 21, 2025
f73302c
Improve failure message for uncounted suites
Flamefire Feb 21, 2025
ad19427
Be more careful with failed message
Flamefire Feb 21, 2025
1d3d418
Merge pull request #3255 from Flamefire/20240313110424_new_pr_pytorch
akesandgren Feb 21, 2025
e8b4c18
Use unittest XML files to parse PyTorch test results
Flamefire Feb 21, 2025
3688701
Merge pull request #3631 from lexming/modload-root
boegel Feb 21, 2025
975898e
Use a variable to avoid enabling test reports after installation
Flamefire Feb 21, 2025
4779939
Merge pull request #3630 from lexming/modload-repeatmodeler
boegel Feb 21, 2025
e79a7e8
Merge pull request #3628 from lexming/modload-nvhpc
boegel Feb 21, 2025
c03678e
enhance get_lib_subdirs in GROMACS easyblock to avoid symlinked paths
lexming Feb 21, 2025
8656ac9
Merge pull request #3568 from yqshao/5.0.x
Micket Feb 21, 2025
49ca206
Merge pull request #3629 from lexming/modload-slepc
boegel Feb 22, 2025
f3d28cf
fix comment in icc/ifort easyblocks that still refered to make_module…
boegel Feb 22, 2025
3dcd714
Merge pull request #3635 from boegel/20250222094142_new_pr_icc
branfosj Feb 22, 2025
839b1f3
Merge pull request #3634 from lexming/modload-gromacs
boegel Feb 22, 2025
87bfd21
add lexming to list of contributors of NEURON easyblock
lexming Feb 22, 2025
06e1569
add lexming to list of contributors of GROMACS easyblock
lexming Feb 22, 2025
02bb09d
add lexming to list of contributors of PETSc easyblock
lexming Feb 22, 2025
24a9573
add lexming to list of contributors of SLEPc easyblock
lexming Feb 22, 2025
4ce0929
Merge pull request #3636 from lexming/lexming-author
branfosj Feb 22, 2025
4edfdbe
Merge pull request #3574 from Flamefire/fix-pytorch-build
boegel Feb 23, 2025
4d490fc
Merge branch '5.0.x' into parallel_prop
boegel Feb 24, 2025
45d8f28
Merge pull request #3557 from Flamefire/parallel_prop
boegel Feb 24, 2025
c4f40fb
Merge branch 'develop' into 5.0.x
boegel Feb 24, 2025
8e0881a
Merge pull request #3637 from boegel/5.0.x
branfosj Feb 24, 2025
19f56b2
bump version to 5.0.0beta2
boegel Feb 24, 2025
1f30a51
Merge pull request #3639 from boegel/5.0.0beta2
branfosj Feb 24, 2025
0b7b6b5
Merge pull request #3605 from lcniel/patch-1
boegel Feb 26, 2025
1bd2c92
Make parsing more reliable and resistent
Flamefire Feb 26, 2025
00c292c
Catch more failed suites
Flamefire Feb 26, 2025
9784237
Merge pull request #3547 from Flamefire/use-resolve-context-manager
boegel Feb 26, 2025
097c721
Reuse pattern for failed suite name to always remove shard info
Flamefire Feb 27, 2025
83d2e3c
Deduplicate failed test names
Flamefire Feb 27, 2025
8a177fc
make glob expansion of library files in GROMACS recursive
lexming Feb 28, 2025
9f84a86
convert lib_subdirs attribute into a property that populates itself
lexming Feb 28, 2025
94c3195
Small improvement to failure information
Flamefire Feb 28, 2025
62be66f
Remove extra char in difference output
Flamefire Feb 28, 2025
684d600
Specify tmpdir for ANSYS installations
Micket Mar 3, 2025
a62854b
replace delattr with preferred remove method in ModuleLoadEnvironment…
lexming Mar 3, 2025
85745e5
Merge pull request #3647 from lexming/fix-delattr-system
Micket Mar 3, 2025
f94c2e3
import ERROR from tools.config rather than assuming it's available in…
boegel Mar 4, 2025
bafc2b2
AOCC: Use bash for compiler wrapper
Thyre Mar 4, 2025
7d956dc
Revert to proper build without copies
Crivella Mar 4, 2025
1646380
Also removed comments
Crivella Mar 4, 2025
6f85df0
Add missing space
Flamefire Mar 3, 2025
f70903f
Use `PythonPackage` as the `default_easyblock` for `PythonBundle`
Flamefire Mar 4, 2025
a97a7de
Merge branch 'feature-LLVM_unified' of github.com:Crivella/easybuild-…
boegel Mar 4, 2025
71a5894
update workflows to use Ubuntu 22.04
boegel Mar 4, 2025
d60daea
fix test for pick_python_cmd so it passes when only python3.6 is avai…
boegel Mar 4, 2025
c605d17
Merge pull request #3651 from boegel/ubuntu-22.04
lexming Mar 4, 2025
10674ad
update LLVM easyblock to not rely on deprecated functionality in Easy…
boegel Mar 4, 2025
939173d
Added check to not auto-enable GPU targets if LLVM<18
Crivella Mar 5, 2025
4f0eeee
tweak log message for not auto-enabling offload targets for LLVM < 18
boegel Mar 5, 2025
4195471
Fix cargo build when git branch is referenced
Flamefire Mar 5, 2025
a7abb7b
Ensure compatibility with rpath wrappers and `-Werror` in tests
Crivella Mar 5, 2025
3da9fa8
Improve doc and move import
Flamefire Mar 6, 2025
11e95cb
Update github actions
Flamefire Mar 5, 2025
d726a99
Fixed check location for `libarcher.so` changed in LLVM>=19
Crivella Mar 6, 2025
a9b7e64
Fix test when python2 is not installed
Flamefire Mar 5, 2025
095f6c7
Fix wrong name
Crivella Mar 6, 2025
489b026
Added comment on rpath + test fix for LLVM<19
Crivella Mar 6, 2025
a428713
WIP - ignorable test patterns
Crivella Mar 6, 2025
6b5cfdf
minor code cleanup for support for ignoring specific tests in LLVM ea…
boegel Mar 6, 2025
77c65ca
stop using deprecated 'post_install_step' name in LLVM easyblock, use…
boegel Mar 6, 2025
02013c8
Create tmp dir before using it
Micket Mar 6, 2025
f0c6d69
Merge pull request #3373 from Crivella/feature-LLVM_unified
boegel Mar 7, 2025
987a088
Improve tuple extraction
Flamefire Mar 7, 2025
5bf9edb
Switch back to referencing actions by commit
Flamefire Mar 7, 2025
c55b4f2
use .tar.xz for archived of git repos in Cargo easyblock
lexming Mar 6, 2025
2d608a8
Remove f-string
Flamefire Mar 7, 2025
379816b
Fix for avoid using system libxml2 for non full builds
Crivella Mar 7, 2025
e4b9063
Properly handle environment variables for license
Micket Mar 7, 2025
8855212
Fix mistakenly modified lines
Micket Mar 7, 2025
9a176db
Merge pull request #3646 from Micket/20250303094713_new_pr_ansys
branfosj Mar 7, 2025
540eb88
Merge pull request #3655 from Flamefire/gha-5
boegel Mar 7, 2025
0d9a00d
Fix messages and make executable
Flamefire Mar 10, 2025
0d1bf10
Merge pull request #3633 from Flamefire/20250221130009_new_pr_pytorch
akesandgren Mar 10, 2025
a1c097f
make AOCC compiler wrappers aware of keepsymlinks option
lexming Mar 12, 2025
1c66282
convert gcc_prefix into a property method in AOCC easyblock
lexming Mar 12, 2025
5bfc021
remove patch method to handle repos without branch information for ba…
lexming Mar 8, 2025
1692399
fetch crate requirements on git repo branches from sources instead of…
lexming Mar 8, 2025
e9a6087
Use start_dir and simplify vendor crate detection
Flamefire Mar 12, 2025
c252dc8
Don't return branch in package parsing code
Flamefire Mar 12, 2025
87f656f
Search all crates for branch information
Flamefire Mar 12, 2025
88e9e68
Move offline setup back to extract_step and avoid repo duplications
Flamefire Mar 12, 2025
e8b2886
Use crate name from crate
Flamefire Mar 12, 2025
c8d3bee
Merge pull request #3648 from Thyre/aocc-use-bash-for-wrapper
lexming Mar 12, 2025
45ce07a
AOCC: Use bash for compiler wrapper
Thyre Mar 4, 2025
1d2501d
symplify check keepsymlinks configuration option in AOCC easyblock
lexming Mar 12, 2025
bbaf280
Merge pull request #3659 from lexming/fix-aocc-symlinks
branfosj Mar 12, 2025
0c5ded8
Merge pull request #3641 from lexming/gromacs-recursive
boegel Mar 12, 2025
2853c88
add Rust executables to conversion of runpaths into rpaths
lexming Mar 13, 2025
d353712
limit conversion of runpaths into rpaths for Rust v1.80+
lexming Mar 13, 2025
5f4a1ab
always replace RUNPATH with RPATH for libraries in Rust installation,…
boegel Mar 13, 2025
d3caef1
Merge pull request #3654 from Flamefire/20250305174305_new_pr_cargo
lexming Mar 13, 2025
919e9a4
Merge branch 'develop' into sync-20250313
lexming Mar 13, 2025
9340d5f
Merge branch '5.0.x' into pythonbundle-def-eb
boegel Mar 13, 2025
70d2305
cleanup code in Cargo easyblock
lexming Mar 13, 2025
f678e8b
replace run_cmd with run_shell_cmd in PyTorch easyblock
lexming Mar 13, 2025
a1d0723
update configuration options for version 4+ of MPICH
lexming Mar 13, 2025
fa748aa
Merge pull request #3662 from lexming/sync-20250313
branfosj Mar 13, 2025
8e916db
Merge pull request #3649 from Flamefire/pythonbundle-def-eb
boegel Mar 13, 2025
67dc386
don't overwrite list of files to fix RUNPATH for in Rust easyblock, e…
boegel Mar 13, 2025
2b4e432
Merge pull request #3663 from lexming/fix-mpich-v4
branfosj Mar 13, 2025
4bdf0d4
Merge pull request #3660 from lexming/fix-rust-rpath
boegel Mar 13, 2025
484be70
fix use of run_shell_cmd in PyTorch easyblock to check for xmlrunner
boegel Mar 13, 2025
12d17ba
Merge pull request #3664 from boegel/20250313225151_new_pr_pytorch
Micket Mar 13, 2025
2451eeb
Merge pull request #3657 from Crivella/fix-libxml2
boegel Mar 16, 2025
fcdd998
bump version to 5.0.0
boegel Mar 17, 2025
aa7f62e
update release notes for EasyBuild v5.0.0
boegel Mar 17, 2025
a1220fc
Merge pull request #3667 from boegel/eb500
branfosj Mar 18, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
9 changes: 4 additions & 5 deletions .github/workflows/linting.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,20 +10,19 @@ concurrency:

jobs:
python-linting:
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # 4.2.2

- name: set up Python
uses: actions/setup-python@v2
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
with:
python-version: 3.8

- name: install Python packages
run: |
pip install --upgrade pip
# fix to this version for develop branch (to avoid needing to fix geant4.py)
pip install --upgrade "flake8"
pip install --upgrade flake8

- name: Run flake8 to verify PEP8-compliance of Python code
run: flake8
54 changes: 28 additions & 26 deletions .github/workflows/unit_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,24 +10,22 @@ concurrency:

jobs:
build:
runs-on: ubuntu-20.04
runs-on: ubuntu-22.04
strategy:
matrix:
python: [3.6, 3.7, 3.8, 3.9, '3.10', '3.11']
modules_tool: [Lmod-6.6.3, Lmod-7.8.22, Lmod-8.1.14, modules-tcl-1.147, modules-3.2.10, modules-4.1.4]
python: [3.7, 3.8, 3.9, '3.10', '3.11', '3.12']
modules_tool: [Lmod-8.1.14, modules-tcl-1.147, modules-3.2.10, modules-4.5.3]
module_syntax: [Lua, Tcl]
# exclude some configuration for non-Lmod modules tool:
# - don't test with Lua module syntax (only supported in Lmod)
# - don't test with Python 3.7+ (only with 3.6), to limit test configurations
# - don't test with Python 3.8+ (only with 3.7), to limit test configurations
exclude:
- modules_tool: modules-tcl-1.147
module_syntax: Lua
- modules_tool: modules-3.2.10
module_syntax: Lua
- modules_tool: modules-4.1.4
- modules_tool: modules-4.5.3
module_syntax: Lua
- modules_tool: modules-tcl-1.147
python: 3.7
- modules_tool: modules-tcl-1.147
python: 3.8
- modules_tool: modules-tcl-1.147
Expand All @@ -36,8 +34,8 @@ jobs:
python: '3.10'
- modules_tool: modules-tcl-1.147
python: '3.11'
- modules_tool: modules-3.2.10
python: 3.7
- modules_tool: modules-tcl-1.147
python: '3.12'
- modules_tool: modules-3.2.10
python: 3.8
- modules_tool: modules-3.2.10
Expand All @@ -46,22 +44,24 @@ jobs:
python: '3.10'
- modules_tool: modules-3.2.10
python: '3.11'
- modules_tool: modules-4.1.4
python: 3.7
- modules_tool: modules-4.1.4
- modules_tool: modules-3.2.10
python: '3.12'
- modules_tool: modules-4.5.3
python: 3.8
- modules_tool: modules-4.1.4
- modules_tool: modules-4.5.3
python: 3.9
- modules_tool: modules-4.1.4
- modules_tool: modules-4.5.3
python: '3.10'
- modules_tool: modules-4.1.4
- modules_tool: modules-4.5.3
python: '3.11'
- modules_tool: modules-4.5.3
python: '3.12'
fail-fast: false
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # 4.2.2

- name: set up Python
uses: actions/setup-python@v2
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
with:
python-version: ${{matrix.python}}
architecture: x64
Expand All @@ -73,20 +73,22 @@ jobs:
# sudo apt-get update
# for modules tool
sudo apt-get install lua5.2 liblua5.2-dev lua-filesystem lua-posix tcl tcl-dev
# fix for lua-posix packaging issue, see https://bugs.launchpad.net/ubuntu/+source/lua-posix/+bug/1752082
# needed for Ubuntu 18.04, but not for Ubuntu 20.04, so skipping symlinking if posix.so already exists
if [ ! -e /usr/lib/x86_64-linux-gnu/lua/5.2/posix.so ] ; then
sudo ln -s /usr/lib/x86_64-linux-gnu/lua/5.2/posix_c.so /usr/lib/x86_64-linux-gnu/lua/5.2/posix.so
fi
# for testing OpenMPI-system*eb we need to have Open MPI installed
sudo apt-get install libopenmpi-dev openmpi-bin

# Python packages
pip --version
pip install --upgrade pip
pip --version
if ! python -c "import distutils" 2> /dev/null; then
# we need setuptools for distutils in Python 3.12+, needed for python setup.py sdist
pip install --upgrade setuptools
fi
- name: install EasyBuild framework
run: |
# first determine which branch of easybuild-framework repo to install
BRANCH=develop
BRANCH=5.0.x
if [ "x$GITHUB_BASE_REF" = 'xmain' ]; then BRANCH=main; fi
if [ "x$GITHUB_BASE_REF" = 'x4.x' ]; then BRANCH=4.x; fi
if [ "x$GITHUB_BASE_REF" = 'x5.0.x' ]; then BRANCH=5.0.x; fi
echo "Using easybuild-framework branch $BRANCH (\$GITHUB_BASE_REF $GITHUB_BASE_REF)"
git clone -b $BRANCH --depth 10 --single-branch https://github.com/easybuilders/easybuild-framework.git
cd easybuild-framework; git log -n 1; cd -
Expand All @@ -113,7 +115,7 @@ jobs:
python setup.py sdist
ls dist
export PREFIX=/tmp/$USER/$GITHUB_SHA
pip install --prefix $PREFIX dist/easybuild-easyblocks*tar.gz
pip install --prefix $PREFIX dist/easybuild[-_]easyblocks*tar.gz

- name: run test suite
env:
Expand Down
117 changes: 114 additions & 3 deletions RELEASE_NOTES
Original file line number Diff line number Diff line change
@@ -1,12 +1,123 @@
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.
These release notes can also be consulted at https://docs.easybuild.io/release-notes .

The latest version of easybuild-easyblocks provides 259 software-specific easyblocks and 43 generic easyblocks.
The latest version of easybuild-easyblocks provides 196 software-specific easyblocks and 44 generic easyblocks.

v5.0.0 (18 March 2025)
----------------------

v4.9.4 (22 september 2024)
- use `run_shell_cmd` rather than `run_cmd` and/or `run_cmd_qa` in all easyblocks (#3046, #3074, #3090, #3091, #3092, #3093, #3094, #3098, #3099, #3100, #3101, #3102, #3105, #3106, #3107, #3109, #3110, #3112, #3113, #3115, #3120, #3122, #3123, #3124, #3127, #3128, #3129, #3130, #3131, #3132, #3133, #3134, #3135, #3136, #3137, #3139, #3140, #3141, #3142, #3143, #3144, #3145, #3146, #3147, #3149, #3150, #3153, #3156, #3158, #3159, #3162, #3163, #3164, #3165, #3166, #3167, #3168, #3169, #3171, #3179, #3180, #3187, #3188, #3189, #3190, #3192, #3193, #3195, #3197, #3198, #3199, #3200, #3201, #3203, #3204, #3206, #3207, #3209, #3210, #3212, #3213, #3214, #3215, #3217, #3218, #3219, #3242, #3243, #3244, #3270, #3274, #3286, #3288, #3289, #3290, #3291, #3293, #3295, #3297, #3298, #3299, #3308, #3327, #3342, #3411, #3413, #3414, #3415, #3426, #3664)
- adopt `module_load_environment` in all easyblocks (#3513, #3529, #3530, #3550, #3551, #3552, #3553, #3555, #3556, #3559, #3560, #3561, #3562, #3577, #3578, #3579, #3585, #3586, #3587, #3592, #3593, #3594, #3596, #3597, #3598, #3600, #3601, #3602, #3603, #3604, #3606, #3607, #3608, #3609, #3610, #3611, #3612, #3613, #3615, #3616, #3618, #3619, #3620, #3622, #3625, #3626, #3627, #3628, #3629, #3630, #3631, #3634, #3647, #3635, #3641)
- enable `download_dep_fail`, `use_pip`, `sanity_pip_check` by default in `PythonPackage` easyblock (#3022, #3079, #3221)
- enhance `ConfigureMake` easyblock to error out on unknown configure options (#3025, #3563)
- adopt to changes in EasyBuild framework:
- stop testing with Python 3.5 and Lmod 6.x, stop using `toolchain.DUMMY` (#3014)
- stop importing from deprecated easybuild.tools.py2vs3 module + stop testing with Python 2.7 and 3.5 (#2916, #3015)
- use `LooseVersion` from `easybuild.tools` in all easyblocks (#3018)
- rename `run` method to `install_extension`, and likewise for `prerun` to `pre_install_extension`, `postrun` to `post_install_extension`, and `run_async` to `install_extension_async` (#3064)
- disable check for `.mod` files in Clang, AOCC, AOMP, and CPLEX easyblocks (#3067)
- stop running easyblocks test suite with Lmod 7.x (#3083)
- use `sysconfig.get_config_vars` from Python standard library in `PythonPackage` easyblock (instead of `distutils.sysconfig.get_config_vars`) (#3264)
- also run easyblocks test suite with Python 3.12 (#3266)
- use `ERROR` global from tools.config in Clang (#3318) and TensorFlow (#3320) easyblocks
- update easyblocks to let EasyBuild framework take care of prepend to `$PYTHONPATH` or `$EBPYTHONPREFIXES` (#3343)
- use `PYPI_SOURCE` constant in generic `PythonPackage` easyblock + custom easyblock for Python (#3410)
- use non-system toolchain for testing `--module-only` for ELPA and FFTW easyblocks, since they rely on toolchain options like 'pic' being set (#3425)
- take into account that '`pic`' toolchain option may not be defined in `CMakeMake` easyblock (#3470)
- remove use of deprecated `parse_log_for_error` in `RPackage` easyblock (#3515)
- rename `post_install_step` to `post_processing_step` (#3525)
- be more careful when getting value of particular easyconfig parameter in `PythonBundle` and `PythonPackage` easyblock, to avoid trouble with unresolved template values (#3537)
- remove use of deprecated `extract_errors_from_log` in `ConfigureMake` easyblock (#3540)
- remove Python 2 fallback in `openssl_wrapper` (#3544)
- update easyblocks to use `EasyConfig.parallel` property (#3557)
- honor `--module-search-path-headers` in easyblocks that hardcode CPATH (#3584)
- remove hardcoded CPLUS_INCLUDE_PATH in favor of module-search-path-headers in custom easyblock for Eigen (#3599)
- various updates:
- update version of `config.guess` used by `ConfigureMake` (#3013)
- enhance Score-P EasyBlock for future releases and better oneAPI support (#3548)
- enhance AOCC easyblock to work with LLVM 16 and newer (#3458)
- update VTune easyblock to work with v2024 and newer (#3465)
- enhance NAMD easyblock to support NAMD v3.0 (#3494)
- fix oneAPI sanity check for ifort removal in 2025.0 and newer (#3495)
- various other enhancements:
- set CMake installation `LIBDIR` to `lib` by default in `CMakeMake` easyblock (#3227)
- add warning if `.Renviron` detected during install of RPackage (#3263)
- make `PythonBundle` and `PythonPackage` aware of `--prefer-python-search-path` EasyBuild configuration option (#3343)
- enhance `LLVM` easyblock for compilation of clang/flang + other llvm-projects (#3373, #3657)
- enhance `CMakeMake` easyblock to check whether correct `Python` installation was picked up by `CMake` (#3399)
- enhance Qt5 easyblock to support building on RISC-V (#3462)
- let `CMakeMake` easyblock also set `Python_EXECUTABLE` option, as well as `Python3_EXECUTABLE` and `Python2_EXECUTABLE` derivatives (when appropriate) (#3463)
- update ROOT easyblock to support sysroot (#3467)
- enhance generic `Bundle` easyblock to transfer module requirements of components, but do not create logfile in components (#3472, #3504, #3509)
- enhance cuDNN easyblock to verify that EULA is accepted before installing it (#3473)
- enhance AOCC easyblock to correctly pass GCC toolchain and compiler driver (#3480)
- enhance Cargo easyblock for sources from git repositories (#3483, #3654)
- enhance Cargo easyblock to print message for generating `Cargo.lock` if it's missing (#3491)
- let `PythonPackage` easyblock fix python shebangs by default (#3499)
- make it possible to disable single precision as build target in GROMACS easyblock (#3501)
- pass netCDF-Fortran path via `$NETCDFF_DIR` in WPS easyblock (#3522)
- set `CMAKE_CUDA_HOST_COMPILER`, `CMAKE_CUDA_COMPILER`, and `CMAKE_CUDA_ARCHITECTURES` when using CUDA in `CMakeMake` easyblock (#3523)
- show path of output file produced by MATLAB installer (#3532)
- make path to temporary install directory used in test step of `PythonPackage` easyblock available through environment variable so that it may be used in easyconfigs (#3565)
- add support for Sapphire Rapids in LAMMPS (#3569)
- allow installing from commit for LAMMPS (#3582)
- add support to OpenFOAM easyblock for custom `sanity_check_motorbike` easyconfig parameter to opt out of running motorBike tutorial example during sanity check (#3595)
- enhance FlexiBLAS easyblock to add support for AOCL-BLAS backend (#3589, #3605)
- enhance handling of `PETSC_ARCH` in SLEPc easyblock (#3629)
- use unittest XML files to parse PyTorch test results (#3633)
- various bug fixes:
- don't change `installopts` easyconfig parameter value in-place in `PythonPackage` easyblock (#3080)
- fail on non-zero exit code in command to run Perl test suite (#3170)
- fix `--module-only` + cleanup for custom easyblock for Geant4 (#3302)
- consider both `easybuild-easyblocks*.tar.gz` and `easybuild_easyblocks*tar.gz` in CI workflows (#3309)
- make `CMakeMake` respect `debug` and `noopt` toolchain options when selecting build type (#3452)
- make `MesonNinja` respect the `debug`/`noopt`/`lowopt`/`opt` toolchain options to correctly set build type and use `--debug` and `--optimization` flags (#3454)
- strip leading `local/` from pylibdir where appropriate in `PythonPackage` easyblock (#3464)
- remove X11 flag for GROMACS 2023+ (#3466)
- fix setting of `CMAKE_OPTIONS` for SuiteSparse versions between 5.1.2 and 6.0.0 (#3471)
- add missing `return` for customised `install_extension_async` methods in Rserve and Rmpi easyblocks (#3474)
- disable CPU-specific optimizations for generic builds (by using a custom `processor_arch`) in LAMMPS easyblock (#3484)
- also add path to `libtorch.so` & co to `$LIBRARY_PATH` in generated module file for PyTorch (#3488)
- use `*DESCRIPTION` rather than `*/DESCRIPTION` in `RPackage.requires_deps` (#3490)
- use `DYNAMIC_ARCH=1` when building OpenBLAS with `--optarch=GENERIC` (#3492)
- fix check in Score-P's configure scripts that may fail if the path to certain dependencies include `yes` or `no` (#3496)
- let internal easyblock not create a log file in QuantumESPRESSO easyblock (#3505)
- update CUDA easyblock to add CUPTI and nvvm library directories to `$LIBRARY_PATH` (#3516)
- force use of `bash` for `Allwmake` scripts in OpenFOAM easyblock (#3519)
- fix detection of math library in numpy build (#3520)
- retain custom easyconfig parameters supported by `MesonNinja` easyblock in custom easyblock for `scipy` (#3526)
- inject custom '`%(python)s`' template value before getting value of '`buildcmd`' custom easyconfig parameter in `PythonPackage` easyblock (#3539)
- import from other easyblocks without the single folder letter (#3543)
- fix `$PYTHONPATH` for hermetic Python in TensorFlow builds (#3568)
- fix building PyTorch when using `setup.py` as the build command (#3574)
- set Cargo variables also for extensions (#3576)
- use bash for compiler wrapper in AOCC easyblock (#3648)
- fix compatibility of Molpro easyblock with `--module-only` (#3615)
- specify tmpdir for ANSYS installations (#3646)
- update + fixes in GitHub Actions workflows to use Ubuntu 22.04 (#3651, #3655)
- make AOCC compiler wrappers aware of keepsymlinks option (#3659)
- convert RUNPATH into RPATH for Rust binaries in recent Rust versions (> 1.79.0) (#3660)
- update configuration options for version 4+ of MPICH (#3663)
- various minor changes:
- don't auto-enable use of `-DSCOTCH_PTHREAD` when using MPI library other than Intel MPI in SCOTCH easyblock (#3019)
- replace `log.warn` with `log.warning` (#3245)
- refactor search for `python_cmd` in `PythonPackage` and `PythonBundle` easyblocks (#3475)
- update `Python` easyblock to move `sitecustomize.py` into `site-packages` (#3514)
- switch default to `install_pip=True` in custom Python easyblock (#3546)
- use context managers for templating changes in `Bundle` easyblock (#3547)
- use `PythonPackage` as the `default_easyblock` for `PythonBundle` (#3649)
- cleanup of dead code
- drop support for versions < 2.0 in custom easyblock for ScaLAPACK (#3106)
- drop support for versions < 9.5 in custom easyblock for Geant4 (#3296)
- remove code supporting obsolete versions from `IntelBase` family of easyblocks (#3533)
- clean up custom easyblock for Paraver, only support Paravar >= v4.7 (#3535)
- set minimum supported version of PETSc to v3.9 (#3627)
- remove unused software-specific easyblocks for ACML (#3172), ALADIN (#3173), Allinea (#3423), ARB (#3096), ATLAS (#3103), BamTools (#3424), Bioconductor (#3423), BiSearch (#3174), BLACS (#3104), Blender (#3423), BWISE (#3423), CFDEMcoupling (#3151), Chapel (#3423), CHARMM (#3108), cppcheck (#3111), DL_POLY_Classic (#3152), DOLFIN (#3154), Doris (#3175), Doxygen (#3114), EggLib (#3066), EPD (#3423), ESPResSo (#3117), fastStructure (#3155), FoldX (#3423), FreeFEM (#3157), HEALPix (#3285), IMOD (#3126), IPP (#3533), IronPython (#3125), libsmm (#3216), MetaVelvet (#3423), Modeller (#3292), Mono (#3211), Mothur (#3423), MSM (#3208), MTL4 (#3617), MyMediaLite (#3205), mutil (#3423), MVAPICH2 (#3423), ncurses (#3265), NEMO (#3202), OpenIFS (#3194), Pasha (#3423), pbdMPI (#3423), pbdSLAP (#3423), PGI (#3181), picard (#3423), pplacer (#3185), Primer3 (#3621), PyQuante (#3423), python_meep (#3182), Samcef (#3176), SAS (#3177), Scalasca v1.x (#3423), SHRiMP (#3423), SNPhylo (#3178), SOAPdenovo (#3423), TAU (#3535), TotalView (#3191), UFC (#3423), VSC-tools (#3138), WRF-Fire (#3271)


v4.9.4 (22 September 2024)
--------------------------

update/bugfix release
Expand Down
2 changes: 1 addition & 1 deletion easybuild/__init__.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
##
# Copyright 2009-2024 Ghent University
# Copyright 2009-2025 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
7 changes: 3 additions & 4 deletions easybuild/easyblocks/__init__.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
##
# Copyright 2009-2024 Ghent University
# Copyright 2009-2025 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down Expand Up @@ -32,7 +32,6 @@
@author: Jens Timmerman (Ghent University)
"""
import os
from distutils.version import LooseVersion
from pkgutil import extend_path

# note: release candidates should be versioned as a pre-release, e.g. "1.1rc1"
Expand All @@ -43,7 +42,7 @@
# recent setuptools versions will *TRANSFORM* something like 'X.Y.Zdev' into 'X.Y.Z.dev0', with a warning like
# UserWarning: Normalizing '2.4.0dev' to '2.4.0.dev0'
# This causes problems further up the dependency chain...
VERSION = LooseVersion('4.9.4')
VERSION = '5.0.0'
UNKNOWN = 'UNKNOWN'


Expand Down Expand Up @@ -76,7 +75,7 @@ def get_git_revision():
if git_rev == UNKNOWN:
VERBOSE_VERSION = VERSION
else:
VERBOSE_VERSION = LooseVersion("%s-r%s" % (VERSION, git_rev))
VERBOSE_VERSION = "%s-r%s" % (VERSION, git_rev)

# extend path so python finds our easyblocks in the subdirectories where they are located
subdirs = [chr(x) for x in range(ord('a'), ord('z') + 1)] + ['0']
Expand Down
Loading