bundler 2.1.0 → 2.2.0.rc.1

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 (132) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +832 -738
  3. data/README.md +6 -8
  4. data/bundler.gemspec +3 -3
  5. data/exe/bundle +3 -0
  6. data/lib/bundler.rb +15 -4
  7. data/lib/bundler/build_metadata.rb +2 -2
  8. data/lib/bundler/cli.rb +32 -11
  9. data/lib/bundler/cli/console.rb +1 -1
  10. data/lib/bundler/cli/exec.rb +3 -12
  11. data/lib/bundler/cli/gem.rb +83 -10
  12. data/lib/bundler/cli/info.rb +13 -3
  13. data/lib/bundler/cli/init.rb +1 -1
  14. data/lib/bundler/cli/install.rb +8 -16
  15. data/lib/bundler/cli/issue.rb +2 -2
  16. data/lib/bundler/cli/list.rb +11 -9
  17. data/lib/bundler/cli/outdated.rb +88 -65
  18. data/lib/bundler/cli/plugin.rb +10 -0
  19. data/lib/bundler/cli/pristine.rb +5 -0
  20. data/lib/bundler/definition.rb +32 -32
  21. data/lib/bundler/dependency.rb +0 -9
  22. data/lib/bundler/dsl.rb +1 -5
  23. data/lib/bundler/environment_preserver.rb +26 -2
  24. data/lib/bundler/errors.rb +1 -0
  25. data/lib/bundler/feature_flag.rb +0 -2
  26. data/lib/bundler/fetcher.rb +1 -0
  27. data/lib/bundler/friendly_errors.rb +4 -10
  28. data/lib/bundler/gem_helper.rb +18 -12
  29. data/lib/bundler/gem_version_promoter.rb +1 -1
  30. data/lib/bundler/injector.rb +14 -3
  31. data/lib/bundler/inline.rb +2 -2
  32. data/lib/bundler/installer.rb +29 -28
  33. data/lib/bundler/installer/gem_installer.rb +2 -2
  34. data/lib/bundler/installer/parallel_installer.rb +9 -9
  35. data/lib/bundler/lazy_specification.rb +16 -3
  36. data/lib/bundler/plugin.rb +26 -0
  37. data/lib/bundler/plugin/index.rb +9 -0
  38. data/lib/bundler/psyched_yaml.rb +0 -15
  39. data/lib/bundler/remote_specification.rb +4 -1
  40. data/lib/bundler/resolver.rb +31 -8
  41. data/lib/bundler/resolver/spec_group.rb +26 -5
  42. data/lib/bundler/rubygems_ext.rb +7 -8
  43. data/lib/bundler/rubygems_gem_installer.rb +1 -7
  44. data/lib/bundler/rubygems_integration.rb +13 -48
  45. data/lib/bundler/runtime.rb +2 -12
  46. data/lib/bundler/settings.rb +0 -3
  47. data/lib/bundler/setup.rb +5 -0
  48. data/lib/bundler/shared_helpers.rb +1 -1
  49. data/lib/bundler/source/git.rb +4 -4
  50. data/lib/bundler/source/git/git_proxy.rb +53 -58
  51. data/lib/bundler/source/path.rb +5 -1
  52. data/lib/bundler/source/path/installer.rb +7 -9
  53. data/lib/bundler/source/rubygems.rb +11 -14
  54. data/lib/bundler/stub_specification.rb +16 -4
  55. data/lib/bundler/templates/newgem/CODE_OF_CONDUCT.md.tt +57 -47
  56. data/lib/bundler/templates/newgem/Gemfile.tt +9 -1
  57. data/lib/bundler/templates/newgem/Rakefile.tt +19 -5
  58. data/lib/bundler/templates/newgem/bin/console.tt +2 -0
  59. data/lib/bundler/templates/newgem/circleci/config.yml.tt +13 -0
  60. data/lib/bundler/templates/newgem/ext/newgem/extconf.rb.tt +2 -0
  61. data/lib/bundler/templates/newgem/github/workflows/main.yml.tt +18 -0
  62. data/lib/bundler/templates/newgem/gitlab-ci.yml.tt +9 -0
  63. data/lib/bundler/templates/newgem/lib/newgem.rb.tt +2 -0
  64. data/lib/bundler/templates/newgem/lib/newgem/version.rb.tt +2 -0
  65. data/lib/bundler/templates/newgem/newgem.gemspec.tt +6 -4
  66. data/lib/bundler/templates/newgem/rubocop.yml.tt +10 -0
  67. data/lib/bundler/templates/newgem/spec/newgem_spec.rb.tt +2 -0
  68. data/lib/bundler/templates/newgem/spec/spec_helper.rb.tt +2 -0
  69. data/lib/bundler/templates/newgem/test/{newgem_test.rb.tt → minitest/newgem_test.rb.tt} +2 -0
  70. data/lib/bundler/templates/newgem/test/{test_helper.rb.tt → minitest/test_helper.rb.tt} +2 -0
  71. data/lib/bundler/templates/newgem/test/test-unit/newgem_test.rb.tt +15 -0
  72. data/lib/bundler/templates/newgem/test/test-unit/test_helper.rb.tt +6 -0
  73. data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +72 -208
  74. data/lib/bundler/vendor/thor/lib/thor.rb +0 -7
  75. data/lib/bundler/vendor/thor/lib/thor/actions/create_link.rb +2 -1
  76. data/lib/bundler/vendor/thor/lib/thor/base.rb +9 -0
  77. data/lib/bundler/vendor/thor/lib/thor/version.rb +1 -1
  78. data/lib/bundler/version.rb +1 -1
  79. data/man/bundle-add.1 +1 -1
  80. data/man/bundle-add.1.txt +15 -15
  81. data/man/bundle-binstubs.1 +1 -1
  82. data/man/bundle-binstubs.1.txt +10 -10
  83. data/man/bundle-cache.1 +1 -1
  84. data/man/bundle-cache.1.txt +15 -15
  85. data/man/bundle-check.1 +1 -1
  86. data/man/bundle-check.1.txt +8 -8
  87. data/man/bundle-clean.1 +1 -1
  88. data/man/bundle-clean.1.txt +6 -6
  89. data/man/bundle-config.1 +3 -9
  90. data/man/bundle-config.1.txt +271 -272
  91. data/man/bundle-config.ronn +5 -9
  92. data/man/bundle-doctor.1 +1 -1
  93. data/man/bundle-doctor.1.txt +9 -9
  94. data/man/bundle-exec.1 +1 -1
  95. data/man/bundle-exec.1.txt +84 -81
  96. data/man/bundle-gem.1 +25 -3
  97. data/man/bundle-gem.1.txt +65 -39
  98. data/man/bundle-gem.ronn +30 -7
  99. data/man/bundle-info.1 +1 -1
  100. data/man/bundle-info.1.txt +2 -2
  101. data/man/bundle-init.1 +1 -1
  102. data/man/bundle-init.1.txt +9 -9
  103. data/man/bundle-inject.1 +1 -1
  104. data/man/bundle-inject.1.txt +4 -4
  105. data/man/bundle-install.1 +1 -1
  106. data/man/bundle-install.1.txt +169 -169
  107. data/man/bundle-list.1 +7 -7
  108. data/man/bundle-list.1.txt +12 -11
  109. data/man/bundle-list.ronn +6 -6
  110. data/man/bundle-lock.1 +1 -1
  111. data/man/bundle-lock.1.txt +28 -28
  112. data/man/bundle-open.1 +1 -1
  113. data/man/bundle-open.1.txt +3 -3
  114. data/man/bundle-outdated.1 +1 -1
  115. data/man/bundle-outdated.1.txt +34 -34
  116. data/man/bundle-platform.1 +1 -1
  117. data/man/bundle-platform.1.txt +16 -16
  118. data/man/bundle-pristine.1 +1 -1
  119. data/man/bundle-pristine.1.txt +8 -8
  120. data/man/bundle-remove.1 +1 -1
  121. data/man/bundle-remove.1.txt +9 -9
  122. data/man/bundle-show.1 +1 -1
  123. data/man/bundle-show.1.txt +8 -8
  124. data/man/bundle-update.1 +1 -1
  125. data/man/bundle-update.1.txt +149 -148
  126. data/man/bundle-viz.1 +1 -1
  127. data/man/bundle-viz.1.txt +11 -11
  128. data/man/bundle.1 +1 -1
  129. data/man/bundle.1.txt +31 -31
  130. data/man/gemfile.5 +1 -1
  131. data/man/gemfile.5.txt +218 -216
  132. metadata +14 -8
@@ -344,13 +344,6 @@ class Bundler::Thor
344
344
  command && disable_required_check.include?(command.name.to_sym)
345
345
  end
346
346
 
347
- def deprecation_warning(message) #:nodoc:
348
- unless ENV['THOR_SILENCE_DEPRECATION']
349
- warn "Deprecation warning: #{message}\n" +
350
- 'You can silence deprecations warning by setting the environment variable THOR_SILENCE_DEPRECATION.'
351
- end
352
- end
353
-
354
347
  protected
355
348
 
356
349
  def stop_on_unknown_option #:nodoc:
@@ -33,7 +33,8 @@ class Bundler::Thor
33
33
  # Boolean:: true if it is identical, false otherwise.
34
34
  #
35
35
  def identical?
36
- exists? && File.identical?(render, destination)
36
+ source = File.expand_path(render, File.dirname(destination))
37
+ exists? && File.identical?(source, destination)
37
38
  end
38
39
 
39
40
  def invoke!
@@ -22,6 +22,15 @@ class Bundler::Thor
22
22
 
23
23
  TEMPLATE_EXTNAME = ".tt"
24
24
 
25
+ class << self
26
+ def deprecation_warning(message) #:nodoc:
27
+ unless ENV['THOR_SILENCE_DEPRECATION']
28
+ warn "Deprecation warning: #{message}\n" +
29
+ 'You can silence deprecations warning by setting the environment variable THOR_SILENCE_DEPRECATION.'
30
+ end
31
+ end
32
+ end
33
+
25
34
  module Base
26
35
  attr_accessor :options, :parent_options, :args
27
36
 
@@ -1,3 +1,3 @@
1
1
  class Bundler::Thor
2
- VERSION = "1.0.0"
2
+ VERSION = "1.0.1"
3
3
  end
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: false
2
2
 
3
3
  module Bundler
4
- VERSION = "2.1.0".freeze
4
+ VERSION = "2.2.0.rc.1".freeze
5
5
 
6
6
  def self.bundler_major_version
7
7
  @bundler_major_version ||= VERSION.split(".").first.to_i
@@ -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" "December 2019" "" ""
4
+ .TH "BUNDLE\-ADD" "1" "July 2020" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-add\fR \- Add gem to the Gemfile and run bundle install
@@ -1,4 +1,4 @@
1
- BUNDLE-ADD(1) BUNDLE-ADD(1)
1
+ BUNDLE-ADD(1) BUNDLE-ADD(1)
2
2
 
3
3
 
4
4
 
@@ -6,12 +6,12 @@ NAME
6
6
  bundle-add - Add gem to the Gemfile and run bundle install
7
7
 
8
8
  SYNOPSIS
9
- bundle add GEM_NAME [--group=GROUP] [--version=VERSION]
10
- [--source=SOURCE] [--git=GIT] [--branch=BRANCH] [--skip-install]
9
+ bundle add GEM_NAME [--group=GROUP] [--version=VERSION]
10
+ [--source=SOURCE] [--git=GIT] [--branch=BRANCH] [--skip-install]
11
11
  [--strict] [--optimistic]
12
12
 
13
13
  DESCRIPTION
14
- Adds the named gem to the Gemfile and run bundle install. bundle
14
+ Adds the named gem to the Gemfile and run bundle install. bundle
15
15
  install can be avoided by using the flag --skip-install.
16
16
 
17
17
  Example:
@@ -20,8 +20,8 @@ DESCRIPTION
20
20
 
21
21
  bundle add rails --version "< 3.0, > 1.1"
22
22
 
23
- bundle add rails --version "~> 5.0.0" --source "https://gems.exam-
24
- ple.com" --group "development"
23
+ bundle add rails --version "~> 5.0.0" --source
24
+ "https://gems.example.com" --group "development"
25
25
 
26
26
  bundle add rails --skip-install
27
27
 
@@ -29,30 +29,30 @@ DESCRIPTION
29
29
 
30
30
  OPTIONS
31
31
  --version, -v
32
- Specify version requirements(s) for the added gem.
32
+ Specify version requirements(s) for the added gem.
33
33
 
34
34
  --group, -g
35
- Specify the group(s) for the added gem. Multiple groups should
36
- be separated by commas.
35
+ Specify the group(s) for the added gem. Multiple groups should
36
+ be separated by commas.
37
37
 
38
38
  --source, , -s
39
- Specify the source for the added gem.
39
+ Specify the source for the added gem.
40
40
 
41
41
  --git Specify the git source for the added gem.
42
42
 
43
43
  --branch
44
- Specify the git branch for the added gem.
44
+ Specify the git branch for the added gem.
45
45
 
46
46
  --skip-install
47
- Adds the gem to the Gemfile but does not install it.
47
+ Adds the gem to the Gemfile but does not install it.
48
48
 
49
49
  --optimistic
50
- Adds optimistic declaration of version
50
+ Adds optimistic declaration of version
51
51
 
52
52
  --strict
53
- Adds strict declaration of version
53
+ Adds strict declaration of version
54
54
 
55
55
 
56
56
 
57
57
 
58
- December 2019 BUNDLE-ADD(1)
58
+ July 2020 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" "December 2019" "" ""
4
+ .TH "BUNDLE\-BINSTUBS" "1" "July 2020" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-binstubs\fR \- Install the binstubs of the listed gems
@@ -1,4 +1,4 @@
1
- BUNDLE-BINSTUBS(1) BUNDLE-BINSTUBS(1)
1
+ BUNDLE-BINSTUBS(1) BUNDLE-BINSTUBS(1)
2
2
 
3
3
 
4
4
 
@@ -13,8 +13,8 @@ DESCRIPTION
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 be run directly, and
16
- one that will always run the correct gem version used by the applica-
17
- tion.
16
+ one that will always run the correct gem version used by the
17
+ application.
18
18
 
19
19
  For example, if you run bundle binstubs rspec-core, Bundler will create
20
20
  the file bin/rspec. That file will contain enough code to load Bundler,
@@ -26,18 +26,18 @@ DESCRIPTION
26
26
 
27
27
  OPTIONS
28
28
  --force
29
- Overwrite existing binstubs if they exist.
29
+ Overwrite existing binstubs if they exist.
30
30
 
31
31
  --path The location to install the specified binstubs to. This defaults
32
- to bin.
32
+ to bin.
33
33
 
34
34
  --standalone
35
- Makes binstubs that can work without depending on Rubygems or
36
- Bundler at runtime.
35
+ Makes binstubs that can work without depending on Rubygems or
36
+ Bundler at runtime.
37
37
 
38
38
  --shebang
39
- Specify a different shebang executable name than the default
40
- (default 'ruby')
39
+ Specify a different shebang executable name than the default
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
@@ -45,4 +45,4 @@ BUNDLE INSTALL --BINSTUBS
45
45
 
46
46
 
47
47
 
48
- December 2019 BUNDLE-BINSTUBS(1)
48
+ July 2020 BUNDLE-BINSTUBS(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\-CACHE" "1" "December 2019" "" ""
4
+ .TH "BUNDLE\-CACHE" "1" "July 2020" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-cache\fR \- Package your needed \fB\.gem\fR files into your application
@@ -1,4 +1,4 @@
1
- BUNDLE-CACHE(1) BUNDLE-CACHE(1)
1
+ BUNDLE-CACHE(1) BUNDLE-CACHE(1)
2
2
 
3
3
 
4
4
 
@@ -9,19 +9,19 @@ SYNOPSIS
9
9
  bundle cache
10
10
 
11
11
  DESCRIPTION
12
- Copy all of the .gem files needed to run the application into the ven-
13
- dor/cache directory. In the future, when running [bundle
12
+ Copy all of the .gem files needed to run the application into the
13
+ vendor/cache directory. In the future, when running [bundle
14
14
  install(1)][bundle-install], use the gems in the cache in preference to
15
15
  the ones on rubygems.org.
16
16
 
17
17
  GIT AND PATH GEMS
18
18
  The bundle cache command can also package :git and :path dependencies
19
- besides .gem files. This needs to be explicitly enabled via the --all
19
+ besides .gem files. This needs to be explicitly enabled via the --all
20
20
  option. Once used, the --all option will be remembered.
21
21
 
22
22
  SUPPORT FOR MULTIPLE PLATFORMS
23
23
  When using gems that have different packages for different platforms,
24
- Bundler supports caching of gems for other platforms where the Gemfile
24
+ Bundler supports caching of gems for other platforms where the Gemfile
25
25
  has been resolved (i.e. present in the lockfile) in vendor/cache. This
26
26
  needs to be enabled via the --all-platforms option. This setting will
27
27
  be remembered in your local bundler configuration.
@@ -36,9 +36,9 @@ REMOTE FETCHING
36
36
 
37
37
 
38
38
 
39
- source "https://rubygems.org"
39
+ source "https://rubygems.org"
40
40
 
41
- gem "nokogiri"
41
+ gem "nokogiri"
42
42
 
43
43
 
44
44
 
@@ -50,22 +50,22 @@ REMOTE FETCHING
50
50
  Even though the nokogiri gem for the Ruby platform is technically
51
51
  acceptable on JRuby, it has a C extension that does not run on JRuby.
52
52
  As a result, bundler will, by default, still connect to rubygems.org to
53
- check whether it has a version of one of your gems more specific to
53
+ check whether it has a version of one of your gems more specific to
54
54
  your platform.
55
55
 
56
56
  This problem is also not limited to the "java" platform. A similar
57
57
  (common) problem can happen when developing on Windows and deploying to
58
58
  Linux, or even when developing on OSX and deploying to Linux.
59
59
 
60
- If you know for sure that the gems packaged in vendor/cache are appro-
61
- priate for the platform you are on, you can run bundle install --local
62
- to skip checking for more appropriate gems, and use the ones in ven-
63
- dor/cache.
60
+ If you know for sure that the gems packaged in vendor/cache are
61
+ appropriate for the platform you are on, you can run bundle install
62
+ --local to skip checking for more appropriate gems, and use the ones in
63
+ vendor/cache.
64
64
 
65
65
  One way to be sure that you have the right platformed versions of all
66
66
  your gems is to run bundle cache on an identical machine and check in
67
- the gems. For instance, you can run bundle cache on an identical stag-
68
- ing box during your staging process, and check in the vendor/cache
67
+ the gems. For instance, you can run bundle cache on an identical
68
+ staging box during your staging process, and check in the vendor/cache
69
69
  before deploying to production.
70
70
 
71
71
  By default, bundle cache(1) bundle-cache.1.html fetches and also
@@ -75,4 +75,4 @@ REMOTE FETCHING
75
75
 
76
76
 
77
77
 
78
- December 2019 BUNDLE-CACHE(1)
78
+ July 2020 BUNDLE-CACHE(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" "December 2019" "" ""
4
+ .TH "BUNDLE\-CHECK" "1" "July 2020" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-check\fR \- Verifies if dependencies are satisfied by installed gems
@@ -1,4 +1,4 @@
1
- BUNDLE-CHECK(1) BUNDLE-CHECK(1)
1
+ BUNDLE-CHECK(1) BUNDLE-CHECK(1)
2
2
 
3
3
 
4
4
 
@@ -17,17 +17,17 @@ DESCRIPTION
17
17
 
18
18
  OPTIONS
19
19
  --dry-run
20
- Locks the [Gemfile(5)][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)][Gem-
24
- file(5)].
23
+ Use the specified gemfile instead of the
24
+ [Gemfile(5)][Gemfile(5)].
25
25
 
26
- --path Specify a different path than the system default ($BUNDLE_PATH
27
- or $GEM_HOME). Bundler will remember this value for future
28
- installs on this machine.
26
+ --path Specify a different path than the system default ($BUNDLE_PATH
27
+ or $GEM_HOME). Bundler will remember this value for future
28
+ installs on this machine.
29
29
 
30
30
 
31
31
 
32
32
 
33
- December 2019 BUNDLE-CHECK(1)
33
+ July 2020 BUNDLE-CHECK(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\-CLEAN" "1" "December 2019" "" ""
4
+ .TH "BUNDLE\-CLEAN" "1" "July 2020" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-clean\fR \- Cleans up unused gems in your bundler directory
@@ -1,4 +1,4 @@
1
- BUNDLE-CLEAN(1) BUNDLE-CLEAN(1)
1
+ BUNDLE-CLEAN(1) BUNDLE-CLEAN(1)
2
2
 
3
3
 
4
4
 
@@ -10,17 +10,17 @@ SYNOPSIS
10
10
 
11
11
  DESCRIPTION
12
12
  This command will remove all unused gems in your bundler directory.
13
- This is useful when you have made many changes to your gem dependen-
14
- cies.
13
+ This is useful when you have made many changes to your gem
14
+ dependencies.
15
15
 
16
16
  OPTIONS
17
17
  --dry-run
18
- Print the changes, but do not clean the unused gems.
18
+ Print the changes, but do not clean the unused gems.
19
19
 
20
20
  --force
21
- Force a clean even if --path is not set.
21
+ Force a clean even if --path is not set.
22
22
 
23
23
 
24
24
 
25
25
 
26
- December 2019 BUNDLE-CLEAN(1)
26
+ July 2020 BUNDLE-CLEAN(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\-CONFIG" "1" "December 2019" "" ""
4
+ .TH "BUNDLE\-CONFIG" "1" "July 2020" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-config\fR \- Set bundler configuration options
@@ -16,7 +16,7 @@ This command allows you to interact with Bundler\'s configuration system\.
16
16
  Bundler loads configuration settings in this order:
17
17
  .
18
18
  .IP "1." 4
19
- Local config (\fBapp/\.bundle/config\fR)
19
+ Local config (\fB<project_root>/\.bundle/config\fR or \fB$BUNDLE_APP_CONFIG/config\fR)
20
20
  .
21
21
  .IP "2." 4
22
22
  Environmental variables (\fBENV\fR)
@@ -42,7 +42,7 @@ Executing \fBbundle config set \fR will set that configuration to
42
42
  Executing \fBbundle config set \-\-global <name> <value>\fR works the same as above\.
43
43
  .
44
44
  .P
45
- Executing \fBbundle config set \-\-local <name> <value>\fR will set that configuration to the local application\. The configuration will be stored in \fBapp/\.bundle/config\fR\.
45
+ Executing \fBbundle config set \-\-local <name> <value>\fR will set that configuration in the directory for the local application\. The configuration will be stored in \fB<project_root>/\.bundle/config\fR\. If \fBBUNDLE_APP_CONFIG\fR is set, the configuration will be stored in \fB$BUNDLE_APP_CONFIG/config\fR\.
46
46
  .
47
47
  .P
48
48
  Executing \fBbundle config unset <name>\fR will delete the configuration in both local and global sources\.
@@ -187,9 +187,6 @@ The following is a list of all configuration keys and their purpose\. You can le
187
187
  \fBdisable_multisource\fR (\fBBUNDLE_DISABLE_MULTISOURCE\fR): When set, Gemfiles containing multiple sources will produce errors instead of warnings\. Use \fBbundle config unset disable_multisource\fR to unset\.
188
188
  .
189
189
  .IP "\(bu" 4
190
- \fBdisable_platform_warnings\fR (\fBBUNDLE_DISABLE_PLATFORM_WARNINGS\fR): Disable warnings during bundle install when a dependency is unused on the current platform\.
191
- .
192
- .IP "\(bu" 4
193
190
  \fBdisable_shared_gems\fR (\fBBUNDLE_DISABLE_SHARED_GEMS\fR): Stop Bundler from accessing gems installed to RubyGems\' normal location\.
194
191
  .
195
192
  .IP "\(bu" 4
@@ -265,9 +262,6 @@ The following is a list of all configuration keys and their purpose\. You can le
265
262
  \fBsilence_root_warning\fR (\fBBUNDLE_SILENCE_ROOT_WARNING\fR): Silence the warning Bundler prints when installing gems as root\.
266
263
  .
267
264
  .IP "\(bu" 4
268
- \fBskip_default_git_sources\fR (\fBBUNDLE_SKIP_DEFAULT_GIT_SOURCES\fR): Whether Bundler should skip adding default git source shortcuts to the Gemfile DSL\.
269
- .
270
- .IP "\(bu" 4
271
265
  \fBspecific_platform\fR (\fBBUNDLE_SPECIFIC_PLATFORM\fR): Allow bundler to resolve for the specific running platform and store it in the lockfile, instead of only using a generic platform\. A specific platform is the exact platform triple reported by \fBGem::Platform\.local\fR, such as \fBx86_64\-darwin\-16\fR or \fBuniversal\-java\-1\.8\fR\. On the other hand, generic platforms are those such as \fBruby\fR, \fBmswin\fR, or \fBjava\fR\. In this example, \fBx86_64\-darwin\-16\fR would map to \fBruby\fR and \fBuniversal\-java\-1\.8\fR to \fBjava\fR\.
272
266
  .
273
267
  .IP "\(bu" 4
@@ -1,4 +1,4 @@
1
- BUNDLE-CONFIG(1) BUNDLE-CONFIG(1)
1
+ BUNDLE-CONFIG(1) BUNDLE-CONFIG(1)
2
2
 
3
3
 
4
4
 
@@ -9,12 +9,13 @@ SYNOPSIS
9
9
  bundle config [list|get|set|unset] [name [value]]
10
10
 
11
11
  DESCRIPTION
12
- This command allows you to interact with Bundler's configuration sys-
13
- tem.
12
+ This command allows you to interact with Bundler's configuration
13
+ system.
14
14
 
15
15
  Bundler loads configuration settings in this order:
16
16
 
17
- 1. Local config (app/.bundle/config)
17
+ 1. Local config (<project_root>/.bundle/config or
18
+ $BUNDLE_APP_CONFIG/config)
18
19
 
19
20
  2. Environmental variables (ENV)
20
21
 
@@ -24,360 +25,358 @@ DESCRIPTION
24
25
 
25
26
 
26
27
 
27
- Executing bundle config list with will print a list of all bundler con-
28
- figuration for the current bundle, and where that configuration was
28
+ Executing bundle config list with will print a list of all bundler
29
+ configuration for the current bundle, and where that configuration was
29
30
  set.
30
31
 
31
- Executing bundle config get <name> will print the value of that config-
32
- uration setting, and where it was set.
32
+ Executing bundle config get <name> will print the value of that
33
+ configuration setting, and where it was set.
33
34
 
34
- Executing bundle config set <name> <value> will set that configuration
35
- to the value specified for all bundles executed as the current user.
36
- The configuration will be stored in ~/.bundle/config. If name already
35
+ Executing bundle config set <name> <value> will set that configuration
36
+ to the value specified for all bundles executed as the current user.
37
+ The configuration will be stored in ~/.bundle/config. If name already
37
38
  is set, name will be overridden and user will be warned.
38
39
 
39
- Executing bundle config set --global <name> <value> works the same as
40
+ Executing bundle config set --global <name> <value> works the same as
40
41
  above.
41
42
 
42
- Executing bundle config set --local <name> <value> will set that con-
43
- figuration to the local application. The configuration will be stored
44
- in app/.bundle/config.
43
+ Executing bundle config set --local <name> <value> will set that
44
+ configuration in the directory for the local application. The
45
+ configuration will be stored in <project_root>/.bundle/config. If
46
+ BUNDLE_APP_CONFIG is set, the configuration will be stored in
47
+ $BUNDLE_APP_CONFIG/config.
45
48
 
46
- Executing bundle config unset <name> will delete the configuration in
49
+ Executing bundle config unset <name> will delete the configuration in
47
50
  both local and global sources.
48
51
 
49
- Executing bundle config unset --global <name> will delete the configu-
50
- ration only from the user configuration.
52
+ Executing bundle config unset --global <name> will delete the
53
+ configuration only from the user configuration.
51
54
 
52
- Executing bundle config unset --local <name> <value> will delete the
55
+ Executing bundle config unset --local <name> <value> will delete the
53
56
  configuration only from the local application.
54
57
 
55
58
  Executing bundle with the BUNDLE_IGNORE_CONFIG environment variable set
56
59
  will cause it to ignore all configuration.
57
60
 
58
- Executing bundle config set disable_multisource true upgrades the warn-
59
- ing about the Gemfile containing multiple primary sources to an error.
60
- Executing bundle config unset disable_multisource downgrades this error
61
- to a warning.
61
+ Executing bundle config set disable_multisource true upgrades the
62
+ warning about the Gemfile containing multiple primary sources to an
63
+ error. Executing bundle config unset disable_multisource downgrades
64
+ this error to a warning.
62
65
 
63
66
  REMEMBERING OPTIONS
64
- Flags passed to bundle install or the Bundler runtime, such as --path
65
- foo or --without production, are remembered between commands and saved
67
+ Flags passed to bundle install or the Bundler runtime, such as --path
68
+ foo or --without production, are remembered between commands and saved
66
69
  to your local application's configuration (normally, ./.bundle/config).
67
70
 
68
- However, this will be changed in bundler 3, so it's better not to rely
69
- on this behavior. If these options must be remembered, it's better to
71
+ However, this will be changed in bundler 3, so it's better not to rely
72
+ on this behavior. If these options must be remembered, it's better to
70
73
  set them using bundle config (e.g., bundle config set path foo).
71
74
 
72
75
  The options that can be configured are:
73
76
 
74
- bin Creates a directory (defaults to ~/bin) and place any executa-
75
- bles from the gem there. These executables run in Bundler's con-
76
- text. If used, you might add this directory to your environ-
77
- ment's PATH variable. For instance, if the rails gem comes with
78
- a rails executable, this flag will create a bin/rails executable
79
- that ensures that all referred dependencies will be resolved
80
- using the bundled gems.
77
+ bin Creates a directory (defaults to ~/bin) and place any
78
+ executables from the gem there. These executables run in
79
+ Bundler's context. If used, you might add this directory to your
80
+ environment's PATH variable. For instance, if the rails gem
81
+ comes with a rails executable, this flag will create a bin/rails
82
+ executable that ensures that all referred dependencies will be
83
+ resolved using the bundled gems.
81
84
 
82
85
  deployment
83
- In deployment mode, Bundler will 'roll-out' the bundle for pro-
84
- duction use. Please check carefully if you want to have this
85
- option enabled in development or test environments.
86
+ In deployment mode, Bundler will 'roll-out' the bundle for
87
+ production use. Please check carefully if you want to have this
88
+ option enabled in development or test environments.
86
89
 
87
- path The location to install the specified gems to. This defaults to
88
- Rubygems' setting. Bundler shares this location with Rubygems,
89
- gem install ... will have gem installed there, too. Therefore,
90
- gems installed without a --path ... setting will show up by
91
- calling gem list. Accordingly, gems installed to other locations
92
- will not get listed.
90
+ path The location to install the specified gems to. This defaults to
91
+ Rubygems' setting. Bundler shares this location with Rubygems,
92
+ gem install ... will have gem installed there, too. Therefore,
93
+ gems installed without a --path ... setting will show up by
94
+ calling gem list. Accordingly, gems installed to other locations
95
+ will not get listed.
93
96
 
94
97
  without
95
- A space-separated list of groups referencing gems to skip during
96
- installation.
98
+ A space-separated list of groups referencing gems to skip during
99
+ installation.
97
100
 
98
- with A space-separated list of groups referencing gems to include
99
- during installation.
101
+ with A space-separated list of groups referencing gems to include
102
+ during installation.
100
103
 
101
104
  BUILD OPTIONS
102
- You can use bundle config to give Bundler the flags to pass to the gem
105
+ You can use bundle config to give Bundler the flags to pass to the gem
103
106
  installer every time bundler tries to install a particular gem.
104
107
 
105
- A very common example, the mysql gem, requires Snow Leopard users to
106
- pass configuration flags to gem install to specify where to find the
108
+ A very common example, the mysql gem, requires Snow Leopard users to
109
+ pass configuration flags to gem install to specify where to find the
107
110
  mysql_config executable.
108
111
 
109
112
 
110
113
 
111
- gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
114
+ gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
112
115
 
113
116
 
114
117
 
115
- Since the specific location of that executable can change from machine
118
+ Since the specific location of that executable can change from machine
116
119
  to machine, you can specify these flags on a per-machine basis.
117
120
 
118
121
 
119
122
 
120
- bundle config set build.mysql --with-mysql-config=/usr/local/mysql/bin/mysql_config
123
+ bundle config set build.mysql --with-mysql-config=/usr/local/mysql/bin/mysql_config
121
124
 
122
125
 
123
126
 
124
- After running this command, every time bundler needs to install the
127
+ After running this command, every time bundler needs to install the
125
128
  mysql gem, it will pass along the flags you specified.
126
129
 
127
130
  CONFIGURATION KEYS
128
- Configuration keys in bundler have two forms: the canonical form and
131
+ Configuration keys in bundler have two forms: the canonical form and
129
132
  the environment variable form.
130
133
 
131
- For instance, passing the --without flag to bundle install(1) bun-
132
- dle-install.1.html prevents Bundler from installing certain groups
133
- specified in the Gemfile(5). Bundler persists this value in app/.bun-
134
- dle/config so that calls to Bundler.setup do not try to find gems from
135
- the Gemfile that you didn't install. Additionally, subsequent calls to
136
- bundle install(1) bundle-install.1.html remember this setting and skip
137
- those groups.
134
+ For instance, passing the --without flag to bundle install(1)
135
+ bundle-install.1.html prevents Bundler from installing certain groups
136
+ specified in the Gemfile(5). Bundler persists this value in
137
+ app/.bundle/config so that calls to Bundler.setup do not try to find
138
+ gems from the Gemfile that you didn't install. Additionally, subsequent
139
+ calls to bundle install(1) bundle-install.1.html remember this setting
140
+ and skip those groups.
138
141
 
139
- The canonical form of this configuration is "without". To convert the
140
- canonical form to the environment variable form, capitalize it, and
141
- prepend BUNDLE_. The environment variable form of "without" is BUN-
142
- DLE_WITHOUT.
142
+ The canonical form of this configuration is "without". To convert the
143
+ canonical form to the environment variable form, capitalize it, and
144
+ prepend BUNDLE_. The environment variable form of "without" is
145
+ BUNDLE_WITHOUT.
143
146
 
144
- Any periods in the configuration keys must be replaced with two under-
145
- scores when setting it via environment variables. The configuration key
146
- local.rack becomes the environment variable BUNDLE_LOCAL__RACK.
147
+ Any periods in the configuration keys must be replaced with two
148
+ underscores when setting it via environment variables. The
149
+ configuration key local.rack becomes the environment variable
150
+ BUNDLE_LOCAL__RACK.
147
151
 
148
152
  LIST OF AVAILABLE KEYS
149
153
  The following is a list of all configuration keys and their purpose.
150
- You can learn more about their operation in bundle install(1) bun-
151
- dle-install.1.html.
154
+ You can learn more about their operation in bundle install(1)
155
+ bundle-install.1.html.
152
156
 
153
- o allow_bundler_dependency_conflicts (BUNDLE_ALLOW_BUNDLER_DEPEN-
154
- DENCY_CONFLICTS): Allow resolving to specifications that have
155
- dependencies on bundler that are incompatible with the running
156
- Bundler version.
157
+ o allow_bundler_dependency_conflicts
158
+ (BUNDLE_ALLOW_BUNDLER_DEPENDENCY_CONFLICTS): Allow resolving to
159
+ specifications that have dependencies on bundler that are
160
+ incompatible with the running Bundler version.
157
161
 
158
- o allow_deployment_source_credential_changes (BUNDLE_ALLOW_DEPLOY-
159
- MENT_SOURCE_CREDENTIAL_CHANGES): When in deployment mode, allow
160
- changing the credentials to a gem's source. Ex:
161
- https://some.host.com/gems/path/ -> https://user_name:pass-
162
- word@some.host.com/gems/path
162
+ o allow_deployment_source_credential_changes
163
+ (BUNDLE_ALLOW_DEPLOYMENT_SOURCE_CREDENTIAL_CHANGES): When in
164
+ deployment mode, allow changing the credentials to a gem's source.
165
+ Ex: https://some.host.com/gems/path/ ->
166
+ https://user_name:password@some.host.com/gems/path
163
167
 
164
168
  o allow_offline_install (BUNDLE_ALLOW_OFFLINE_INSTALL): Allow Bundler
165
- to use cached data when installing without network access.
169
+ to use cached data when installing without network access.
166
170
 
167
- o auto_clean_without_path (BUNDLE_AUTO_CLEAN_WITHOUT_PATH): Automati-
168
- cally run bundle clean after installing when an explicit path has
169
- not been set and Bundler is not installing into the system gems.
171
+ o auto_clean_without_path (BUNDLE_AUTO_CLEAN_WITHOUT_PATH):
172
+ Automatically run bundle clean after installing when an explicit
173
+ path has not been set and Bundler is not installing into the system
174
+ gems.
170
175
 
171
- o auto_install (BUNDLE_AUTO_INSTALL): Automatically run bundle
172
- install when gems are missing.
176
+ o auto_install (BUNDLE_AUTO_INSTALL): Automatically run bundle
177
+ install when gems are missing.
173
178
 
174
- o bin (BUNDLE_BIN): Install executables from gems in the bundle to
175
- the specified directory. Defaults to false.
179
+ o bin (BUNDLE_BIN): Install executables from gems in the bundle to
180
+ the specified directory. Defaults to false.
176
181
 
177
- o cache_all (BUNDLE_CACHE_ALL): Cache all gems, including path and
178
- git gems.
182
+ o cache_all (BUNDLE_CACHE_ALL): Cache all gems, including path and
183
+ git gems.
179
184
 
180
- o cache_all_platforms (BUNDLE_CACHE_ALL_PLATFORMS): Cache gems for
181
- all platforms.
185
+ o cache_all_platforms (BUNDLE_CACHE_ALL_PLATFORMS): Cache gems for
186
+ all platforms.
182
187
 
183
- o cache_path (BUNDLE_CACHE_PATH): The directory that bundler will
184
- place cached gems in when running bundle package, and that bundler
185
- will look in when installing gems. Defaults to vendor/cache.
188
+ o cache_path (BUNDLE_CACHE_PATH): The directory that bundler will
189
+ place cached gems in when running bundle package, and that bundler
190
+ will look in when installing gems. Defaults to vendor/cache.
186
191
 
187
- o clean (BUNDLE_CLEAN): Whether Bundler should run bundle clean auto-
188
- matically after bundle install.
192
+ o clean (BUNDLE_CLEAN): Whether Bundler should run bundle clean
193
+ automatically after bundle install.
189
194
 
190
- o console (BUNDLE_CONSOLE): The console that bundle console starts.
191
- Defaults to irb.
195
+ o console (BUNDLE_CONSOLE): The console that bundle console starts.
196
+ Defaults to irb.
192
197
 
193
- o default_install_uses_path (BUNDLE_DEFAULT_INSTALL_USES_PATH):
194
- Whether a bundle install without an explicit --path argument
195
- defaults to installing gems in .bundle.
198
+ o default_install_uses_path (BUNDLE_DEFAULT_INSTALL_USES_PATH):
199
+ Whether a bundle install without an explicit --path argument
200
+ defaults to installing gems in .bundle.
196
201
 
197
- o deployment (BUNDLE_DEPLOYMENT): Disallow changes to the Gemfile.
198
- When the Gemfile is changed and the lockfile has not been updated,
199
- running Bundler commands will be blocked.
202
+ o deployment (BUNDLE_DEPLOYMENT): Disallow changes to the Gemfile.
203
+ When the Gemfile is changed and the lockfile has not been updated,
204
+ running Bundler commands will be blocked.
200
205
 
201
- o disable_checksum_validation (BUNDLE_DISABLE_CHECKSUM_VALIDATION):
202
- Allow installing gems even if they do not match the checksum pro-
203
- vided by RubyGems.
206
+ o disable_checksum_validation (BUNDLE_DISABLE_CHECKSUM_VALIDATION):
207
+ Allow installing gems even if they do not match the checksum
208
+ provided by RubyGems.
204
209
 
205
210
  o disable_exec_load (BUNDLE_DISABLE_EXEC_LOAD): Stop Bundler from
206
- using load to launch an executable in-process in bundle exec.
211
+ using load to launch an executable in-process in bundle exec.
207
212
 
208
- o disable_local_branch_check (BUNDLE_DISABLE_LOCAL_BRANCH_CHECK):
209
- Allow Bundler to use a local git override without a branch speci-
210
- fied in the Gemfile.
213
+ o disable_local_branch_check (BUNDLE_DISABLE_LOCAL_BRANCH_CHECK):
214
+ Allow Bundler to use a local git override without a branch
215
+ specified in the Gemfile.
211
216
 
212
- o disable_multisource (BUNDLE_DISABLE_MULTISOURCE): When set, Gem-
213
- files containing multiple sources will produce errors instead of
214
- warnings. Use bundle config unset disable_multisource to unset.
215
-
216
- o disable_platform_warnings (BUNDLE_DISABLE_PLATFORM_WARNINGS): Dis-
217
- able warnings during bundle install when a dependency is unused on
218
- the current platform.
217
+ o disable_multisource (BUNDLE_DISABLE_MULTISOURCE): When set,
218
+ Gemfiles containing multiple sources will produce errors instead of
219
+ warnings. Use bundle config unset disable_multisource to unset.
219
220
 
220
221
  o disable_shared_gems (BUNDLE_DISABLE_SHARED_GEMS): Stop Bundler from
221
- accessing gems installed to RubyGems' normal location.
222
+ accessing gems installed to RubyGems' normal location.
222
223
 
223
- o disable_version_check (BUNDLE_DISABLE_VERSION_CHECK): Stop Bundler
224
- from checking if a newer Bundler version is available on
225
- rubygems.org.
224
+ o disable_version_check (BUNDLE_DISABLE_VERSION_CHECK): Stop Bundler
225
+ from checking if a newer Bundler version is available on
226
+ rubygems.org.
226
227
 
227
- o force_ruby_platform (BUNDLE_FORCE_RUBY_PLATFORM): Ignore the cur-
228
- rent machine's platform and install only ruby platform gems. As a
229
- result, gems with native extensions will be compiled from source.
228
+ o force_ruby_platform (BUNDLE_FORCE_RUBY_PLATFORM): Ignore the
229
+ current machine's platform and install only ruby platform gems. As
230
+ a result, gems with native extensions will be compiled from source.
230
231
 
231
- o frozen (BUNDLE_FROZEN): Disallow changes to the Gemfile. When the
232
- Gemfile is changed and the lockfile has not been updated, running
233
- Bundler commands will be blocked. Defaults to true when --deploy-
234
- ment is used.
232
+ o frozen (BUNDLE_FROZEN): Disallow changes to the Gemfile. When the
233
+ Gemfile is changed and the lockfile has not been updated, running
234
+ Bundler commands will be blocked. Defaults to true when
235
+ --deployment is used.
235
236
 
236
- o gem.push_key (BUNDLE_GEM__PUSH_KEY): Sets the --key parameter for
237
- gem push when using the rake release command with a private gem-
238
- stash server.
237
+ o gem.push_key (BUNDLE_GEM__PUSH_KEY): Sets the --key parameter for
238
+ gem push when using the rake release command with a private
239
+ gemstash server.
239
240
 
240
- o gemfile (BUNDLE_GEMFILE): The name of the file that bundler should
241
- use as the Gemfile. This location of this file also sets the root
242
- of the project, which is used to resolve relative paths in the Gem-
243
- file, among other things. By default, bundler will search up from
244
- the current working directory until it finds a Gemfile.
241
+ o gemfile (BUNDLE_GEMFILE): The name of the file that bundler should
242
+ use as the Gemfile. This location of this file also sets the root
243
+ of the project, which is used to resolve relative paths in the
244
+ Gemfile, among other things. By default, bundler will search up
245
+ from the current working directory until it finds a Gemfile.
245
246
 
246
- o global_gem_cache (BUNDLE_GLOBAL_GEM_CACHE): Whether Bundler should
247
- cache all gems globally, rather than locally to the installing Ruby
248
- installation.
247
+ o global_gem_cache (BUNDLE_GLOBAL_GEM_CACHE): Whether Bundler should
248
+ cache all gems globally, rather than locally to the installing Ruby
249
+ installation.
249
250
 
250
251
  o ignore_messages (BUNDLE_IGNORE_MESSAGES): When set, no post install
251
- messages will be printed. To silence a single gem, use dot notation
252
- like ignore_messages.httparty true.
252
+ messages will be printed. To silence a single gem, use dot notation
253
+ like ignore_messages.httparty true.
253
254
 
254
- o init_gems_rb (BUNDLE_INIT_GEMS_RB) Generate a gems.rb instead of a
255
- Gemfile when running bundle init.
255
+ o init_gems_rb (BUNDLE_INIT_GEMS_RB) Generate a gems.rb instead of a
256
+ Gemfile when running bundle init.
256
257
 
257
- o jobs (BUNDLE_JOBS): The number of gems Bundler can install in par-
258
- allel. Defaults to 1.
258
+ o jobs (BUNDLE_JOBS): The number of gems Bundler can install in
259
+ parallel. Defaults to 1.
259
260
 
260
- o no_install (BUNDLE_NO_INSTALL): Whether bundle package should skip
261
- installing gems.
261
+ o no_install (BUNDLE_NO_INSTALL): Whether bundle package should skip
262
+ installing gems.
262
263
 
263
- o no_prune (BUNDLE_NO_PRUNE): Whether Bundler should leave outdated
264
- gems unpruned when caching.
264
+ o no_prune (BUNDLE_NO_PRUNE): Whether Bundler should leave outdated
265
+ gems unpruned when caching.
265
266
 
266
- o only_update_to_newer_versions (BUNDLE_ONLY_UPDATE_TO_NEWER_VER-
267
- SIONS): During bundle update, only resolve to newer versions of the
268
- gems in the lockfile.
267
+ o only_update_to_newer_versions
268
+ (BUNDLE_ONLY_UPDATE_TO_NEWER_VERSIONS): During bundle update, only
269
+ resolve to newer versions of the gems in the lockfile.
269
270
 
270
- o path (BUNDLE_PATH): The location on disk where all gems in your
271
- bundle will be located regardless of $GEM_HOME or $GEM_PATH values.
272
- Bundle gems not found in this location will be installed by bundle
273
- install. Defaults to Gem.dir. When --deployment is used, defaults
274
- to vendor/bundle.
271
+ o path (BUNDLE_PATH): The location on disk where all gems in your
272
+ bundle will be located regardless of $GEM_HOME or $GEM_PATH values.
273
+ Bundle gems not found in this location will be installed by bundle
274
+ install. Defaults to Gem.dir. When --deployment is used, defaults
275
+ to vendor/bundle.
275
276
 
276
- o path.system (BUNDLE_PATH__SYSTEM): Whether Bundler will install
277
- gems into the default system path (Gem.dir).
277
+ o path.system (BUNDLE_PATH__SYSTEM): Whether Bundler will install
278
+ gems into the default system path (Gem.dir).
278
279
 
279
- o path_relative_to_cwd (BUNDLE_PATH_RELATIVE_TO_CWD) Makes --path
280
- relative to the CWD instead of the Gemfile.
280
+ o path_relative_to_cwd (BUNDLE_PATH_RELATIVE_TO_CWD) Makes --path
281
+ relative to the CWD instead of the Gemfile.
281
282
 
282
- o plugins (BUNDLE_PLUGINS): Enable Bundler's experimental plugin sys-
283
- tem.
283
+ o plugins (BUNDLE_PLUGINS): Enable Bundler's experimental plugin
284
+ system.
284
285
 
285
- o prefer_patch (BUNDLE_PREFER_PATCH): Prefer updating only to next
286
- patch version during updates. Makes bundle update calls equivalent
287
- to bundler update --patch.
286
+ o prefer_patch (BUNDLE_PREFER_PATCH): Prefer updating only to next
287
+ patch version during updates. Makes bundle update calls equivalent
288
+ to bundler update --patch.
288
289
 
289
- o print_only_version_number (BUNDLE_PRINT_ONLY_VERSION_NUMBER) Print
290
- only version number from bundler --version.
290
+ o print_only_version_number (BUNDLE_PRINT_ONLY_VERSION_NUMBER) Print
291
+ only version number from bundler --version.
291
292
 
292
- o redirect (BUNDLE_REDIRECT): The number of redirects allowed for
293
- network requests. Defaults to 5.
293
+ o redirect (BUNDLE_REDIRECT): The number of redirects allowed for
294
+ network requests. Defaults to 5.
294
295
 
295
- o retry (BUNDLE_RETRY): The number of times to retry failed network
296
- requests. Defaults to 3.
296
+ o retry (BUNDLE_RETRY): The number of times to retry failed network
297
+ requests. Defaults to 3.
297
298
 
298
- o setup_makes_kernel_gem_public (BUNDLE_SETUP_MAKES_KERNEL_GEM_PUB-
299
- LIC): Have Bundler.setup make the Kernel#gem method public, even
300
- though RubyGems declares it as private.
299
+ o setup_makes_kernel_gem_public
300
+ (BUNDLE_SETUP_MAKES_KERNEL_GEM_PUBLIC): Have Bundler.setup make the
301
+ Kernel#gem method public, even though RubyGems declares it as
302
+ private.
301
303
 
302
304
  o shebang (BUNDLE_SHEBANG): The program name that should be invoked
303
- for generated binstubs. Defaults to the ruby install name used to
304
- generate the binstub.
305
+ for generated binstubs. Defaults to the ruby install name used to
306
+ generate the binstub.
305
307
 
306
308
  o silence_deprecations (BUNDLE_SILENCE_DEPRECATIONS): Whether Bundler
307
- should silence deprecation warnings for behavior that will be
308
- changed in the next major version.
309
+ should silence deprecation warnings for behavior that will be
310
+ changed in the next major version.
309
311
 
310
312
  o silence_root_warning (BUNDLE_SILENCE_ROOT_WARNING): Silence the
311
- warning Bundler prints when installing gems as root.
312
-
313
- o skip_default_git_sources (BUNDLE_SKIP_DEFAULT_GIT_SOURCES): Whether
314
- Bundler should skip adding default git source shortcuts to the Gem-
315
- file DSL.
313
+ warning Bundler prints when installing gems as root.
316
314
 
317
315
  o specific_platform (BUNDLE_SPECIFIC_PLATFORM): Allow bundler to
318
- resolve for the specific running platform and store it in the lock-
319
- file, instead of only using a generic platform. A specific platform
320
- is the exact platform triple reported by Gem::Platform.local, such
321
- as x86_64-darwin-16 or universal-java-1.8. On the other hand,
322
- generic platforms are those such as ruby, mswin, or java. In this
323
- example, x86_64-darwin-16 would map to ruby and universal-java-1.8
324
- to java.
325
-
326
- o ssl_ca_cert (BUNDLE_SSL_CA_CERT): Path to a designated CA certifi-
327
- cate file or folder containing multiple certificates for trusted
328
- CAs in PEM format.
316
+ resolve for the specific running platform and store it in the
317
+ lockfile, instead of only using a generic platform. A specific
318
+ platform is the exact platform triple reported by
319
+ Gem::Platform.local, such as x86_64-darwin-16 or
320
+ universal-java-1.8. On the other hand, generic platforms are those
321
+ such as ruby, mswin, or java. In this example, x86_64-darwin-16
322
+ would map to ruby and universal-java-1.8 to java.
323
+
324
+ o ssl_ca_cert (BUNDLE_SSL_CA_CERT): Path to a designated CA
325
+ certificate file or folder containing multiple certificates for
326
+ trusted CAs in PEM format.
329
327
 
330
328
  o ssl_client_cert (BUNDLE_SSL_CLIENT_CERT): Path to a designated file
331
- containing a X.509 client certificate and key in PEM format.
329
+ containing a X.509 client certificate and key in PEM format.
332
330
 
333
331
  o ssl_verify_mode (BUNDLE_SSL_VERIFY_MODE): The SSL verification mode
334
- Bundler uses when making HTTPS requests. Defaults to verify peer.
332
+ Bundler uses when making HTTPS requests. Defaults to verify peer.
335
333
 
336
- o suppress_install_using_messages (BUNDLE_SUPPRESS_INSTALL_USING_MES-
337
- SAGES): Avoid printing Using ... messages during installation when
338
- the version of a gem has not changed.
334
+ o suppress_install_using_messages
335
+ (BUNDLE_SUPPRESS_INSTALL_USING_MESSAGES): Avoid printing Using ...
336
+ messages during installation when the version of a gem has not
337
+ changed.
339
338
 
340
- o system_bindir (BUNDLE_SYSTEM_BINDIR): The location where RubyGems
341
- installs binstubs. Defaults to Gem.bindir.
339
+ o system_bindir (BUNDLE_SYSTEM_BINDIR): The location where RubyGems
340
+ installs binstubs. Defaults to Gem.bindir.
342
341
 
343
342
  o timeout (BUNDLE_TIMEOUT): The seconds allowed before timing out for
344
- network requests. Defaults to 10.
343
+ network requests. Defaults to 10.
345
344
 
346
- o unlock_source_unlocks_spec (BUNDLE_UNLOCK_SOURCE_UNLOCKS_SPEC):
347
- Whether running bundle update --source NAME unlocks a gem with the
348
- given name. Defaults to true.
345
+ o unlock_source_unlocks_spec (BUNDLE_UNLOCK_SOURCE_UNLOCKS_SPEC):
346
+ Whether running bundle update --source NAME unlocks a gem with the
347
+ given name. Defaults to true.
349
348
 
350
- o update_requires_all_flag (BUNDLE_UPDATE_REQUIRES_ALL_FLAG) Require
351
- passing --all to bundle update when everything should be updated,
352
- and disallow passing no options to bundle update.
349
+ o update_requires_all_flag (BUNDLE_UPDATE_REQUIRES_ALL_FLAG) Require
350
+ passing --all to bundle update when everything should be updated,
351
+ and disallow passing no options to bundle update.
353
352
 
354
- o user_agent (BUNDLE_USER_AGENT): The custom user agent fragment
355
- Bundler includes in API requests.
353
+ o user_agent (BUNDLE_USER_AGENT): The custom user agent fragment
354
+ Bundler includes in API requests.
356
355
 
357
356
  o with (BUNDLE_WITH): A :-separated list of groups whose gems bundler
358
- should install.
357
+ should install.
359
358
 
360
- o without (BUNDLE_WITHOUT): A :-separated list of groups whose gems
361
- bundler should not install.
359
+ o without (BUNDLE_WITHOUT): A :-separated list of groups whose gems
360
+ bundler should not install.
362
361
 
363
362
 
364
363
 
365
- In general, you should set these settings per-application by using the
366
- applicable flag to the bundle install(1) bundle-install.1.html or bun-
367
- dle package(1) bundle-package.1.html command.
364
+ In general, you should set these settings per-application by using the
365
+ applicable flag to the bundle install(1) bundle-install.1.html or
366
+ bundle package(1) bundle-package.1.html command.
368
367
 
369
- You can set them globally either via environment variables or bundle
370
- config, whichever is preferable for your setup. If you use both, envi-
371
- ronment variables will take preference over global settings.
368
+ You can set them globally either via environment variables or bundle
369
+ config, whichever is preferable for your setup. If you use both,
370
+ environment variables will take preference over global settings.
372
371
 
373
372
  LOCAL GIT REPOS
374
- Bundler also allows you to work against a git repository locally
373
+ Bundler also allows you to work against a git repository locally
375
374
  instead of using the remote version. This can be achieved by setting up
376
375
  a local override:
377
376
 
378
377
 
379
378
 
380
- bundle config set local.GEM_NAME /path/to/local/git/repository
379
+ bundle config set local.GEM_NAME /path/to/local/git/repository
381
380
 
382
381
 
383
382
 
@@ -386,59 +385,59 @@ LOCAL GIT REPOS
386
385
 
387
386
 
388
387
 
389
- bundle config set local.rack ~/Work/git/rack
388
+ bundle config set local.rack ~/Work/git/rack
390
389
 
391
390
 
392
391
 
393
- Now instead of checking out the remote git repository, the local over-
394
- ride will be used. Similar to a path source, every time the local git
395
- repository change, changes will be automatically picked up by Bundler.
396
- This means a commit in the local git repo will update the revision in
397
- the Gemfile.lock to the local git repo revision. This requires the same
398
- attention as git submodules. Before pushing to the remote, you need to
399
- ensure the local override was pushed, otherwise you may point to a com-
400
- mit that only exists in your local machine. You'll also need to CGI
401
- escape your usernames and passwords as well.
392
+ Now instead of checking out the remote git repository, the local
393
+ override will be used. Similar to a path source, every time the local
394
+ git repository change, changes will be automatically picked up by
395
+ Bundler. This means a commit in the local git repo will update the
396
+ revision in the Gemfile.lock to the local git repo revision. This
397
+ requires the same attention as git submodules. Before pushing to the
398
+ remote, you need to ensure the local override was pushed, otherwise you
399
+ may point to a commit that only exists in your local machine. You'll
400
+ also need to CGI escape your usernames and passwords as well.
402
401
 
403
- Bundler does many checks to ensure a developer won't work with invalid
404
- references. Particularly, we force a developer to specify a branch in
405
- the Gemfile in order to use this feature. If the branch specified in
406
- the Gemfile and the current branch in the local git repository do not
407
- match, Bundler will abort. This ensures that a developer is always
408
- working against the correct branches, and prevents accidental locking
402
+ Bundler does many checks to ensure a developer won't work with invalid
403
+ references. Particularly, we force a developer to specify a branch in
404
+ the Gemfile in order to use this feature. If the branch specified in
405
+ the Gemfile and the current branch in the local git repository do not
406
+ match, Bundler will abort. This ensures that a developer is always
407
+ working against the correct branches, and prevents accidental locking
409
408
  to a different branch.
410
409
 
411
- Finally, Bundler also ensures that the current revision in the Gem-
412
- file.lock exists in the local git repository. By doing this, Bundler
410
+ Finally, Bundler also ensures that the current revision in the
411
+ Gemfile.lock exists in the local git repository. By doing this, Bundler
413
412
  forces you to fetch the latest changes in the remotes.
414
413
 
415
414
  MIRRORS OF GEM SOURCES
416
- Bundler supports overriding gem sources with mirrors. This allows you
415
+ Bundler supports overriding gem sources with mirrors. This allows you
417
416
  to configure rubygems.org as the gem source in your Gemfile while still
418
417
  using your mirror to fetch gems.
419
418
 
420
419
 
421
420
 
422
- bundle config set mirror.SOURCE_URL MIRROR_URL
421
+ bundle config set mirror.SOURCE_URL MIRROR_URL
423
422
 
424
423
 
425
424
 
426
- For example, to use a mirror of rubygems.org hosted at rubygems-mir-
427
- ror.org:
425
+ For example, to use a mirror of rubygems.org hosted at
426
+ rubygems-mirror.org:
428
427
 
429
428
 
430
429
 
431
- bundle config set mirror.http://rubygems.org http://rubygems-mirror.org
430
+ bundle config set mirror.http://rubygems.org http://rubygems-mirror.org
432
431
 
433
432
 
434
433
 
435
- Each mirror also provides a fallback timeout setting. If the mirror
436
- does not respond within the fallback timeout, Bundler will try to use
434
+ Each mirror also provides a fallback timeout setting. If the mirror
435
+ does not respond within the fallback timeout, Bundler will try to use
437
436
  the original server instead of the mirror.
438
437
 
439
438
 
440
439
 
441
- bundle config set mirror.SOURCE_URL.fallback_timeout TIMEOUT
440
+ bundle config set mirror.SOURCE_URL.fallback_timeout TIMEOUT
442
441
 
443
442
 
444
443
 
@@ -446,29 +445,29 @@ MIRRORS OF GEM SOURCES
446
445
 
447
446
 
448
447
 
449
- bundle config set mirror.https://rubygems.org.fallback_timeout 3
448
+ bundle config set mirror.https://rubygems.org.fallback_timeout 3
450
449
 
451
450
 
452
451
 
453
- The default fallback timeout is 0.1 seconds, but the setting can cur-
454
- rently only accept whole seconds (for example, 1, 15, or 30).
452
+ The default fallback timeout is 0.1 seconds, but the setting can
453
+ currently only accept whole seconds (for example, 1, 15, or 30).
455
454
 
456
455
  CREDENTIALS FOR GEM SOURCES
457
- Bundler allows you to configure credentials for any gem source, which
456
+ Bundler allows you to configure credentials for any gem source, which
458
457
  allows you to avoid putting secrets into your Gemfile.
459
458
 
460
459
 
461
460
 
462
- bundle config set SOURCE_HOSTNAME USERNAME:PASSWORD
461
+ bundle config set SOURCE_HOSTNAME USERNAME:PASSWORD
463
462
 
464
463
 
465
464
 
466
- For example, to save the credentials of user claudette for the gem
465
+ For example, to save the credentials of user claudette for the gem
467
466
  source at gems.longerous.com, you would run:
468
467
 
469
468
 
470
469
 
471
- bundle config set gems.longerous.com claudette:s00pers3krit
470
+ bundle config set gems.longerous.com claudette:s00pers3krit
472
471
 
473
472
 
474
473
 
@@ -476,7 +475,7 @@ CREDENTIALS FOR GEM SOURCES
476
475
 
477
476
 
478
477
 
479
- export BUNDLE_GEMS__LONGEROUS__COM="claudette:s00pers3krit"
478
+ export BUNDLE_GEMS__LONGEROUS__COM="claudette:s00pers3krit"
480
479
 
481
480
 
482
481
 
@@ -485,7 +484,7 @@ CREDENTIALS FOR GEM SOURCES
485
484
 
486
485
 
487
486
 
488
- bundle config set https://github.com/bundler/bundler.git username:password
487
+ bundle config set https://github.com/bundler/bundler.git username:password
489
488
 
490
489
 
491
490
 
@@ -493,36 +492,36 @@ CREDENTIALS FOR GEM SOURCES
493
492
 
494
493
 
495
494
 
496
- export BUNDLE_GITHUB__COM=username:password
495
+ export BUNDLE_GITHUB__COM=username:password
497
496
 
498
497
 
499
498
 
500
- This is especially useful for private repositories on hosts such as
499
+ This is especially useful for private repositories on hosts such as
501
500
  Github, where you can use personal OAuth tokens:
502
501
 
503
502
 
504
503
 
505
- export BUNDLE_GITHUB__COM=abcd0123generatedtoken:x-oauth-basic
504
+ export BUNDLE_GITHUB__COM=abcd0123generatedtoken:x-oauth-basic
506
505
 
507
506
 
508
507
 
509
508
  CONFIGURE BUNDLER DIRECTORIES
510
- Bundler's home, config, cache and plugin directories are able to be
511
- configured through environment variables. The default location for
512
- Bundler's home directory is ~/.bundle, which all directories inherit
513
- from by default. The following outlines the available environment vari-
514
- ables and their default values
509
+ Bundler's home, config, cache and plugin directories are able to be
510
+ configured through environment variables. The default location for
511
+ Bundler's home directory is ~/.bundle, which all directories inherit
512
+ from by default. The following outlines the available environment
513
+ variables and their default values
515
514
 
516
515
 
517
516
 
518
- BUNDLE_USER_HOME : $HOME/.bundle
519
- BUNDLE_USER_CACHE : $BUNDLE_USER_HOME/cache
520
- BUNDLE_USER_CONFIG : $BUNDLE_USER_HOME/config
521
- BUNDLE_USER_PLUGIN : $BUNDLE_USER_HOME/plugin
517
+ BUNDLE_USER_HOME : $HOME/.bundle
518
+ BUNDLE_USER_CACHE : $BUNDLE_USER_HOME/cache
519
+ BUNDLE_USER_CONFIG : $BUNDLE_USER_HOME/config
520
+ BUNDLE_USER_PLUGIN : $BUNDLE_USER_HOME/plugin
522
521
 
523
522
 
524
523
 
525
524
 
526
525
 
527
526
 
528
- December 2019 BUNDLE-CONFIG(1)
527
+ July 2020 BUNDLE-CONFIG(1)