bundler 1.16.1 → 1.17.3

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 (143) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +195 -0
  3. data/README.md +5 -1
  4. data/bundler.gemspec +9 -2
  5. data/lib/bundler/build_metadata.rb +19 -4
  6. data/lib/bundler/cli/add.rb +15 -5
  7. data/lib/bundler/cli/binstubs.rb +8 -2
  8. data/lib/bundler/cli/check.rb +1 -1
  9. data/lib/bundler/cli/doctor.rb +47 -1
  10. data/lib/bundler/cli/exec.rb +4 -4
  11. data/lib/bundler/cli/gem.rb +5 -2
  12. data/lib/bundler/cli/init.rb +5 -0
  13. data/lib/bundler/cli/install.rb +10 -7
  14. data/lib/bundler/cli/list.rb +41 -5
  15. data/lib/bundler/cli/outdated.rb +8 -2
  16. data/lib/bundler/cli/pristine.rb +4 -0
  17. data/lib/bundler/cli/remove.rb +18 -0
  18. data/lib/bundler/cli/update.rb +3 -3
  19. data/lib/bundler/cli.rb +66 -22
  20. data/lib/bundler/compact_index_client/updater.rb +10 -1
  21. data/lib/bundler/current_ruby.rb +8 -1
  22. data/lib/bundler/definition.rb +48 -39
  23. data/lib/bundler/dep_proxy.rb +2 -2
  24. data/lib/bundler/dependency.rb +3 -2
  25. data/lib/bundler/deprecate.rb +2 -1
  26. data/lib/bundler/dsl.rb +19 -3
  27. data/lib/bundler/endpoint_specification.rb +1 -1
  28. data/lib/bundler/env.rb +10 -8
  29. data/lib/bundler/feature_flag.rb +7 -0
  30. data/lib/bundler/fetcher/downloader.rb +10 -5
  31. data/lib/bundler/fetcher/index.rb +2 -2
  32. data/lib/bundler/fetcher.rb +3 -3
  33. data/lib/bundler/friendly_errors.rb +2 -0
  34. data/lib/bundler/gem_helper.rb +1 -1
  35. data/lib/bundler/gem_version_promoter.rb +16 -2
  36. data/lib/bundler/injector.rb +173 -14
  37. data/lib/bundler/installer/gem_installer.rb +9 -2
  38. data/lib/bundler/installer/parallel_installer.rb +6 -1
  39. data/lib/bundler/installer.rb +41 -10
  40. data/lib/bundler/lazy_specification.rb +1 -1
  41. data/lib/bundler/mirror.rb +2 -2
  42. data/lib/bundler/plugin/events.rb +61 -0
  43. data/lib/bundler/plugin/index.rb +7 -2
  44. data/lib/bundler/plugin.rb +12 -5
  45. data/lib/bundler/process_lock.rb +1 -1
  46. data/lib/bundler/resolver/spec_group.rb +0 -5
  47. data/lib/bundler/resolver.rb +11 -10
  48. data/lib/bundler/ruby_version.rb +1 -1
  49. data/lib/bundler/rubygems_gem_installer.rb +7 -0
  50. data/lib/bundler/rubygems_integration.rb +9 -3
  51. data/lib/bundler/runtime.rb +10 -4
  52. data/lib/bundler/settings/validator.rb +23 -0
  53. data/lib/bundler/settings.rb +24 -3
  54. data/lib/bundler/shared_helpers.rb +33 -5
  55. data/lib/bundler/source/git/git_proxy.rb +6 -1
  56. data/lib/bundler/source/git.rb +2 -1
  57. data/lib/bundler/source/metadata.rb +2 -3
  58. data/lib/bundler/source/rubygems/remote.rb +4 -1
  59. data/lib/bundler/source/rubygems.rb +11 -2
  60. data/lib/bundler/source.rb +9 -9
  61. data/lib/bundler/spec_set.rb +4 -1
  62. data/lib/bundler/templates/Executable +1 -1
  63. data/lib/bundler/templates/newgem/lib/newgem.rb.tt +1 -0
  64. data/lib/bundler/templates/newgem/newgem.gemspec.tt +8 -2
  65. data/lib/bundler/templates/newgem/travis.yml.tt +2 -0
  66. data/lib/bundler/ui/shell.rb +3 -1
  67. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb +11 -1
  68. data/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +7 -2
  69. data/lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb +1 -1
  70. data/lib/bundler/version.rb +1 -1
  71. data/lib/bundler.rb +38 -16
  72. data/man/bundle-add.1 +18 -3
  73. data/man/bundle-add.1.txt +17 -5
  74. data/man/bundle-add.ronn +13 -2
  75. data/man/bundle-binstubs.1 +4 -4
  76. data/man/bundle-binstubs.1.txt +4 -4
  77. data/man/bundle-binstubs.ronn +3 -3
  78. data/man/bundle-check.1 +4 -4
  79. data/man/bundle-check.1.txt +6 -5
  80. data/man/bundle-check.ronn +3 -3
  81. data/man/bundle-clean.1 +1 -1
  82. data/man/bundle-clean.1.txt +1 -1
  83. data/man/bundle-config.1 +48 -6
  84. data/man/bundle-config.1.txt +64 -26
  85. data/man/bundle-config.ronn +34 -9
  86. data/man/bundle-doctor.1 +44 -0
  87. data/man/bundle-doctor.1.txt +44 -0
  88. data/man/bundle-doctor.ronn +33 -0
  89. data/man/bundle-exec.1 +4 -4
  90. data/man/bundle-exec.1.txt +9 -9
  91. data/man/bundle-exec.ronn +3 -3
  92. data/man/bundle-gem.1 +2 -2
  93. data/man/bundle-gem.1.txt +2 -2
  94. data/man/bundle-gem.ronn +1 -1
  95. data/man/bundle-info.1 +1 -1
  96. data/man/bundle-info.1.txt +1 -1
  97. data/man/bundle-init.1 +9 -4
  98. data/man/bundle-init.1.txt +16 -6
  99. data/man/bundle-init.ronn +15 -4
  100. data/man/bundle-inject.1 +4 -4
  101. data/man/bundle-inject.1.txt +5 -5
  102. data/man/bundle-inject.ronn +3 -3
  103. data/man/bundle-install.1 +7 -4
  104. data/man/bundle-install.1.txt +119 -108
  105. data/man/bundle-install.ronn +13 -4
  106. data/man/bundle-list.1 +32 -2
  107. data/man/bundle-list.1.txt +24 -2
  108. data/man/bundle-list.ronn +19 -1
  109. data/man/bundle-lock.1 +2 -2
  110. data/man/bundle-lock.1.txt +2 -2
  111. data/man/bundle-lock.ronn +1 -1
  112. data/man/bundle-open.1 +1 -1
  113. data/man/bundle-open.1.txt +1 -1
  114. data/man/bundle-outdated.1 +7 -3
  115. data/man/bundle-outdated.1.txt +11 -7
  116. data/man/bundle-outdated.ronn +5 -1
  117. data/man/bundle-package.1 +3 -3
  118. data/man/bundle-package.1.txt +6 -6
  119. data/man/bundle-package.ronn +3 -3
  120. data/man/bundle-platform.1 +1 -1
  121. data/man/bundle-platform.1.txt +1 -1
  122. data/man/bundle-pristine.1 +1 -1
  123. data/man/bundle-pristine.1.txt +1 -1
  124. data/man/bundle-remove.1 +31 -0
  125. data/man/bundle-remove.1.txt +34 -0
  126. data/man/bundle-remove.ronn +23 -0
  127. data/man/bundle-show.1 +3 -3
  128. data/man/bundle-show.1.txt +6 -4
  129. data/man/bundle-show.ronn +3 -2
  130. data/man/bundle-update.1 +17 -13
  131. data/man/bundle-update.1.txt +68 -63
  132. data/man/bundle-update.ronn +19 -15
  133. data/man/bundle-viz.1 +2 -2
  134. data/man/bundle-viz.1.txt +3 -2
  135. data/man/bundle-viz.ronn +1 -1
  136. data/man/bundle.1 +32 -28
  137. data/man/bundle.1.txt +31 -28
  138. data/man/bundle.ronn +30 -27
  139. data/man/gemfile.5 +19 -9
  140. data/man/gemfile.5.ronn +24 -9
  141. data/man/gemfile.5.txt +114 -97
  142. data/man/index.txt +2 -0
  143. metadata +16 -3
data/man/bundle-info.1 CHANGED
@@ -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\-INFO" "1" "February 2017" "" ""
4
+ .TH "BUNDLE\-INFO" "1" "November 2018" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-info\fR \- Show information for the given gem in your bundle
@@ -18,4 +18,4 @@ OPTIONS
18
18
 
19
19
 
20
20
 
21
- February 2017 BUNDLE-INFO(1)
21
+ November 2018 BUNDLE-INFO(1)
data/man/bundle-init.1 CHANGED
@@ -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\-INIT" "1" "February 2017" "" ""
4
+ .TH "BUNDLE\-INIT" "1" "November 2018" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-init\fR \- Generates a Gemfile into the current working directory
@@ -10,11 +10,16 @@
10
10
  \fBbundle init\fR [\-\-gemspec=FILE]
11
11
  .
12
12
  .SH "DESCRIPTION"
13
- Init generates a default \fBGemfile(5)\fR in the current working directory\. When adding a \fBGemfile(5)\fR to a gem with a gemspec, the \fB\-\-gemspec\fR option will automatically add each dependency listed in the gemspec file to the newly created \fBGemfile(5)\fR\.
13
+ Init generates a default [\fBGemfile(5)\fR][Gemfile(5)] in the current working directory\. When adding a [\fBGemfile(5)\fR][Gemfile(5)] to a gem with a gemspec, the \fB\-\-gemspec\fR option will automatically add each dependency listed in the gemspec file to the newly created [\fBGemfile(5)\fR][Gemfile(5)]\.
14
14
  .
15
15
  .SH "OPTIONS"
16
16
  .
17
17
  .TP
18
18
  \fB\-\-gemspec\fR
19
- Use the specified \.gemspec to create the \fBGemfile(5)\fR
20
-
19
+ Use the specified \.gemspec to create the [\fBGemfile(5)\fR][Gemfile(5)]
20
+ .
21
+ .SH "FILES"
22
+ Included in the default [\fBGemfile(5)\fR][Gemfile(5)] generated is the line \fB# frozen_string_literal: true\fR\. This is a magic comment supported for the first time in Ruby 2\.3\. The presence of this line results in all string literals in the file being implicitly frozen\.
23
+ .
24
+ .SH "SEE ALSO"
25
+ Gemfile(5) \fIhttp://bundler\.io/man/gemfile\.5\.html\fR
@@ -9,16 +9,26 @@ SYNOPSIS
9
9
  bundle init [--gemspec=FILE]
10
10
 
11
11
  DESCRIPTION
12
- Init generates a default Gemfile(5) in the current working directory.
13
- When adding a Gemfile(5) to a gem with a gemspec, the --gemspec option
14
- will automatically add each dependency listed in the gemspec file to
15
- the newly created Gemfile(5).
12
+ Init generates a default [Gemfile(5)][Gemfile(5)] in the current work-
13
+ ing directory. When adding a [Gemfile(5)][Gemfile(5)] to a gem with a
14
+ gemspec, the --gemspec option will automatically add each dependency
15
+ listed in the gemspec file to the newly created [Gemfile(5)][Gem-
16
+ file(5)].
16
17
 
17
18
  OPTIONS
18
19
  --gemspec
19
- Use the specified .gemspec to create the Gemfile(5)
20
+ Use the specified .gemspec to create the [Gemfile(5)][Gem-
21
+ file(5)]
20
22
 
23
+ FILES
24
+ Included in the default [Gemfile(5)][Gemfile(5)] generated is the line
25
+ # frozen_string_literal: true. This is a magic comment supported for
26
+ the first time in Ruby 2.3. The presence of this line results in all
27
+ string literals in the file being implicitly frozen.
21
28
 
29
+ SEE ALSO
30
+ Gemfile(5) http://bundler.io/man/gemfile.5.html
22
31
 
23
32
 
24
- February 2017 BUNDLE-INIT(1)
33
+
34
+ November 2018 BUNDLE-INIT(1)
data/man/bundle-init.ronn CHANGED
@@ -7,12 +7,23 @@ bundle-init(1) -- Generates a Gemfile into the current working directory
7
7
 
8
8
  ## DESCRIPTION
9
9
 
10
- Init generates a default `Gemfile(5)` in the current working directory. When
11
- adding a `Gemfile(5)` to a gem with a gemspec, the `--gemspec` option will
10
+ Init generates a default [`Gemfile(5)`][Gemfile(5)] in the current working directory. When
11
+ adding a [`Gemfile(5)`][Gemfile(5)] to a gem with a gemspec, the `--gemspec` option will
12
12
  automatically add each dependency listed in the gemspec file to the newly
13
- created `Gemfile(5)`.
13
+ created [`Gemfile(5)`][Gemfile(5)].
14
14
 
15
15
  ## OPTIONS
16
16
 
17
17
  * `--gemspec`:
18
- Use the specified .gemspec to create the `Gemfile(5)`
18
+ Use the specified .gemspec to create the [`Gemfile(5)`][Gemfile(5)]
19
+
20
+ ## FILES
21
+
22
+ Included in the default [`Gemfile(5)`][Gemfile(5)]
23
+ generated is the line `# frozen_string_literal: true`. This is a magic comment
24
+ supported for the first time in Ruby 2.3. The presence of this line
25
+ results in all string literals in the file being implicitly frozen.
26
+
27
+ ## SEE ALSO
28
+
29
+ [Gemfile(5)](http://bundler.io/man/gemfile.5.html)
data/man/bundle-inject.1 CHANGED
@@ -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\-INJECT" "1" "February 2017" "" ""
4
+ .TH "BUNDLE\-INJECT" "1" "November 2018" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-inject\fR \- Add named gem(s) with version requirements to Gemfile
@@ -10,10 +10,10 @@
10
10
  \fBbundle inject\fR [GEM] [VERSION]
11
11
  .
12
12
  .SH "DESCRIPTION"
13
- Adds the named gem(s) with their version requirements to the resolved \fBGemfile(5)\fR\.
13
+ Adds the named gem(s) with their version requirements to the resolved [\fBGemfile(5)\fR][Gemfile(5)]\.
14
14
  .
15
15
  .P
16
- This command will add the gem to both your \fBGemfile(5)\fR and Gemfile\.lock if it isn\'t listed yet\.
16
+ This command will add the gem to both your [\fBGemfile(5)\fR][Gemfile(5)] and Gemfile\.lock if it isn\'t listed yet\.
17
17
  .
18
18
  .P
19
19
  Example:
@@ -30,4 +30,4 @@ bundle inject \'rack\' \'> 0\'
30
30
  .IP "" 0
31
31
  .
32
32
  .P
33
- This will inject the \'rack\' gem with a version greater than 0 in your \fBGemfile(5)\fR and Gemfile\.lock
33
+ This will inject the \'rack\' gem with a version greater than 0 in your [\fBGemfile(5)\fR][Gemfile(5)] and Gemfile\.lock
@@ -10,10 +10,10 @@ SYNOPSIS
10
10
 
11
11
  DESCRIPTION
12
12
  Adds the named gem(s) with their version requirements to the resolved
13
- Gemfile(5).
13
+ [Gemfile(5)][Gemfile(5)].
14
14
 
15
- This command will add the gem to both your Gemfile(5) and Gemfile.lock
16
- if it isn't listed yet.
15
+ This command will add the gem to both your [Gemfile(5)][Gemfile(5)] and
16
+ Gemfile.lock if it isn't listed yet.
17
17
 
18
18
  Example:
19
19
 
@@ -25,8 +25,8 @@ DESCRIPTION
25
25
 
26
26
 
27
27
  This will inject the 'rack' gem with a version greater than 0 in your
28
- Gemfile(5) and Gemfile.lock
28
+ [Gemfile(5)][Gemfile(5)] and Gemfile.lock
29
29
 
30
30
 
31
31
 
32
- February 2017 BUNDLE-INJECT(1)
32
+ November 2018 BUNDLE-INJECT(1)
@@ -8,9 +8,9 @@ bundle-inject(1) -- Add named gem(s) with version requirements to Gemfile
8
8
  ## DESCRIPTION
9
9
 
10
10
  Adds the named gem(s) with their version requirements to the resolved
11
- `Gemfile(5)`.
11
+ [`Gemfile(5)`][Gemfile(5)].
12
12
 
13
- This command will add the gem to both your `Gemfile(5)` and Gemfile.lock if it
13
+ This command will add the gem to both your [`Gemfile(5)`][Gemfile(5)] and Gemfile.lock if it
14
14
  isn't listed yet.
15
15
 
16
16
  Example:
@@ -19,4 +19,4 @@ Example:
19
19
  bundle inject 'rack' '> 0'
20
20
 
21
21
  This will inject the 'rack' gem with a version greater than 0 in your
22
- `Gemfile(5)` and Gemfile.lock
22
+ [`Gemfile(5)`][Gemfile(5)] and Gemfile.lock
data/man/bundle-install.1 CHANGED
@@ -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\-INSTALL" "1" "December 2017" "" ""
4
+ .TH "BUNDLE\-INSTALL" "1" "December 2018" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-install\fR \- Install the dependencies specified in your Gemfile
@@ -35,7 +35,7 @@ In \fIdeployment mode\fR, Bundler will \'roll\-out\' the bundle for production o
35
35
  .
36
36
  .TP
37
37
  \fB\-\-force\fR
38
- Force download every gem, even if the required versions are already available locally\.
38
+ Force download every gem, even if the required versions are already available locally\. \fB\-\-redownload\fR is an alias of this option\.
39
39
  .
40
40
  .TP
41
41
  \fB\-\-frozen\fR
@@ -221,7 +221,10 @@ Bundler uses this file in all subsequent calls to \fBbundle install\fR, which gu
221
221
  Because of the way dependency resolution works, even a seemingly small change (for instance, an update to a point\-release of a dependency of a gem in your Gemfile(5)) can result in radically different gems being needed to satisfy all dependencies\.
222
222
  .
223
223
  .P
224
- As a result, you \fBSHOULD\fR check your \fBGemfile\.lock\fR into version control\. If you do not, every machine that checks out your repository (including your production server) will resolve all dependencies again, which will result in different versions of third\-party code being used if \fBany\fR of the gems in the Gemfile(5) or any of their dependencies have been updated\.
224
+ As a result, you \fBSHOULD\fR check your \fBGemfile\.lock\fR into version control, in both applications and gems\. If you do not, every machine that checks out your repository (including your production server) will resolve all dependencies again, which will result in different versions of third\-party code being used if \fBany\fR of the gems in the Gemfile(5) or any of their dependencies have been updated\.
225
+ .
226
+ .P
227
+ When Bundler first shipped, the \fBGemfile\.lock\fR was included in the \fB\.gitignore\fR file included with generated gems\. Over time, however, it became clear that this practice forces the pain of broken dependencies onto new contributors, while leaving existing contributors potentially unaware of the problem\. Since \fBbundle install\fR is usually the first step towards a contribution, the pain of broken dependencies would discourage new contributors from contributing\. As a result, we have revised our guidance for gem authors to now recommend checking in the lock for gems\.
225
228
  .
226
229
  .SH "CONSERVATIVE UPDATING"
227
230
  When you make a change to the Gemfile(5) and then run \fBbundle install\fR, Bundler will update only the gems that you modified\.
@@ -291,7 +294,7 @@ Even though \fBactivemerchant\fR declares a very loose dependency that theoretic
291
294
  To explicitly update \fBactionpack\fR, including its dependencies which other gems in the Gemfile(5) still depend on, run \fBbundle update actionpack\fR (see \fBbundle update(1)\fR)\.
292
295
  .
293
296
  .P
294
- \fBSummary\fR: In general, after making a change to the Gemfile(5) , you should first try to run \fBbundle install\fR, which will guarantee that no other gem in the Gemfile(5) is impacted by the change\. If that does not work, run [bundle update(1)][bundle\-update]\.
297
+ \fBSummary\fR: In general, after making a change to the Gemfile(5) , you should first try to run \fBbundle install\fR, which will guarantee that no other gem in the Gemfile(5) is impacted by the change\. If that does not work, run bundle update(1) \fIbundle\-update\.1\.html\fR\.
295
298
  .
296
299
  .SH "SEE ALSO"
297
300
  .