Skip to content

always start with empty list for banned/requires libraries to avoid that corresponding build option is updated in-place#4137

Merged
branfosj merged 1 commit intoeasybuilders:developfrom
boegel:fix_banned_libs_leak
Dec 7, 2022
Merged

always start with empty list for banned/requires libraries to avoid that corresponding build option is updated in-place#4137
branfosj merged 1 commit intoeasybuilders:developfrom
boegel:fix_banned_libs_leak

Conversation

@boegel
Copy link
Copy Markdown
Member

@boegel boegel commented Dec 7, 2022

When installing multiple easyconfigs, for which the list of banned libraries is different, we need to ensure that the list used for the installation of the 1st easyconfig doesn't leak to the 2nd easyconfig.

If the banned_linked_shared_libs build option value is a list value somehow (for example because of the active EasyBuild configuration, or because banned_linked_shared_libs was manipulated through an EasyBuild hook), then we're updating that list in-place with the .extend calls.
When the banned_linked_shared_libs build option is later requested again, we get the updated list.

This can be avoided by always starting from an empty list, so the reference to the banned_linked_shared_libs build option list value is not being reused as a reference across multiple installations.

…hat corresponding build option is updated in-place
@boegel boegel added the bug fix label Dec 7, 2022
@boegel boegel added this to the next release (4.7.0) milestone Dec 7, 2022
@boegel boegel requested a review from branfosj December 7, 2022 16:05
@branfosj branfosj merged commit 92c70dd into easybuilders:develop Dec 7, 2022
@boegel boegel deleted the fix_banned_libs_leak branch December 7, 2022 16:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants