Adopts the shared quality-check workflow of TirSystem/github-action (issue TirSystem/github-action#18, MIL-003 task 4).
Changes
.gitea/workflows/quality.yml: calls TirSystem/github-action/.gitea/workflows/quality-checks.yml@main for languages: shell on pull requests and on push to main. It runs shellcheck and shfmt -d on the tracked *.sh files, changes no file and needs no secret.
.editorconfig: a [*.sh] section with switch_case_indent = true.
Why the .editorconfig line
A trial run on the unchanged repository (39 shell files):
shellcheck passed, using this repository's .shellcheckrc (external-sources, source-path=SCRIPTDIR).
shfmt -d failed on 10 files, all the same difference: the shared workflow runs shfmt with its defaults, which do not indent case patterns, while this project's own check is shfmt -i 2 -ci (tests/run-tests.sh). shfmt reads .editorconfig, so switch_case_indent = true makes it agree with the project's style, with no change to any script.
After that line the trial run passed (PASS shellcheck, PASS shfmt -d, All selected checks passed.).
Notes
languages: shell because the repository has no Python files; the default (python,shell) would also pass, with a notice for Python.
Reported paths are relative to the working directory, which is the repository root here.
No file under src/ or tests/ changes, so the plan gate does not apply. Not merged by me.
Adopts the shared quality-check workflow of `TirSystem/github-action` (issue TirSystem/github-action#18, MIL-003 task 4).
## Changes
- `.gitea/workflows/quality.yml`: calls `TirSystem/github-action/.gitea/workflows/quality-checks.yml@main` for `languages: shell` on pull requests and on push to `main`. It runs `shellcheck` and `shfmt -d` on the tracked `*.sh` files, changes no file and needs no secret.
- `.editorconfig`: a `[*.sh]` section with `switch_case_indent = true`.
## Why the `.editorconfig` line
A trial run on the unchanged repository (39 shell files):
- `shellcheck` passed, using this repository's `.shellcheckrc` (`external-sources`, `source-path=SCRIPTDIR`).
- `shfmt -d` failed on 10 files, all the same difference: the shared workflow runs shfmt with its defaults, which do not indent `case` patterns, while this project's own check is `shfmt -i 2 -ci` (`tests/run-tests.sh`). shfmt reads `.editorconfig`, so `switch_case_indent = true` makes it agree with the project's style, with no change to any script.
- After that line the trial run passed (`PASS shellcheck`, `PASS shfmt -d`, `All selected checks passed.`).
## Notes
- `languages: shell` because the repository has no Python files; the default (`python,shell`) would also pass, with a notice for Python.
- Reported paths are relative to the working directory, which is the repository root here.
- No file under `src/` or `tests/` changes, so the plan gate does not apply. Not merged by me.
Call the reusable quality-check workflow of TirSystem/github-action for the
shell files: shellcheck and shfmt -d. Add switch_case_indent to the
[*.sh] section of .editorconfig so that shfmt, which reads it, agrees with
the style the project already uses (shfmt -i 2 -ci in tests/run-tests.sh).
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Adopts the shared quality-check workflow of
TirSystem/github-action(issue TirSystem/github-action#18, MIL-003 task 4).Changes
.gitea/workflows/quality.yml: callsTirSystem/github-action/.gitea/workflows/quality-checks.yml@mainforlanguages: shellon pull requests and on push tomain. It runsshellcheckandshfmt -don the tracked*.shfiles, changes no file and needs no secret..editorconfig: a[*.sh]section withswitch_case_indent = true.Why the
.editorconfiglineA trial run on the unchanged repository (39 shell files):
shellcheckpassed, using this repository's.shellcheckrc(external-sources,source-path=SCRIPTDIR).shfmt -dfailed on 10 files, all the same difference: the shared workflow runs shfmt with its defaults, which do not indentcasepatterns, while this project's own check isshfmt -i 2 -ci(tests/run-tests.sh). shfmt reads.editorconfig, soswitch_case_indent = truemakes it agree with the project's style, with no change to any script.PASS shellcheck,PASS shfmt -d,All selected checks passed.).Notes
languages: shellbecause the repository has no Python files; the default (python,shell) would also pass, with a notice for Python.src/ortests/changes, so the plan gate does not apply. Not merged by me.