Improve e3 bash
This MR concerns: https://jira.esss.lu.se/browse/E3-173
Now e3_building_config.bash
, tools/e3_module_list.sh
(new file ext), tools/e3_functions.sh
(new file ext) all pass the linting and formatting tests. e3.bash
passes formatting but not linting. In the current gitlab-CI setup, *.bash
files are ignored for the linting checks, and files outside of tools/
are ignored by shfmt (in part because we also have legacy shell scripts in utils/
and cmds/
).
The linting errors for e3.bash
now are:
e3.bash:97:1: warning: setup_base references arguments, but none are ever passed. [SC2120]
e3.bash:170:1: warning: setup_require references arguments, but none are ever passed. [SC2120]
e3.bash:180:1: warning: devsetup_require references arguments, but none are ever passed. [SC2120]
e3.bash:260:1: warning: setup_modules references arguments, but none are ever passed. [SC2120]
e3.bash:402:3: note: Use setup_base "$@" if function's $1 should mean script's $1. [SC2119]
e3.bash:408:3: note: Use setup_require "$@" if function's $1 should mean script's $1. [SC2119]
e3.bash:414:3: note: Use devsetup_require "$@" if function's $1 should mean script's $1. [SC2119]
e3.bash:418:1: warning: all_modules references arguments, but none are ever passed. [SC2120]
e3.bash:422:3: note: Use setup_modules "$@" if function's $1 should mean script's $1. [SC2119]
e3.bash:620:8: note: Use all_modules "$@" if function's $1 should mean script's $1. [SC2119]
e3.bash:644:11: note: Use print_version_really_everything "$@" if function's $1 should mean script's $1. [SC2119]
these should be corrected in the future, but are left out of this MR.