Skip to content

fall back to sequential installation for extensions with unknown dependencies when using --parallel-extensions-install#3906

Merged
branfosj merged 2 commits intoeasybuilders:developfrom
boegel:required_deps_None
Dec 4, 2021
Merged

fall back to sequential installation for extensions with unknown dependencies when using --parallel-extensions-install#3906
branfosj merged 2 commits intoeasybuilders:developfrom
boegel:required_deps_None

Conversation

@boegel
Copy link
Copy Markdown
Member

@boegel boegel commented Nov 27, 2021

This avoids a hard crash that occurs currently when trying to use --parallel-extensions-install --experimental --robot and an easyconfig that includes Python packages as extensions.

For example:

NotImplementedError: Don't know how to determine required dependencies for extension 'setuptools'

This occurs because the PythonPackage easyblock does not define the required_deps method, and hence the default implementation from the Extension easyblock is used.

The changes include here include:

  • changing the default implementation of required_deps to just return None;
  • fall back to sequential installation for an extension with unknown dependencies, that is wait until all preceding extensions have been installed first (since the order in the list of extensions should then be honored).

The added test verifies that this is working as expected.

…termined, and only install it when preceding extensions have been installed
@boegel boegel added this to the next release (4.5.1?) milestone Nov 27, 2021
@boegel boegel added change and removed change labels Nov 27, 2021
@easybuilders easybuilders deleted a comment from boegelbot Nov 28, 2021
@easybuilders easybuilders deleted a comment from boegelbot Dec 3, 2021
…custom toy easyblock that doesn't implement required_deps
@boegel boegel force-pushed the required_deps_None branch from 63c615a to ff98040 Compare December 3, 2021 23:26
@boegel boegel requested a review from branfosj December 3, 2021 23:27
@boegelbot

This comment has been minimized.

Copy link
Copy Markdown
Member

@branfosj branfosj left a comment

Choose a reason for hiding this comment

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

lgtm

@branfosj branfosj enabled auto-merge December 4, 2021 10:08
@branfosj branfosj merged commit 4454f71 into easybuilders:develop Dec 4, 2021
@boegel boegel deleted the required_deps_None branch December 4, 2021 13:00
@boegel boegel changed the title fall back to sequential installation for extensions with unknown dependencies fall back to sequential installation for extensions with unknown dependencies when using --parallel-extensions-install Dec 8, 2021
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