Skip to content
Compare
Choose a tag to compare
@jsoref jsoref released this 29 Sep 00:45
· 3 commits to main since this release

⏩ Upgrading

  • 🏷️ Test first on a branch by changing your workflow tags/references to this release. See 🐣 Breaking Changes for how to adapt your workflow.

Going forward, if you have suppress_push_for_open_pull_request: 1 in your workflow, you should probably change it to suppress_push_for_open_pull_request: ${{ github.actor != 'dependabot[bot]' && 1 }} see Suppress PR check when workflow changes.

🐣 Breaking Changes

🗜️ Reorganized cspell Dictionaries

cspell: dictionaries have been reorganized.

Background

There are 3 related configuration items:

  • dictionary_source_prefixes
    • In v0.0.21, this had: "cspell": "https://raw.githubusercontent.com/check-spelling/cspell-dicts/v20220816/dictionaries/"
    • In v0.0.22, it has: "cspell": "https://raw.githubusercontent.com/check-spelling/cspell-dicts/v20230509/dictionaries/"
  • extra_dictionaries
  • check_extra_dictionaries
    • The list has changed between v0.0.21 and v0.0.22, a bunch have moved, some have split, and a bunch have been added.

Migrating

You can migrate in a couple of ways:

  • Assuming you haven't set dictionary_source_prefixes, you can temporarily clear extra_dictionaries and check_extra_dictionaries and then use one run to get a new set of recommended extra_dictionaries and then set check_extra_dictionaries (typically to '').
  • If you want to keep your current cspell extra_dictionaries, change cspell to cspell_old (or anything that isn't cspell) and set dictionary_source_prefixes to something like this: {"cspell": "https://raw.githubusercontent.com/check-spelling/cspell-dicts/v20220816/dictionaries/", "cspell_old": "https://raw.githubusercontent.com/check-spelling/cspell-dicts/v20220427/dictionaries/"}.

Note that the main branch for check-spelling/cspell-dicts will move (roughly at the time of the v0.0.22 release and again for future releases).

Dropping printf special cases

Background

check-spelling has evolved from a very simple script that included some special handling for \r/\t/\n because it was originally developed to focus on C++ and similar files. Over time, check-spelling has been used on many repositories where these patterns can appear in contexts where they aren't C style escapes, and thus it has outgrown this assumption.

Migrating

You can copy the code from:
https://github.com/check-spelling/spell-check-this/blob/b968ca32e0e5961a85c7fe3e9431f81553c3f434/.github/actions/spelling/candidate.patterns#L591-L595 into candidate.patterns and consider one of those patterns is the appropriate pattern to include in your configuration.

If you have workarounds for the old behavior, you should be able to remove them.

💔 Dropping support for broken act

Background

nektos/act is an alternate implementation of the GitHub Actions api environment. Each of check-spelling, GHA, and act have bugs and evolve at different rates (check-spelling releases on by far the slowest cycle). check-spelling had some workarounds for quirks of act from a long time ago and those interacted badly with newer GHA behaviors. In order to simplify life, support for some of those quirks has been removed.

Migrating

Install a newer version of nektos/act.

check-spelling will use components that rely on node20, support for not complaining about it was added to act in v0.2.51

🎏 Deprecations

🗣️ Dropping support for on: schedule

Support for on: schedule will be removed in a future release (it probably hasn't been working for a while, but this is an official announcement that its support will be removed).

✨ New features

📚 Dictionary changes

🐜 Bug fixes

🔧 Tuning

💅 Minor polish

  • 🔢 Fix error counts for Check filenames and paths
  • 🏃 Performance fix for workflows that don't use patterns / forbidden / candidates
  • 🔧 Matrixes generate archives that the latest apply.pl can consume (fixes regression in v0.0.21)
  • 🔧 Matrixes generate SARIF reports with distinct categories enabling them all to render properly (fixes bug in v0.0.21)
  • 👼 SARIF should work again

Full Changelog: v0.0.21...v0.0.22


Note that there are over 200 commits in this release, the above is not a complete list of features.