Skip to content

Commit 9b8e7e1

Browse files
Merge pull request SciML#3578 from ChrisRackauckas-Claude/fix-ci-script-julia-lts
CI: fix Julia 1.10 lts dev step (registry refresh + active project skip)
2 parents 606ae12 + 5348063 commit 9b8e7e1

3 files changed

Lines changed: 37 additions & 10 deletions

File tree

.github/workflows/CI.yml

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,21 @@ jobs:
9898
key: julia-cache;workflow=${{ github.workflow }};job=${{ github.job }};os=${{ runner.os }};group=${{ matrix.group }};version=${{ matrix.version }};run_id=${{ github.run_id }};run_attempt=${{ github.run_attempt }}
9999
restore-keys: |
100100
julia-cache;workflow=${{ github.workflow }};job=${{ github.job }};os=${{ runner.os }};group=${{ matrix.group }};version=${{ matrix.version }};
101+
- name: Refresh General registry directly from git
102+
shell: julia --color=yes --project=. {0}
103+
run: |
104+
using Pkg
105+
# Force a fresh git clone of General to dodge pkg server lag.
106+
# Must run BEFORE the Pkg.develop step below: that step's resolve
107+
# needs current versions of registered deps (e.g. SciMLBase v3,
108+
# CoverageTools), and the cached pkg-server registry is often
109+
# several days stale, so develop's resolve fails with "expected
110+
# package <X> to be registered".
111+
try
112+
Pkg.Registry.rm("General")
113+
catch
114+
end
115+
Pkg.Registry.add(Pkg.RegistrySpec(url = "https://github.com/JuliaRegistries/General.git"))
101116
- name: Develop local path deps (Julia < 1.11)
102117
shell: julia --color=yes --project=. {0}
103118
run: |
@@ -119,16 +134,6 @@ jobs:
119134
isempty(specs) || Pkg.develop(specs)
120135
end
121136
end
122-
- name: Refresh General registry directly from git
123-
shell: julia --color=yes --project=. {0}
124-
run: |
125-
using Pkg
126-
# Force a fresh git clone of General to dodge pkg server lag.
127-
try
128-
Pkg.Registry.rm("General")
129-
catch
130-
end
131-
Pkg.Registry.add(Pkg.RegistrySpec(url = "https://github.com/JuliaRegistries/General.git"))
132137
- uses: julia-actions/julia-buildpkg@v1
133138
- uses: julia-actions/julia-runtest@v1
134139
with:

.github/workflows/SublibraryCI.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,21 @@ jobs:
8282
continue-on-error: true
8383
with:
8484
cache-compiled: 'false'
85+
- name: Refresh General registry directly from git
86+
shell: julia --color=yes --project=. {0}
87+
run: |
88+
using Pkg
89+
# Force a fresh git clone of General to dodge pkg server lag.
90+
# Must run BEFORE the Pkg.develop step below: that step's resolve
91+
# needs current versions of registered deps (e.g. SciMLBase v3),
92+
# and the cached pkg-server registry is often several days stale,
93+
# so develop's resolve fails with "expected package <X> to be
94+
# registered".
95+
try
96+
Pkg.Registry.rm("General")
97+
catch
98+
end
99+
Pkg.Registry.add(Pkg.RegistrySpec(url = "https://github.com/JuliaRegistries/General.git"))
85100
- name: Develop local path deps (Julia < 1.11)
86101
shell: julia --color=yes --project=. {0}
87102
run: |

test/runtests.jl

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,13 @@ end
6161
# a higher-level sublibrary like OrdinaryDiffEqDefault.
6262
if VERSION < v"1.11.0-DEV.0"
6363
developed = Set{String}()
64+
# Never develop the active project: when sublibraries cyclically
65+
# reference each other via [sources] (e.g. DiffEqDevTools points
66+
# back at OrdinaryDiffEqCore), the transitive walk below would
67+
# otherwise try to `Pkg.develop` the active project itself, which
68+
# Pkg refuses with "package <X> has the same name or UUID as the
69+
# active project".
70+
push!(developed, normpath(joinpath(lib_dir, base_group)))
6471
specs = Pkg.PackageSpec[]
6572
queue = [joinpath(lib_dir, base_group)]
6673
while !isempty(queue)

0 commit comments

Comments
 (0)