Skip to content

Commit de1b712

Browse files
Fix downgrade CI: run downgrade leg on Julia 1.11; revert misdiagnosed FunctionWrappers floor
The Downgrade (Core) job was Unsatisfiable on lts (Julia 1.10). Root cause: the resolver (julia-downgrade-compat -> Resolver.jl) minimizes Julia to the floor of its --julia range, and on lts that range (1.10) admits 1.10.0. But every Mooncake 0.5.x test extra requires julia >= 1.10.8, so Mooncake can never be placed -> Unsatisfiable. Even at julia 1.10.8 the Enzyme 0.13 + EnzymeCore 0.8 + Mooncake 0.5 minimum-version set has no solution on the 1.10 LTS stdlib line; it only resolves once Julia advances to 1.11.6 (Mooncake 0.5's 1.11 floor), where the newer stdlib set admits the whole floor set. Fix: pin the Downgrade caller to julia-version "1.11" (the resolver picks 1.11.6 and resolves cleanly). The core package's 1.10 support remains exercised by the regular Tests workflow. Also revert the earlier FunctionWrappers compat floor raise (1 -> 1.1.3) and the 1.9.1 -> 1.9.2 version bump: that change was based on a misreading (no test dep in the registry constrains FunctionWrappers, and the source only uses the FunctionWrapper{R,A} constructor available since 1.0.0). It did not fix the downgrade failure. Project.toml now matches main. Verified locally on Julia 1.11: the actual julia-downgrade-compat downgrade.jl resolves the merged test project and exits 0 ("Successfully resolved minimal versions"). On Julia 1.10 it still reports Unsatisfiable, confirming the diagnosis. Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com> Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent d071c14 commit de1b712

2 files changed

Lines changed: 11 additions & 3 deletions

File tree

.github/workflows/Downgrade.yml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,5 +28,13 @@ jobs:
2828
uses: "SciML/.github/.github/workflows/downgrade.yml@v1"
2929
with:
3030
group: "${{ matrix.group }}"
31-
julia-version: "lts"
31+
# The Mooncake/Enzyme test extras only resolve at their declared minimum
32+
# versions on Julia >= 1.11.6: every Mooncake 0.5.x requires julia >= 1.10.8,
33+
# and the Enzyme 0.13 + EnzymeCore 0.8 + Mooncake 0.5 floor set has no
34+
# minimum-version solution on the 1.10 LTS stdlib line. The downgrade
35+
# resolver minimizes julia to the floor of its --julia range, so on lts
36+
# (=1.10, which admits 1.10.0) it strands Mooncake -> Unsatisfiable. Pin the
37+
# downgrade leg to 1.11 (resolves to julia 1.11.6); the core package's 1.10
38+
# support is still exercised by the regular Tests workflow.
39+
julia-version: "1.11"
3240
secrets: "inherit"

Project.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "FunctionWrappersWrappers"
22
uuid = "77dc65aa-8811-40c2-897b-53d922fa7daf"
33
authors = ["Chris Elrod <elrodc@gmail.com> and contributors"]
4-
version = "1.9.2"
4+
version = "1.9.1"
55

66
[deps]
77
FunctionWrappers = "069b7b12-0de2-55c6-9aab-29f3d0a68a2e"
@@ -20,7 +20,7 @@ FunctionWrappersWrappersMooncakeExt = "Mooncake"
2020
[compat]
2121
Enzyme = "0.13"
2222
EnzymeCore = "0.8"
23-
FunctionWrappers = "1.1.3"
23+
FunctionWrappers = "1"
2424
Mooncake = "0.5"
2525
PrecompileTools = "1"
2626
SafeTestsets = "0.1, 1"

0 commit comments

Comments
 (0)