Test and support Julia 1.12 and 1.13, drop 1.11 - #327
Merged
Merged
Conversation
CI matrix, compat, bin/install's version selector, bin/update_default_manifests and the install prose move to 1.12/1.13. Manifest-v1.13.toml.default resolved under 1.13.0 from the 1.12 default; the 1.11 default is gone. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
1-Bort-1
commented
Sep 16, 2026
1-Bort-1
left a comment
Contributor
Author
There was a problem hiding this comment.
Independent review (advisory)
Verdict: APPROVE WITH COMMENTS · 1 inline, 0 off the diff
Good
- Matches the card:
git diff --stat 23f129b HEADshows the same 10 files and +3149/−1478, with no changes the card leaves out - Only the
testjob in CI.yml names versions (checked the file on 23f129b); the threeinclude:entries correctly stay on 1.12 - Both manifests changed as small as claimed: the 1.12
.defaultmoves only the package's ownversion4.0.0→5.1.1, and the 1.13 one hasjulia_version = "1.13.0"and includes thetest/docs/examplesdeps (Aqua, Documenter, CairoMakie) - Removing the 1.11 sub-manifest copy branch is safe:
_sub_manifestis used nowhere else inbin/install, andMAIN_MANIFEST/MAIN_DEFAULTstill take their name from_julia_major .gitignorecoversManifest*.toml, so only the.defaultfiles are tracked, as §9 requires; the 1.11.defaultis deleted rather than kept around (§2)- Found-on-the-way items are recorded instead of fixed quietly (
juliaup default,juliaservertmux environment, the stale 1.11 docstring), and the macOS/Windows-on-1.12 risk is stated
Not good
CHANGELOG.md:7— "Requires Julia 1.12 or 1.13" is wrong: compat"1.12, 1.13"also allows 1.14 and later, and README/index.md say "1.12 or later". Users reading the changelog get a narrower range than the package actually accepts; "Requires Julia 1.12 or later" would match.julia = "1.12, 1.13": Julia compat is caret-style, so "1.12" already means [1.12, 2.0) and ", 1.13" adds nothing; harmless, but it reads as an upper limit it does not setdocs/src/functions.md:109still links the Julia package docs underpkgdocs.julialang.org/v1.11/; it is outside the files this PR opens, so it belongs in the follow-upcleanup:- The
CHANGELOG.md## Unreleasedheader will conflict with #325, as the card says; whichever PR merges second has to fold its entry under the other's header, not add a second header
claude, rubric CLEAN_CODE.md. A different lab from the implementer
on purpose: a reviewer sharing its blind spots would not flag its mistakes.
|
|
||
| ### Changed | ||
|
|
||
| - Requires Julia 1.12 or 1.13; 1.10 and 1.11 keep resolving v5.1.1. |
Contributor
Author
There was a problem hiding this comment.
MINOR: "Requires Julia 1.12 or 1.13" is wrong: compat "1.12, 1.13" also allows 1.14 and later, and README/index.md say "1.12 or later". Users reading the changelog get a narrower range than the package actually accepts; "Requires Julia 1.12 or later" would match.
Contributor
Author
|
Local full suite: PASS (7 min, Julia 1.12.7, one cell of the matrix) |
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
This was referenced Sep 16, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
TL;DR
CI now tests Julia 1.12 and 1.13,
[compat]saysjulia = "1.12, 1.13", and aManifest-v1.13.toml.defaultresolved under 1.13.0 takes the place of the 1.11 one. This is unitvsmof 1-Bart-1/Agentsplans/julia-1-13.md; before this, compat said"1.10, 1.11"while CI already tested 1.12.What this repo had, of the five steps
Matrix. Only the
testjob inCI.ymlnames minors: itsversionlist goes from 1.11/1.12 to 1.12/1.13. The threeinclude:entries (ubuntu coverage, windows, macOS) name 1.12, which stays, so they don't change. The thread mentions a second job naming minors, but there isn't one: thedocsjob usessetup-julia's default andsetup-test.ymlis on'1', so both stay as they are. The job carriesfail-fast: false; the plan puts that in its owncleanup:PR, not this one.Compat.
julia = "1.10, 1.11"→"1.12, 1.13". There is noSHAentry, so the 1.13SHA1.0 bump needed nothing.Manifests. Minimal resolve, not widened. Re-resolving the 1.12
.defaultunder 1.12.7 moved one line: the package's own recorded version, stale at 4.0.0, is now 5.1.1. The 1.13.defaultwas seeded from that and resolved under 1.13.0. Only stdlibs and their JLLs moved (SHA0.7→1.0,LinearAlgebra/Pkg/SparseArrays1.12→1.13,LibCURL,OpenBLAS_jll,SuiteSparse_jll, …, plusPCRE2_jlladded). No registry package changed. The 1.11.defaultis deleted. It is half the size of the new one because 1.11 has no[workspace], so it never held thetest/docs/examplesdeps.Scripts and prose.
bin/install's selector, its supported-version check, the Julia it installs when none is found and its manifest cleanup list all move to 1.12/1.13.bin/update_default_manifestsmoves the same way. The branch that copied the main manifest into each sub-project only ran on 1.11 (no workspaces there), so it is deleted instead of renamed.README.mdsaid "Julia 1.10 or later" anddocs/src/index.mdsaid "1.11 or later"; both now say 1.12.Found on the way
bin/installrunsjuliaup defaultwhen nojuliais on the PATH. §2 of the agent rules says the scripts never do that. I only changed the version it names; fixing the behaviour is a separatecleanup:.JULIAUP_CHANNEL=1.13 juliaserver launch ., but that still came up on 1.12.7 here.juliaserverstarts the session withtmux new-session, which takes its environment from the tmux server that is already running, not from the command that launched it. I restarted Julia inside this worktree's own pane asjulia +1.13instead. The plan's other units will hit the same thing. (juliaserveralso printsmd5: command not found/bc: command not foundon every call on this box.)test/airfoil_aero/test_live_polar.jl'srefresh_allocsdocstring explains a workaround with "on Julia 1.11@allocatedboxes aFloat64". 1.11 is no longer supported, but the test still passes on 1.13 as written, so I left it alone.CHANGELOG.mdgets the same## Unreleasedheader Deprecate ObjAdapter's copy of the mesh inertia integral; SymbolicAWEModels owns it #325 adds, so whichever merges second has a trivial conflict.Verification
./bin/install -y +1.13: exit 0. All projects instantiated on the first try, precompile OK, Makie extension loaded,settings/test_settings.jlsmoke test passed./bin/install -y +1.12: exit 0, same stepstestenv:Aqua.jl+solver/test_solver.jl+airfoil_aero/test_live_polar.jl, 137/137 passagent ci-local, Julia 1.12.7 cell): PASS in 10 min · GitHub CI: starts when the PR opensdocs/make.jl, Julia 1.12.7): clean, apart from the size warnings onprivate_functions.mdandfunctions.mdthatmainalready hasmain(23f129b) · no REUSE in this repoScope
+3149 / −1478 across 10 files. The manifests account for 3122 added and 1451 deleted. The rest is 2 lines in
CI.yml, 2 inProject.toml, 36 changed inbin/install(6 of them the deleted 1.11 branch), and one line each inbin/update_default_manifests,README.mdanddocs/src/index.md, plus the changelog entry.Closes #326 · task
VortexStepMethod.jl-326