aef393bdce523ed5e5754721965fab2da8080119

Author
Marc Cornellà <hello@mcornella.com>
Committer
Marc Cornellà <hello@mcornella.com>
Date

Message

ci: add `check-spelling` GitHub Action

Diff

This diff is truncated to protect this page.

  1diff --git a/.github/actions/spelling/README.md b/.github/actions/spelling/README.md
  2new file mode 100644
  3index 0000000000000000000000000000000000000000..1bd7d441243c1bca8067bc02be583bef95ef829f
  4--- /dev/null
  5+++ b/.github/actions/spelling/README.md
  6@@ -0,0 +1,15 @@
  7+# check-spelling/check-spelling configuration
  8+
  9diff --git a/.github/actions/spelling/advice.md b/.github/actions/spelling/advice.md
 10new file mode 100644
 11index 0000000000000000000000000000000000000000..2a32b65207819d4bf07d029a6b7e0610f9a3c6a1
 12--- /dev/null
 13+++ b/.github/actions/spelling/advice.md
 14@@ -0,0 +1,27 @@
 15+<!-- See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-advice --> <!-- markdownlint-disable MD033 MD041 -->
 16+<details><summary>If you see a bunch of garbage</summary>
 17+
 18+If it relates to a ...
 19+<details><summary>well-formed pattern</summary>
 20+
 21+See if there's a [pattern](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-patterns) that would match it.
 22+
 23+If not, try writing one and adding it to the `patterns.txt` file.
 24+
 25+Patterns are Perl 5 Regular Expressions - you can [test](
 26+https://www.regexplanet.com/advanced/perl/) yours before committing to verify it will match your lines.
 27+
 28+Note that patterns can't match multiline strings.
 29+</details>
 30+<details><summary>binary-ish string</summary>
 31+
 32+Please add a file path to the `excludes.txt` file instead of just accepting the garbage.
 33+
 34+File paths are Perl 5 Regular Expressions - you can [test](
 35+https://www.regexplanet.com/advanced/perl/) yours before committing to verify it will match your files.
 36+
 37+`^` refers to the file's path from the root of the repository, so `^README\.md$` would exclude [README.md](
 38+../tree/HEAD/README.md) (on whichever branch you're using).
 39+</details>
 40+
 41+</details>
 42diff --git a/.github/actions/spelling/allow.txt b/.github/actions/spelling/allow.txt
 43new file mode 100644
 44index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
 45--- /dev/null
 46+++ b/.github/actions/spelling/allow.txt
 47diff --git a/.github/actions/spelling/excludes.txt b/.github/actions/spelling/excludes.txt
 48new file mode 100644
 49index 0000000000000000000000000000000000000000..ce9f3b99a6718c3e45e3224740e2159e1939accb
 50--- /dev/null
 51+++ b/.github/actions/spelling/excludes.txt
 52@@ -0,0 +1,17 @@
 53+# See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-excludes
 54+(?:^|/)(?i)COPYRIGHT
 55+(?:^|/)(?i)LICEN[CS]E
 56+(?:^|/)package(?:-lock|)\.json$
 57+(?:^|/)vendor/
 58+ignore$
 59+\.avi$
 60+\.ico$
 61+\.jpe?g$
 62+\.lock$
 63+\.map$
 64+\.min\.
 65+\.mod$
 66+\.mp[34]$
 67+\.png$
 68+\.wav$
 69+^\.github/
 70diff --git a/.github/actions/spelling/expect.txt b/.github/actions/spelling/expect.txt
 71new file mode 100644
 72index 0000000000000000000000000000000000000000..d69fa3882242bfa1f3c45806c63ae421c6a8118c
 73--- /dev/null
 74+++ b/.github/actions/spelling/expect.txt
 75@@ -0,0 +1,2 @@
 76+ohmyzsh
 77+oh-my-zsh
 78diff --git a/.github/actions/spelling/patterns.txt b/.github/actions/spelling/patterns.txt
 79new file mode 100644
 80index 0000000000000000000000000000000000000000..d39d09e977c165fffc3d9c4c35d4704d68c9a7a8
 81--- /dev/null
 82+++ b/.github/actions/spelling/patterns.txt
 83@@ -0,0 +1,4 @@
 84+# See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-patterns
 85+
 86+# ignore long runs of a single character:
 87+\b([A-Za-z])\g{-1}{3,}\b
 88diff --git a/.github/actions/spelling/reject.txt b/.github/actions/spelling/reject.txt
 89new file mode 100644
 90index 0000000000000000000000000000000000000000..67e0ad79bda6336726be201cbc45b33091590bf7
 91--- /dev/null
 92+++ b/.github/actions/spelling/reject.txt
 93@@ -0,0 +1,6 @@
 94+^attache$
 95+occurence
 96+Sorce
 97+^[Ss]pae
 98+^untill
 99+^wether
100diff --git a/.github/workflows/spelling.yml b/.github/workflows/spelling.yml
101new file mode 100644
102index 0000000000000000000000000000000000000000..06a8b74c9b2d50b21889abfaf8426d99b8df1eb4
103--- /dev/null
104+++ b/.github/workflows/spelling.yml
105@@ -0,0 +1,31 @@
106+name: Spell checking
107+on:
108+  pull_request_target:
109+  push:
110+  issue_comment:
111+    types: [created]
112+
113+jobs:
114+  spelling:
115+    name: Spell checking
116+    runs-on: ubuntu-latest
117+    steps:
118+    - name: checkout-merge
119+      if: "contains(github.event_name, 'pull_request')"
120+      uses: actions/checkout@v2
121+      with:
122+        ref: refs/pull/${{github.event.pull_request.number}}/merge
123+    - name: checkout
124+      if: ${{ github.event_name == 'push' ||
125+        (
126+          contains(github.event.comment.body, '@check-spelling-bot apply')
127+        ) }}
128+      uses: actions/checkout@v2
129+    - uses: check-spelling/check-spelling@main
130+      id: spelling
131+      if: ${{ github.event_name != 'issue_comment' ||
132+        (
133+          contains(github.event.comment.body, '@check-spelling-bot apply')
134+        ) }}
135+      with:
136+        experimental_apply_changes_via_bot: 1