Protect exts_lists from templating in dump method...#2619
Protect exts_lists from templating in dump method...#2619boegel merged 9 commits intoeasybuilders:developfrom
Conversation
…plated themselves)
|
|
||
| # values for these keys will not be templated in dump() | ||
| EXCLUDED_KEYS_REPLACE_TEMPLATES = ['description', 'easyblock', 'homepage', 'name', 'toolchain', 'version'] \ | ||
| EXCLUDED_KEYS_REPLACE_TEMPLATES = ['description', 'easyblock', 'homepage', 'name', 'toolchain', 'version', 'exts_list'] \ |
There was a problem hiding this comment.
line too long (121 > 120 characters)
…plated themselves)
|
Fixes #2618 |
|
Hmm, the new test isn't broken before I add the fix, not sure what's going on there...but I confirm that it does fix the error described in #2618 |
| 'name', | ||
| 'toolchain', | ||
| 'dependencies', # checking this is important w.r.t. filtered hidden dependencies being restored in dump | ||
| 'exts_list', # exts_lists (in Python easyconfig) use another layer of templating so shouldn't change |
There was a problem hiding this comment.
at least two spaces before inline comment
|
@boegel I cannot get this additional test to break, I can see the difference in the outputs with |
|
Ok, if I look directly at ectxt in the test I can see the fix works, but this is not causing problems when parsing. I tried a few things to get the test to break but I am out of ideas. |
|
Ok, the test now fails without the fix so this is good to go. I don't understand why templating needs to be switched off in the parsed easyconfig but it at least catches the error and seems to be what happens in the main trunk. I would suspect it is because that there is nested templating in |
This comment has been minimized.
This comment has been minimized.
| # values for these keys will not be templated in dump() | ||
| EXCLUDED_KEYS_REPLACE_TEMPLATES = ['description', 'easyblock', 'homepage', 'name', 'toolchain', 'version'] \ | ||
| + DEPENDENCY_PARAMETERS | ||
| + ['exts_list'] + DEPENDENCY_PARAMETERS |
maintain alphabetical sorting for values of EXCLUDED_KEYS_REPLACE_TEMPLATES
|
@ocaisa To answer your question: I think we deliberately don't resolve things like |
|
Going in, thanks @ocaisa! |
(since they are templated internally themselves)