Skip to content

add support for using list of values in modulename in extensions#4716

Merged
smoors merged 5 commits intoeasybuilders:developfrom
Flamefire:multiple-modulenames
Mar 15, 2026
Merged

add support for using list of values in modulename in extensions#4716
smoors merged 5 commits intoeasybuilders:developfrom
Flamefire:multiple-modulenames

Conversation

@Flamefire
Copy link
Copy Markdown
Contributor

This changes the allowed types of the modulename extension option:

  • False to skip the sanity check and always install it when --skip is used
  • str: Value for %(ext_name)s in the exts_filter template
  • List of str: Multiple names to be used in the exts_filter template. All resulting commands must succeed.

This was previously suggested to allow Perl modules that are part of other Perl modules and hence don't need to be installed multiple times. See easybuilders/easybuild-easyconfigs#12575

It replaces resolve_exts_filter_template by
construct_exts_filter_cmds as the method now returns a, potentially empty, list which might cause errors if used without expecting a list.

The function is only used internally in framework and not by any easyblocks.

@boegel
Copy link
Copy Markdown
Member

boegel commented Mar 19, 2025

@Flamefire I changed to target branch in this PR from 5.0.x to develop, you should synchronize your PR branch with current develop branch (which has received a massive update after the release of EasyBuild v5.0.0, see #4825)

@boegel boegel modified the milestones: 5.x.x, 5.x Apr 9, 2025
@Flamefire Flamefire force-pushed the multiple-modulenames branch from 5e09ede to c1b87f3 Compare July 30, 2025 08:17
@Flamefire
Copy link
Copy Markdown
Contributor Author

Rebased

@Flamefire Flamefire force-pushed the multiple-modulenames branch from 7b32a03 to 05716cc Compare November 10, 2025 08:01
This changes the allowed types of the `modulename` extension option:
- `False` to skip the sanity check and always install it when `--skip` is used
- `str`: Value for `%(ext_name)s` in the `exts_filter` template
- List of `str`: Multiple names to be used in the `exts_filter` template.
  All resulting commands must succeed.

It replaces `resolve_exts_filter_template` by
`construct_exts_filter_cmds` as the method now returns a, potentially empty, list
which might cause errors if used without expecting a list.
There shouldn't be a command executed for that.
@Flamefire Flamefire force-pushed the multiple-modulenames branch from 5ccc99a to d0eb465 Compare February 27, 2026 10:11
Comment thread easybuild/framework/extension.py Outdated
Comment thread easybuild/framework/extension.py Outdated
This might be useful for easyblocks to avoid duplicating the code for
determining the modulename from either the options or the name.
@Flamefire Flamefire force-pushed the multiple-modulenames branch from d0eb465 to f2ca644 Compare March 2, 2026 13:44
Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
@Flamefire Flamefire force-pushed the multiple-modulenames branch from b7f52fd to 08eb033 Compare March 11, 2026 16:40
@Flamefire
Copy link
Copy Markdown
Contributor Author

@smoors I did the changes we discussed (didn't get a notification for the thumbs up so I missed them until yesterdays confcall)
Force-push to amend the commit fixing a line length only

Comment thread easybuild/framework/extension.py Outdated
@smoors smoors modified the milestones: 5.x, next release (5.2.2?) Mar 15, 2026
Copy link
Copy Markdown
Contributor

@smoors smoors left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tested on a customized Arrow-22.0.0-gfbf-2025a.eb, works like a charm

# multiple modulenames
'modulename': ['pyarrow', 'pyarrow.dataset', 'pyarrow.parquet', 'pyarrow.orc'],
# no modulename
'modulename': False,

@smoors smoors merged commit 99ee682 into easybuilders:develop Mar 15, 2026
40 checks passed
@Flamefire Flamefire deleted the multiple-modulenames branch March 15, 2026 10:50
@boegel boegel changed the title add support for multiple modulenames in extensions add support for using list of values in modulename in extensions Apr 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants