ruby / ruby/rubygems

Bundler compact index fails to find gem version that exists

Open
#9,319 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Bundler
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

  1. Create a Gemfile with:
  source "https://rubygems.org"
  gem "minitest-bonus-assertions", ">= 3.0"
  1. 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

  1. The gem exists and is not yanked:
  2. gem fetch works correctly:
  gem fetch minitest-bonus-assertions
  1. gem specification shows version 3.0:
  gem specification minitest-bonus-assertions -r | grep "version:"
  version: !ruby/object:Gem::Version
    version: '3.0'
  1. 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
  1. 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

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.