summaryrefslogtreecommitdiff
path: root/lib/bundler
AgeCommit message (Collapse)Author
3 days[rubygems/rubygems] Use spaces around optional parameter valuesDavid Rodríguez
https://github.com/rubygems/rubygems/commit/b58829a868
3 days[rubygems/rubygems] Enforce checksums strictly for registry gemsDavid Rodríguez
https://github.com/rubygems/rubygems/commit/05199ae0c1
3 days[rubygems/rubygems] Fix incorrect error message capitalizationDavid Rodríguez
https://github.com/rubygems/rubygems/commit/d41b8d303c
3 days[rubygems/rubygems] Improve `bundle plugin` documentationDavid Rodríguez
Make synopsis, subcommands, and CLI flags use a format consistent with the other docs, and also reword some sentences for clarify. https://github.com/rubygems/rubygems/commit/9272169ad0
3 days[rubygems/rubygems] Improve `doctor` CLI flag documentationDavid Rodríguez
Name default value placeholders in a more standard way. That's what our specs check, but they don't yet work for subcommand flags. https://github.com/rubygems/rubygems/commit/c589899cb8
3 days[rubygems/rubygems] Improve `bundle config` documentationDavid Rodríguez
For synopsis, subcommand and flag documentation like other commands do. https://github.com/rubygems/rubygems/commit/f528029756
3 days[rubygems/rubygems] Consistently use banner of desc when defining CLI flagsDavid Rodríguez
https://github.com/rubygems/rubygems/commit/2cbe7ea0a5
3 days[rubygems/rubygems] Fix `bundle show --verbose` and recommend it as an ↵David Rodríguez
alternative to `bundle show --outdated` https://github.com/rubygems/rubygems/commit/7cad1e4947
3 days[rubygems/rubygems] Fix `bundle update foo` not upgrading foo to latest in a ↵David Rodríguez
specific case If upgrading `foo` needs an indirect dependency to be downgraded, Bundler would not be able to upgrade foo. This is because when calculating the latest resolvable version of foo, Bundler was still adding lower bound requirements on the locked versions of all dependencies to avoid downgrades, effectively pinning foo to a version older than the latest. To fix this, instead of creating a second "unlocked" definition to figure out the latest resolvable version, create a second unlocked resolver, and DO NOT add lower bound requirements to it. https://github.com/rubygems/rubygems/commit/00cc0ecc69
3 days[rubygems/rubygems] Introduce `bundle list --format=json`Schneems
The `bundle list` command is a convenient way for human to know what gems and versions are available. By introducing a `--format=json` option, we can provide the same information to machines in a stable format that is robust to UI additions or modifications. It indirectly supports `Gemfile.lock` modifications by discouraging external tools from attempting to parse that format. This addition allows for the scripting of installation tools, such as buildpacks, that wish to branch logic based on gem versions. For example: ```ruby require "json" command = "bundle list --format=json" output = `#{command}` raise "Command `#{command}` errored: #{output}" unless $?.success? railties = JSON.parse(output).find {|gem| gem["name"] == railties } if railties && Gem::Version.new(railties["version"]) >= Gem::Version.new("7") puts "Using Rails greater than 7!" end ``` The top level is an object with a single key, "gems", this structure allows us to add other information in the future (should we desire) without having to change the json schema. https://github.com/rubygems/rubygems/commit/9e081b0689
3 days[rubygems/rubygems] Fix Bundler printing more flags than actually passed in ↵David Rodríguez
verbose mode This reverts commit https://github.com/rubygems/rubygems/commit/bea87eab0b17 and adds a regression spec for it. https://github.com/rubygems/rubygems/commit/ac98107864
3 days[rubygems/rubygems] Fix `bundle cache --no-all` not printing a deprecation ↵David Rodríguez
warning Like others, it's a remembered option which we are deprecating in favor of configuration. https://github.com/rubygems/rubygems/commit/9ea55e0df2
2025-07-30[rubygems/rubygems] Remove unnecessary endless loop detectionDavid Rodríguez
Fixes a TODO now that no reports have been reported in a while. https://github.com/rubygems/rubygems/commit/f10dc84e7b
2025-07-30[rubygems/rubygems] Bump vendored thor to 1.4.0David Rodríguez
https://github.com/rubygems/rubygems/commit/8078a747b3
2025-07-30[rubygems/rubygems] Fix truffleruby failing to install sorbet-static when ↵David Rodríguez
there's no lockfile The generic Ruby platform was getting unconditionally added in truffleruby, preventing resolution in situations where there's no generic ruby version (sorbet-static). Instead, the generic platform should be considered per dependency, not globally. https://github.com/rubygems/rubygems/commit/a96afc5351
2025-07-30[rubygems/rubygems] Remove JRuby workaroundDavid Rodríguez
Original issue was fixed in JRuby 9.3.0.0, which seems old enough for us to remove the workaround. https://github.com/rubygems/rubygems/commit/d285148d39
2025-07-30[rubygems/rubygems] Remove out of date TODODavid Rodríguez
After digging into git history a bit, I figure this was about unifying `bundle cache` and `bundle package`, which already happened a while ago. So remove this TODO since it's now misleading. https://github.com/rubygems/rubygems/commit/5a0b06b84d
2025-07-28(Temporarily?) delay path changes and global cache changesDavid Rodríguez
There are several issues with these which I'm not sure I'll have time to address properly. I prefer to keep our default branch in a releasable state just in case. Once they are fixed, this can be reverted.
2025-07-25[rubygems/rubygems] Document missing options from man pages:Edouard CHIN
- The `bundle plugin uninstall --all` was missing. - The `bundle plugin install --local-git` was missing due to being deprecated. We decided to reintroduce the doc for more clarity. https://github.com/rubygems/rubygems/commit/4da252945c
2025-07-25[rubygems/rubygems] Fix spacing in bundle gem newgem.gemspec.ttMartin Emde
The changelog line was generating indented more than it should. https://github.com/rubygems/rubygems/commit/da6109ef5b
2025-07-17Set development version to Bundler 2.8.0.dev and RubyGems 3.8.0.devDavid Rodríguez
Next version for both will be 4.0.0, however, extra work is necessary to get CI passing against the new major. So for now, I'm bumping just the minor version.
2025-07-17Cancel `--force` deprecation in favor of `--redownload`David Rodríguez
I realized `--redownload` is not a good name, because it does not necessarily redownloads gems. It only forces reinstallation even if gem is already installed. So I believe `--force` is actually a better name and the introduction of `--force` was a misunderstanding of what the `--force` flag did at the time. Let's cancel the deprecation of `--force`. For now the `--redownload` alias is left around until we decide what to do with it.
2025-07-17[rubygems/rubygems] Fix `bundle binstub --path=foo` not printing a ↵David Rodríguez
deprecation warning Like others, it's a remembered option which we are deprecating in favor of configuration. https://github.com/rubygems/rubygems/commit/801d5dd943
2025-07-17[rubygems/rubygems] Fix `bundle cache path=foo` not printing a deprecation ↵David Rodríguez
message https://github.com/rubygems/rubygems/commit/0af03eea5d
2025-07-17[rubygems/rubygems] Remove unnecessary `flag_deprecation` methodDavid Rodríguez
https://github.com/rubygems/rubygems/commit/d1f8e1c4ac
2025-07-17[rubygems/rubygems] Refactor remembered flag deprecation logicDavid Rodríguez
https://github.com/rubygems/rubygems/commit/88dd7d2d45
2025-07-09[rubygems/rubygems] Update gemspec based on provided github username when existsSweta Sanghavi
* Conditionally set changelog_url if gh username passed and enabled * conditionally set homepage, source code uri, homepage uri when gh username passed in * update documentation to say username will also be used for gemspec file https://github.com/rubygems/rubygems/commit/1c1ada593b
2025-07-09[rubygems/rubygems] Add blank line after every questionDavid Rodríguez
To try make output a bit less messy. https://github.com/rubygems/rubygems/commit/92c8bc6769
2025-07-09[rubygems/rubygems] Use shorter questions as prompts in `bundle gem`David Rodríguez
If we use long explanations as prompts, sometimes the prompt gets printed twice due to a (I think) reline/readline bug. https://github.com/rubygems/rubygems/commit/987e0dfa90
2025-07-09[rubygems/rubygems] Reword MIT explanation to make sense after reorderingDavid Rodríguez
Previous wording assumed explanation was displayed after the question, not before. https://github.com/rubygems/rubygems/commit/04eb3430ba
2025-07-07[rubygems/rubygems] Document that `global_gem_cache` also caches compiled ↵David Rodríguez
extensions https://github.com/rubygems/rubygems/commit/265f718be7
2025-07-07[rubygems/rubygems] Improve sentenceDavid Rodríguez
"locally to the installing Ruby installation" felt a bit confusing. https://github.com/rubygems/rubygems/commit/c950720719
2025-07-07[rubygems/rubygems] Stop allowing calling `#gem` on random objectsDavid Rodríguez
https://github.com/rubygems/rubygems/commit/4b8570ae15
2025-07-07[rubygems/rubygems] Add `default_cli_command` documentationDavid Rodríguez
I suspect most experienced users won't like the change in defaults, so document the setting to toggle back the current default. https://github.com/rubygems/rubygems/commit/93e2e2bef9
2025-07-07[rubygems/rubygems] Cancel `path_relative_to_cwd` changeDavid Rodríguez
It only affected the `--path` flag which is actually getting removed, so I don't think it makes sense to make such change. The current behavior is reasonable and I tried to codify it with a few more specs. https://github.com/rubygems/rubygems/commit/6f520eb146
2025-07-07[rubygems/rubygems] Remove `default_install_uses_path` settingDavid Rodríguez
The previous default can already be configured with `bundle config path.system true`. https://github.com/rubygems/rubygems/commit/cb483b79db
2025-07-07[rubygems/rubygems] Remove `auto_clean_without_path` settingDavid Rodríguez
There already different ways of toggling off this behavior, like setting `bundle config clean false`, or configuring Bundler to install to system gems with `bundle config path.system true`. https://github.com/rubygems/rubygems/commit/6daa09f60a
2025-07-03Sync RubyGemsDavid Rodríguez
2025-07-02[rubygems/rubygems] Add Errno::ENETDOWN and Errno::EHOSTUNREACH to non ↵David Rodríguez
retryable errors Connection errors as well, so useless to retry. https://github.com/rubygems/rubygems/commit/d2d211651a
2025-07-02[rubygems/rubygems] Split HTTP_ERRORS into retryable and non retryableDavid Rodríguez
https://github.com/rubygems/rubygems/commit/c241a640fc
2025-07-02[rubygems/rubygems] Handle connection refused and Errno::EADDRNOTAVAIL as ↵David Rodríguez
non-retryable https://github.com/rubygems/rubygems/commit/cd529776d5
2025-07-02[rubygems/rubygems] Move Bundler::Fetcher::HTTP_ERRORS to ↵David Rodríguez
Bundler::Fetcher::DOWNLOADER And deprecate the old constant. It's only used in this class, and in Bundler::Fetcher there's already FAIL_ERRORS, very similar to it. So this makes things less confusing. https://github.com/rubygems/rubygems/commit/d32ed63d6f
2025-07-02[rubygems/rubygems] Add back and deprecate Bundler::Fetcher::NET_ERRORSDavid Rodríguez
https://github.com/rubygems/rubygems/commit/4a4e5828db
2025-07-02[rubygems/rubygems] Add a `verbose` setting to enable verbose output for all ↵David Rodríguez
commands https://github.com/rubygems/rubygems/commit/0aa1be946f
2025-07-02[rubygems/rubygems] Consistently access CLI flags with symbolsDavid Rodríguez
https://github.com/rubygems/rubygems/commit/1497d3f146
2025-07-02[rubygems/rubygems] Fix `bundle console` printing bug report template on ↵Earlopain
`NameError` during require Followup to https://github.com/rubygems/rubygems/pull/8436 It fixed showing the template when requiring a non-existant file but user code can do much more than just trying to require other code. I encountered this particular case because of load order issues, where a library wasn't able to properly require itself when loaded before some other library. https://github.com/rubygems/rubygems/commit/1c910e5afe
2025-07-02[rubygems/rubygems] Update man pages for the `bundle doctor ssl` subcommand:Edouard CHIN
- ### Problem The man pages for `bundle doctor` which shows up when running `bundle doctor --help` are no longer in sync with the CLI. ### Context In #8624, we introduced a change that modifies the structure of the `bundle doctor` command. The change added a new subcommand as well a new flag option `bundle doctor --ssl` Bundler uses man pages to display help of Thor commands, those man pages are indepedent from Thor options and need to be kept in sync. ### Solution Updated the man page for `bundle doctor`. Now that this command is a subcommand composed of `bundle doctor diagnose` (the default) , and `bundle doctor ssl`, I modified the man page to follow the same markdown structure as other subcommands such as [bundle plugin](https://github.com/rubygems/rubygems/blob/a902381660f8d17b5c4a93226678c23e046f464f/bundler/lib/bundler/man/bundle-plugin.1.ronn) https://github.com/rubygems/rubygems/commit/de047f1458
2025-07-02[rubygems/rubygems] Log when `simulate_version` is enabledDavid Rodríguez
Tweak version output and verbose mode to be transparent about Bundler simulating a different version than the real one. https://github.com/rubygems/rubygems/commit/179354d153
2025-07-02[rubygems/rubygems] None of the global options have default so this seems ↵David Rodríguez
unnecessary https://github.com/rubygems/rubygems/commit/bea87eab0b
2025-07-02[rubygems/rubygems] Document the `simulate_version` settingDavid Rodríguez
https://github.com/rubygems/rubygems/commit/1ffd83f6c2