Commit Graph

5213 Commits

Author SHA1 Message Date
Xavier Delaruelle
c8a5c2e61e ts: test sticky/super-sticky tag on full path mod in 50/463 2023-06-28 07:25:03 +02:00
Xavier Delaruelle
358aaba21f ts: test module-info tags on full path mod in 50/441 2023-06-28 07:25:03 +02:00
Xavier Delaruelle
5fec9222a8 ts: module-hide tests over full path mod in 20/140 2023-06-28 07:25:03 +02:00
Xavier Delaruelle
9bb84df421 Adapt module hiding procs for full path mod
Record module hiding rules over full path module designation in specific
structure. Also query this new structure when determining hiding level
of module.

Calls to isModuleHidden are adapted to pass full path module designation
if checking modulefile. Aliases or symbolic version are not necessarily
bound to a full path element.
2023-06-28 07:25:03 +02:00
Xavier Delaruelle
448a4f0f7f ts: add module-forbid tests over full path mode in 20/141 2023-06-28 07:25:03 +02:00
Xavier Delaruelle
eae5cac0ae Adapt getModuleTagProp and Msg procs for full path mod
Update getModuleTagProp to pass full path module designation to the
underlying getModuleTag call to get tag properties defined over a full
path module designation.

Procedures that fetch forbidden tag properties are updated to obtain
definition set over full path designation.
2023-06-28 07:25:03 +02:00
Xavier Delaruelle
c4e57bf929 ts: test tag on full path mod in 50/441 2023-06-28 07:25:03 +02:00
Xavier Delaruelle
23207c8c0a ts: adapt existing tests for tags on full path mod 2023-06-28 07:25:03 +02:00
Xavier Delaruelle
7f8e9247c0 doc: update tag design for full path module 2023-06-28 07:25:03 +02:00
Xavier Delaruelle
17081335ce Adapt getExportTagList proc for full path module
Update getExportTagList to pass full path module designation to the
underlying getTagList call. Full path module is not set and querying tag
information of an already loaded module.
2023-06-28 07:25:03 +02:00
Xavier Delaruelle
b7c6347509 Adapt getTagList proc for full path module
Update getTagList to also fetch tags set over full path module
designation. These tags are concatenated to those set over regular
module name and version.
2023-06-28 07:25:03 +02:00
Xavier Delaruelle
778475e748 Adapt getModuleTag proc for full path module
Query g_moduleTagFullPath structure first to see if tag is set over full
path module designation. Query g_moduleTagFullPathSpec structure to get
properties attached to tags set over full path module.
2023-06-28 07:25:03 +02:00
Xavier Delaruelle
89c24c0268 Allow defining tag over module full path designation
Property attached on tags defined over full path module designation are
also handled and saved in a specific structure.

Fixes #485
2023-06-28 07:24:51 +02:00
Xavier Delaruelle
96dde1f080 Add fpmod argument to isModuleTagged proc
Add fpmod argument to isModuleTagged to also return tags set over module
full path designation.

fpmod value is only set when querying tags not already set on loaded
modules, as tags set over full path module are applied to module name
when it is loaded.
2023-06-27 21:40:41 +02:00
Xavier Delaruelle
0c6d122e8a Release of version 5.3.1 v5.3.1 2023-06-27 19:22:08 +02:00
Xavier Delaruelle
2dfb6196f2 init: fix completion to report syms and aliases
Fix completion scripts (bash, tcsh, fish and zsh) to report symbolic
versions and aliases among available modules.

Fixes #500.
2023-06-27 08:21:31 +02:00
Xavier Delaruelle
1b0c06a4af install: add indesym to --with-avail{-terse,}-output opt 2023-06-27 07:16:06 +02:00
Xavier Delaruelle
0461f127ba doc: desc. indesym avail output element 2023-06-27 07:16:06 +02:00
Xavier Delaruelle
733f1bf78e ts: test indesym avail_output/avail_terse_output element 2023-06-27 07:16:06 +02:00
Xavier Delaruelle
fed58aa82e Add indesym value to avail_{,terse_}output config
Report symbolic versions as independent element on avail sub-command
when "indesym" value is part of avail_output/avail_terse_output
configuration option.

When "indesym" value is set, "sym" and "dirwsym" elements are disabled.
2023-06-27 05:51:28 +02:00
Xavier Delaruelle
8db28ef4d6 Correctly highlight variant values when several are set
When one variant is set multiple times in the search query, correctly
highlight each of these variant values on matching modules.
2023-06-24 14:41:17 +02:00
Xavier Delaruelle
c7278a6cee doc: desc. one variant set multiple times on search context 2023-06-21 07:42:45 +02:00
Xavier Delaruelle
d9c9abb18c ts: test one variant set multiple times for EMS 2023-06-21 07:42:45 +02:00
Xavier Delaruelle
d46beeac6d Fix same variant set multiple times during EMS
Update extra match search mechanism when one variant is specified
several time in search query. Apply same behavior than for extra
specifier: all values specified act as an AND operation. For instance
"foo=val1 foo=val2" now returns modules that define a foo variant where
val1 and val2 are both values available.

Specification is only adapted for search context. On selection context
only last value is retained when same variant is set several times.

Fixes #499
2023-06-21 07:42:38 +02:00
Xavier Delaruelle
48eeb08730 Reuse ems_required variable in getModules 2023-06-11 19:09:30 +02:00
Xavier Delaruelle
a7a06b999c ts: improve Tcl file detection for lint testsuite 2023-06-11 19:07:40 +02:00
Xavier Delaruelle
e97562bcdc ts: extra specifier tests when --not-req option is set in 51/04{2,3} 2023-06-08 05:18:24 +02:00
Xavier Delaruelle
fb896f2675 No require/incompat extra spec match if --not-req is set
Do not match module commands with --not-req option set on require or
incompat extra specifier queries.

Fixes #498
2023-06-08 05:18:15 +02:00
Xavier Delaruelle
c70fda0012 doc: fix Sphinx conf.py for Python3
Fix Sphinx configuration file (conf.py) to make it compatible with
Python3. Popen opens channel in binary mode by default on Python3. Need
to specify text mode, with universal_newlines option which is also
available on Python2.
2023-06-07 06:53:51 +02:00
Xavier Delaruelle
ce3e20efee ts: extra spec search with same mod in several modpath in 51/040 2023-06-07 06:53:51 +02:00
Xavier Delaruelle
e7f77678ed Record module scan elements per modulepath
Update extra match search mechanism to record elements defined by
modulefiles per modulepath. First dict level is updated to split
information per modulepath. This way when two modules with same name are
available in several modulepaths, if only one matches search query, the
others will not be included in result.

Fixes #497
2023-06-07 06:53:33 +02:00
Xavier Delaruelle
b1cc1bbc12 Record current modulepath as a state when evaluating mod
Record transmitted modulepath as a state when evaluating a modulefile.
Useful for scan evaluation to record content per modulepath.
2023-06-06 06:48:19 +02:00
Xavier Delaruelle
1844469e47 Simplify recordScanModuleElt procedure
Current module name version designation can be guessed within
recordScanModuleElt procedure. No need to pass it as an argument.
2023-06-05 22:07:57 +02:00
Xavier Delaruelle
4306e075d8 Fix unaligned list output when 100+ modules loaded
Fix unaligned module list output when 100 or more modules are loaded.

Fixes #496.
2023-06-05 07:35:21 +02:00
Xavier Delaruelle
e5f7f99689 script: fix bitwise AND logic on gitlog2changelog.py
Several if conditions where using bitwise AND whereas the intent was to
do a regular AND test.
2023-06-03 08:46:06 +02:00
Xavier Delaruelle
b9aff6c8f4 gh: use fresher Tcl installer on native CI jobs 2023-06-02 07:15:38 +02:00
Xavier Delaruelle
bd0a422d4e gh: configure safe dir for actions/checkout on Cygwin env
Get rid of "fatal: detected dubious ownership in repository" issue
during actions/checkout post run in native and Cygwin CI jobs.
2023-06-02 07:14:10 +02:00
Xavier Delaruelle
e9bb6fd81a doc: update Hunspell dictionary 2023-06-01 22:48:30 +02:00
Xavier Delaruelle
a1b82e75c2 Use Hunspell spell checker instead of Aspell
Following upcoming recommendation of Fedora to depreciate Aspell and
migrate to Hunspell [1]. Update documentation and scripts to use
Hunspell.

[1] https://fedoraproject.org/wiki/Changes/AspellDeprecation
2023-06-01 22:05:52 +02:00
Xavier Delaruelle
5079663b00 doc: add read the docs configuration file
As announced on https://blog.readthedocs.com/migrate-configuration-v2/,
having a .readthedocs.yaml file at the root of the project becomes
mandatory.
2023-06-01 20:46:06 +02:00
Xavier Delaruelle
ab1a4b599b Fix req search when searched mod defines a singular req
Fix extra specifier requirement search when module searched is also
defining a requirement and is the sole module to define it.

Fixes #495
2023-06-01 20:45:58 +02:00
Xavier Delaruelle
b4f741c70c Fix extra spec search for mod matching requirement query
always_read_full_file state is initialized after parsing of search
query. As a result readModuleContent fails to read module defined in
search query. This module is afterward skipped during modulefile scan
evaluations.

Fixes #494
2023-06-01 20:45:16 +02:00
Xavier Delaruelle
2f443deba2 doc: fix duplicate white-spaces in docs 2023-05-30 21:34:28 +02:00
Xavier Delaruelle
685239f529 doc: fix default language in sphinx config 2023-05-29 12:55:39 +02:00
Xavier Delaruelle
ce78d5df93 install: adapt RPM spec to install fish config snippet 2023-05-29 07:10:27 +02:00
Xavier Delaruelle
899881b415 doc: desc. shellcheck warning/ChangeLog.gz work in NEWS 2023-05-20 18:51:30 +02:00
Xavier Delaruelle
9b8c0fe867 doc: mention m4 requirement when building from git in INSTALL 2023-05-20 17:12:40 +02:00
Xavier Delaruelle
41149d40fc gh/cirrus: add gzip package to CI test environments 2023-05-20 17:12:03 +02:00
Xavier Delaruelle
8f9fd54a67 install: zip ChangeLog file to reduce install size
Install ChangeLog.gz zipped documentation file instead of ChangeLog to
reduce installation size (-1.5 MB).

As a result, gzip becomes mandatory when building Modules from git
repository.
2023-05-20 15:38:58 +02:00
Xavier Delaruelle
2d8360dbab script: apply flake8 suggestions on gitlog2changelog.py
Apply on gitlog2changelog.py most code change suggestions from Flake8
Python style guide enforcement tool.
2023-05-19 21:36:11 +02:00