Skip to content

[CI Broken] Dependency resolution failure in test (alldeps, 1.10) #186

Description

@ChrisRackauckas-Claude

CI Broken: Dependency Resolution Failure

Summary

The CI is currently broken on the master branch. The test (alldeps, 1.10) job is failing with an unsatisfiable dependency resolution error.

Which CI Job Failed

Other CI Jobs Status

All other CI jobs passed:

  • ✅ AllocCheck
  • ✅ Documentation / Build and Deploy Documentation
  • ✅ Spell Check with Typos
  • ✅ Tests (1) / Tests
  • ✅ Tests (lts) / Tests
  • ✅ Tests (pre) / Tests
  • ✅ runic

Error Details

The failure occurs during the dependency resolution phase after julia-downgrade-compat@v2 attempts to resolve minimal versions with --min=@alldeps mode.

Key Error Message:

ERROR: LoadError: Unsatisfiable requirements detected for package OrdinaryDiffEq [1dea7af3]:
 OrdinaryDiffEq [1dea7af3] log:
 ├─possible versions are: 4.0.0-6.105.0 or uninstalled
 ├─restricted to versions * by project [a0499a33], leaving only versions: 4.0.0-6.105.0
 ├─restricted by compatibility requirements with RecursiveArrayTools [731186ca] to versions: 6.62.0-6.99.0 or uninstalled, leaving only versions: 6.62.0-6.99.0
 │ └─RecursiveArrayTools [731186ca] log:
 │   ├─possible versions are: 0.16.0-3.42.1 or uninstalled
 │   ├─restricted to versions 3.1.0-3 by project [a0499a33], leaving only versions: 3.1.0-3.42.1
 │   └─restricted to versions 3.1.0 by an explicit requirement, leaving only versions: 3.1.0
 └─restricted by compatibility requirements with DataStructures [864edb3b] to versions: 4.0.0-5.42.3 or uninstalled — no versions left
   └─DataStructures [864edb3b] log:
     ├─possible versions are: 0.9.0-0.19.3 or uninstalled
     └─restricted to versions 0.17.20 by an explicit requirement, leaving only versions: 0.17.20

Root Cause Analysis

The issue is a dependency compatibility conflict in the "alldeps" (all dependencies at minimum versions) test configuration:

  1. The downgrade-compat action is forcing RecursiveArrayTools to version 3.1.0 (minimum version)
  2. The downgrade-compat action is also forcing DataStructures to version 0.17.20 (minimum version)
  3. When trying to resolve OrdinaryDiffEq:
    • RecursiveArrayTools@3.1.0 requires OrdinaryDiffEq versions 6.62.0-6.99.0
    • DataStructures@0.17.20 restricts OrdinaryDiffEq to versions 4.0.0-5.42.3
    • These ranges don't overlap → unsatisfiable

This is a compat bounds issue where the minimum versions specified in Project.toml are incompatible with each other.

Suggested Fix

This likely requires updating the [compat] section in Project.toml to ensure the minimum version bounds are mutually compatible. Specifically:

  1. Review the minimum version requirements for DataStructures, RecursiveArrayTools, and OrdinaryDiffEq in the [compat] section
  2. Test that the minimum versions can actually be resolved together
  3. Either:
    • Bump the minimum version of DataStructures to a version compatible with the current RecursiveArrayTools and OrdinaryDiffEq requirements, OR
    • Adjust the minimum versions of RecursiveArrayTools or OrdinaryDiffEq accordingly

The goal is to ensure that when all dependencies are downgraded to their minimum compat-specified versions (which is what the alldeps test does), they can still be resolved together.

Context

This issue was discovered during an automated CI health check (PR #185) that tests the master branch periodically to catch CI breakage proactively.

@ChrisRackauckas


Detected: 2026-01-07 via automated CI health check

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions