Skip to content

Resolve versions and tags in rb install through the binary index - #11

Merged
hsbt merged 2 commits into
masterfrom
binary-index-install
Aug 21, 2026
Merged

Resolve versions and tags in rb install through the binary index#11
hsbt merged 2 commits into
masterfrom
binary-index-install

Conversation

@hsbt

@hsbt hsbt commented Aug 20, 2026

Copy link
Copy Markdown
Member

rb install so far required a zip path or URL. cache.ruby-lang.org now publishes pub/ruby/binaries/index.json (ruby/actions#137), so a version or tag can resolve to a package directly:

rb install 4.0.5
rb install ruby-dev

Resolution goes through each build's tags, filtered to x64-mswin64_140. The newest match wins by version, reissue revision and commit date regardless of feed order, matching the revision-aware Resolve for installed rubies from #8. The download is verified against the recorded sha256, an unsigned build installs with a warning, and a schema other than 1 asks to upgrade rb. Pagination through next is implemented. RBMANAGER_INDEX_URL redirects the feed for tests, which run against a local file and a loopback zip server.

Verified end to end against the live index (rb install 4.1-dev, then ruby -v).

🤖 Generated with Claude Code

hsbt and others added 2 commits August 21, 2026 08:29
cache.ruby-lang.org now publishes pub/ruby/binaries/index.json, so
`rb install 4.0.5` or `rb install ruby-dev` can resolve a package
without a zip path. The newest matching x64-mswin64_140 build wins by
version, reissue revision and commit date regardless of feed order,
the download is verified against the recorded sha256, and an unsigned
build installs with a warning.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Unit coverage for the page parsing and order-independent selection,
Integration coverage for the full install with the feed redirected to
a local file via RBMANAGER_INDEX_URL and the zip served from loopback,
and a Network-gated check that the published index still parses and
resolves. Cases 99-117 in docs/test-plan.md.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@hsbt
hsbt merged commit 491c3e2 into master Aug 21, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant