fix excessive liberal regex used to pick correct path to ELPA include path in WIEN2k easyblock - #4191
Merged
Conversation
boegel
force-pushed
the
20260803161637_new_pr_wien2k
branch
from
August 3, 2026 14:23
bb445e4 to
2f79ffd
Compare
boegel
force-pushed
the
20260803161637_new_pr_wien2k
branch
from
August 3, 2026 14:24
2f79ffd to
083d077
Compare
… path in WIEN2k easyblock
boegel
force-pushed
the
20260803161637_new_pr_wien2k
branch
from
August 3, 2026 14:37
083d077 to
46f608b
Compare
Member
Author
|
Test report by @boegel Overview of tested easyconfigs (in order)
Build succeeded for 3 out of 3 (total: 1 hour 24 mins 55 secs) (3 easyconfigs in total) |
Contributor
|
Going in, thanks @boegel! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
(created using
eb --new-pr)Installing WIEN2k often failed due to failing to find a match for questions that were raised by the interactive installers, as reported in:
siteconfig_lapwinteractive configure script #4064I was hitting this today, and when checking the log file I noticed that the WIEN2k easyblock failed to find a match for a known question for the following bit of output:
That's weird, because the last 5 lines which include the "
Which parameter to change?" question that can't be answered should only be shown when theSelection:question above was answered with1. That should never happen, because there's a question pattern forQ to quitfollowed bySelection:, which should always be answered withQ...It turns out that the problem was that the regex used to determine which number to use to specify the correct path to the ELPA header files was way too liberal, because it includes
(.*\n)*, which matches any line in the output, without restriction.That caused trouble, because it resulted in the "path to ELPA headers" question being answered multiple times rather than just once, even though it was not at the end of the output and hence not the question that should be answered:
Because the answer is
1, we were actually (incorrectly) answering theSelection:question mentioned above with1, which results in the follow-up question "Which parameter to change?", which eventually leads to:This problem has been there since the WIEN2k easyblock was ported to EasyBuild 5 in:
run_shell_cmdin custom easyblock for WIEN2k #3413It was not a problem in EasyBuild 4.x, because there the interactive
siteconfig_lapwcommand was run with the (now deprecated)run_cmd_qafunction. This had two lists of patterns for questions:qa: a list with string values that were an exact match for questions, which in the case of WIEN2k included "Q to quit Selection:"), andstd_qa: a separate list with regular expressions to consider for matching questions.The latter list was only used when no match could be found using the list of strings, and hence the "
Q to quit Selection:" was always matched before the regex pattern to answer the "path to ELPA headers" question was considered...There was an attempt to circumvent the problem being properly fixed here in 45f9339 by moving the pattern for the "path to ELPA headers" question later in the list of patterns, but that's just an imperfect workaround, the real problem is that the regex is way too liberal.
fixes #4064