Skip to content

Release 0.0.21

Compare
Choose a tag to compare
@jsoref jsoref released this 28 Nov 09:23
· 212 commits to main since this release

⏩ Upgrading

  • 🏷️ You can just change your workflow tags/references to this release, but some features require updates to the workflow (including sarif output and binary file detection); please consider applying the workflow from check-spelling/spell-check-this@prerelease. (The link will change shortly after this release is made.)
    • You will want to copy over the with: elements you're using (into each place that uses: check-spelling/check-spelling).

🐣 Breaking Changes

🗜️ Smaller cspell dictionaries

Background

There are 3 related configuration items:

  • dictionary_source_prefixes
    • In v0.0.20, this had: "cspell": "https://raw.githubusercontent.com/check-spelling/cspell-dicts/v20220427/dictionaries/"
    • In v0.0.21, it has: "cspell": "https://raw.githubusercontent.com/check-spelling/cspell-dicts/v20220816/dictionaries/"
  • extra_dictionaries
  • check_extra_dictionaries
    • The list has changed between v0.0.20 and v0.0.21, 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.21 release and again for future releases).

🧗 act

Some changes in how the action works require actions/download-artifact and actions/upload-artifact which aren't generally supported by act. It might be possible to use --artifact-server-path, but I don't know how to do it.

Mitigation

You can apply changes equivalent to the changes to .github/workflows/spelling.yml to your workflow. This should enable the act workflows to conspire to share data between jobs. Alternatively, you could remove post_comment: 0 from your spelling job. And that should result in a report.

The log will include a base64 encoded zip file along with instructions to decode it and a command that will let you feed the file to apply.pl to apply its suggestions.

🏛️ Behavior change: File line column notation

Log output will now use a format like .github/workflows/spelling.yml:54:9 ... 21 to report problems. This should be friendlier to automated tools. Anyone who had written their own code to parse the old format will need to adjust their tooling. I don't expect this to be a big concern.

😢 Broken

Matrix

Apply

Apply handling for Matrix probably won't do the right thing. Instead, it will probably apply the results from the last job. This is fixed in prerelease and will be included in the next release.

Workaround

Instead of using a matrix, you can manually expand the matrix content. If you're feeling adventurous, you can make a pre job and then have each dependent item reuse that prejob. If you're using a matrix because the repository is expensive, the pre job might enable you to cache the repository itself.

Alternatively, you can test using prerelease.

SARIF 📰 As of 2023-09-08T02:08:41.1937091Z

check-spelling's detection of GitHub SARIF support no longer works. As such, you can't use SARIF with this version.

Workaround

A prerelease version should have working detection soon.

✨ New features

🔧 Tuning

💅 Minor polish


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

Full Changelog: v0.0.20...v0.0.21