Skip to content

Migrate check-spelling.yaml to Morrison-Lab/gha's spellcheck.yml@v2 (currently on R 4.1.2 + checkout@v3) #112

Description

@d-morrison

Summary

.github/workflows/check-spelling.yaml is hand-rolled and running on a stale toolchain. Morrison-Lab/gha ships a maintained equivalent, spellcheck.yml@v2, which this repo could call with a small stub instead.

Filed while migrating the other workflows to gha (#100, #101, #102, #103, #104) --- this one had no tracking issue.

The staleness is the concrete problem

container:
  image: rocker/tidyverse:4.1.2      # R 4.1.2, released 2021-11
steps:
  - uses: actions/checkout@v3        # superseded; v3 runs on a deprecated Node
  - uses: insightsengineering/r-spellcheck-action@v3.0.2

Nothing here is pinned by SHA, and the container pins an R release four years old. The rest of this repo's workflows are on actions/checkout@v4.

Why gha's version fits

The repo already has everything spellcheck.yml expects: a DESCRIPTION, tests/spelling.R, and spelling in Suggests:. gha's workflow spellchecks DESCRIPTION's Title/Description, man/*.Rd, vignette sources, and root README/NEWS/CHANGES/index Markdown with {spelling}, accepting the package's own inst/WORDLIST. It is read-only, so it needs no permissions: block and no secrets.

What to check before assuming it is a drop-in

This is the part that needs a real diff rather than a swap, because the two tools spellcheck different file sets:

  1. insightsengineering/r-spellcheck-action and {spelling} do not necessarily cover the same paths. This is a Quarto website --- its prose lives in 14 .qmd files (index.qmd, team.qmd, publications.qmd, people/**, opportunities/**), not in man/ or vignettes/. Confirm what the current action actually scans today before replacing it, or the migration could silently stop checking the files that matter most here.
  2. inst/WORDLIST --- check whether one exists and is being honoured today.
  3. If gha's spellcheck.yml turns out not to reach .qmd prose, the right answer may be to adopt it for the package surface and separately request .qmd coverage upstream in Morrison-Lab/gha, rather than forcing it.

What to do

  1. Determine the current action's actual file coverage on this repo (read a recent successful run's log).
  2. Diff that against what gha's spellcheck.yml@v2 covers, per gh api "repos/Morrison-Lab/gha/contents/.github/workflows/spellcheck.yml?ref=v2".
  3. If coverage is preserved or improved, replace with the examples/spellcheck.yml stub. If it is not, say so on this issue and leave the workflow hand-rolled with that reason recorded.

Scope

Tracking issue only, not implementing yet. Independent of the other gha migrations --- no shared files, no ordering constraint.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions