2025-02-10 21:54:51 +01:00
|
|
|
# lint code
|
|
|
|
rwx_lint() {
|
|
|
|
local path="${1}"
|
|
|
|
[ -n "${path}" ] || return 1
|
|
|
|
rwx_lint_clean "${path}"
|
|
|
|
rwx_lint_tasks "${path}"
|
|
|
|
set \
|
|
|
|
"python" \
|
|
|
|
"shell"
|
|
|
|
local code
|
2025-08-02 10:05:13 +02:00
|
|
|
for code; do
|
2025-02-10 21:54:51 +01:00
|
|
|
rwx_log "" "${code}"
|
|
|
|
"rwx_lint_${code}" "${path}"
|
|
|
|
done
|
|
|
|
rwx_lint_clean "${path}"
|
|
|
|
}
|
|
|
|
|
|
|
|
# clean
|
|
|
|
rwx_lint_clean() {
|
|
|
|
local path="${1}"
|
|
|
|
[ -n "${path}" ] || return 1
|
|
|
|
rwx_log "" "clean" ""
|
|
|
|
py3clean "${path}"
|
|
|
|
set \
|
|
|
|
"mypy" \
|
|
|
|
"ruff"
|
|
|
|
local tool
|
2025-08-02 10:05:13 +02:00
|
|
|
for tool; do
|
2025-02-10 21:54:51 +01:00
|
|
|
rwx_remove "${path}/.${tool}_cache"
|
|
|
|
done
|
|
|
|
}
|
|
|
|
|
|
|
|
# lint python code
|
|
|
|
rwx_lint_python() {
|
|
|
|
local path="${1}"
|
|
|
|
local action
|
|
|
|
set \
|
|
|
|
"pylint" \
|
|
|
|
"pydoclint" \
|
|
|
|
"mypy" \
|
|
|
|
"ruff"
|
2025-08-02 10:05:13 +02:00
|
|
|
for action; do
|
2025-02-10 21:54:51 +01:00
|
|
|
rwx_log "" "${action}"
|
|
|
|
"rwx_${action}" "${path}"
|
|
|
|
done
|
|
|
|
}
|
|
|
|
|
|
|
|
# lint shell code
|
|
|
|
rwx_lint_shell() {
|
|
|
|
local path="${1}"
|
|
|
|
local action
|
|
|
|
set \
|
|
|
|
"shellcheck" \
|
|
|
|
"shfmt"
|
2025-08-02 10:05:13 +02:00
|
|
|
for action; do
|
2025-02-10 21:54:51 +01:00
|
|
|
rwx_log "" "${action}"
|
|
|
|
"rwx_${action}" "${path}"
|
|
|
|
done
|
|
|
|
}
|
|
|
|
|
|
|
|
# lint code tasks
|
|
|
|
rwx_lint_tasks() {
|
|
|
|
local path="${1}"
|
|
|
|
local type
|
|
|
|
set \
|
|
|
|
"LATER" \
|
|
|
|
"TODO" \
|
|
|
|
"FIXME"
|
2025-08-02 10:05:13 +02:00
|
|
|
for type; do
|
2025-02-10 21:54:51 +01:00
|
|
|
rwx_log "" "${type}"
|
|
|
|
grep \
|
|
|
|
--after "1" \
|
|
|
|
--directories "recurse" \
|
|
|
|
--line-number \
|
|
|
|
" ${type}" \
|
|
|
|
"${path}"
|
|
|
|
done
|
|
|
|
}
|