-
Notifications
You must be signed in to change notification settings - Fork 214
Description
Several module extensions use a name also used by actual modulefiles but are related to a different software than these modulefiles.
For example, R-tesseract-5.2.1-foss-2023a.eb
generates a R-tesseract/5.2.1
modulefile that provides module extension tesseract/5.2.1
and loads module tesseract/5.3.4
, generated by tesseract-5.3.4-GCCcore-12.3.0.eb
. Here the actual tesseract/5.3.4
modulefile refers to Tesseract, an optical character recognition engine, whereas the tesseract/5.2.1
extension refers to the R extension for using tesseract.
Such name clash brings confusion at the module level as users see the teserract
name used for a module and an extension, but not referring to the same thing.
For this example with R-tesseract-5.2.1-foss-2023a.eb
, the module extension may be omitted as what is provided is already conveyed by the R-tesseract
module name.
I would suggest to review all extensions whose names also correspond to module names. In case extension and module do not refer to the same software:
- avoid defining the extension in the modulefile if it corresponds to name of this modulefile
- in other case, rename the extension (for instance by prefixing it by the language name: python-, R-)
As it seems that module extensions only have an informational purpose, extension name change should not break a thing at the module level.