Centralize CI on SciML reusable workflows + Runic + typo fixes#1478
Merged
ChrisRackauckas merged 2 commits intoJun 4, 2026
Conversation
Convert/ensure CI checks use the centralized SciML/.github reusable workflows pinned at @v1, with `secrets: "inherit"` on every caller. Workflow changes: - Downgrade.yml: inline -> downgrade.yml@v1 (julia-version 1.10, skip "Pkg,TOML", allow-reresolve false; preserves prior behavior). - SpellCheck.yml: inline crate-ci/typos -> spellcheck.yml@v1. - Runic.yml: ADDED runic.yml@v1 format check (repo previously only had format-suggestions-on-pr, no enforcing Runic check). All .jl files parse cleanly, so no `exclude:` needed. - Test.yml: already a tests.yml@v1 caller; unchanged. - Documentation.yml / TestExtensions.yml: left inline (custom behavior the central callers cannot reproduce; see PR notes). Formatting + spelling: - Ran Runic in-place across the repo. - Fixed clear prose typos (typos -w); added `oint` and `Lamba` to .typos.toml as domain identifiers (ODEIntegrator var; LambaEM solver). dependabot.yml: - Removed the crate-ci/typos ignore (version pinned centrally now). - julia ecosystem dirs: "/", "/docs", "/test/extensions" (the latter has a Project.toml; "/test" has none and was dropped). Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com> Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Catalyst did not previously run Runic, so adding the centralized Runic check reformatted the entire repo (~80 files), which is too large to bundle with the CI migration. Remove the Runic.yml caller and revert the formatting; Runic adoption can be done as a separate, focused PR. This PR keeps the rest of the centralization: SpellCheck and Downgrade callers, dependabot cleanup. Tests.yml/Documentation were already centralized and are unchanged. Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com> Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
isaacsas
approved these changes
Jun 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Please ignore until reviewed by @ChrisRackauckas.
Moves Catalyst's CI onto the centralized
SciML/.githubreusable workflows (pinned@v1), withsecrets: "inherit"on every caller, plus a Runic format pass and typo fixes.Converted (inline -> central caller)
downgrade.yml@v1(julia-version: "1.10",skip: "Pkg,TOML",allow-reresolve: false). Preserves the previous matrix's single 1.10 alldeps run andALLOW_RERESOLVE: false.crate-ci/typos->spellcheck.yml@v1(typos version now pinned centrally at v1.47.0).Added (new central caller)
runic.yml@v1Runic format check. The repo previously only hadformat-suggestions-on-pr.yml@v1(FormatCheck.yml), which posts PR suggestions but does not enforce. All.jlfiles parse cleanly under Runic, so noexclude:is set.Unchanged callers
tests.yml@v1caller (version x group matrix,coverage: false,secrets: "inherit"). Left as-is.Intentionally NOT converted (behavior the central callers cannot reproduce)
xvfb-run,GKSwstype: "100", adocs-artifactupload, Julia1.12, andfail_ci_if_error: false.documentation.yml@v1supports none of the headless-display / artifact bits, so converting would risk breaking the GraphMakie/CairoMakie doc build. Left inline.test/runtests_extensions.jlwith--project=test/extensions), whichtests.yml@v1(Pkg.test + GROUP) cannot express. Left inline.Formatting
runic_formatted: true). This is the first enforcing Runic pass, so the diff is large (mostly addedreturns and trailing-whitespace removal).Typos
typos -wplus one manual fix (Containes->Contains, which has ambiguous auto-suggestions).typos .now exits 0.oint(ODEIntegrator variable name in tests) andLamba(LambaEM/LambaEulerHeun SDE solvers) to.typos.tomlas domain identifiers rather than mass-editing.dependabot.yml
crate-ci/typosignore (version is now pinned centrally)./,/docs,/test/extensions(the last has aProject.toml;/testhas none and was dropped). github-actions weekly + julia daily groups preserved.Heads-up
Check names change (e.g. the Downgrade/SpellCheck job names now come from the reusable workflows, and a new Runic check appears). Branch-protection required-status-checks will need updating to match the new check names.
🤖 Generated with Claude Code