From 8e54f8a1f97c6a482a0fb6412b1f0b5559d2d40e Mon Sep 17 00:00:00 2001 From: kalidke Date: Sun, 6 Sep 2026 09:47:08 -0600 Subject: [PATCH] Declare the real Julia floor (1.10), bound Statistics, and test the floor in CI Completes the compat cleanup started in #15. The declared `julia = "1.6"` lower bound was never achievable: SMLMData 0.7 requires Julia >= 1.9, and the current releases of Optim 2.x, NearestNeighbors 0.4.26+, and StatsBase 0.34.5+ all require Julia >= 1.10. Julia 1.9 would only resolve against years-old dependency releases that have never been tested here, so the floor is set to 1.10 (the current LTS, and the version SMLMAnalysis pins and tests). Because no released 0.3.x ever installed below Julia 1.12, raising the floor drops no working configuration, so the version stays at the unregistered 0.3.4. Statistics gets an explicit `"1"` compat entry so a future breaking Statistics 2 cannot be picked up silently (it is an upgradable stdlib on Julia 1.11+). AutoMerge exempts stdlibs, so this is hygiene rather than a registration requirement. CI now runs the 1.10 floor alongside `1` and `nightly`, so the declared lower bound is an exercised claim rather than an aspiration. The untested floor is what let the LinearAlgebra pin survive four releases. Co-Authored-By: Claude Fable 5.1 --- .github/workflows/CI.yml | 1 + Project.toml | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 45374fe..9b13a51 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -10,6 +10,7 @@ jobs: fail-fast: false matrix: version: + - '1.10' - '1' - 'nightly' os: diff --git a/Project.toml b/Project.toml index 1a5e13a..d132b68 100644 --- a/Project.toml +++ b/Project.toml @@ -18,8 +18,9 @@ LinearAlgebra = "1" NearestNeighbors = "0.4" Optim = "1, 2" SMLMData = "0.7" +Statistics = "1" StatsBase = "0.33, 0.34" -julia = "1.6" +julia = "1.10" [extras] Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"