-
Notifications
You must be signed in to change notification settings - Fork 128
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
module extensions are not included in output of ml --terse avail
#667
Comments
The module extensions cannot be output like modules because they are not modules. The output of "module --terse avail" is used for tab completion. So you can't do "module load numpy" if numpy is an extension. What purpose would including module extensions serve when doing "module --terse avail". How would anyone or any program know the difference between a module and a module extension? Any output of module extensions would have to be different from modules. Maybe:
where only python3/3.10.1 and git/2.41.0 are modules |
Or just
Since module avail only prints the extensions and not where they are from. |
There is a good reason to NOT provide extensions when doing "module --terse avail". Currently, Lmod does not need to build the spider cache when doing "module --terse avail". To print out the extension with --terse, would require building the spider cache. This is an expense, I don't want everyone to pay. Since "module --terse avail" is use for tab completion, we don't want to incur that time penalty for every time during "module load ". |
The testing branch has been merged to the main branch and has been released as Lmod 8.7.36 |
With Lmod 8.7.37, I see there's some progress on this. With a module file if convertToCanonical(LmodVersion()) >= convertToCanonical("8.2.8") then
extensions("contourpy/1.2.0,Cycler/0.12.1,fonttools/4.47.0,kiwisolver/1.4.5,matplotlib/3.8.2")
end I see this at the end of
A coupe of questions/observations here:
|
As discussed during today's Lmod monthly meeting: the current implementation of That said, it would be great if both the version info and relation to module files could be made available somehow in terse mode as well. Maybe through an additional option like |
There's also no help text for the
|
The Lmod branch IS667-terse-av-ext has been pushed to github. This version fixes all known issues. The output just reports the individual extensions instead of at the end. Here is typical output:
Please test this branch to see if it works for you. |
I took this for a quick spin, and it's working as expected for me. Here's the relevant bit of the output for a
This makes it clear which version of the extensions are available, and which module they are available in. So lgtm! |
This branch has been merged onto the main branch and has been released as Lmod 8.7.48. Closing this issue. |
Describe the bug
Module extensions show up in the output of
ml avail
:But they are not included in the output of
ml --terse avail
:I guess the reason could be that the output should somehow discriminate between actual modules and extensions?
Maybe an additional option like
--with-extensions
can be added to opt-in to also getting extensions listed, something like:Note also that the
This is a list of module
line is excessive long, it doesn't seem to take into account the width of the terminal likemodule avail
does do for modules to avoid line wrapping of the "header line" (---- ... ----
)The text was updated successfully, but these errors were encountered: