You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
module switch command is sometimes used in modulefile to ensure a specific version of a module requirement will be loaded, whatever the current environment state.
In this case a module switch foo foo/1.2 command is set in a bar/1 module means that foo/1.2 is required by bar/1 and this foo/1.2 version should replace any version of foo currently loaded version.
Consistency mechanism introduced in version 4.2 of Modules currently breaks this use case:
$ cat /path/to/modulefiles/bar/1#%Modulemodule switch foo foo/1.2
$ module load bar/1Loading foo/1.2 ERROR: Conflicting 'bar/1' is loadingLoading bar/1 WARNING: Load of switched-on foo/1.2 failed ERROR: Load of requirement 'foo/1.2' failed
Any version of foo is declared conflicting with bar/1 which breaks the load of swapped-on module foo/1.2.
Consistency mechanism should be adapted to allow such use case. For instance if the specification of the module to swap-off matches the specification of the module to swap-on, do not define a conflict against swapped-off module.
The text was updated successfully, but these errors were encountered:
`module switch` command used in modulefile is sometimes used to ensure a
given version of a module is loaded. Currently loaded version of this
module is unloaded to replace it by the designated specific version.
This use case does not cope with the conflict declaration that is set
over switched-off module specification. To support this use case,
conflict definition is skipped if swapped-off module specification
matches (includes) swapped-on module specification.
Fixescea-hpc#355
module switch
command is sometimes used in modulefile to ensure a specific version of a module requirement will be loaded, whatever the current environment state.In this case a
module switch foo foo/1.2
command is set in abar/1
module means thatfoo/1.2
is required bybar/1
and thisfoo/1.2
version should replace any version offoo
currently loaded version.Consistency mechanism introduced in version 4.2 of Modules currently breaks this use case:
Any version of
foo
is declared conflicting withbar/1
which breaks the load of swapped-on modulefoo/1.2
.Consistency mechanism should be adapted to allow such use case. For instance if the specification of the module to swap-off matches the specification of the module to swap-on, do not define a conflict against swapped-off module.
The text was updated successfully, but these errors were encountered: