From 67e423edb25a3b565cd649a04ae73aa6446115d4 Mon Sep 17 00:00:00 2001 From: Markus Heiser Date: Wed, 16 Jul 2025 15:54:54 +0200 Subject: [enh] CI - add shell script formatter Implement rules and functions to format shell scripts: $ make format.shell or alternatively to format all source code: $ make format The formatter `shfmt` reads the rules from the editorconfig[1] If any EditorConfig files are found, they will be used to apply formatting options. If any parser or printer flags are given to the tool, no EditorConfig files will be used. [1] https://github.com/patrickvane/shfmt?tab=readme-ov-file#description Signed-off-by: Markus Heiser --- utils/lib_sxng_test.sh | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'utils') diff --git a/utils/lib_sxng_test.sh b/utils/lib_sxng_test.sh index 321584bf2..bd3e19651 100755 --- a/utils/lib_sxng_test.sh +++ b/utils/lib_sxng_test.sh @@ -6,8 +6,9 @@ test.help(){ test.: yamllint : lint YAML files (YAMLLINT_FILES) pylint : lint ./searx, ./searxng_extra and ./tests - pyright : static type check of python sources (.dev or .ci) black : check black code format + shfmt : check shfmt code format + shfmt : check Shell script code format unit : run unit tests coverage : run unit tests with coverage robot : run robot test @@ -105,6 +106,12 @@ test.black() { dump_return $? } +test.shfmt() { + build_msg TEST "[shfmt] ${SHFMT_SCRIPTS[*]}" + go.tool shfmt --list --diff "${SHFMT_SCRIPTS[@]}" + dump_return $? +} + test.unit() { build_msg TEST 'tests/unit' # shellcheck disable=SC2086 -- cgit v1.2.3