diff --git a/.github/actions/spelling/README.md b/.github/actions/spelling/README.md new file mode 100644 index 0000000..dcd237b --- /dev/null +++ b/.github/actions/spelling/README.md @@ -0,0 +1,15 @@ +# check-spelling/check-spelling configuration + +File | Purpose | Format | Info +-|-|-|- +[dictionary.txt](dictionary.txt) | Replacement dictionary (creating this file will override the default dictionary) | one word per line | [dictionary](https://github.com/check-spelling/check-spelling/wiki/Configuration#dictionary) +[allow.txt](allow.txt) | Add words to the dictionary | one word per line (only letters and `'`s allowed) | [allow](https://github.com/check-spelling/check-spelling/wiki/Configuration#allow) +[reject.txt](reject.txt) | Remove words from the dictionary (after allow) | grep pattern matching whole dictionary words | [reject](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-reject) +[excludes.txt](excludes.txt) | Files to ignore entirely | perl regular expression | [excludes](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-excludes) +[only.txt](only.txt) | Only check matching files (applied after excludes) | perl regular expression | [only](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-only) +[patterns.txt](patterns.txt) | Patterns to ignore from checked lines | perl regular expression (order matters, first match wins) | [patterns](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-patterns) +[expect.txt](expect.txt) | Expected words that aren't in the dictionary | one word per line (sorted, alphabetically) | [expect](https://github.com/check-spelling/check-spelling/wiki/Configuration#expect) +[advice.md](advice.md) | Supplement for GitHub comment when unrecognized words are found | GitHub Markdown | [advice](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-advice) + +Note: you can replace any of these files with a directory by the same name (minus the suffix) +and then include multiple files inside that directory (with that suffix) to merge multiple files together. diff --git a/.github/actions/spelling/advice.md b/.github/actions/spelling/advice.md new file mode 100644 index 0000000..2a32b65 --- /dev/null +++ b/.github/actions/spelling/advice.md @@ -0,0 +1,27 @@ + +
If you see a bunch of garbage + +If it relates to a ... +
well-formed pattern + +See if there's a [pattern](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-patterns) that would match it. + +If not, try writing one and adding it to the `patterns.txt` file. + +Patterns are Perl 5 Regular Expressions - you can [test]( +https://www.regexplanet.com/advanced/perl/) yours before committing to verify it will match your lines. + +Note that patterns can't match multiline strings. +
+
binary-ish string + +Please add a file path to the `excludes.txt` file instead of just accepting the garbage. + +File paths are Perl 5 Regular Expressions - you can [test]( +https://www.regexplanet.com/advanced/perl/) yours before committing to verify it will match your files. + +`^` refers to the file's path from the root of the repository, so `^README\.md$` would exclude [README.md]( +../tree/HEAD/README.md) (on whichever branch you're using). +
+ +
diff --git a/.github/actions/spelling/allow.txt b/.github/actions/spelling/allow.txt new file mode 100644 index 0000000..e69de29 diff --git a/.github/actions/spelling/excludes.txt b/.github/actions/spelling/excludes.txt new file mode 100644 index 0000000..ce6125a --- /dev/null +++ b/.github/actions/spelling/excludes.txt @@ -0,0 +1,23 @@ +# See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-excludes +(?:^|/)(?i)COPYRIGHT +(?:^|/)(?i)LICEN[CS]E +(?:^|/)package(?:-lock|)\.json$ +(?:^|/)vendor/ +ignore$ +\.avi$ +\.ico$ +\.jpe?g$ +\.js$ +\.lock$ +\.map$ +\.min\. +\.mod$ +\.mp[34]$ +\.png$ +\.styl$ +\.svg$ +\.uve$ +\.wav$ +\.html$ +\.nav$ +^\.github/ diff --git a/.github/actions/spelling/expect.txt b/.github/actions/spelling/expect.txt new file mode 100644 index 0000000..205308c --- /dev/null +++ b/.github/actions/spelling/expect.txt @@ -0,0 +1,52 @@ +agentzh +COMPAT +csv +dav +dll +DLUAJIT +exe +flv +gcc +github +gmail +gunzip +gzip +html +http +imagename +imap +IOCP +ipv +jit +json +Linux +lua +luajit +Microsoft +mkdir +MSYS +nginx +ngx +NUMMODE +objs +openresty +openssl +pcre +perl +pid +preread +rds +README +realip +sbin +SETSIZE +smtp +ssl +tarballs +taskkill +tasklist +todo +toolchain +xcflags +Yichun +zlib diff --git a/.github/actions/spelling/only.txt b/.github/actions/spelling/only.txt new file mode 100644 index 0000000..87e9d7a --- /dev/null +++ b/.github/actions/spelling/only.txt @@ -0,0 +1,2 @@ +# See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-excludes +\.md$ diff --git a/.github/actions/spelling/patterns.txt b/.github/actions/spelling/patterns.txt new file mode 100644 index 0000000..d39d09e --- /dev/null +++ b/.github/actions/spelling/patterns.txt @@ -0,0 +1,4 @@ +# See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-patterns + +# ignore long runs of a single character: +\b([A-Za-z])\g{-1}{3,}\b diff --git a/.github/actions/spelling/reject.txt b/.github/actions/spelling/reject.txt new file mode 100644 index 0000000..e69de29 diff --git a/.github/workflows/markdownlint.yml b/.github/workflows/markdownlint.yml new file mode 100644 index 0000000..e06050e --- /dev/null +++ b/.github/workflows/markdownlint.yml @@ -0,0 +1,18 @@ +name: Linting on markdown files +on: + pull_request_target: + push: + +jobs: + lint-content: + name: Lint content markdown files + runs-on: ubuntu-latest + steps: + - name: Check out code + uses: actions/checkout@v2 + + - name: Lint markdown files + uses: avto-dev/markdown-lint@v1 + with: + config: './.markdownlint.jsonc' + args: './content/**/*.md' diff --git a/.github/workflows/spelling.yml b/.github/workflows/spelling.yml new file mode 100644 index 0000000..06a8b74 --- /dev/null +++ b/.github/workflows/spelling.yml @@ -0,0 +1,31 @@ +name: Spell checking +on: + pull_request_target: + push: + issue_comment: + types: [created] + +jobs: + spelling: + name: Spell checking + runs-on: ubuntu-latest + steps: + - name: checkout-merge + if: "contains(github.event_name, 'pull_request')" + uses: actions/checkout@v2 + with: + ref: refs/pull/${{github.event.pull_request.number}}/merge + - name: checkout + if: ${{ github.event_name == 'push' || + ( + contains(github.event.comment.body, '@check-spelling-bot apply') + ) }} + uses: actions/checkout@v2 + - uses: check-spelling/check-spelling@main + id: spelling + if: ${{ github.event_name != 'issue_comment' || + ( + contains(github.event.comment.body, '@check-spelling-bot apply') + ) }} + with: + experimental_apply_changes_via_bot: 1 diff --git a/doc/README-windows.md b/doc/README-windows.md index d3d860d..a6c4b3f 100644 --- a/doc/README-windows.md +++ b/doc/README-windows.md @@ -94,7 +94,7 @@ recommended though). Debugging ========= -Debug symbosl are enabled even in release builds. So that when things go very wrong, +Debug symbols are enabled even in release builds. So that when things go very wrong, one can still debug things with tools like MSYS2 GDB. Inclusion of debug symbols make the binary files (`.exe` and `.dll` files) much larger, @@ -123,7 +123,7 @@ TODO package redistribution. * Bundle StrawberryPerl to make command-line utilities like `resty` work out of the box (without manually installing a Perl). -* Deliver an alternative Win32/Win64 binary package built with best debuggin capabilities (like enabling +* Deliver an alternative Win32/Win64 binary package built with best debugging capabilities (like enabling NGINX debugging logs, disabling C compiler optimizations, and enabling all the assertions and checks). [Back to TOC](#table-of-contents)