Bundler compact index fails to find gem version that exists
Nobody has claimed this yet.
- Dominant language
- Ruby
- Stars
- 4k
- Forks
- 1.9k
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 81
Description
Environment
Bundler version: 4.0.6 (also tested on 2.5.23, which has the same behavior)
RubyGems version: 4.0.6
Ruby version: 3.4.8 (2025-12-17 revision 995b59f666) +PRISM [arm64-darwin25]
Platform: arm64-darwin25 (macOS)
Summary
Bundler cannot find minitest-bonus-assertions version 3.0 when using the compact index, even though the version exists on RubyGems.org and is listed in the compact index. Using --full-index resolves the issue.
Steps to Reproduce
- Create a Gemfile with:
source "https://rubygems.org"
gem "minitest-bonus-assertions", ">= 3.0"
- Run
bundle update --all
Fetching gem metadata from https://rubygems.org/.........
Could not find gem 'minitest-bonus-assertions (>= 3.0)' in rubygems repository https://rubygems.org/, cached gems or
installed locally or in gems cached in vendor/cache.
The source contains the following gems matching 'minitest-bonus-assertions':
* minitest-bonus-assertions-1.0
* minitest-bonus-assertions-2.0
Diagnostic Information
- The gem exists and is not yanked:
- https://rubygems.org/gems/minitest-bonus-assertions shows version 3.0 (released April 26, 2017)
- gem fetch works correctly:
gem fetch minitest-bonus-assertions
- gem specification shows version 3.0:
gem specification minitest-bonus-assertions -r | grep "version:"
version: !ruby/object:Gem::Version
version: '3.0'
- The compact index contains all three versions:
curl -s "https://index.rubygems.org/versions" | grep "minitest-bonus-assertions"
minitest-bonus-assertions 1.0,2.0,3.0 2685d709a56e0930775f271d23305ed2
- Gem metadata:
- required_ruby_version: >= 2.0
- required_rubygems_version: >= 0
- specification_version: 4
- rubygems_version: 2.5.1 (version used to build the gem)
Workaround
Using --full-index resolves the issue:
bundle update --all --full-index
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the failure with the provided Gemfile using bundle update --all, then compare it with --full-index. Start by tracing Bundler's compact-index resolution for minitest-bonus-assertions and the versions endpoint; done means version 3.0 resolves through the compact index without requiring the workaround.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- ruby
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100