mas/script/lint

47 lines
978 B
Text
Raw Permalink Normal View History

2019-01-12 20:30:08 +00:00
#!/bin/bash -e
2019-01-16 01:31:51 +00:00
#
# script/lint
# mas
2019-01-16 01:31:51 +00:00
#
# Linting checks for development and CI.
2019-01-16 01:31:51 +00:00
#
2021-03-29 00:16:37 +00:00
# Reports style violations without making any modifications to the code.
#
# Please keep in sync with script/format.
#
2019-01-12 20:30:08 +00:00
echo "==> 🚨 Linting mas"
for LINTER in git markdownlint periphery shfmt swiftformat swiftlint yamllint; do
if [[ ! -x "$(command -v ${LINTER})" ]]; then
echo "error: ${LINTER} is not installed. Run 'script/bootstrap' or 'brew install ${LINTER}'."
exit 1
fi
done
2019-01-16 01:15:55 +00:00
echo "--> 🕊️ Swift"
2021-04-26 23:44:17 +00:00
for SOURCE in Package.swift Sources Tests; do
swiftformat --lint ${SOURCE}
swift run swift-format lint --recursive ${SOURCE}
swiftlint lint --strict ${SOURCE}
2021-03-22 05:25:18 +00:00
done
2021-06-09 02:28:43 +00:00
periphery scan
2019-01-16 01:15:55 +00:00
echo "--> 🌳 Git"
git diff --check
echo "--> 〽️ Markdown"
markdownlint --config .markdownlint.json .github .
echo "--> 🖊 YAML"
yamllint .
2019-01-16 01:15:55 +00:00
echo "--> 📜 Bash"
2021-06-09 01:56:27 +00:00
shellcheck --shell=bash script/*
2024-03-31 17:05:04 +00:00
shfmt \
--diff \
--list \
--indent 2 \
--case-indent \
contrib/ script/