lmod-announce Mailing List for Lmod
A Lua based environment module system that reads TCL modulefiles.
Brought to you by:
rtmclay
You can subscribe to this list here.
| 2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
(1) |
Dec
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2018 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2019 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
| 2020 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2021 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
(1) |
| 2022 |
Jan
|
Feb
|
Mar
|
Apr
(3) |
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2024 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
| 2025 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
|
From: Announcing n. v. of L. <lmo...@li...> - 2025-10-13 20:25:33
|
I am happy to release the long awaited version 9.0. This is a small change
from 8.7.67 but a big change from earlier versions.
Here is a list of the major changes since Lmod 8.0:
1. Irreversible mode: Unloading a module can set env. vars
2. Improved optional module tracking.
3. More powerful hide{} and forbid{} functions to hide and forbid
modules.
4. The function depends_on_any() added.
5. Collection only written to ~/.config/lmod directory.
6. Great performance improvements when loading a module with many
dependencies.
Enjoy this latest version of Lmod.
The Lmod Team.
|
|
From: Announcing n. v. of L. <lmo...@li...> - 2024-10-09 22:18:22
|
This release of Lmod 8.7.51. The big part of this release is the addition of hide{} and forbid{} function that support hiding and forbidding modules. If you are interested in these features, please test this version out. This change will be released as part of Lmod 8.8 as part of the SC 24 presentation on Nov 19,20. 2024
There are many updates as part of this release:
* Report dofile() usage as an error.
* Updated FPATH support: bash, ksh just add path (init/ksh_funcs) to FPATH
zsh: if autoload && compinit fail then set __zsh_fpath with sub-shell
* improve addto to not include duplicates in path like variables (PATH, FPATH. ,,. )
* Add support for --dumpname in lmod and ml; Update tab completions files
* PR #727: Do not reset BASH_ENV if already set for cshrc.in
* Do not reset BASH_ENV if already set for profile.in
*
Support for hide{} and forbid{}
See https://lmod.readthedocs.io/en/latest/093_modulerc.html#hide-a-more-powerful-way-to-hide-modules
for more details about the hide{} and forbid{} functions.
Best,
Lmod Team.
|
|
From: Announcing n. v. of L. <lmo...@li...> - 2023-07-31 16:29:07
|
It has been over 15 years since I first started working on Lmod. It is time for a retrospective. We will have our next Lmod Zoom meeting on August 1st at 9:30am (14:30 UTC) Current Agenda: * Q/A * Presentation: 15 years of Lmod: A Retrospective * If there is time: A Discussion of recent Lmod issues The zoom link can be found here: https://github.com/TACC/Lmod/wiki The presentation will be found here: https://github.com/TACC/Lmod/blob/main/my_docs/23/lmod_zoom_mtg_2023_08_01/presentation.<https://github.com/TACC/Lmod/blob/main/my_docs/23/lmod_zoom_mtg_2023_08_01/presentation.tex>pdf Best, Robert |
|
From: Announcing n. v. of L. <lmo...@li...> - 2022-05-25 01:33:12
|
3. This version now detects when attempting to load the same module too
many times. When this happens Lmod generates an error message as shown
from the new rt/infiniteLoop test:
Lmod has detected the following error: Infinite Load Loop detected for
module: "gcc/10.3.0" file:
"ProjectDIR/rt/infiniteLoop/mf/Core/gcc/10.3.0.lua"
While processing the following module(s):
Module fullname Module Filename
gcc/10.3.0 ProjectDIR/rt/infiniteLoop/mf/Core/gcc/10.3.0.lua
4.This version also detects when a modulefile tries to add the same
directory again to $MODULEPATH:
When building the spider cache, this version detects that you are already
adding the same MODULEPATH directory that the current module is in. In
this case, it ignores this. This avoids creating an endless loop in the
modulepath tree. The tree needs to be a DAG (directed acyclic graph). In
other words, no loops allowed.
Best,
Robert.
On Tue, May 24, 2022 at 8:34 AM Maxime Boissonneault <
max...@ca...> wrote:
> Hi Robert,
> Le 2022-05-23 à 15:31, Robert McLay a écrit :
>
>
> - This version now detects when attempting to load the same modulefile
> too many times.
> - This version also detects when a modulefile tries to add the same
> directory again to $MODULEPATH.
>
> Out of curiosity, once detected, what does it do ? It outputs a warning to
> the user ? It logs something ? It errors out ?
>
> Thanks,
>
> Maxime
>
>
--
Robert McLay, Ph.D.
Manager of Software Tools, HPC
mc...@ta...
|
|
From: Announcing n. v. of L. <lmo...@li...> - 2022-05-24 13:34:22
|
Hi Robert, Le 2022-05-23 à 15:31, Robert McLay a écrit : > # This version now detects when attempting to load the same modulefile > too many times. > # This version also detects when a modulefile tries to add the same > directory again to $MODULEPATH. Out of curiosity, once detected, what does it do ? It outputs a warning to the user ? It logs something ? It errors out ? Thanks, Maxime |
|
From: Announcing n. v. of L. <lmo...@li...> - 2022-05-23 19:32:44
|
This is a bug fix release. It fixes a few issues: 1. K-shell doesn't support the keyword "local" in shell functions. The module shell function now fixes that. 2. Reports a warning when a directory in $MODULEPATH has too many non-modulefiles. This can occur when a modulefile is at the top of a source tree rather than in its own directory. 3. This version now detects when attempting to load the same modulefile too many times. 4. This version also detects when a modulefile tries to add the same directory again to $MODULEPATH. -- Robert McLay, Ph.D. Manager of Software Tools, HPC mc...@ta... |
|
From: Announcing n. v. of L. <lmo...@li...> - 2022-04-21 20:54:52
|
I am happy to announce that Lmod 8.7 has been released. This version is mainly a series of bug fixes from Lmod 8.6 but there are some changes that need to be made clear w.r.t. Lmod 8.7. The big changes are four things: 1. An unload cannot fail. That is if unloading a module would have been an error before, it is now a warning. This means that a "bad" module can be unloaded. 2. A bare TCL break statement (or a LmodBreak in lua) in a modulefile does nothing on unload. 3. A TCL `puts stdout "..."' will produce its output at the end of the modulefile rather than the beginning of the modulefile. This now matches the behavior of Tmod 4.1 4. A TCL 'puts prestdout "..."' will produce its output at the beginning of the modulefile. This now matches Tmod 5.1 -- Robert McLay, Ph.D. Manager of Software Tools, HPC mc...@ta... |
|
From: Announcing n. v. of L. <lmo...@li...> - 2022-04-14 21:15:10
|
Sorry wrong mailing list, I meant to send to lmod-users
On Thursday, April 14, 2022, 03:12:57 PM MDT, Announcing new versions of Lmod via Lmod-announce <lmo...@li...> wrote:
Is it possible to update PATHs immediately after a load call inside a Lua modulefile? For the example shown below, a module named mymodule, the first call of module load mymodule will load miniconda3 but the following conda activate call will not work because path to conda exe is not found. The second call does the activate just fine, so what I am trying to achieve is to get the conda activate to work with one module load call. I've learned that environment-modules version 4.1 supports this kind of feature, but Lmod 8.5.2 (the version I have) doesn't seem to support it. Is there a way I can achieve this with Lmod? Otherwise, I will have to put them in two separate modulefiles ...
Thanks in advance
prepend_path("MODULEPATH","/contrib/miniconda3/modulefiles")load("miniconda3")
if (mode() == "load") then subprocess("conda activate mymodule")end
if (mode() == "remove") then subprocess("conda deactivate")end
_______________________________________________
Lmod-announce mailing list
Lmo...@li...
https://lists.sourceforge.net/lists/listinfo/lmod-announce
|
|
From: Announcing n. v. of L. <lmo...@li...> - 2022-04-14 21:12:55
|
Is it possible to update PATHs immediately after a load call inside a Lua modulefile? For the example shown below, a module named mymodule, the first call of module load mymodule will load miniconda3 but the following conda activate call will not work because path to conda exe is not found. The second call does the activate just fine, so what I am trying to achieve is to get the conda activate to work with one module load call. I've learned that environment-modules version 4.1 supports this kind of feature, but Lmod 8.5.2 (the version I have) doesn't seem to support it. Is there a way I can achieve this with Lmod? Otherwise, I will have to put them in two separate modulefiles ...
Thanks in advance
prepend_path("MODULEPATH","/contrib/miniconda3/modulefiles")load("miniconda3")
if (mode() == "load") then subprocess("conda activate mymodule")end
if (mode() == "remove") then subprocess("conda deactivate")end
|
|
From: Announcing n. v. of L. <lmo...@li...> - 2021-12-06 23:27:43
|
I am happy to release Lmod 8.6. It has several new features: 1. New command "module overview" which lists names and the number of versions for each. 2. Added spiderPathFilter hook so that sites can control which directories are ignored. 3. updated sh_to_modulefile script to capture shell functions and shell aliases. 4. New module function source_sh() to source a shell script inside a modulefile. 5. Added new env. var. LMOD_QUARANTINE_VARS. All names in this colon separated list cannot be changed by Lmod. 6. New file /etc/lmod/lmod_config.lua is used to configure Lmod. Find it at githhub.com/TACC/Lmod or at sourceforge.net Best, Robert. -- Robert McLay, Ph.D. Manager of Software Tools, HPC mc...@ta... |
|
From: Announcing n. v. of L. <lmo...@li...> - 2021-10-20 15:25:48
|
I am very happy to release Lmod 8.5.20. There are three items in this release: 1. Added a "New Features in Lmod" page: https://lmod.readthedocs.io/en/latest/025_new.html so that it is easier to see what has changed. 2. Added a new module command source_sh("shell", "script args1 ...") to modulefiles. This means that you can load and more importantly unload the action of a shell script. Lmod converts the shell script on the fly during a load and remembers these actions by storing the module commands in the environment through the ModuleTable so that it can be unloaded. 3. There is a new env. var. LMOD_QUARANTINE_VARS for users to set. It is a colon separated list of variables for which Lmod module commands will not change. Think bash's PROMPT_COMMAND or LMOD_PAGER among others. This env. var is really for users to set to avoid wanting to yell at the module writer for destroying their carefully tuned setup. It probably won't be used much but it is nice to have. I will be releasing Lmod version 8.6, the week of Nov. 15 and I am hoping for feedback on these new features, especially the source_sh() command before the release of 8.6. Enjoy, Robert. -- Robert McLay, Ph.D. Manager of Software Tools, HPC mc...@ta... |
|
From: Announcing n. v. of L. <lmo...@li...> - 2021-05-10 18:46:11
|
There have been 31 releases of the 8.4 series so it is time to release Lmod 8.5. This release has many bug fixes and a few features. Please enjoy and let the mailing list know if there are any problems. Best, Robert. -- Robert McLay, Ph.D. Manager of Software Tools, HPC mc...@ta... |
|
From: Announcing n. v. of L. <lmo...@li...> - 2020-07-31 17:34:19
|
I am happy to release Lmod 8.4. This version is mainly a bug fix release. The major change is that now Lmod supports Lua 5.4. To use this version you will have to update your luaposix version to 35.0-1 if you wish to use Lua 5.4. Note that Lmod continues to support Lua version 5.1 through 5.4 so there is no requirement that a site upgrade their installed version of Lua to use the latest version of Lmod. Enjoy, Robert. -- Robert McLay, Ph.D. Manager of Software Tools, HPC mc...@ta... |
|
From: Announcing n. v. of L. <lmo...@li...> - 2019-10-30 16:50:17
|
I am happy to release Lmod 8.2. There are many bug fixes. The big change is support for a new function extensions(). This feature has been in the works for a while. I have been working with part of EasyBuild team. (Thanks Kenneth and Ward!) to work out the feature.
This function allows sites to say that a particular module has well extensions that provide "imports". It is likely that this will be most useful for the python and R software tools. For example a particular python module might provide "numpy" and "scipy". A lua module could now add:
extensions("numpy/1.16.4", "scipy/1.2")
to the modulefile. With that and Lmod 8.2, users will be able to know what extensions exist by running "module avail" or "module spider". See:
https://lmod.readthedocs.io/en/latest/330_extensions.html
for more information.
--
Robert McLay, Ph.D.
Manager of Software Tools, HPC
mc...@ta...<mailto:mc...@ta...>
|
|
From: Announcing n. v. of L. <lmo...@li...> - 2019-05-07 20:55:10
|
I am releasing Lmod 8.1. This is mostly a bug fix release of Lmod over 8.0. It does include the "Extended Default" mechanism that was released in 8.0.7. Sites that run a non-hierarchical module layout may wish to disable the Extended Default mechanism.
As I pointed out when I released 8.0.7, this feature is to make it easier to deal with naming conventions where the version string is long. For example assume that a site has multiple versions of the intel compiler where intel/18.0.3 is the default.
intel/16.0.3
intel/17.0.1
intel/17.0.2
intel/18.0.1
intel/18.0.3 (D)
intel/18.0.4
Then:
$ module load intel/16 # => loads intel/16.0.3
$ module load intel/17 # => loads intel/17.0.2
$ module load intel/18 # => load intel/18.0.3
$ module load intel # => load intel/18.0.3
The idea is that the intel/16 picks the "best" intel/16.* and intel/17 picks the best 17.* The last two cases the best 18 version is the default (namely 18.0.3)
The lmod.sf.net<http://lmod.sf.net> site has a tar ball of Lmod 8.1 and the Lmod logos and as always github.com/TACC/Lmod<http://github.com/TACC/Lmod> has the latest version.
Best,
Robert.
--
Robert McLay, Ph.D.
Manager of Sottware Tools, HPC @ TACC
mc...@ta...<mailto:mc...@ta...>
|
|
From: Announcing n. v. of L. <lmo...@li...> - 2018-07-23 23:37:14
|
I am happy to announce that Lmod 7.8 has been released. This is mainly a
bug fix release with few new features.
There is one new feature between 7.7 and 7.8 and that is this new version
now supports lua based modulerc file. Below are the details on how to use
it.
Enjoy the latest and greatest version of Lmod,
Robert.
--------------------------------------------------------------------------------------------------------
Every place that you
could use a modulerc file you can now use a modulerc.lua file. Here is the
currently supported commands in modulerc (TCL):
module-alias name modulefile
module-version modulefile v1 v2 ...
hide-version full_module_version
hide-modulefile /path/to/modulefile
set ModuleVersion version
So the Lua based syntax could be:
module_alias("name","modulefile")
module_version("modulefile","v1","v2"...)
hide_version("full_module_version")
hide_modulefile("/path/to/modulefile")
I don't think I'll support the TCL set ModuleVersion ... syntax since
it is already available with module-version.
So currently Lmod looks for the following files to set version:
default
.modulerc
.version
I would change this to:
default
.modulerc.lua
.modulerc
.version
So file named .modulerc would still be in TCL syntax and .modulerc.lua
would be in lua syntax.
|
|
From: Announcing n. v. of L. <lmo...@li...> - 2018-05-08 18:16:24
|
Thanks for the feedback. I agree that this needs to be a configuration
option so I have added
$ ./configure --with-silentShellDebug=yes ...
The default is no. When this is turned on I think it is useful:
$ set -x
$ module load <module>
+ module load <module>
+ '[' -z '' ']'
+ case "$-" in
+ __lmod_sh_dbg=x
+ '[' -n x ']'
+ set +x
Shell debugging temporarily silenced: export LMOD_SH_DBG_ON=1 for Lmod's
output
Shell debugging restarted
+ unset __lmod_sh_dbg
Enjoy,
Robert.
|
|
From: Announcing n. v. of L. <lmo...@li...> - 2017-11-16 23:48:00
|
This release fixes two problems and provides one new feature. The first
is that Lmod now just uses the lua_json.lua package shipped with Lmod
rather than possibly using the one provide by the site. The problem is
that the one provided by luarocks is only compatible with Lua 5.1 and not
later versions. The version of lua_json shipped with Lmod works with all
known version of Lua.
This new version of Lmod provides a fix to the "sh_to_modulefile.sh" script
which converts shell scripts into modulefiles. There was a bug where
giving unknown options caused it to fail in an ugly way. This is now
fixed. Also I tested generating a TCL modulefile using tcsh and worked
for me.
Finally, Lmod allows a modulefile to use pushenv to clear a value:
pushenv("FOO", false)
This will probably be the last 7.7+ version of Lmod. I plan on releasing
7.8 the week of November 27th.
P.S: The Tacc Booth talk at SC17 was well attended. It was great to meet
some new people and see some old friends. The slides for the talk can be
found at:
https://sourceforge.net/projects/lmod/files/Presentations/Lmod_talk_sc17.pdf/download
|
|
From: Announcing n. v. of L. <lmo...@li...> - 2017-09-19 16:17:39
|
I am happy to announce the release of Lmod 7.7. The major change is that
now Lmod supports reference counting for PATH-like variables. This feature
was first released in 7.6.14. The details are discussed here:
http://lmod.readthedocs.io/en/latest/077_ref_counting.html
There are some other features. Here is the update of new features and bug
fixes:
Features:
1. Lmod now uses reference counting for PATH-like variables
2. Support for MODULEPATH_INIT. If found use
<install_dir>/init/.modulespath to specify initial MODULEPATH.
3. Tracing now reports changes to MODULEPATH
4. Support for ml keyword <prop_name> added
Bug Fixes:
1. Lmod now uses the spider cache when restoring when LMOD_CACHED_LOAD=yes
2. Lmod now supports a module with a single leading underscore. It reports
an error if there are two or more.
Enjoy,
R.
--
Robert McLay, Ph.D.
TACC
Manager, HPC Software Tools
(512) 232-8104
|