Skip to main content
Generalhashgraph-online

finding-latest-julia-version

Use when you need the latest stable JuliaLang version number (e.g., to fill `VERSION=` in an install script) instead of hard-coding a value

Stars
336
Source
hashgraph-online/awesome-codex-plugins
Updated
2026-05-27
Slug
hashgraph-online--awesome-codex-plugins--finding-latest-julia-version
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/hashgraph-online/awesome-codex-plugins/HEAD/plugins/AtelierArith/atelier-arith-julia-development-skills/skills/finding-latest-julia-version/SKILL.md -o .claude/skills/finding-latest-julia-version.md

Drops the SKILL.md into .claude/skills/finding-latest-julia-version.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

Finding the Latest Stable Julia Version

Hard-coding VERSION=1.x.y rots quickly. JuliaLang publishes machine-readable metadata; query it directly.

Preferred: official versions.json

This is the same source juliaup and the official installer use. Each release carries a stable: true|false flag plus per-platform tarball URLs and SHA-256 hashes — useful both for picking a version and for verifying the download.

curl -fsSL https://julialang-s3.julialang.org/bin/versions.json \
  | jq -r 'to_entries
           | map(select(.value.stable))
           | map(.key)
           | sort_by(split(".") | map(tonumber? // 0))
           | last'
# → 1.12.6   (example, as of writing)

If jq is unavailable, use Python:

curl -fsSL https://julialang-s3.julialang.org/bin/versions.json \
  | python3 -c 'import sys, json
d = json.load(sys.stdin)
stable = [v for v, m in d.items() if m.get("stable")]
stable.sort(key=lambda s: tuple(int(x) for x in s.split("-")[0].split(".")))
print(stable[-1])'

To list the latest patch within a specific minor series (e.g., the newest 1.11.x):

curl -fsSL https://julialang-s3.julialang.org/bin/versions.json \
  | jq -r 'to_entries
           | map(select(.value.stable and (.key | startswith("1.11."))))
           | map(.key)
           | sort_by(split(".") | map(tonumber? // 0))
           | last'

Fallback: GitHub Releases API

Use when the S3 endpoint is blocked but api.github.com is reachable. Note that GitHub's "latest" tag follows GitHub release marking, not the JuliaLang stable flag, so prefer versions.json when both work.

curl -fsSL https://api.github.com/repos/JuliaLang/julia/releases/latest \
  | jq -r .tag_name | sed 's/^v//'
# → 1.12.6

Last resort: human page

Open https://julialang.org/downloads/ and read the "Current stable release" line. Only do this when no automated approach works; the page is HTML and shape-changes break scrapers.

Notes

  • versions.json also gives you files[].url and files[].sha256 per platform — use these to script a verified download instead of constructing the URL by hand.
  • This skill returns a version string; the actual install steps live in [[installing-julia]].