Commit Graph

4974 Commits

Author SHA1 Message Date
Xavier Delaruelle
c1e1eef052 install: migrate to SPDX licence format in RPM spec file 2023-04-14 06:18:52 +02:00
Xavier Delaruelle
5e89196bd1 init: fix nospace activation in bash completion script
Fix bash shell completion script to be able to complete full name of
available modules.

Fixes #490.
2023-04-14 06:08:41 +02:00
Xavier Delaruelle
d9f2db1a2c doc: clarify python initialization example
Update Python initialization example to precise that the init script
should be exec-ed in the global scope. This is important when init
script is executed from a function.

This change helps to clarify a question asked on #483.
2023-04-04 05:26:57 +02:00
Xavier Delaruelle
2835f6bbb3 install: fix expected log format in gitlog2changelog.py
Update gitlog2changelog.py script to ensure git log format is not
influenced by user git configuration.

Fixes #487.
2023-03-21 06:03:35 +01:00
Xavier Delaruelle
56d76ded4e codespell: ignore additional generated content 2023-03-12 13:55:51 +01:00
Xavier Delaruelle
64888c94b5 install: allow to build from short-depth git repo
Fix Makefile to allow building Modules from a git repository with short
commit depth.

Fixes #486
2023-03-04 15:30:44 +01:00
Xavier Delaruelle
4bf77a0e4b ts: escape shell text output for regexp enabled tests 2023-02-27 07:04:43 +01:00
Xavier Delaruelle
6864d2495e cirrus: tcl-tk homebrew pkg now use default location 2023-02-27 07:04:30 +01:00
Xavier Delaruelle
4d749f17a1 ts: fix tests when run with Tcl 9.0 2023-02-12 17:36:19 +01:00
Xavier Delaruelle
009c20326f ts: update procedure to allow tests to fail
Provide a way to track tests that are expected to fail. Add failcmd
argument on all test procedure to indicate the fail command to use to
report test failure. Use fail command by default. When using xfail
command, it indicates that test is expected to fail.
2023-02-12 14:44:23 +01:00
Xavier Delaruelle
b9ff3f72bd gh: add new Linux test case for Tcl 9.0 2023-02-11 20:24:55 +01:00
Xavier Delaruelle
86eef9d40b gh: add new Linux test case for Tcl 8.7 2023-02-11 18:59:50 +01:00
Xavier Delaruelle
a20339f0dc ts: fix tests when run with Tcl 8.7 2023-02-11 18:40:14 +01:00
Xavier Delaruelle
1984862bb0 cirrus: fix Codecov run on MacOS M1 environment
Codecov tool is not available on arm64 platform. Use arch utility to run
x86_64 codecov binary on MacOS M1 virtual machine.
2023-01-24 09:51:26 +01:00
Xavier Delaruelle
09e6bc74f4 Fix shell alias translation with fish shell 3.6
A '$argv' string is added in fish 3.6 at the end of shell alias
definition when reported with functions command.
2023-01-24 05:59:18 +01:00
Xavier Delaruelle
5ca3b03c7f ts: adapt 70/210 test result for MSYS platform 2023-01-16 19:43:12 +01:00
Xavier Delaruelle
98af688203 Catch collection dir error and report correct msg
Fixes #482
2023-01-16 19:43:04 +01:00
Xavier Delaruelle
e6a4de4316 cirrus: use new macOS images for M1 instead of Intel 2023-01-16 19:43:04 +01:00
Xavier Delaruelle
a89c60fee0 Correctly apply extra tag when variant not set
Correctly apply extra tag set when loading a module whose variant has no
specific value set (default value used).

Fixes #484
2023-01-16 19:42:54 +01:00
Xavier Delaruelle
ce74b7b3af doc: update reduce-io-load recipe with module cache 2022-12-28 16:11:09 +01:00
Xavier Delaruelle
2c8343711d doc: desc. Module cache in MIGRATING 2022-12-28 10:48:22 +01:00
Xavier Delaruelle
f387664ac4 doc: desc. limited-access & cache in NEWS/man 2022-12-27 19:22:30 +01:00
Xavier Delaruelle
ae6043ab17 ts: add more cache not in sync tests in 30/045 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
b08839da32 doc: desc. in design notes when cache is not in sync 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
e3895a0d8e ts: add tests for inconsistent limited accesses in 30/044 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
07a33a895e ts: ignore pre-built cache for tests changing file access 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
60826a19ed ts: fix shell completion script file tests in 70/120 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
1cd8a67b52 ts: optionally build cache files to run tests
When TESTSUITE_ENABLE_MODULECACHE environment variable is set, cache
file is built for all modulepaths of the testsuite. Tests are run using
the cache files to resolve available modules.
2022-12-27 18:43:59 +01:00
Xavier Delaruelle
cc1b47ceb3 doc: additional notes on module cache design 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
1779d67527 ts: add limited-access hidden module tests in 30/043 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
f5e384881a ts: add ignored files and dirs in cache test structure 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
580ce93335 ts: add tests for limited-access cache elt resolution in 30/043 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
dcaeeb57df ts: adapt existing tests for limited-access resolution 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
748fe9ca9d Resolve limited access files/dirs when using cache
When searching modules through cache files resolve files and directories
marked as limited access. First check such entries match the search
query, then test if these files and directories can be accessed by
current user.

The access test relies on the findModulesFromDirsAndFiles procedure, as
if module search was not performed with cache file, but just for the
limited-access entries.
2022-12-27 18:43:59 +01:00
Xavier Delaruelle
e08fb48465 Create findModulesFromDirsAndFiles from findModules
Split code from findModules procedure that walk through a list of files
and directories to find modules. Create a new procedure named
findModulesFromDirsAndFiles for that purpose.

This new procedure will be helpful to resolve limited access files and
directories spotted in cache file.
2022-12-27 18:43:59 +01:00
Xavier Delaruelle
8c2218617f Add limited-access-directory cachefile command
Add limited-access-directory cachefile command to record all directories
with limited access in modulepath.
2022-12-27 18:43:59 +01:00
Xavier Delaruelle
44e27b7077 Add limited-access-file cachefile command
Add limited-access-file cachefile command to record all files with
limited access in modulepath.
2022-12-27 18:43:59 +01:00
Xavier Delaruelle
8357956ca2 ts: add limited-access cachebuild tests in 30/032 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
75d2ce5b42 doc: elaborate limited access in module cache design 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
1eecf28cb2 ts: adapt existing tests now limited access are recorded 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
d5bdf7d173 Register files/dir with limited access in cache
When building cache, check all files and directory within modulepath
that have limited access. Limited access is when user building cache or
others cannot read file or cannot either read or search directory.

Limited access file or directory are recorded in cache file with
respectively limited-access-file and limited-access-directory cachefile
commands.

Limited access commands replace modulefile/modulerc definitions in the
cache if files or their parent directory has limited access.
2022-12-27 18:43:59 +01:00
Xavier Delaruelle
68b6d08d17 ts: add cache_expiry_secs tests in 30/051 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
c547379307 doc: desc cache_expiry_secs in man 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
d01e3e76e2 doc: desc cache_expiry_secs in NEWS/INSTALL 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
55417ae899 doc: desc cache_expiry_secs in design/changes 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
a576889f49 ts: test cache_expiry_secs config option 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
7093c8579e init: add cache_expiry_secs config to completion script 2022-12-27 18:43:59 +01:00
Xavier Delaruelle
19058a95eb Introduce cache_expiry_secs configuration option
Add cache_expiry_secs configuration option to control after how many
seconds (after last modification) to consider cache file expired and
ignore it. Set to 0 by default which means cache file never expires.
Value can vary from 0 to 31536000 which corresponds to the number of
seconds during one year.

When configuration option is set, it defies the
MODULES_CACHE_EXPIRY_SECS environment variable.
2022-12-27 18:43:59 +01:00
Xavier Delaruelle
ecb83452a9 ts: add cache_buffer_bytes tests in 30/051 2022-12-27 18:43:58 +01:00
Xavier Delaruelle
6f0c7c20f8 ts: test cache_buffer_bytes config option 2022-12-27 18:43:58 +01:00