Commit Graph

5980 Commits

Author SHA1 Message Date
Xavier Delaruelle
f0a331e015 ts: test spider_indepth config option
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-27 10:26:18 +01:00
Xavier Delaruelle
2a205d23ea gh: set --disable-spider-indepth on tcl85-nolibtclenvmodules
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-27 10:21:01 +01:00
Xavier Delaruelle
c94541d9f0 install: add --enable-spider-indepth configure option
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-27 10:17:08 +01:00
Xavier Delaruelle
eb91bf0915 init: add spider_indepth config to completion script
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-27 10:12:00 +01:00
Xavier Delaruelle
e10db64b35 Add spider_indepth configuration option
Distinguish a specific configuration option "spider_indepth" for spider
sub-command than "avail_indepth" used for avail sub-command.

Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-27 10:08:53 +01:00
Xavier Delaruelle
73669060dd doc: desc. MODULES_SPIDER_INDEPTH in man/changes
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-27 10:01:55 +01:00
Xavier Delaruelle
34572fc589 doc: desc. spider_indepth config in man/changes
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-27 10:01:19 +01:00
Xavier Delaruelle
b6cc2eccfd doc: desc spider_indepth in NEWS
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-27 09:59:56 +01:00
Xavier Delaruelle
1077948b7e doc: desc --enable-spider-indepth in INSTALL
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-27 09:59:10 +01:00
Xavier Delaruelle
90f40bc01e doc: add spider sub-command design notes
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-27 09:26:16 +01:00
Xavier Delaruelle
c2222e7088 doc: update existing design docs for spider subcmd
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-25 16:49:05 +01:00
Xavier Delaruelle
37d56b8849 doc: desc. spider sub-command in NEWS
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-25 12:22:25 +01:00
Xavier Delaruelle
c1b9f187ba doc: desc. spider sub-command in man/changes
Also take this opportunity to describe some older changes that were
forgotten.

Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-25 11:26:12 +01:00
Xavier Delaruelle
89d10abf1d ts: add spider test on "module-info command"
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-23 14:16:07 +01:00
Xavier Delaruelle
8646457df6 doc: desc. spider{_terse,}_output config in NEWS
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-23 10:10:15 +01:00
Xavier Delaruelle
294cd1b61f doc: desc. spider{_terse,}_output config in man/changes
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-22 08:39:31 +01:00
Xavier Delaruelle
d41dd74a71 doc: desc. MODULES_SPIDER{,_TERSE}_OUTPUT in man/changes
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-22 08:38:41 +01:00
Xavier Delaruelle
6e546fc1ab doc: desc. --with-spider{-terse,}-output install option
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-22 08:37:13 +01:00
Xavier Delaruelle
c57ee7cf1d ts: test spider_output/spider_terse_output options
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-21 14:26:01 +01:00
Xavier Delaruelle
6888821e79 ts: add "hidden" element to *_output options
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-06 06:34:56 +01:00
Xavier Delaruelle
b4a4dfd81e doc: add "hidden" element to *_output options
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-05 17:12:12 +01:00
Xavier Delaruelle
37b9a36f4d Add "hidden" element to *_output options
Add support for "hidden" element into all *_output options to unveil
hidden modules on avail, list and spider sub-command.

Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-05 17:11:54 +01:00
Xavier Delaruelle
7120d80871 ts: add support for linting modulecache files
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-04 10:04:32 +01:00
Xavier Delaruelle
fff95eabe5 doc: add support for linting modulecache files
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-04 08:26:38 +01:00
Xavier Delaruelle
7aad7338b3 Add support for linting modulecache files
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-12-04 08:17:01 +01:00
Xavier Delaruelle
52be872ec1 ts: add tests for depends-on-any modulefile command
Including extra match specifier tests.

Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-25 03:15:13 -05:00
Xavier Delaruelle
242406e9db doc: desc. depends-on-any command in NEWS/man/changes
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-23 23:28:34 -05:00
Xavier Delaruelle
e2245cfde7 lint: add depends-on-any command to syntaxdbs
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-23 22:52:58 -05:00
Xavier Delaruelle
09bf41e74f vim: add depends-on-any modulefile cmd
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-23 22:49:12 -05:00
Xavier Delaruelle
f411f2f413 Add depends-on-any modulefile command
Add depends-on-any modulefile command that is equivalent to prereq-any.
This modulefile command is available on Lmod since version 8.7.41.

Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-23 17:23:00 -05:00
Xavier Delaruelle
00ffadfa17 init: add --dumpname option to completion scripts
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-23 17:06:30 -05:00
Xavier Delaruelle
092fc17fa6 ts: test --dumpname option
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-23 16:54:51 -05:00
Xavier Delaruelle
6cc645cf9e doc: desc. --dumpname option in NEWS/changes/man
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-23 16:47:17 -05:00
Xavier Delaruelle
28fb1ec5fa Add --dumpname option
Add --dumpname option to module command. It returns the name of the
module implementation, here "Modules". This option is also available on
Lmod version 8.7.50+.

Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-23 16:39:54 -05:00
Xavier Delaruelle
b865e08781 ts: test use extra specifier in 51/045
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-23 15:53:00 -05:00
Xavier Delaruelle
ad423f8bed doc: desc. use extra specifier in NEWS/man
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-18 18:44:33 -05:00
Xavier Delaruelle
fabbaf646f doc: desc. use extra specifier in changes/design
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-18 18:35:14 -05:00
Xavier Delaruelle
0bc8fe2171 ts: adapt existing tests for spider cmd
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-16 22:15:58 +01:00
Xavier Delaruelle
9fa5ef23bc ts: test spider_output/spider_terse_output config options
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-16 22:00:12 +01:00
Xavier Delaruelle
5fad6c124b init: add spider subcmd to completion scripts
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-16 21:44:55 +01:00
Xavier Delaruelle
5b7c376f49 init: add spider_{terse_,}output configs to completion script
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-16 21:27:44 +01:00
Xavier Delaruelle
37a1d12c75 install: add --with-spider-{terse-,}output configure options
Introduce the --with-spider-output and --with-spider-terse-output
configure options to choose at installation time the default list of
elements to report on spider command.

Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-16 21:21:36 +01:00
Xavier Delaruelle
f30996e351 Add spider_output/spider_terse_output config options
These 2 options control the content of the output of the spider command
in regular and terse mode. By default, same list of element to report
than avail command is configured.

Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-16 21:11:07 +01:00
Xavier Delaruelle
230a246901 Introduce "spider" sub-command
Add the "spider" sub-command that scans all the enabled modulepaths and
the modulepaths enabled by modules in every modulepaths to return the
modules matching the search query.

All kind of options and search queries supported by avail sub-command
are supported by spider.

spider is implemented as a two-step process:
* find all modulepaths through a scan evaluation to fetch all "use"
  elements
* perform an avail on all these modulepaths

Properties of the spider sub-command:
* insensitive match search enabled
* shortest shortcut: "spi"
* --json output support
* --all/-a to report hidden modules
* always_read_full_file: true
* allow_noname_spec: true
* allow_xt_spec: true
* parse arguments as module specification: true
* only callable from top level: true
* accept_minus_arg: true
* collect tags: true

Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-16 20:55:33 +01:00
Xavier Delaruelle
12394690ae Add getScanModuleElt helper proc
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-16 20:38:50 +01:00
Xavier Delaruelle
00a72bcd26 Pass modulepath list as argument to cmdModuleAvail
Update cmdModuleAvail to pass the list of enabled modulepath as argument
rather resolving this list within the procedure.

Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-16 20:35:04 +01:00
Xavier Delaruelle
6135826df3 Allow extra match search on "module use" command
Add the ability to perform an extra match search on the "use"
sub-command of module command in modulefile.

Also consider direct edition of the MODULEPATH environment variable
with append-path or prepend-path modulefile commands as result for "use"
extra match element.

Modulepath arguments set on these commands are recorded in their
absolute path form.

Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
2024-11-15 21:17:45 +01:00
Xavier Delaruelle
a6249f3bed doc: add mode-select design doc 2025-03-26 19:53:46 +01:00
Xavier Delaruelle
8192199946 ts: skip cache build/use on Cygwin
filesystem on Cygwin platform is responding in an unexpected way. Newly
created files for the tests are considered "limited access" which should
not be the case, considering that umask is 0022.

Skip these cache build and use tests on Cygwin platform for now
2025-03-25 08:12:33 +01:00
Xavier Delaruelle
39e8e941c4 ts: format OS name to ease comparisons 2025-03-25 08:12:33 +01:00