Skip to content

Summarize cooldown-skipped versions at the end of install, update, and lock - #9762

Merged
hsbt merged 2 commits into
masterfrom
claude/feature-feasibility-usefulness-ca189e
Aug 5, 2026
Merged

Summarize cooldown-skipped versions at the end of install, update, and lock#9762
hsbt merged 2 commits into
masterfrom
claude/feature-feasibility-usefulness-ca189e

Conversation

@hsbt

@hsbt hsbt commented Aug 5, 2026

Copy link
Copy Markdown
Member

When cooldown silently resolves an older version, there is no way to tell why an environment with a different cooldown setting picked a newer one. A user reported puzzling over CI installing rbs 4.1.2 while their local machine, with a cooldown configured, kept getting the older release.

This collects the versions the resolver excluded and prints the newest skipped version per gem after bundle install, bundle update, and bundle lock finish. Only versions satisfying every requirement of the final resolution are reported, so the summary never claims a version the resolver could not have picked anyway.

$ bundle install --cooldown 7
...
Bundle complete! 1 Gemfile dependency, 1 gem now installed.
The following gem versions were skipped by the cooldown setting:
  * rbs 4.1.2 (available in 6 days), resolved 4.1.0 instead

No message is printed when nothing was skipped or when install uses an up-to-date lockfile.

hsbt and others added 2 commits August 5, 2026 13:06
…d lock

When cooldown silently resolves an older version, users comparing
environments with different cooldown settings can't tell why they got
different versions. Collect the versions the resolver excluded, and after a
successful resolution print the newest skipped version per gem once the
command finishes.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@hsbt
hsbt merged commit 8693f44 into master Aug 5, 2026
115 of 117 checks passed
@hsbt
hsbt deleted the claude/feature-feasibility-usefulness-ca189e branch August 5, 2026 07:54
hsbt added a commit that referenced this pull request Aug 5, 2026
Without a summary, a version the cooldown kept out is indistinguishable
from a version that does not exist, which reads as environments
resolving different versions for no visible reason. Match the Bundler
summary added in #9762: after a completed install or update, report per
gem the newest skipped version, when it will become available, and the
version resolved instead. The resolver accumulates skipped candidates
and reports only those newer than the resolved version and satisfying
the final requirements. gem update also reports skipped name tuples
newer than the version the update settled on. gem outdated already
annotates versions within the window, so it gets no summary.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant