Skip to content

Raise Mooncake compat floor to 0.5.36 (fix Downgrade resolution)#994

Closed
ChrisRackauckas-Claude wants to merge 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:raise-mooncake-floor-0.5.36
Closed

Raise Mooncake compat floor to 0.5.36 (fix Downgrade resolution)#994
ChrisRackauckas-Claude wants to merge 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:raise-mooncake-floor-0.5.36

Conversation

@ChrisRackauckas-Claude

Copy link
Copy Markdown
Contributor

Summary

Narrows the Mooncake [compat] entries from "0.4, 0.5" to a single latest floor "0.5.36" in every Project.toml that declares Mooncake, so the Downgrade lane can no longer pin an ancient Mooncake (the "limit to latest Mooncake" fix for the promotion-caused Downgrade Unsatisfiable wall).

Raised floors

File Mooncake role Old floor New floor
lib/NonlinearSolveBase/Project.toml weakdep (NonlinearSolveBaseMooncakeExt) 0.4, 0.5 0.5.36
test/Adjoint/Project.toml direct test dep 0.4, 0.5 0.5.36

Bumped NonlinearSolveBase 2.31.32.31.4 (a [compat] narrowing on a weakdep is a patch-level change, not a public-API change). test/Adjoint has no version field (test env), so nothing to bump there. Root Project.toml declares no Mooncake.

Verification (downgrade min-resolution actually resolves)

Ran the actual julia-actions/julia-downgrade-compat downgrade.jl (current HEAD, with the merged-test-deps create_merged_project path) + StefanKarpinski/Resolver.jl (HEAD 9353ca5) on Julia 1.12.6, reproducing the CI downgrade lanes on the two Mooncake-carrying projects:

  • test/Adjoint (Mooncake in direct [deps]/[compat], non-merged --min=@deps path — the true Mooncake→Resolver path): Successfully resolved minimal versions, selecting Mooncake 0.5.36 (the new floor).
  • lib/NonlinearSolveBase (Mooncake weakdep-only, merged [extras]/targets.test path): Successfully resolved minimal versions. Mooncake is not in [extras]/targets.test, so it is never promoted into the merged [deps] fed to Resolver.jl.

resolves_at_min = true — the downgrade min-resolution succeeds after the bump.

Note: on the current Resolver.jl HEAD 9353ca5 + Julia 1.12, this repo's test/Adjoint graph resolves at min even with the old "0.4, 0.5" floor (resolving to Mooncake 0.5.1), so the earlier fleet-wide Resolver/Mooncake Unsatisfiable wall does not reproduce for this repo's dependency-graph shape here. The floor-raise still holds the min-resolution to the latest Mooncake and does no harm.


Please ignore until reviewed by @ChrisRackauckas.

Narrow the Mooncake [compat] entries from "0.4, 0.5" to a single latest
floor "0.5.36" in the two Project.toml files that declare Mooncake:

  - lib/NonlinearSolveBase/Project.toml (Mooncake weakdep for
    NonlinearSolveBaseMooncakeExt)
  - test/Adjoint/Project.toml (Mooncake direct test dep)

This stops the downgrade lane from pinning an ancient Mooncake. Bumped
NonlinearSolveBase 2.31.3 -> 2.31.4 (compat narrowing = patch-level).

Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
@ChrisRackauckas-Claude

Copy link
Copy Markdown
Contributor Author

Closing. Verified locally (ran the action's own downgrade.jl on the identical commit CI failed on) that raising the Mooncake compat floor does NOT fix the Downgrade lane. The failure is julia-downgrade-compat@v2 merged mode promoting all ~13 weakdep AD backends (Mooncake, Zygote, ForwardDiff, DifferentiationInterface, …) to hard deps and running Resolver.jl --min on the joint graph — which is registry-snapshot-dependent (flips UNSAT↔SAT as those packages release) and independent of Mooncake's version. This PR also unnecessarily narrows Mooncake compat. Real fix is julia-actions/julia-downgrade-compat#52 (do not promote weakdeps in merged resolution). Superseded — closing.

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