tests.yml: add num-threads input + sublibrary (project) support - #43
Merged
ChrisRackauckas merged 1 commit intoJun 4, 2026
Conversation
Two backward-compatible additions so a couple of repos that currently keep bespoke test CI can use the centralized workflow: - num-threads: sets JULIA_NUM_THREADS on the runtest step (default "1", i.e. unchanged). Lets repos that need multi-threaded test coverage (e.g. RecursiveArrayTools' issue #570 threaded regression tests) run on the reusable workflow instead of a bespoke matrix. - Pass `project` to julia-buildpkg, and add an in-repo [sources] develop step, so the workflow can build+test a lib/* sublibrary package (project: lib/Foo). The develop step only runs for non-root projects on Julia < 1.11 (>= 1.11 auto-resolves [sources]); it is skipped for every existing caller (project defaults to "@."). All defaults preserve current behavior for the ~130 existing consumers. Co-Authored-By: Chris Rackauckas <[email protected]> Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
ChrisRackauckas
marked this pull request as ready for review
June 4, 2026 16:03
This was referenced Jun 4, 2026
ChrisRackauckas-Claude
pushed a commit
to ChrisRackauckas-Claude/Corleone.jl
that referenced
this pull request
Jun 4, 2026
…verage) Instead of reverting to bespoke CI, use a matrixed tests.yml@v1 caller now that the reusable workflow supports per-job `project` + in-repo [sources] develop (SciML/.github#43). The Corleone group tests the root (@.) and the CorleoneOED group tests lib/CorleoneOED (with the parent dev'd from its [sources]); both run unconditionally on every push/PR, restoring the coverage SciML#71 dropped — without a bespoke carve-out. Co-Authored-By: Chris Rackauckas <[email protected]> Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
ChrisRackauckas
added a commit
to SciML/RecursiveArrayTools.jl
that referenced
this pull request
Jun 4, 2026
Convert the bespoke Tests.yml to a tests.yml@v1 caller now that the reusable workflow supports `num-threads` (SciML/.github#43). Preserves the exact version x group matrix and JULIA_NUM_THREADS=2 (needed so the threaded regression tests for #570 actually exercise the multi-thread path) and coverage-directories src,ext. Co-Authored-By: Chris Rackauckas <[email protected]> Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
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.
Note
Please ignore until reviewed by @ChrisRackauckas. Draft.
Two backward-compatible additions to
tests.ymlso the last repos keeping bespoke test CI can move onto the reusable workflow:num-threadsinput → setsJULIA_NUM_THREADSon the runtest step (default"1"= unchanged). Unblocks RecursiveArrayTools.jl, whose bespokeTests.ymlruns with 2 threads to cover the threaded regression path (issue #570) —tests.ymlhad no way to express that.projectpassed tojulia-buildpkg+ an in-repo[sources]develop step, so the workflow can build+test alib/*sublibrary (project: lib/Foo). The develop step only runs for non-root projects on Julia < 1.11 (≥1.11 auto-resolves[sources]); skipped for every existing caller. Unblocks Corleone.jl#72 (CorleoneOED sublibrary) without reverting to bespoke CI.All defaults preserve current behavior for the ~130 existing consumers.
Follow-ups once on
v1: convert RecursiveArrayTools to atests.yml@v1caller (num-threads: 2), and rework Corleone#72 to a matrixed{group, project}caller.🤖 Generated with Claude Code