From a470635ebece8c6f2c6c78e846c1fc10f7698d8e Mon Sep 17 00:00:00 2001 From: Seth Axen Date: Tue, 7 Jul 2026 12:40:31 +0200 Subject: [PATCH 1/4] ci: add Downgrade workflow Test against dependencies downgraded to their floor versions (mode: deps), on Julia lts, as its own workflow separate from CI. Co-Authored-By: Claude Sonnet 5 --- .github/workflows/Downgrade.yml | 37 +++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 .github/workflows/Downgrade.yml diff --git a/.github/workflows/Downgrade.yml b/.github/workflows/Downgrade.yml new file mode 100644 index 00000000..1447398b --- /dev/null +++ b/.github/workflows/Downgrade.yml @@ -0,0 +1,37 @@ +name: Downgrade +on: + push: + branches: + - main + pull_request: + workflow_dispatch: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }} +jobs: + test: + name: Downgrade / Julia ${{ matrix.version }} - ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + version: ['lts'] + os: [ubuntu-latest] + steps: + - uses: actions/checkout@v7 + - uses: julia-actions/setup-julia@v3 + with: + version: ${{ matrix.version }} + - uses: julia-actions/cache@v3 + - uses: julia-actions/julia-downgrade-compat@v2 + with: + mode: deps + - uses: julia-actions/julia-buildpkg@v1 + - uses: julia-actions/julia-runtest@v1 + with: + allow_reresolve: false + force_latest_compatible_version: false + - uses: julia-actions/julia-processcoverage@v1 + - uses: codecov/codecov-action@v7 + with: + files: lcov.info From d7636867a0f8ea8acefcdbdcf2300aa90ad8d7cb Mon Sep 17 00:00:00 2001 From: Seth Axen Date: Tue, 7 Jul 2026 14:00:57 +0200 Subject: [PATCH 2/4] fix: bump OrderedCollections floor to 1.3 OrderedCollections 1.1.0/1.2.0 (the resolved downgrade floor) don't infer concrete key/value types when constructing an OrderedDict from a generator, so LOCAL_EXAMPLE_DATA/REMOTE_EXAMPLE_DATA (and their merge in load_example_data()) come out as OrderedDict{Any,Any} instead of the documented OrderedDict{String,AbstractFileMetadata}. Fixed in 1.3.0, which infers types from the generator correctly. Reproduced locally with the package's exact types before and after the bump. Co-Authored-By: Claude Sonnet 5 --- Project.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index 6486fc75..a5f64044 100644 --- a/Project.toml +++ b/Project.toml @@ -18,7 +18,7 @@ DataDeps = "0.7" InferenceObjects = "0.3.10, 0.4" JSON3 = "1" NCDatasets = "0.12, 0.13, 0.14" -OrderedCollections = "1" +OrderedCollections = "1.3" StructTypes = "1" julia = "1.6" From eca87a15c6d917a8b48ab35a6b68fe61a23d48d6 Mon Sep 17 00:00:00 2001 From: Seth Axen Date: Tue, 7 Jul 2026 14:06:57 +0200 Subject: [PATCH 3/4] fix: bump DataDeps floor to 0.7.12 DataDeps 0.7.0-0.7.11 (the resolved downgrade floor) build their writable-path candidate list from Base.DEPOT_PATH and create the first candidate directory as a one-time side effect of top-level code run during precompilation. That side effect doesn't necessarily correspond to a real, writable directory in a differently-provisioned depot (as seen when CI restored cached compiled/dependency state), so every writable-path check failed with DataDeps.NoValidPathError. 0.7.12 moved this into __init__() (reruns every process start) and switched to a proper Scratch.jl-backed space. Verified locally that 0.7.12 resolves a valid save path. Co-Authored-By: Claude Sonnet 5 --- Project.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index a5f64044..ac6ea9ff 100644 --- a/Project.toml +++ b/Project.toml @@ -14,7 +14,7 @@ StructTypes = "856f2bd8-1eba-4b0a-8007-ebc267875bd4" [compat] Artifacts = "1" -DataDeps = "0.7" +DataDeps = "0.7.12" InferenceObjects = "0.3.10, 0.4" JSON3 = "1" NCDatasets = "0.12, 0.13, 0.14" From 3fed0e7a511c1a4655d516265da017fbcb28e638 Mon Sep 17 00:00:00 2001 From: Seth Axen Date: Tue, 7 Jul 2026 14:24:32 +0200 Subject: [PATCH 4/4] Bump version to 0.3.1 Patch release for the OrderedCollections and DataDeps compat floor fixes. Co-Authored-By: Claude Sonnet 5 --- Project.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index ac6ea9ff..e2bb72dc 100644 --- a/Project.toml +++ b/Project.toml @@ -1,7 +1,7 @@ name = "ArviZExampleData" uuid = "2f96bb34-afd9-46ae-bcd0-9b2d4372fe3c" authors = ["Seth Axen and contributors"] -version = "0.3.0" +version = "0.3.1" [deps] Artifacts = "56f22d72-fd6d-98f1-02f0-08ddc0907c33"