Pin the Invalidations workflow to Julia 1.11 (SnoopCompile #465 crashes on 1.12) - #115
Closed
ChrisRackauckas-Claude wants to merge 1 commit into
Conversation
On Julia 1.12, invalidation trees can be rooted at a Core.Binding, and SnoopCompile's report_invalidations (SCPrettyTablesExt) crashes on those with 'FieldError: type Core.Binding has no field name' (JuliaDebug/SnoopCompile.jl#465, still open). The evaluate job has therefore been red on every run since setup-julia's version: '1' started resolving to 1.12.0 on 2025-10-08 — it crashes before producing any invalidation counts. Pin to 1.11, where the report completes (verified locally: the same snippet crashes on 1.12.6 and prints the table on 1.11.9); revert once a fixed SnoopCompile v3.x is tagged, since the action installs SnoopCompile fresh each run. Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com> Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UGVN6qeNL2jGCtaYg1386X
Member
|
Just remove the invalidations workflow |
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.
Mechanical CI fix, shipped alone: the
Invalidations.ymlevaluatejob has been red on every run since 2025-10-08 — not because invalidations regressed, but because the reporting tool crashes before producing any counts.Root cause (upstream, RF-independent)
setup-juliawithversion: '1'began resolving to Julia 1.12.0 on 2025-10-08 (release ~5 h before the first red run). On 1.12, invalidation trees can be rooted at aCore.Binding(binding partitions), and SnoopCompile'sreport_invalidations(ext/SCPrettyTablesExt.jl:34-39) still assumesMethod, crashing with:Upstream issue (open, exact match): JuliaDebug/SnoopCompile.jl#465. A standalone SnoopCompile-only reproducer (no RF imports) was reduced and verified on a clean env during the investigation; the trigger is any ≥1 Binding-rooted tree, which essentially any real package load produces on 1.12.
The fix
Pin the job's Julia to
'1.11'with a comment pointing at the upstream issue and the revert condition. Verified locally: the action's exact snippet on RF master crashes on Julia 1.12.6 and completes (162 invalidations, table printed) on 1.11.9.julia-actions/julia-invalidationshas no input to skip/soften the report step, so a version pin is the only workaround that keeps the job informative; the actionPkg.adds SnoopCompile fresh each run, so reverting to'1'after an upstream fix restores latest-stable coverage with no other change.Trade-off: the job measures 1.11 invalidations rather than latest-stable until upstream fixes #465 — versus today, where it measures nothing and every PR carries a spurious red check.
Not verified: the workflow run itself on CI (fires on this PR).
🤖 Generated with Claude Code