bundler 1.16.1 → 1.16.2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of bundler might be problematic. Click here for more details.

Files changed (93) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +50 -0
  3. data/README.md +4 -0
  4. data/lib/bundler.rb +2 -2
  5. data/lib/bundler/build_metadata.rb +2 -2
  6. data/lib/bundler/cli.rb +2 -0
  7. data/lib/bundler/cli/check.rb +1 -1
  8. data/lib/bundler/cli/exec.rb +3 -4
  9. data/lib/bundler/cli/gem.rb +5 -2
  10. data/lib/bundler/cli/init.rb +5 -0
  11. data/lib/bundler/cli/install.rb +2 -2
  12. data/lib/bundler/cli/outdated.rb +1 -1
  13. data/lib/bundler/compact_index_client/updater.rb +10 -1
  14. data/lib/bundler/definition.rb +16 -11
  15. data/lib/bundler/fetcher.rb +2 -2
  16. data/lib/bundler/fetcher/index.rb +2 -2
  17. data/lib/bundler/friendly_errors.rb +2 -0
  18. data/lib/bundler/injector.rb +4 -4
  19. data/lib/bundler/installer.rb +12 -4
  20. data/lib/bundler/installer/gem_installer.rb +6 -1
  21. data/lib/bundler/plugin/index.rb +6 -1
  22. data/lib/bundler/resolver/spec_group.rb +0 -1
  23. data/lib/bundler/rubygems_integration.rb +9 -3
  24. data/lib/bundler/runtime.rb +1 -1
  25. data/lib/bundler/source/git.rb +2 -1
  26. data/lib/bundler/source/git/git_proxy.rb +6 -1
  27. data/lib/bundler/source/rubygems.rb +6 -1
  28. data/lib/bundler/spec_set.rb +4 -1
  29. data/lib/bundler/templates/Executable +1 -1
  30. data/lib/bundler/templates/newgem/newgem.gemspec.tt +4 -2
  31. data/lib/bundler/ui/shell.rb +3 -1
  32. data/lib/bundler/version.rb +1 -1
  33. data/man/bundle-add.1 +1 -1
  34. data/man/bundle-add.1.txt +1 -1
  35. data/man/bundle-binstubs.1 +4 -4
  36. data/man/bundle-binstubs.1.txt +4 -4
  37. data/man/bundle-binstubs.ronn +3 -3
  38. data/man/bundle-check.1 +4 -4
  39. data/man/bundle-check.1.txt +6 -5
  40. data/man/bundle-check.ronn +3 -3
  41. data/man/bundle-config.1 +23 -6
  42. data/man/bundle-config.1.txt +25 -15
  43. data/man/bundle-config.ronn +13 -9
  44. data/man/bundle-doctor.1 +44 -0
  45. data/man/bundle-doctor.1.txt +44 -0
  46. data/man/bundle-doctor.ronn +33 -0
  47. data/man/bundle-exec.1 +4 -4
  48. data/man/bundle-exec.1.txt +9 -9
  49. data/man/bundle-exec.ronn +3 -3
  50. data/man/bundle-gem.1 +2 -2
  51. data/man/bundle-gem.1.txt +2 -2
  52. data/man/bundle-gem.ronn +1 -1
  53. data/man/bundle-info.1 +1 -1
  54. data/man/bundle-info.1.txt +1 -1
  55. data/man/bundle-init.1 +9 -4
  56. data/man/bundle-init.1.txt +16 -6
  57. data/man/bundle-init.ronn +15 -4
  58. data/man/bundle-inject.1 +4 -4
  59. data/man/bundle-inject.1.txt +5 -5
  60. data/man/bundle-inject.ronn +3 -3
  61. data/man/bundle-install.1 +2 -2
  62. data/man/bundle-install.1.txt +2 -2
  63. data/man/bundle-install.ronn +1 -1
  64. data/man/bundle-list.1 +1 -1
  65. data/man/bundle-list.1.txt +1 -1
  66. data/man/bundle-lock.1 +2 -2
  67. data/man/bundle-lock.1.txt +2 -2
  68. data/man/bundle-lock.ronn +1 -1
  69. data/man/bundle-outdated.1 +2 -2
  70. data/man/bundle-outdated.1.txt +2 -2
  71. data/man/bundle-outdated.ronn +1 -1
  72. data/man/bundle-package.1 +3 -3
  73. data/man/bundle-package.1.txt +6 -6
  74. data/man/bundle-package.ronn +3 -3
  75. data/man/bundle-pristine.1 +1 -1
  76. data/man/bundle-pristine.1.txt +1 -1
  77. data/man/bundle-show.1 +3 -3
  78. data/man/bundle-show.1.txt +4 -3
  79. data/man/bundle-show.ronn +2 -2
  80. data/man/bundle-update.1 +8 -8
  81. data/man/bundle-update.1.txt +42 -41
  82. data/man/bundle-update.ronn +8 -8
  83. data/man/bundle-viz.1 +2 -2
  84. data/man/bundle-viz.1.txt +3 -2
  85. data/man/bundle-viz.ronn +1 -1
  86. data/man/bundle.1 +26 -26
  87. data/man/bundle.1.txt +26 -26
  88. data/man/bundle.ronn +25 -25
  89. data/man/gemfile.5 +4 -4
  90. data/man/gemfile.5.ronn +3 -3
  91. data/man/gemfile.5.txt +6 -6
  92. data/man/index.txt +1 -0
  93. metadata +6 -3
@@ -44,7 +44,12 @@ module Bundler
44
44
  end
45
45
 
46
46
  def gem_install_message
47
- "Make sure that `gem install #{spec.name} -v '#{spec.version}'` succeeds before bundling."
47
+ remotes = spec.source.remotes
48
+ if remotes.size == 1
49
+ "Make sure that `gem install #{spec.name} -v '#{spec.version}' --source '#{remotes.first}'` succeeds before bundling."
50
+ else
51
+ "Make sure that `gem install #{spec.name} -v '#{spec.version}'` succeeds before bundling."
52
+ end
48
53
  end
49
54
 
50
55
  def spec_settings
@@ -29,7 +29,12 @@ module Bundler
29
29
  @hooks = {}
30
30
  @load_paths = {}
31
31
 
32
- load_index(global_index_file, true)
32
+ begin
33
+ load_index(global_index_file, true)
34
+ rescue GenericSystemCallError
35
+ # no need to fail when on a read-only FS, for example
36
+ nil
37
+ end
33
38
  load_index(local_index_file) if SharedHelpers.in_bundle?
34
39
  end
35
40
 
@@ -14,7 +14,6 @@ module Bundler
14
14
  @version = exemplary_spec.version
15
15
  @source = exemplary_spec.source
16
16
 
17
- @required_by = []
18
17
  @activated_platforms = []
19
18
  @dependencies = nil
20
19
  @specs = Hash.new do |specs, platform|
@@ -132,7 +132,11 @@ module Bundler
132
132
  end
133
133
 
134
134
  def inflate(obj)
135
- Gem.inflate(obj)
135
+ if defined?(Gem::Util)
136
+ Gem::Util.inflate(obj)
137
+ else
138
+ Gem.inflate(obj)
139
+ end
136
140
  end
137
141
 
138
142
  def sources=(val)
@@ -570,8 +574,10 @@ module Bundler
570
574
  @replaced_methods.each do |(sym, klass), method|
571
575
  redefine_method(klass, sym, method)
572
576
  end
573
- post_reset_hooks.reject! do |proc|
574
- proc.binding.eval("__FILE__") == __FILE__
577
+ if Binding.public_method_defined?(:source_location)
578
+ post_reset_hooks.reject! {|proc| proc.binding.source_location[0] == __FILE__ }
579
+ else
580
+ post_reset_hooks.reject! {|proc| proc.binding.eval("__FILE__") == __FILE__ }
575
581
  end
576
582
  @replaced_methods.clear
577
583
  end
@@ -10,7 +10,7 @@ module Bundler
10
10
  end
11
11
 
12
12
  def setup(*groups)
13
- @definition.ensure_equivalent_gemfile_and_lockfile if Bundler.frozen?
13
+ @definition.ensure_equivalent_gemfile_and_lockfile if Bundler.frozen_bundle?
14
14
 
15
15
  groups.map!(&:to_sym)
16
16
 
@@ -21,6 +21,7 @@ module Bundler
21
21
  %w[ref branch tag revision].each {|k| options[k] = options[k].to_s if options[k] }
22
22
 
23
23
  @uri = options["uri"] || ""
24
+ @safe_uri = URICredentialsFilter.credential_filtered_uri(@uri)
24
25
  @branch = options["branch"]
25
26
  @ref = options["ref"] || options["branch"] || options["tag"] || "master"
26
27
  @submodules = options["submodules"]
@@ -77,7 +78,7 @@ module Bundler
77
78
  nil
78
79
  end
79
80
 
80
- "#{uri} (at #{at}#{rev})"
81
+ "#{@safe_uri} (at #{at}#{rev})"
81
82
  end
82
83
 
83
84
  def name
@@ -131,7 +131,12 @@ module Bundler
131
131
  # method 2
132
132
  SharedHelpers.chdir(destination) do
133
133
  git_retry %(fetch --force --quiet --tags "#{path}")
134
- git "reset --hard #{@revision}"
134
+
135
+ begin
136
+ git "reset --hard #{@revision}"
137
+ rescue GitCommandError
138
+ raise MissingGitRevisionError.new(@revision, URICredentialsFilter.credential_filtered_uri(uri))
139
+ end
135
140
 
136
141
  if submodules
137
142
  git_retry "submodule update --init --recursive"
@@ -138,6 +138,8 @@ module Bundler
138
138
  bin_path = Bundler.system_bindir
139
139
  end
140
140
 
141
+ Bundler.mkdir_p bin_path unless spec.executables.empty? || Bundler.rubygems.provides?(">= 2.7.5")
142
+
141
143
  installed_spec = nil
142
144
  Bundler.rubygems.preserve_paths do
143
145
  installed_spec = Bundler::RubyGemsGemInstaller.at(
@@ -477,7 +479,10 @@ module Bundler
477
479
  else
478
480
  uri = spec.remote.uri
479
481
  Bundler.ui.confirm("Fetching #{version_message(spec)}")
480
- Bundler.rubygems.download_gem(spec, uri, download_path)
482
+ rubygems_local_path = Bundler.rubygems.download_gem(spec, uri, download_path)
483
+ if rubygems_local_path != local_path
484
+ FileUtils.mv(rubygems_local_path, local_path)
485
+ end
481
486
  cache_globally(spec, local_path)
482
487
  end
483
488
  end
@@ -37,7 +37,10 @@ module Bundler
37
37
  elsif check
38
38
  return false
39
39
  elsif raise_on_missing
40
- raise "Unable to find a spec satisfying #{dep} in the set. Perhaps the lockfile is corrupted?"
40
+ others = lookup[dep.name] if match_current_platform
41
+ message = "Unable to find a spec satisfying #{dep} in the set. Perhaps the lockfile is corrupted?"
42
+ message += " Found #{others.join(", ")} that did not match the current platform." if others && !others.empty?
43
+ raise GemNotFound, message
41
44
  end
42
45
  end
43
46
 
@@ -15,7 +15,7 @@ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../<%= relative_gemfile_path %>",
15
15
  bundle_binstub = File.expand_path("../bundle", __FILE__)
16
16
 
17
17
  if File.file?(bundle_binstub)
18
- if File.read(bundle_binstub, 150) =~ /This file was generated by Bundler/
18
+ if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
19
  load(bundle_binstub)
20
20
  else
21
21
  abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
@@ -28,8 +28,10 @@ Gem::Specification.new do |spec|
28
28
  "public gem pushes."
29
29
  end
30
30
 
31
- spec.files = `git ls-files -z`.split("\x0").reject do |f|
32
- f.match(%r{^(test|spec|features)/})
31
+ # Specify which files should be added to the gem when it is released.
32
+ # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
33
+ spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
34
+ `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
33
35
  end
34
36
  spec.bindir = "exe"
35
37
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
@@ -109,7 +109,9 @@ module Bundler
109
109
  end
110
110
 
111
111
  def tell_err(message, color = nil, newline = nil)
112
- newline = message.to_s !~ /( |\t)\Z/ unless newline
112
+ return if @shell.send(:stderr).closed?
113
+
114
+ newline ||= message.to_s !~ /( |\t)\Z/
113
115
  message = word_wrap(message) if newline.is_a?(Hash) && newline[:wrap]
114
116
 
115
117
  color = nil if color && !$stderr.tty?
@@ -7,7 +7,7 @@ module Bundler
7
7
  # We're doing this because we might write tests that deal
8
8
  # with other versions of bundler and we are unsure how to
9
9
  # handle this better.
10
- VERSION = "1.16.1" unless defined?(::Bundler::VERSION)
10
+ VERSION = "1.16.2" unless defined?(::Bundler::VERSION)
11
11
 
12
12
  def self.overwrite_loaded_gem_version
13
13
  begin
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-ADD" "1" "June 2017" "" ""
4
+ .TH "BUNDLE\-ADD" "1" "January 2018" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-add\fR \- Add gem to the Gemfile and run bundle install
@@ -37,4 +37,4 @@ OPTIONS
37
37
 
38
38
 
39
39
 
40
- June 2017 BUNDLE-ADD(1)
40
+ January 2018 BUNDLE-ADD(1)
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-BINSTUBS" "1" "October 2017" "" ""
4
+ .TH "BUNDLE\-BINSTUBS" "1" "February 2018" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-binstubs\fR \- Install the binstubs of the listed gems
@@ -10,7 +10,7 @@
10
10
  \fBbundle binstubs\fR \fIGEM_NAME\fR [\-\-force] [\-\-path PATH] [\-\-standalone]
11
11
  .
12
12
  .SH "DESCRIPTION"
13
- Binstubs are scripts that wrap aroung executables\. Bundler creates a small Ruby file (a binstub) that loads Bundler, runs the command, and puts it into \fBbin/\fR\. Binstubs are a shortcut\-or alternative\- to always using \fBbundle exec\fR\. This gives you a file that can by run directly, and one that will always run the correct gem version used by the application\.
13
+ Binstubs are scripts that wrap around executables\. Bundler creates a small Ruby file (a binstub) that loads Bundler, runs the command, and puts it into \fBbin/\fR\. Binstubs are a shortcut\-or alternative\- to always using \fBbundle exec\fR\. This gives you a file that can by run directly, and one that will always run the correct gem version used by the application\.
14
14
  .
15
15
  .P
16
16
  For example, if you run \fBbundle binstubs rspec\-core\fR, Bundler will create the file \fBbin/rspec\fR\. That file will contain enough code to load Bundler, tell it to load the bundled gems, and then run rspec\.
@@ -33,8 +33,8 @@ The location to install the specified binstubs to\. This defaults to \fBbin\fR\.
33
33
  Makes binstubs that can work without depending on Rubygems or Bundler at runtime\.
34
34
  .
35
35
  .TP
36
- \fB\-\-sheband\fR
36
+ \fB\-\-shebang\fR
37
37
  Specify a different shebang executable name than the default (default \'ruby\')
38
38
  .
39
39
  .SH "BUNDLE INSTALL \-\-BINSTUBS"
40
- To create binstubs for all the gems in the bundle you can use the \fB\-\-binstubs\fR flag in [bundle install(1)][bundle\-install]\.
40
+ To create binstubs for all the gems in the bundle you can use the \fB\-\-binstubs\fR flag in [bundle install(1)][bundle\-install(1)]\.
@@ -9,7 +9,7 @@ SYNOPSIS
9
9
  bundle binstubs GEM_NAME [--force] [--path PATH] [--standalone]
10
10
 
11
11
  DESCRIPTION
12
- Binstubs are scripts that wrap aroung executables. Bundler creates a
12
+ Binstubs are scripts that wrap around executables. Bundler creates a
13
13
  small Ruby file (a binstub) that loads Bundler, runs the command, and
14
14
  puts it into bin/. Binstubs are a shortcut-or alternative- to always
15
15
  using bundle exec. This gives you a file that can by run directly, and
@@ -35,14 +35,14 @@ OPTIONS
35
35
  Makes binstubs that can work without depending on Rubygems or
36
36
  Bundler at runtime.
37
37
 
38
- --sheband
38
+ --shebang
39
39
  Specify a different shebang executable name than the default
40
40
  (default 'ruby')
41
41
 
42
42
  BUNDLE INSTALL --BINSTUBS
43
43
  To create binstubs for all the gems in the bundle you can use the
44
- --binstubs flag in [bundle install(1)][bundle-install].
44
+ --binstubs flag in [bundle install(1)][bundle-install(1)].
45
45
 
46
46
 
47
47
 
48
- October 2017 BUNDLE-BINSTUBS(1)
48
+ February 2018 BUNDLE-BINSTUBS(1)
@@ -7,7 +7,7 @@ bundle-binstubs(1) -- Install the binstubs of the listed gems
7
7
 
8
8
  ## DESCRIPTION
9
9
 
10
- Binstubs are scripts that wrap aroung executables. Bundler creates a
10
+ Binstubs are scripts that wrap around executables. Bundler creates a
11
11
  small Ruby file (a binstub) that loads Bundler, runs the command,
12
12
  and puts it into `bin/`. Binstubs are a shortcut-or alternative-
13
13
  to always using `bundle exec`. This gives you a file that can by run
@@ -34,10 +34,10 @@ Calling binstubs with [GEM [GEM]] will create binstubs for all given gems.
34
34
  Makes binstubs that can work without depending on Rubygems or Bundler at
35
35
  runtime.
36
36
 
37
- * `--sheband`:
37
+ * `--shebang`:
38
38
  Specify a different shebang executable name than the default (default 'ruby')
39
39
 
40
40
  ## BUNDLE INSTALL --BINSTUBS
41
41
 
42
42
  To create binstubs for all the gems in the bundle you can use the `--binstubs`
43
- flag in [bundle install(1)][bundle-install].
43
+ flag in [bundle install(1)][bundle-install(1)].
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-CHECK" "1" "February 2017" "" ""
4
+ .TH "BUNDLE\-CHECK" "1" "February 2018" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-check\fR \- Verifies if dependencies are satisfied by installed gems
@@ -19,13 +19,13 @@ If not, the first missing gem is listed and Bundler exits status 1\.
19
19
  .
20
20
  .TP
21
21
  \fB\-\-dry\-run\fR
22
- Locks the \fBGemfile(5)\fR before running the command\.
22
+ Locks the [\fBGemfile(5)\fR][Gemfile(5)] before running the command\.
23
23
  .
24
24
  .TP
25
25
  \fB\-\-gemfile\fR
26
- Use the specified gemfile instead of the \fBGemfile(5)\fR
26
+ Use the specified gemfile instead of the [\fBGemfile(5)\fR][Gemfile(5)]\.
27
27
  .
28
28
  .TP
29
29
  \fB\-\-path\fR
30
- Specify a different path than the system default ($BUNDLE_PATH or $GEM_HOME)\. Bundler will remember this value for future installs on this machine\.
30
+ Specify a different path than the system default (\fB$BUNDLE_PATH\fR or \fB$GEM_HOME\fR)\. Bundler will remember this value for future installs on this machine\.
31
31
 
@@ -17,16 +17,17 @@ DESCRIPTION
17
17
 
18
18
  OPTIONS
19
19
  --dry-run
20
- Locks the Gemfile(5) before running the command.
20
+ Locks the [Gemfile(5)][Gemfile(5)] before running the command.
21
21
 
22
22
  --gemfile
23
- Use the specified gemfile instead of the Gemfile(5)
23
+ Use the specified gemfile instead of the [Gemfile(5)][Gem-
24
+ file(5)].
24
25
 
25
- --path Specify a different path than the system default ($BUNDLE_PATH
26
- or $GEM_HOME). Bundler will remember this value for future
26
+ --path Specify a different path than the system default ($BUNDLE_PATH
27
+ or $GEM_HOME). Bundler will remember this value for future
27
28
  installs on this machine.
28
29
 
29
30
 
30
31
 
31
32
 
32
- February 2017 BUNDLE-CHECK(1)
33
+ February 2018 BUNDLE-CHECK(1)
@@ -18,9 +18,9 @@ If not, the first missing gem is listed and Bundler exits status 1.
18
18
  ## OPTIONS
19
19
 
20
20
  * `--dry-run`:
21
- Locks the `Gemfile(5)` before running the command.
21
+ Locks the [`Gemfile(5)`][Gemfile(5)] before running the command.
22
22
  * `--gemfile`:
23
- Use the specified gemfile instead of the `Gemfile(5)`
23
+ Use the specified gemfile instead of the [`Gemfile(5)`][Gemfile(5)].
24
24
  * `--path`:
25
- Specify a different path than the system default ($BUNDLE_PATH or $GEM_HOME).
25
+ Specify a different path than the system default (`$BUNDLE_PATH` or `$GEM_HOME`).
26
26
  Bundler will remember this value for future installs on this machine.
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-CONFIG" "1" "December 2017" "" ""
4
+ .TH "BUNDLE\-CONFIG" "1" "May 2018" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-config\fR \- Set bundler configuration options
@@ -10,7 +10,24 @@
10
10
  \fBbundle config\fR [\fIname\fR [\fIvalue\fR]]
11
11
  .
12
12
  .SH "DESCRIPTION"
13
- This command allows you to interact with bundler\'s configuration system\. Bundler retrieves its configuration from the local application (\fBapp/\.bundle/config\fR), environment variables, and the user\'s home directory (\fB~/\.bundle/config\fR), in that order of priority\.
13
+ This command allows you to interact with Bundler\'s configuration system\.
14
+ .
15
+ .P
16
+ Bundler loads configuration settings in this order:
17
+ .
18
+ .IP "1." 4
19
+ Local config (\fBapp/\.bundle/config\fR)
20
+ .
21
+ .IP "2." 4
22
+ Environmental variables (\fBENV\fR)
23
+ .
24
+ .IP "3." 4
25
+ Global config (\fB~/\.bundle/config\fR)
26
+ .
27
+ .IP "4." 4
28
+ Bundler default config
29
+ .
30
+ .IP "" 0
14
31
  .
15
32
  .P
16
33
  Executing \fBbundle config\fR with no parameters will print a list of all bundler configuration for the current bundle, and where that configuration was set\.
@@ -63,7 +80,7 @@ A space\-separated list of groups referencing gems to skip during installation\.
63
80
  A space\-separated list of groups referencing gems to include during installation\.
64
81
  .
65
82
  .SH "BUILD OPTIONS"
66
- You can use \fBbundle config\fR to give bundler the flags to pass to the gem installer every time bundler tries to install a particular gem\.
83
+ You can use \fBbundle config\fR to give Bundler the flags to pass to the gem installer every time bundler tries to install a particular gem\.
67
84
  .
68
85
  .P
69
86
  A very common example, the \fBmysql\fR gem, requires Snow Leopard users to pass configuration flags to \fBgem install\fR to specify where to find the \fBmysql_config\fR executable\.
@@ -98,7 +115,7 @@ After running this command, every time bundler needs to install the \fBmysql\fR
98
115
  Configuration keys in bundler have two forms: the canonical form and the environment variable form\.
99
116
  .
100
117
  .P
101
- For instance, passing the \fB\-\-without\fR flag to [bundle install(1)][bundle\-install] prevents Bundler from installing certain groups specified in the Gemfile(5)\. Bundler persists this value in \fBapp/\.bundle/config\fR so that calls to \fBBundler\.setup\fR do not try to find gems from the \fBGemfile\fR that you didn\'t install\. Additionally, subsequent calls to [bundle install(1)][bundle\-install] remember this setting and skip those groups\.
118
+ For instance, passing the \fB\-\-without\fR flag to [bundle install(1)][bundle\-install(1)] prevents Bundler from installing certain groups specified in the Gemfile(5)\. Bundler persists this value in \fBapp/\.bundle/config\fR so that calls to \fBBundler\.setup\fR do not try to find gems from the \fBGemfile\fR that you didn\'t install\. Additionally, subsequent calls to [bundle install(1)][bundle\-install(1)] remember this setting and skip those groups\.
102
119
  .
103
120
  .P
104
121
  The canonical form of this configuration is \fB"without"\fR\. To convert the canonical form to the environment variable form, capitalize it, and prepend \fBBUNDLE_\fR\. The environment variable form of \fB"without"\fR is \fBBUNDLE_WITHOUT\fR\.
@@ -107,7 +124,7 @@ The canonical form of this configuration is \fB"without"\fR\. To convert the can
107
124
  Any periods in the configuration keys must be replaced with two underscores when setting it via environment variables\. The configuration key \fBlocal\.rack\fR becomes the environment variable \fBBUNDLE_LOCAL__RACK\fR\.
108
125
  .
109
126
  .SH "LIST OF AVAILABLE KEYS"
110
- The following is a list of all configuration keys and their purpose\. You can learn more about their operation in [bundle install(1)][bundle\-install]\.
127
+ The following is a list of all configuration keys and their purpose\. You can learn more about their operation in [bundle install(1)][bundle\-install(1)]\.
111
128
  .
112
129
  .IP "\(bu" 4
113
130
  \fBallow_bundler_dependency_conflicts\fR (\fBBUNDLE_ALLOW_BUNDLER_DEPENDENCY_CONFLICTS\fR): Allow resolving to specifications that have dependencies on \fBbundler\fR that are incompatible with the running Bundler version\.
@@ -280,7 +297,7 @@ The following is a list of all configuration keys and their purpose\. You can le
280
297
  .IP "" 0
281
298
  .
282
299
  .P
283
- In general, you should set these settings per\-application by using the applicable flag to the [bundle install(1)][bundle\-install] or [bundle package(1)][bundle\-package] command\.
300
+ In general, you should set these settings per\-application by using the applicable flag to the [bundle install(1)][bundle\-install(1)] or [bundle package(1)][bundle\-package(1)] command\.
284
301
  .
285
302
  .P
286
303
  You can set them globally either via environment variables or \fBbundle config\fR, whichever is preferable for your setup\. If you use both, environment variables will take preference over global settings\.
@@ -9,10 +9,20 @@ SYNOPSIS
9
9
  bundle config [name [value]]
10
10
 
11
11
  DESCRIPTION
12
- This command allows you to interact with bundler's configuration sys-
13
- tem. Bundler retrieves its configuration from the local application
14
- (app/.bundle/config), environment variables, and the user's home direc-
15
- tory (~/.bundle/config), in that order of priority.
12
+ This command allows you to interact with Bundler's configuration sys-
13
+ tem.
14
+
15
+ Bundler loads configuration settings in this order:
16
+
17
+ 1. Local config (app/.bundle/config)
18
+
19
+ 2. Environmental variables (ENV)
20
+
21
+ 3. Global config (~/.bundle/config)
22
+
23
+ 4. Bundler default config
24
+
25
+
16
26
 
17
27
  Executing bundle config with no parameters will print a list of all
18
28
  bundler configuration for the current bundle, and where that configura-
@@ -81,7 +91,7 @@ REMEMBERING OPTIONS
81
91
  during installation.
82
92
 
83
93
  BUILD OPTIONS
84
- You can use bundle config to give bundler the flags to pass to the gem
94
+ You can use bundle config to give Bundler the flags to pass to the gem
85
95
  installer every time bundler tries to install a particular gem.
86
96
 
87
97
  A very common example, the mysql gem, requires Snow Leopard users to
@@ -111,12 +121,12 @@ CONFIGURATION KEYS
111
121
  the environment variable form.
112
122
 
113
123
  For instance, passing the --without flag to [bundle install(1)][bun-
114
- dle-install] prevents Bundler from installing certain groups specified
115
- in the Gemfile(5). Bundler persists this value in app/.bundle/config so
116
- that calls to Bundler.setup do not try to find gems from the Gemfile
117
- that you didn't install. Additionally, subsequent calls to [bundle
118
- install(1)][bundle-install] remember this setting and skip those
119
- groups.
124
+ dle-install(1)] prevents Bundler from installing certain groups speci-
125
+ fied in the Gemfile(5). Bundler persists this value in app/.bundle/con-
126
+ fig so that calls to Bundler.setup do not try to find gems from the
127
+ Gemfile that you didn't install. Additionally, subsequent calls to
128
+ [bundle install(1)][bundle-install(1)] remember this setting and skip
129
+ those groups.
120
130
 
121
131
  The canonical form of this configuration is "without". To convert the
122
132
  canonical form to the environment variable form, capitalize it, and
@@ -130,7 +140,7 @@ CONFIGURATION KEYS
130
140
  LIST OF AVAILABLE KEYS
131
141
  The following is a list of all configuration keys and their purpose.
132
142
  You can learn more about their operation in [bundle install(1)][bun-
133
- dle-install].
143
+ dle-install(1)].
134
144
 
135
145
  o allow_bundler_dependency_conflicts (BUNDLE_ALLOW_BUNDLER_DEPEN-
136
146
  DENCY_CONFLICTS): Allow resolving to specifications that have
@@ -342,8 +352,8 @@ LIST OF AVAILABLE KEYS
342
352
 
343
353
 
344
354
  In general, you should set these settings per-application by using the
345
- applicable flag to the [bundle install(1)][bundle-install] or [bundle
346
- package(1)][bundle-package] command.
355
+ applicable flag to the [bundle install(1)][bundle-install(1)] or [bun-
356
+ dle package(1)][bundle-package(1)] command.
347
357
 
348
358
  You can set them globally either via environment variables or bundle
349
359
  config, whichever is preferable for your setup. If you use both, envi-
@@ -488,4 +498,4 @@ CREDENTIALS FOR GEM SOURCES
488
498
 
489
499
 
490
500
 
491
- December 2017 BUNDLE-CONFIG(1)
501
+ May 2018 BUNDLE-CONFIG(1)