Skip to content

Migrate CI to centralized SciML/.github reusable workflows#18

Merged
ChrisRackauckas merged 1 commit into
SciML:mainfrom
ChrisRackauckas-Claude:migrate-to-centralized-workflows
Jun 2, 2026
Merged

Migrate CI to centralized SciML/.github reusable workflows#18
ChrisRackauckas merged 1 commit into
SciML:mainfrom
ChrisRackauckas-Claude:migrate-to-centralized-workflows

Conversation

@ChrisRackauckas-Claude
Copy link
Copy Markdown
Collaborator

Please ignore until reviewed by @ChrisRackauckas.

Normalizes CI to the Sundials.jl standard set via the centralized reusable workflows in SciML/.github (every caller pinned @v1, secrets: inherit).

Workflows

Converted:

  • CI.yml -> Tests.yml (calls tests.yml@v1). Reproduces the exact original matrix: version 1.10/1.11/1 x os ubuntu-latest/macos-latest/windows-latest. coverage: false because the original CI collected no coverage. Same on: triggers and concurrency group.
  • FormatCheck.yml -> calls runic.yml@v1 (previously used fredrikekre/runic-action directly).
  • SpellCheck.yml -> calls spellcheck.yml@v1 (previously used crate-ci/typos directly).

Added (new standard checks):

  • Downgrade.yml -> calls downgrade.yml@v1 (julia-version: lts, skip: Pkg,TOML).

Unchanged:

  • TagBot.yml.

Removed:

  • No CompatHelper workflow existed, so nothing to remove there.

Notable behavior change

The original CI.yml had a Pkg.develop step for the then-unregistered deps PureKLU and SparseColumnPivotedQR, with a comment to remove it once they were registered. Both are now registered in General, and Pkg.instantiate() resolves cleanly without the develop step (verified locally on Julia 1). The centralized tests.yml@v1 does plain buildpkg/instantiate, so this step is correctly dropped.

Runic

The repo already ran Runic, and Runic.main(["--check","."]) passes locally with no changes -- no formatting commit needed.

Spellcheck

typos . runs clean locally (exit 0). No _typos.toml needed.

Dependabot

Kept the existing github-actions (weekly, /) and julia (daily, /, group all-julia-packages: ["*"]) blocks. Removed the crate-ci/typos ignore block per standing policy (keep everything current). No CompatHelper to remove. Only the root has a Project.toml, so the julia block's single / directory is already complete.

Heads up

The check names change (e.g. CI / Julia ... -> Tests / Tests, format check job name Runic, etc.), so branch-protection required-status-checks will need updating.

🤖 Generated with Claude Code

Normalize to the Sundials.jl standard set using the centralized
reusable workflows in SciML/.github (pinned @v1):

- Tests.yml: replaces CI.yml, calling tests.yml@v1. Reproduces the
  exact version (1.10, 1.11, 1) x os (ubuntu/macos/windows) matrix.
  coverage: false (the original CI collected no coverage). The
  obsolete "develop unregistered SciML dependencies" step is dropped
  because PureKLU and SparseColumnPivotedQR are now registered in
  General and instantiate cleanly (verified locally).
- FormatCheck.yml: now calls runic.yml@v1.
- SpellCheck.yml: now calls spellcheck.yml@v1.
- Downgrade.yml: new caller of downgrade.yml@v1 (lts, skip Pkg,TOML).
- dependabot.yml: removed the crate-ci/typos ignore block.

TagBot.yml unchanged.

Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@ChrisRackauckas ChrisRackauckas marked this pull request as ready for review June 2, 2026 16:55
@ChrisRackauckas ChrisRackauckas merged commit b9bf7f5 into SciML:main Jun 2, 2026
11 of 12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants