View on GitHub

check-spelling-docs

Documentation for check-spelling

Check commit messages

Commit messages are often converted into changelogs which are often then committed back into repositories.

If a repository has enabled incremental checking, then it wouldn't be terribly hard to check commit messages on PRs (or non-default branches).

This would be optional, and I don't expect it to be on by default (although I may enable it in spell-check-this's workflow).

It's somewhat similar to Feature: Check filenames and paths.

Status

🐛 Flaky in v0.0.21.

See Future work for thoughts on how to improve the implementation.

If you choose to use this feature today, you should either use only_check_changed_files or include text in advice.md suggesting that commit message / PR items be added to allow.txt instead of expect.txt.

Implemented modes

ℹī¸ Note: While PR description and PR summary aren't technically commit messages, there are a number of commit strategies (especially Squash) that will end up integrating them into a future commit, and thus it makes sense to offer to check them as well.

Future work

Split the check pass for these objects from the main pass. In order to handle them, items really need to be added to allow.txt, otherwise a commit that adds a term to expect.txt to accept a commit message will then force the next PRs to remove the newly inserted expect.txt items.

Improve commit retrieval performance

Currently check-spelling asks actions/checkout to retrieve the full commit history.

That's pretty inefficient, because for this feature, it doesn't need anything beyond the commit messages. There's a clone mode --filter=tree:0 which should allow for a much faster retrieval (on large repositories). It's described in Get up to speed with partial clone and shallow clone.

Presentation

Lazy hackish implementation

  1. Create a branch w/ the selected items as files
  2. push it
  3. let check spelling run normally

GitHub Step Summary

Use $GITHUB_STEP_SUMMARY

Potential additional modes


FAQ | Showcase | Event descriptions | Configuration information | Known Issues | Possible features | Deprecations | Release notes | Helpful scripts