Skip to content

Keep Julia available across Linux CI steps#181

Merged
ChrisRackauckas merged 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:agent/fix-linux-julia-ci
Jul 20, 2026
Merged

Keep Julia available across Linux CI steps#181
ChrisRackauckas merged 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:agent/fix-linux-julia-ci

Conversation

@ChrisRackauckas-Claude

@ChrisRackauckas-Claude ChrisRackauckas-Claude commented Jul 15, 2026

Copy link
Copy Markdown
Member

Ignore this PR until it has been reviewed by @ChrisRackauckas.

Summary

Use julia-actions/setup-julia for the test matrix instead of installing Julia through JILL inside one shell step.

JILL installs the binary under ~/.local/bin and updates shell startup files, but the following GitHub Actions step does not inherit that PATH update. As a result, diffeqpy.install() cannot find Julia, attempts a second interactive JILL installation, and exits on EOF. setup-julia writes Julia to GitHub Actions' cross-step PATH.

The workflow pins Julia 1.10, which is within juliacall 0.9.35's supported range, and verifies availability in a separate step before tox.

Local verification

  • Reproduced the original hidden-PATH failure: diffeqpy.install() attempted interactive JILL and exited on EOF
  • Python 3.10 / tox 4 workflow-equivalent run: 5 tests passed; process exited successfully in 187.45 seconds
  • A separate clean integration run also completed successfully
  • Runic was run over the repository; it found unrelated pre-existing formatting differences in five deprecated Julia installer scripts, so those were left out of this focused workflow PR. The PR's Runic Suggestions check is green.

Python 3.13 is not installed on this host, so that matrix lane remains CI-only.

Please ignore this draft until it has been reviewed by @ChrisRackauckas.

Co-Authored-By: Chris Rackauckas <[email protected]>

Copy link
Copy Markdown
Member Author

Audit scratchpad for commit fdf35a076c0589aa330fddc24cfeff54520e8871:

  • Reproduced the Ubuntu failure locally with Julia hidden from the next step: diffeqpy.install() attempted an interactive JILL install and raised EOF.
  • Replaced the transient JILL action with setup-julia 1.10 so Julia remains on PATH across workflow steps.
  • Workflow-equivalent Python 3.10 / tox 4 passed locally: 5 tests in 187.45 seconds.
  • A separate clean integration run passed locally.
  • Python 3.13 was unavailable locally.
  • All four PR test lanes (Ubuntu/macOS × Python 3.10/3.13) and Runic Suggestions are green.
  • Repository-wide Runic was run and reported unrelated pre-existing formatting in five deprecated installer scripts; those files are deliberately outside this workflow-only commit.

No test or assertion was changed.

Copy link
Copy Markdown
Member Author

Scheduled CI recheck at 07:01 EDT: all five checks remain green—Ubuntu and macOS on Python 3.10 and 3.13, plus Runic Suggestions. No new default-branch commit is ahead of the PR base.

@ChrisRackauckas
ChrisRackauckas marked this pull request as ready for review July 20, 2026 08:37
@ChrisRackauckas
ChrisRackauckas merged commit de25470 into SciML:master Jul 20, 2026
5 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