From 4cc6e64950376c51038c7d0535a49b0ac60b7b71 Mon Sep 17 00:00:00 2001 From: ChrisRackauckas-Claude Date: Tue, 2 Jun 2026 12:46:46 -0400 Subject: [PATCH] Normalize CI to SciML centralized reusable workflows Migrate to the SciML/.github centralized reusable workflows (pinned @v1): - FormatCheck.yml: now calls runic.yml@v1 (was inline fredrikekre/runic-action) - SpellCheck.yml: now calls spellcheck.yml@v1 (was inline crate-ci/typos@v1.18.0) - Tests.yml: ADDED, calls tests.yml@v1 with version matrix ["1","lts"] - Downgrade.yml: ADDED, calls downgrade.yml@v1 (julia-version lts, skip Pkg,TOML) dependabot.yml: removed the crate-ci/typos version-ignore block (standing policy: no per-dependency ignores). Julia + github-actions blocks preserved. .typos.toml: added code identifiers `thr` and `SIE` (false positives surfaced by the newer typos version used by spellcheck.yml@v1). Documentation.yml left unchanged: its self-hosted gpu-v100 runner and the `Pkg.develop("OrdinaryDiffEq")` (docs built against OrdinaryDiffEq master) step cannot be reproduced by documentation.yml@v1 without dropping behavior. Co-Authored-By: Chris Rackauckas Co-Authored-By: Claude Opus 4.8 (1M context) --- .github/dependabot.yml | 3 --- .github/workflows/Downgrade.yml | 26 ++++++++++++++++++++++++++ .github/workflows/FormatCheck.yml | 24 ++++++++++-------------- .github/workflows/SpellCheck.yml | 14 +++++--------- .github/workflows/Tests.yml | 31 +++++++++++++++++++++++++++++++ .typos.toml | 4 +++- 6 files changed, 75 insertions(+), 27 deletions(-) create mode 100644 .github/workflows/Downgrade.yml create mode 100644 .github/workflows/Tests.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml index cd7b7f249..f901dd8a9 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -5,9 +5,6 @@ updates: directory: "/" # Location of package manifests schedule: interval: "weekly" - ignore: - - dependency-name: "crate-ci/typos" - update-types: ["version-update:semver-patch", "version-update:semver-minor"] - package-ecosystem: "julia" directories: - "/" diff --git a/.github/workflows/Downgrade.yml b/.github/workflows/Downgrade.yml new file mode 100644 index 000000000..225419c34 --- /dev/null +++ b/.github/workflows/Downgrade.yml @@ -0,0 +1,26 @@ +name: "Downgrade" + +on: + pull_request: + branches: + - master + paths-ignore: + - "docs/**" + push: + branches: + - master + paths-ignore: + - "docs/**" + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/master' }} + +jobs: + downgrade: + name: "Downgrade" + uses: "SciML/.github/.github/workflows/downgrade.yml@v1" + with: + julia-version: "lts" + skip: "Pkg,TOML" + secrets: "inherit" diff --git a/.github/workflows/FormatCheck.yml b/.github/workflows/FormatCheck.yml index ee667ceff..9959198bf 100644 --- a/.github/workflows/FormatCheck.yml +++ b/.github/workflows/FormatCheck.yml @@ -1,22 +1,18 @@ -name: format-check +name: "Format Check" on: push: branches: - - 'master' - - 'main' - - 'release-' - tags: '*' + - master + tags: ["*"] pull_request: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/master' }} + jobs: runic: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v6 - - uses: julia-actions/setup-julia@v3 - with: - version: '1' - - uses: fredrikekre/runic-action@v1 - with: - version: '1' + name: "Runic" + uses: "SciML/.github/.github/workflows/runic.yml@v1" + secrets: "inherit" diff --git a/.github/workflows/SpellCheck.yml b/.github/workflows/SpellCheck.yml index 746b039a1..2693fef09 100644 --- a/.github/workflows/SpellCheck.yml +++ b/.github/workflows/SpellCheck.yml @@ -1,13 +1,9 @@ -name: Spell Check +name: "Spell Check" on: [pull_request] jobs: - typos-check: - name: Spell Check with Typos - runs-on: ubuntu-latest - steps: - - name: Checkout Actions Repository - uses: actions/checkout@v6 - - name: Check spelling - uses: crate-ci/typos@v1.18.0 \ No newline at end of file + spellcheck: + name: "Spell Check with Typos" + uses: "SciML/.github/.github/workflows/spellcheck.yml@v1" + secrets: "inherit" diff --git a/.github/workflows/Tests.yml b/.github/workflows/Tests.yml new file mode 100644 index 000000000..be48df269 --- /dev/null +++ b/.github/workflows/Tests.yml @@ -0,0 +1,31 @@ +name: "Tests" + +on: + pull_request: + branches: + - master + paths-ignore: + - "docs/**" + push: + branches: + - master + paths-ignore: + - "docs/**" + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/master' }} + +jobs: + tests: + name: "Tests" + strategy: + fail-fast: false + matrix: + version: + - "1" + - "lts" + uses: "SciML/.github/.github/workflows/tests.yml@v1" + with: + julia-version: "${{ matrix.version }}" + secrets: "inherit" diff --git a/.typos.toml b/.typos.toml index 04fa59f48..8b7c2c30d 100644 --- a/.typos.toml +++ b/.typos.toml @@ -1,4 +1,6 @@ [default.extend-words] quations = "quations" IIF = "IIF" -padd = "padd" \ No newline at end of file +padd = "padd" +thr = "thr" +SIE = "SIE" \ No newline at end of file