Skip to content
This repository has been archived by the owner on Apr 14, 2021. It is now read-only.

Inappropriate error message on running bundle add [gem] in case of duplication #6341

Closed
agrim123 opened this issue Mar 14, 2018 · 0 comments · Fixed by #6447
Closed

Inappropriate error message on running bundle add [gem] in case of duplication #6341

agrim123 opened this issue Mar 14, 2018 · 0 comments · Fixed by #6447

Comments

@agrim123
Copy link
Contributor

I observed bundle add rake throws an error if I have already specified gem before

[!] There was an error parsing `injected gems`: You cannot specify the same gem twice with different version requirements.
You specified: rake (~> 12.3) and rake (>= 0). Bundler cannot continue.

 #  from injected gems:1
 #  -------------------------------------------
 >  gem "rake", ">= 0"
 #  -------------------------------------------

I think an appropriate error would be to tell the user that gem is installed and can be updated by running bundle update rake.

@agrim123 agrim123 changed the title Inappropriate error message on running bundle add rake in case of duplication Inappropriate error message on running bundle add [gem] in case of duplication Mar 16, 2018
bundlerbot added a commit that referenced this issue Jul 3, 2018
Update error message on bundle add in case of duplication

### What was the end-user problem that led to this PR?

If the user tries to add a gem giving version requirement then bundler throws an error if the gem is already present.

### What was your diagnosis of the problem?

The error displayed is very descriptive but if the user is specifying a gem version maybe he wants to update the gem.

### What is your fix for the problem, implemented in this PR?

Added an instructive message to inform the user that gem can also be updated.

### Why did you choose this fix out of the possible options?

This seemed to be the best informative message.

Closes #6341
colby-swandale pushed a commit that referenced this issue Oct 5, 2018
Update error message on bundle add in case of duplication

If the user tries to add a gem giving version requirement then bundler throws an error if the gem is already present.

The error displayed is very descriptive but if the user is specifying a gem version maybe he wants to update the gem.

Added an instructive message to inform the user that gem can also be updated.

This seemed to be the best informative message.

Closes #6341

(cherry picked from commit 25b76e5)
colby-swandale pushed a commit that referenced this issue Oct 9, 2018
Update error message on bundle add in case of duplication

### What was the end-user problem that led to this PR?

If the user tries to add a gem giving version requirement then bundler throws an error if the gem is already present.

### What was your diagnosis of the problem?

The error displayed is very descriptive but if the user is specifying a gem version maybe he wants to update the gem.

### What is your fix for the problem, implemented in this PR?

Added an instructive message to inform the user that gem can also be updated.

### Why did you choose this fix out of the possible options?

This seemed to be the best informative message.

Closes #6341

(cherry picked from commit 25b76e5)
netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this issue Dec 17, 2018
pkgsr change
* Remove @Prefix@ from ALTERNATIVES file.

## 1.17.2 (2018-12-11)

 - Add compatability for bundler merge with Ruby 2.6

## 1.17.1 (2018-10-25)

 - Convert `Pathname`s to `String`s before sorting them, fixing #6760 and #6758 ([#6761](rubygems/bundler#6761), @alexggordon)

## 1.17.0 (2018-10-25)

No new changes.

## 1.17.0.pre.2 (2018-10-13)

Features:

  - Configure Bundler home, cache, config and plugin directories with `BUNDLE_USER_HOME`, `BUNDLE_USER_CACHE`, `BUNDLE_USER_CONFIG` and `BUNDLE_USER_PLUGIN` env vars ([#4333](rubygems/bundler#4333), @gwerbin)
  - Add `--all` option to `bundle binstubs` that will generate an executable file for all gems with commands in the bundle
  - Add `bundle remove` command to remove gems from the Gemfile via the CLI
  - Improve checking file permissions and asking for `sudo` in Bundler when it doesn't need to
  - Add error message to `bundle add` to check adding duplicate gems to the Gemfile
  - When asking for `sudo`, Bundler will show a list of folders/files that require elevated permissions to write to.

The following new features are available but are not enabled by default. These are intended to be tested by users for the upcoming release of Bundler 2.

  - Improve deprecation warning message for `bundle show` command
  - Improve deprecation warning message for the `--force` option in `bundle install`

## 1.17.0.pre.1 (2018-09-24)

Features:

  - Check folder/file permissions of the Bundle home directory in the `bundle doctor` command ([#5786](rubygems/bundler#5786), @ajwann)
  - Remove compiled gem extensions when running `bundle clean` ([#5596](rubygems/bundler#5596), @akhramov)
  - Add `--paths` option to `bundle list` command ([#6172](rubygems/bundler#6172), @colby-swandale)
  - Add base error class to gems generated from `bundle gem` ([#6260](rubygems/bundler#6260), @christhekeele)
  - Correctly re-install gem extensions with a git source when running `bundle pristine` ([#6294](rubygems/bundler#6294), @wagenet)
  - Add config option to disable platform warnings ([#6124](rubygems/bundler#6124), @agrim123)
  - Add `--skip-install` option to `bundle add` command to add gems to the Gemfile without installation ([#6511](rubygems/bundler#6511), @agrim123)
  - Add `--only-explicit` option to `bundle outdated` to list only outdated gems in the Gemfile ([#5366](rubygems/bundler#5366), @peret)
  - Support adding multiple gems to the Gemfile with `bundle add` ([#6543](rubygems/bundler#6543), @agrim123)
  - Make registered plugin events easier to manage in the Plugin API (@jules2689)
  - Add new gem install hooks to the Plugin API (@jules2689)
  - Add `--optimistic` and `--strict` options to `bundle add` ([#6553](https://github.com/bundler/bundler/issues/6553), @agrim123)
  - Add `--without-group` and `--only-group` options to `bundle list` ([#6564](rubygems/bundler#6564), @agrim123)
  - Add `--gemfile` option to the `bundle exec` command ([#5924](rubygems/bundler#5924), @ankitkataria)

The following new features are available but are not enabled by default. These are intended to be tested by users for the upcoming release of Bundler 2.

  - Make `install --path` relative to the current working directory ([#2048](rubygems/bundler#2048), @igorbozato)
  - Auto-configure job count ([#5808](rubygems/bundler#5808), @segiddins)
  - Use the Gem Version Promoter for major gem updates ([#5993](rubygems/bundler#5993), @segiddins)
  - Add config option to add the Ruby scope to `bundle config path` when configured globally (@segiddins)

## 1.16.6 (2018-10-05)

Changes:

  - Add an error message when adding a gem with `bundle add` that's already in the bundle ([#6341](rubygems/bundler#6341), @agrim123)
  - Add Homepage, Source Code and Chanagelog URI metadata fields to the `bundle gem` gemspec template (@walf443)

Bugfixes:

  - Fix issue where updating a gem resulted in the gem's version being downgraded when `BUNDLE_ONLY_UPDATE_TO_NEWER_VERSIONS` was set ([#6529](rubygems/bundler#6529), @theflow)
  - Fix some rescue calls that don't specifiy error type (@utilum)
  - Fix an issue when the Lockfile would contain platform-specific gems that it didn't need ([#6491](rubygems/bundler#6491), @segiddins)
  - Improve handlding of adding new gems with only a single group to the Gemfile in `bundle add` (@agrim123)
  - Refactor check for OpenSSL in `bundle env` (@voxik)
  - Remove an unnecessary assignment in Metadata (@voxik)

Documentation:

  - Update docs to reflect revised guidance to check in Gemfile.lock into version control for gems ([#5879](https://github.com/bundler/bundler/issues/5879), @arbonap)
  - Add documentation for the `--all` flag in `bundle update` (@agrim123)
  - Update README to use `bundle add` in usage examples (@hdf1986)
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant