Skip to content

Commit c7b7fcb

Browse files
fix(ci): root-cause three workflow failures blocking Dependabot PRs (#6)
* fix(ci): three workflow root-causes blocking Dependabot PRs 1. ci.yml — Pkg.instantiate() failed with `expected package Cliodynamics [...] to be registered`. The project depends on hyperpolymath-internal packages (Cliodynamics, Causals, ZeroProb) that live in hyperpolymath/julia-ecosystem's General registry, not the public Julia General. Add a step that clones the meta-repo and copies registries/General into ~/.julia/registries/HyperpolymathGeneral before instantiate. (Pkg can't add a registry from a subdir directly, so we install it manually.) Also force-add upstream General as a fallback for cold caches. 2. codeql.yml — language matrix was `javascript-typescript` on a Julia-only repo; CodeQL exited with a configuration error every run. Switch to `actions` (matches the fix already shipped to JuliaKids.jl#7 and PRComms.jl#7 in this org). 3. hypatia-scan.yml — used `working-directory: ${{ env.HOME }}/hypatia` which evaluated to `/hypatia` (env.HOME is not a GHA context — only shell $HOME is). Replaced with the current canonical workflow from hyperpolymath/hypatia which uses `cd "$HOME/hypatia"` inside the run script and builds a fresh escript when needed. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(ci): use Pkg.Registry.add(path=…) to install hyperpolymath subdir registry Julia 1.11 ignores raw directory drops into ~/.julia/registries (it uses the compressed-registry format with <name>.toml + tarball). Switch to the documented Pkg.Registry.add(RegistrySpec(path=…)) approach. Init the subdir as its own git repo so Pkg treats it as a bare-clone source. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(ci): install hyperpolymath-internal Julia deps from git URLs The 'General' registry at hyperpolymath/julia-ecosystem/registries/General is just a mirror of upstream JuliaRegistries/General — it has the same name+UUID+repo URL and does NOT contain Cliodynamics, Causals, or ZeroProb. So pointing Pkg at it changes nothing; the path-based add we had collapsed into the existing General registry on dedup. Switch to direct Pkg.add(url=…) for each internal dep. The packages each have a Project.toml with the matching name+UUID, so Pkg resolves them cleanly without registry support. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(ci): batch internal-dep Pkg.add into single call Adding Cliodynamics/Causals/ZeroProb one-at-a-time failed: each Pkg.add re-resolves the whole project, and on call #1 the other two unregistered deps still cause check_registered to error out before the URL we just supplied is considered. Bundling all three PackageSpecs into one Pkg.add gives the resolver every git source up-front. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(ci): also Pkg.add AcceleratorGate.jl (transitive via Causals + ZeroProb) Causals and ZeroProb both list AcceleratorGate in their [deps]. AcceleratorGate isn't registered either, so without its URL the resolver aborts with 'Unsatisfiable requirements detected'. Note: this still depends on hyperpolymath/Causals.jl#4 landing first (removes 9 fictional hardware-accelerator weakdeps with placeholder UUIDs that no resolver can find). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(deps): declare StringDistances dependency src/parsers.jl line 12 does `using StringDistances` but the package was missing from Project.toml [deps]. Julia 1.11 precompile failed with: ArgumentError: Package InvestigativeJournalist does not have StringDistances in its dependencies StringDistances is a registered package (uuid 88034a9c-...). Add it to [deps] and constrain to compat = "0.11" (current major). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 5b18c36 commit c7b7fcb

3 files changed

Lines changed: 25 additions & 1 deletion

File tree

.github/workflows/ci.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,5 +35,27 @@ jobs:
3535

3636
- uses: julia-actions/cache@e33b4bfa0ea7cd9caedd7cb82b0e36956ef40285 # v2
3737

38+
- name: Install hyperpolymath-internal Julia deps from git
39+
# These hyperpolymath org-internal packages are NOT in any Julia
40+
# registry — the `registries/General` subdir of
41+
# hyperpolymath/julia-ecosystem is just a mirror of upstream
42+
# JuliaRegistries/General and doesn't contain them.
43+
#
44+
# The list is the transitive closure of internal deps from this
45+
# project's Project.toml: Cliodynamics, Causals, ZeroProb are
46+
# direct; AcceleratorGate is needed because Causals + ZeroProb
47+
# depend on it. Install all in a SINGLE Pkg.add call so the
48+
# resolver knows about all the git sources at once.
49+
run: |
50+
julia --project=. -e '
51+
using Pkg
52+
Pkg.add([
53+
Pkg.PackageSpec(url="https://github.com/hyperpolymath/Cliodynamics.jl"),
54+
Pkg.PackageSpec(url="https://github.com/hyperpolymath/Causals.jl"),
55+
Pkg.PackageSpec(url="https://github.com/hyperpolymath/ZeroProb.jl"),
56+
Pkg.PackageSpec(url="https://github.com/hyperpolymath/AcceleratorGate.jl"),
57+
])
58+
'
59+
3860
- name: Install, build, test
3961
run: julia --project=. -e 'using Pkg; Pkg.instantiate(); Pkg.build(); Pkg.test()'

.github/workflows/codeql.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ jobs:
2222
fail-fast: false
2323
matrix:
2424
include:
25-
- language: javascript-typescript
25+
- language: actions
2626
build-mode: none
2727

2828
steps:

Project.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ MetaGraphsNext = "fa8bd995-216d-47f1-8a91-f3b68fbeb377"
1919
Gumbo = "708ec375-b3d6-5a57-a7ce-8257bf98657a"
2020
Cascadia = "54eefc05-d75b-58de-a785-1a3403f0919f"
2121
DuckDB = "d2f5444f-75bc-4fdf-ac35-56f514c445e1"
22+
StringDistances = "88034a9c-02f8-509d-84a9-84ec65e18404"
2223
Cliodynamics = "8d2f3e70-4c6b-5e9c-a3d1-2f8e9c0b1d2e"
2324
Causals = "c4a8b6d2-f9e3-4c1a-b8d7-9f2e3c4d5e6f"
2425
ZeroProb = "f9e8c2e0-8b4a-4d5f-9a3c-1e2d3c4b5a6f"
@@ -40,6 +41,7 @@ MetaGraphsNext = "0.7"
4041
Gumbo = "0.8"
4142
Cascadia = "1"
4243
DuckDB = "1"
44+
StringDistances = "0.11"
4345
Cliodynamics = "1"
4446
Causals = "0.2"
4547
ZeroProb = "0.1"

0 commit comments

Comments
 (0)