Skip to content

ci: add centralized sublibrary downgrade CI#190

Merged
ChrisRackauckas merged 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:sublibrary-downgrade-ci
Jun 4, 2026
Merged

ci: add centralized sublibrary downgrade CI#190
ChrisRackauckas merged 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:sublibrary-downgrade-ci

Conversation

@ChrisRackauckas-Claude

Copy link
Copy Markdown
Contributor

Please ignore until reviewed by @ChrisRackauckas.

What

Adds .github/workflows/DowngradeSublibraries.yml, a thin caller that invokes the centralized SciML reusable workflow SciML/.github/.github/workflows/sublibrary-downgrade.yml@v1. That reusable workflow auto-discovers every lib/* package containing a Project.toml and, for each, runs julia-downgrade-compat + julia-buildpkg + julia-runtest against project: lib/<sub>. This catches breakage against the oldest declared-compatible dependency versions, per-sublibrary.

This is complementary to the existing root-level Downgrade.yml (which downgrade-tests the top-level package); this new workflow covers the lib/* sublibraries.

Sublibraries covered (7)

All discovered automatically (no explicit projects list), each has a test/runtests.jl:

  • BVProblemLibrary
  • DAEProblemLibrary
  • DDEProblemLibrary
  • JumpProblemLibrary
  • NonlinearProblemLibrary
  • ODEProblemLibrary
  • SDEProblemLibrary

Configuration

  • julia-version: lts
  • allow-reresolve: true
  • skip (deps NOT downgraded): Pkg, TOML, Statistics, LinearAlgebra, SparseArrays, InteractiveUtils, Random, Test, Markdown

Only standard libraries are skipped. None of the sublibraries declare in-repo path/dev dependencies (all their deps — DiffEqBase, SciMLBase, Catalyst, RuntimeGeneratedFunctions, SpecialFunctions, etc. — are external registry packages), so no in-repo core/base package needed to be added to skip. Markdown, LinearAlgebra, and Random are stdlibs used by some sublibraries and are skipped accordingly.

Heads up

This adds new required-looking CI checks (one downgrade job per sublibrary, ~7 jobs). Expect new entries in the checks list on every PR/push to master.

🤖 Generated with Claude Code

Adds a caller workflow invoking the centralized
SciML/.github sublibrary-downgrade.yml@v1 reusable workflow, which
auto-discovers each lib/* package and runs downgrade-compat +
buildpkg + runtest against it.

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 4, 2026 15:28
@ChrisRackauckas ChrisRackauckas merged commit 80a7a68 into SciML:master Jun 4, 2026
15 of 20 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