Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
03b655a
Merge pull request #1 from envmodules/main
gsell Dec 19, 2025
81797d6
follow Lmod rules for path updates
gsell Oct 29, 2025
df8c748
code not belonging to this PR removed
gsell Oct 29, 2025
1c2a7b4
untabify
gsell Oct 29, 2025
3015e13
config option renamed and add-path reviewed
gsell Nov 5, 2025
1cd103b
configure fixed
gsell Nov 5, 2025
45a90b1
comments added to make design more clear
gsell Nov 5, 2025
997f58b
Emacs local variables fixed
gsell Nov 5, 2025
967b8c0
substitution for pathentryreorder added to Makefile
gsell Nov 10, 2025
8866671
Option --enable-path-entry-reoder fixed
gsell Nov 10, 2025
8e0119d
Use @pathentryreorder@ to set default
gsell Nov 10, 2025
d0cb4e1
configuration option property fixed for path_entry_reorder
gsell Nov 12, 2025
c040243
revised code if path_entry_reoder is set
gsell Nov 12, 2025
d0c9208
untabify
gsell Nov 12, 2025
4e05776
path_entry_reorder code reviewed
gsell Nov 20, 2025
79309f2
add-path reviewed
gsell Dec 2, 2025
b9b7009
documentation of path_entry_reorder added (still draft)
gsell Dec 8, 2025
9408131
documentation of path_entry_reorder updated
gsell Dec 10, 2025
7e163e7
documentation updated
gsell Dec 12, 2025
2e65696
documentation updated
gsell Dec 12, 2025
87e23ee
testsuite updated
gsell Dec 12, 2025
fb65540
setting default value for path_entry_reorder fixed
gsell Dec 18, 2025
4ff70bf
append/prepend tests added
gsell Jan 7, 2026
e677e70
--enable-path-entry-reoder added to tcl85-2 config opts
gsell Jan 8, 2026
38df309
documentation fixed
gsell Jan 8, 2026
580b375
test for path_entry_reorder added
gsell Jan 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/linux_tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ jobs:
tcl85-2:
runs-on: ubuntu-22.04
env:
CONFIGURE_OPTS: --with-tclsh=tclsh8.5 --prefix=/tmp/modules --with-tcl=/usr/local/lib --enable-quarantine-support --enable-silent-shell-debug-support --enable-modulespath --with-pager=more --with-dark-background-colors=hi --with-locked-configs=implicit_default --enable-wa-277 --enable-advanced-version-spec --disable-ml --disable-implicit-requirement --enable-set-shell-startup
CONFIGURE_OPTS: --with-tclsh=tclsh8.5 --prefix=/tmp/modules --with-tcl=/usr/local/lib --enable-quarantine-support --enable-silent-shell-debug-support --enable-modulespath --with-pager=more --with-dark-background-colors=hi --with-locked-configs=implicit_default --enable-wa-277 --enable-advanced-version-spec --disable-ml --disable-implicit-requirement --enable-set-shell-startup --enable-path-entry-reorder
COVERAGE: y
EXTRA_SCRIPT_PRETEST: make install-testinitrc-1 install-testetcrc install-testmodspath
EXTRA_SCRIPT_POSTTEST: make uninstall-testconfig
Expand Down
3 changes: 3 additions & 0 deletions INSTALL.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1723,6 +1723,9 @@ installation.
| | | :envvar:`MODULES_PAGER`, | | |
| | | :option:`--paginate`, :option:`--no-pager` | | |
+-----------------------------------+----------------------------------------------+----------------------------------------------+--------------+-----------+
| :mconfig:`path_entry_reorder` | ``0`` | :instopt:`--enable-path-entry-reorder`, | | |
| | | :envvar:`MODULES_PATH_ENTRY_REORDER` | | |
+-----------------------------------+----------------------------------------------+----------------------------------------------+--------------+-----------+
| :mconfig:`protected_envvars` | *Unset by default* | :envvar:`MODULES_PROTECTED_ENVVARS` | | |
+-----------------------------------+----------------------------------------------+----------------------------------------------+--------------+-----------+
| :mconfig:`quarantine_support` | ``0`` | :instopt:`--enable-quarantine-support`, | X | |
Expand Down
7 changes: 7 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -395,6 +395,12 @@ else
setwa277 := 0
endif

ifeq ($(pathentryreorder),y)
setpathentryreorder := 1
else
setpathentryreorder := 0
endif

ifneq ($(tcllinteropts),)
tcllintercmd := $(tcllinter) $(tcllinteropts)
else
Expand Down Expand Up @@ -443,6 +449,7 @@ sed -e 's|@prefix@|$(prefix)|g' \
-e 's|@sourcecache@|$(setsourcecache)|g' \
-e 's|@searchmatch@|$(searchmatch)|g' \
-e 's|@wa277@|$(setwa277)|g' \
-e 's|@pathentryreorder@|$(setpathentryreorder)|g' \
-e 's|@icase@|$(icase)|g' \
-e 's|@nearlyforbiddendays@|$(nearlyforbiddendays)|g' \
-e 's|@tagabbrev@|$(tagabbrev)|g' \
Expand Down
3 changes: 3 additions & 0 deletions Makefile.inc.in
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,9 @@ variantshortcut := @variantshortcut@
# editor
editor := @editor@

# Lmod path order
pathentryreorder := @pathentryreorder@

# shell completion location
bashcompletiondir := @bashcompletiondir@
fishcompletiondir := @fishcompletiondir@
Expand Down
6 changes: 5 additions & 1 deletion configure
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ multilibsupport libdir64 libdir32 versioning silentshdbgsupport \
setshellstartup quarantinesupport autohandling availindepth implicitdefault \
extendeddefault moduleshome initconfin pager pageropts verbosity color \
darkbgcolors lightbgcolors termbg lockedconfigs icase unloadmatchorder \
searchmatch modulepath loadedmodules quarantinevars wa277 advversspec ml \
searchmatch modulepath loadedmodules quarantinevars wa277 pathentryreorder advversspec ml \
windowssupport nearlyforbiddendays implicitrequirement tagabbrev \
tagcolorname mcookieversioncheck availoutput availterseoutput listoutput \
listterseoutput editor variantshortcut bashcompletiondir fishcompletiondir \
Expand Down Expand Up @@ -79,6 +79,7 @@ extendeddefault=y
advversspec=y
ml=y
wa277=n
pathentryreorder=n
loadedmodules=
quarantinevars=
binsearchpath=/usr/bin:/bin:/usr/local/bin
Expand Down Expand Up @@ -803,6 +804,9 @@ for arg in "$@"; do
--enable-mcookie-version-check*|--disable-mcookie-version-check)
# shellcheck disable=SC2034
mcookieversioncheck=$(get_feature_value "$arg") ;;
--enable-path-entry-reorder*|--disable-path-entry-reorder)
# shellcheck disable=SC2034
pathentryreorder=$(get_feature_value "$arg") ;;
--with-bin-search-path=*|--without-bin-search-path)
binsearchpath=$(get_package_value "$arg") ;;
--with-moduleshome=*|--without-moduleshome)
Expand Down
2 changes: 2 additions & 0 deletions doc/source/changes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1279,6 +1279,8 @@ The following Modules configuration option has been introduced on Modules 5.
| 5.6 | :mconfig:`spider_output`, :mconfig:`spider_terse_output`, |
| | :mconfig:`spider_indepth`, :mconfig:`require_via` |
+------------+-----------------------------------------------------------------+
| 5.7 | :mconfig:`path_entry_reorder` |
+------------+-----------------------------------------------------------------+

:mconfig:`auto_handling`

Expand Down
46 changes: 46 additions & 0 deletions doc/source/module.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1370,6 +1370,23 @@ Module Sub-Commands
sub-command when changing this configuration option from its default value.
See :envvar:`MODULES_PAGER` description for details.

.. mconfig:: path_entry_reorder

Change order of entry in a path-like environment variable, when
:mfcmd:`prepend-path`, :mfcmd:`append-path` or :subcmd:`use` target
a path entry that is already defined in the environment variable.

Default value is ``0``. It can be changed at installation time with the
:instopt:`--enable-path-entry-reorder` option. The
:envvar:`MODULES_PATH_ENTRY_REORDER` environment variable is defined by
:subcmd:`config` sub-command when changing this configuration option from
its default value. See :envvar:`MODULES_PATH_ENTRY_REORDER` description
for details.

.. only:: html

.. versionadded:: 5.7

.. mconfig:: protected_envvars

Prevents any modification of listed environment variables (colon `:`
Expand Down Expand Up @@ -5274,6 +5291,35 @@ ENVIRONMENT
.. versionchanged:: 5.5
No pager when :file:`modulecmd.tcl` is run for scripting languages

.. envvar:: MODULES_PATH_ENTRY_REORDER

This environment variable changes the behavior of :mfcmd:`prepend-path`, :mfcmd:`append-path` and :subcmd:`use`.

If set to ``1``, and one of these commands targets a path entry that already exists in the environment variable, the entry is moved to the beginning or end (depending on the command), unless duplicates are allowed. This is the default behavior in Lmod.
If set to ``0``, the environment variable is not modified when the entry already exists.

Example:

.. parsed-literal::

:ps:`$` module config path_entry_reorder 0
:ps:`$` module append-path PATHVAR /foo
:ps:`$` module append-path PATHVAR /bar
:ps:`$` module append-path PATHVAR /foo
:ps:`$` echo $PATHVAR
/foo:/bar
:ps:`$` module config path_entry_reorder 1
:ps:`$` module append-path PATHVAR /foo
:ps:`$` echo $PATHVAR
/bar:/foo
:ps:`$` module append-path --duplicates PATHVAR /bar
:ps:`$` echo $PATHVAR
/bar:/foo:/bar

.. only:: html

.. versionadded:: 5.7

.. envvar:: MODULES_PROTECTED_ENVVARS

A colon separated list of environment variable names that should not be
Expand Down
3 changes: 2 additions & 1 deletion init/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ comp_lint_opts := -a -i --all --icase
comp_modtosh_opts := --auto --no-auto --force -f --icase -i
comp_path_opts := -d --delim --duplicates
comp_rm_path_opts := -d --delim --index
comp_config_opts := --dump-state --reset abort_on_error advanced_version_spec auto_handling avail_indepth avail_output avail_terse_output cache_buffer_bytes cache_expiry_secs collection_pin_version collection_pin_tag collection_target color colors conflict_unload contact editor extended_default extra_siteconfig hide_auto_loaded home icase ignore_cache ignore_user_rc implicit_default implicit_requirement list_output list_terse_output locked_configs logged_events logger mcookie_check mcookie_version_check ml nearly_forbidden_days pager protected_envvars quarantine_support rcfile redirect_output require_via reset_target_state run_quarantine search_match set_shell_startup shells_with_ksh_fpath silent_shell_debug source_cache spider_indepth spider_output spider_terse_output sticky_purge tag_abbrev tag_color_name tcl_linter term_background term_width unique_name_loaded unload_match_order variant_shortcut verbosity wa_277
comp_config_opts := --dump-state --reset abort_on_error advanced_version_spec auto_handling avail_indepth avail_output avail_terse_output cache_buffer_bytes cache_expiry_secs collection_pin_version collection_pin_tag collection_target color colors conflict_unload contact editor extended_default extra_siteconfig hide_auto_loaded home icase ignore_cache ignore_user_rc implicit_default implicit_requirement list_output list_terse_output locked_configs logged_events logger mcookie_check mcookie_version_check ml nearly_forbidden_days pager path_entry_reorder protected_envvars quarantine_support rcfile redirect_output require_via reset_target_state run_quarantine search_match set_shell_startup shells_with_ksh_fpath silent_shell_debug source_cache spider_indepth spider_output spider_terse_output sticky_purge tag_abbrev tag_color_name tcl_linter term_background term_width unique_name_loaded unload_match_order variant_shortcut verbosity wa_277

define translate-in-script
$(ECHO_GEN)
Expand Down Expand Up @@ -167,6 +167,7 @@ sed -e 's|@prefix@|$(prefix)|g' \
-e 's|@comp_path_opts@|$(comp_path_opts)|g' \
-e 's|@comp_rm_path_opts@|$(comp_rm_path_opts)|g' \
-e 's|@comp_config_opts@|$(comp_config_opts)|g' \
-e 's|@comp_path_entry_reorder@|$(comp_path_entry_reorder)|g' \
-e '$(setzshfpathre)' \
-e $$'s|@modulerc@|$(modulerc)|g' \
-e 's|@modulepath@|$(modulepath)|g' \
Expand Down
2 changes: 1 addition & 1 deletion init/fish_completion
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ complete -c module -n '__fish_module_use_stashlist' -f -a "(module stashlist --c
/Stash collection list\$/d; \
/:\$/d; \
/:ERROR:/d;')"
complete -c module -n '__fish_module_use_config' -f -a "--dump-state --reset abort_on_error advanced_version_spec auto_handling avail_indepth avail_output avail_terse_output cache_buffer_bytes cache_expiry_secs collection_pin_version collection_pin_tag collection_target color colors conflict_unload contact editor extended_default extra_siteconfig hide_auto_loaded home icase ignore_cache ignore_user_rc implicit_default implicit_requirement list_output list_terse_output locked_configs logged_events logger mcookie_check mcookie_version_check ml nearly_forbidden_days pager protected_envvars quarantine_support rcfile redirect_output require_via reset_target_state run_quarantine search_match set_shell_startup shells_with_ksh_fpath silent_shell_debug source_cache spider_indepth spider_output spider_terse_output sticky_purge tag_abbrev tag_color_name tcl_linter term_background term_width unique_name_loaded unload_match_order variant_shortcut verbosity wa_277"
complete -c module -n '__fish_module_use_config' -f -a "--dump-state --reset abort_on_error advanced_version_spec auto_handling avail_indepth avail_output avail_terse_output cache_buffer_bytes cache_expiry_secs collection_pin_version collection_pin_tag collection_target color colors conflict_unload contact editor extended_default extra_siteconfig hide_auto_loaded home icase ignore_cache ignore_user_rc implicit_default implicit_requirement list_output list_terse_output locked_configs logged_events logger mcookie_check mcookie_version_check ml nearly_forbidden_days pager path_entry_reorder protected_envvars quarantine_support rcfile redirect_output require_via reset_target_state run_quarantine search_match set_shell_startup shells_with_ksh_fpath silent_shell_debug source_cache spider_indepth spider_output spider_terse_output sticky_purge tag_abbrev tag_color_name tcl_linter term_background term_width unique_name_loaded unload_match_order variant_shortcut verbosity wa_277"

complete -f -n '__fish_module_no_subcommand' -c module -a 'help' --description 'Print this or modulefile(s) help info'
complete -f -n '__fish_module_no_subcommand' -c module -a 'avail' --description 'List all or matching available modules'
Expand Down
2 changes: 1 addition & 1 deletion init/zsh-functions/_module.in
Original file line number Diff line number Diff line change
Expand Up @@ -378,7 +378,7 @@ _module() {
_arguments \
'--dump-state[Report each state value of current Modules execution]' \
'--reset[Unset environment variable relative to configuration key]' \
'1:configuration key:(abort_on_error advanced_version_spec auto_handling avail_indepth avail_output avail_terse_output cache_buffer_bytes cache_expiry_secs collection_pin_version collection_pin_tag collection_target color colors conflict_unload contact editor extended_default extra_siteconfig hide_auto_loaded home icase ignore_cache ignore_user_rc implicit_default implicit_requirement list_output list_terse_output locked_configs logged_events logger mcookie_check mcookie_version_check ml nearly_forbidden_days pager protected_envvars quarantine_support rcfile redirect_output require_via reset_target_state run_quarantine search_match set_shell_startup shells_with_ksh_fpath silent_shell_debug source_cache spider_indepth spider_output spider_terse_output sticky_purge tag_abbrev tag_color_name tcl_linter term_background term_width unique_name_loaded unload_match_order variant_shortcut verbosity wa_277)' \
'1:configuration key:(abort_on_error advanced_version_spec auto_handling avail_indepth avail_output avail_terse_output cache_buffer_bytes cache_expiry_secs collection_pin_version collection_pin_tag collection_target color colors conflict_unload contact editor extended_default extra_siteconfig hide_auto_loaded home icase ignore_cache ignore_user_rc implicit_default implicit_requirement list_output list_terse_output locked_configs logged_events logger mcookie_check mcookie_version_check ml nearly_forbidden_days pager path_entry_reorder protected_envvars quarantine_support rcfile redirect_output require_via reset_target_state run_quarantine search_match set_shell_startup shells_with_ksh_fpath silent_shell_debug source_cache spider_indepth spider_output spider_terse_output sticky_purge tag_abbrev tag_color_name tcl_linter term_background term_width unique_name_loaded unload_match_order variant_shortcut verbosity wa_277)' \
&& ret=0
;;
(edit)
Expand Down
2 changes: 2 additions & 0 deletions site.exp.in
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,8 @@ set install_variantshortcut "@variantshortcut@"

set install_editor "@editor@"

set install_pathentryreorder "@pathentryreorder@"

set install_bashcompletiondir "@bashcompletiondir@"
set install_fishcompletiondir "@fishcompletiondir@"
set install_zshcompletiondir "@zshcompletiondir@"
Expand Down
45 changes: 32 additions & 13 deletions tcl/envmngt.tcl.in
Original file line number Diff line number Diff line change
Expand Up @@ -1808,27 +1808,43 @@ proc add-path {cmd mode dflbhv args} {
set val [get-env $var]

foreach dir $path_list {
if {![info exists countarr($dir)] || $allow_dup} {
# remove $dir from path only if path_entry_reorder is true and
# $dir is already in path and duplicates are NOT allowed.
if {[getConf path_entry_reorder] && [info exists countarr($dir)]\
&& ! $allow_dup} {
set mpath_list [split $val $separator]
set mpath_list [lsearch -inline -all -not -exact $mpath_list $dir]
set val [join $mpath_list $separator]
}
# add $dir to beginning or end only if path_entry_reorder is true or
# $dir is NOT in path or duplicates are allowed.
# Please note: if path_entry_reorder is true and duplicates are not
# allowed, $dir is not in path ($val) - either it was not in or it
# had been removed. Hence we have to add it.
if {[getConf path_entry_reorder] || ![info exists countarr($dir)]\
|| $allow_dup} {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if dir is NOT in path || duplicates are allowed, there is no need to check the state of path_entry_reorder

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Without checking the state of path_entry_reorder. It can happen, that $dir is removed but not added again. If path_entry_reorder is true and $dir is added twice, $dir will be removed in the second call but not added again, because countarr($dir) exists and $allow_dup is false.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it will be interesting to add a specific test for the case you describe, for future refactoring not to miss that point

# ignore env var set empty if no empty entry found in reference
# counter array (sometimes var is cleared by setting it empty not
# unsetting it)
if {$val ne {} || [info exists countarr()]} {
set sep [expr {$val eq $separator ? {} : $separator}]
set val [expr {$bhv eq {prepend} ? "$dir$sep$val" :\
"$val$sep$dir"}]
"$val$sep$dir"}]
} else {
set val $dir
}
}
if {[info exists countarr($dir)]} {
# do not increase counter if bare separator string is added or if
# reference count is ignored (--ignore-refcount set) unless if
# duplicate mode is enabled (--duplicates set)
if {!$val_set_is_delim && (!$ign_refcount || $allow_dup)} {
incr countarr($dir)
}
} else {
#### ref-counting
# if $dir is NOT in path
# set ref-count 1
# else
# do NOT increase counter if bare separator string is added or if
# reference count is ignored (--ignore-refcount set) unless if
# duplicate mode is enabled (--duplicates set)
if {![info exists countarr($dir)]} {
set countarr($dir) 1
} elseif {!$val_set_is_delim && (!$ign_refcount || $allow_dup)} {
incr countarr($dir)
}
}

Expand Down Expand Up @@ -2046,7 +2062,10 @@ proc getModulesEnvVarGlobList {{loaded_ctx 0}} {
return $envvar_glob_list
}

# ;;; Local Variables: ***
# ;;; mode:tcl ***
# ;;; End: ***
# ;;; Local Variables:
# ;;; Mode: tcl-mode
# ;;; tcl-indent-level: 3
# ;;; tcl-continued-indent-level: 3
# ;;; indent-tabs-mode: nil
# ;;; End:
# vim:set tabstop=3 shiftwidth=3 expandtab autoindent:
1 change: 1 addition & 0 deletions tcl/init.tcl.in
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,7 @@ array set g_config_defs [list\
nearly_forbidden_days {MODULES_NEARLY_FORBIDDEN_DAYS @nearlyforbiddendays@\
0 i {0 365} {} {} intbe}\
pager {MODULES_PAGER {@pagercmd@} 0 s}\
path_entry_reorder {MODULES_PATH_ENTRY_REORDER @pathentryreorder@ 0 b {0 1}}\
protected_envvars {MODULES_PROTECTED_ENVVARS <undef> 0 l}\
rcfile {MODULERCFILE <undef> 0 l}\
redirect_output {MODULES_REDIRECT_OUTPUT 1 0 b {0 1}}\
Expand Down
9 changes: 6 additions & 3 deletions tcl/subcmd.tcl.in
Original file line number Diff line number Diff line change
Expand Up @@ -3152,7 +3152,10 @@ proc cmdModuleSpider {show_oneperline show_mtime show_filter search_filter\
$search_match $modpath_list {*}$args
}

# ;;; Local Variables: ***
# ;;; mode:tcl ***
# ;;; End: ***
# ;;; Local Variables:
# ;;; Mode: tcl-mode
# ;;; tcl-indent-level: 3
# ;;; tcl-continued-indent-level: 3
# ;;; indent-tabs-mode: nil
# ;;; End:
# vim:set tabstop=3 shiftwidth=3 expandtab autoindent:
3 changes: 3 additions & 0 deletions testsuite/install.00-init/010-environ.exp
Original file line number Diff line number Diff line change
Expand Up @@ -194,4 +194,7 @@ catch {unset env(MODULERCFILE)}
# setup basic locale for tests
set env(LANG) "C"

# ensure that tests doesn't run with Lmod path order
unsetenv_var MODULES_PATH_ENTRY_REORDER

# vim:set tabstop=3 shiftwidth=3 expandtab autoindent:
24 changes: 24 additions & 0 deletions testsuite/modulefiles/append/9.0
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#%Module1.0

##############################################################################
# Modules Revision 3.0
# Providing a flexible user environment
#
# File: append/%M%
# Revision: %I%
# First Edition: 2026/01/08
# Last Mod.: %U%, %G%
#
# Authors: Achim Gsell, achim.gsell@psi.ch
#
# Description: Test appending paths with path_entry_enabled
# Command:
# Sub-Command: append-path
#
# Invocation: load @M@/@V@
# Comment: %C{
# }C%
#
##############################################################################

append-path FOO /test/dir1 /test/dir2 /test/dir3
3 changes: 3 additions & 0 deletions testsuite/modules.00-init/010-environ.exp
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,9 @@ catch {unset env(MODULES_COLLECTION_TARGET)}
catch {unset env(MODULE_VERSION)}
catch {unset env(MODULE_VERSION_STACK)}

# ensure that tests doesn't run with Lmod path order
unsetenv_var MODULES_PATH_ENTRY_REORDER

set env(MODULERCFILE) "$env(TESTSUITEDIR)/etc/empty"
set ORIG_MODULERCFILE $env(MODULERCFILE)
catch {unset env(MODULESHOME)}
Expand Down
Loading