bundler 2.4.22 → 2.5.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (156) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +63 -0
  3. data/bundler.gemspec +4 -2
  4. data/exe/bundle +1 -10
  5. data/lib/bundler/build_metadata.rb +3 -3
  6. data/lib/bundler/capistrano.rb +1 -1
  7. data/lib/bundler/checksum.rb +254 -0
  8. data/lib/bundler/ci_detector.rb +75 -0
  9. data/lib/bundler/cli/add.rb +3 -3
  10. data/lib/bundler/cli/binstubs.rb +4 -4
  11. data/lib/bundler/cli/cache.rb +1 -1
  12. data/lib/bundler/cli/check.rb +1 -1
  13. data/lib/bundler/cli/common.rb +9 -1
  14. data/lib/bundler/cli/config.rb +8 -7
  15. data/lib/bundler/cli/console.rb +3 -2
  16. data/lib/bundler/cli/doctor.rb +2 -2
  17. data/lib/bundler/cli/exec.rb +1 -1
  18. data/lib/bundler/cli/gem.rb +28 -23
  19. data/lib/bundler/cli/info.rb +2 -13
  20. data/lib/bundler/cli/install.rb +5 -4
  21. data/lib/bundler/cli/issue.rb +1 -1
  22. data/lib/bundler/cli/lock.rb +4 -4
  23. data/lib/bundler/cli/open.rb +1 -1
  24. data/lib/bundler/cli/outdated.rb +6 -6
  25. data/lib/bundler/cli/plugin.rb +7 -14
  26. data/lib/bundler/cli/pristine.rb +38 -30
  27. data/lib/bundler/cli/show.rb +2 -2
  28. data/lib/bundler/cli/update.rb +5 -5
  29. data/lib/bundler/cli.rb +215 -263
  30. data/lib/bundler/compact_index_client/cache.rb +29 -9
  31. data/lib/bundler/compact_index_client/cache_file.rb +153 -0
  32. data/lib/bundler/compact_index_client/gem_parser.rb +7 -3
  33. data/lib/bundler/compact_index_client/updater.rb +79 -81
  34. data/lib/bundler/compact_index_client.rb +14 -7
  35. data/lib/bundler/constants.rb +1 -1
  36. data/lib/bundler/current_ruby.rb +5 -21
  37. data/lib/bundler/definition.rb +42 -15
  38. data/lib/bundler/dependency.rb +16 -12
  39. data/lib/bundler/digest.rb +2 -2
  40. data/lib/bundler/dsl.rb +46 -30
  41. data/lib/bundler/endpoint_specification.rb +5 -1
  42. data/lib/bundler/env.rb +1 -3
  43. data/lib/bundler/errors.rb +43 -0
  44. data/lib/bundler/fetcher/base.rb +3 -1
  45. data/lib/bundler/fetcher/compact_index.rb +4 -4
  46. data/lib/bundler/fetcher/downloader.rb +13 -11
  47. data/lib/bundler/fetcher/gem_remote_fetcher.rb +16 -0
  48. data/lib/bundler/fetcher/index.rb +1 -1
  49. data/lib/bundler/fetcher.rb +28 -25
  50. data/lib/bundler/friendly_errors.rb +5 -5
  51. data/lib/bundler/gem_helper.rb +1 -1
  52. data/lib/bundler/gem_helpers.rb +5 -2
  53. data/lib/bundler/graph.rb +9 -9
  54. data/lib/bundler/index.rb +1 -2
  55. data/lib/bundler/injector.rb +1 -1
  56. data/lib/bundler/inline.rb +3 -3
  57. data/lib/bundler/installer/gem_installer.rb +5 -5
  58. data/lib/bundler/installer/parallel_installer.rb +16 -8
  59. data/lib/bundler/installer/standalone.rb +2 -3
  60. data/lib/bundler/installer.rb +9 -9
  61. data/lib/bundler/lazy_specification.rb +24 -17
  62. data/lib/bundler/lockfile_generator.rb +9 -0
  63. data/lib/bundler/lockfile_parser.rb +81 -10
  64. data/lib/bundler/man/bundle-add.1 +3 -26
  65. data/lib/bundler/man/bundle-binstubs.1 +4 -16
  66. data/lib/bundler/man/bundle-cache.1 +3 -24
  67. data/lib/bundler/man/bundle-check.1 +3 -12
  68. data/lib/bundler/man/bundle-clean.1 +3 -10
  69. data/lib/bundler/man/bundle-config.1 +20 -211
  70. data/lib/bundler/man/bundle-config.1.ronn +6 -0
  71. data/lib/bundler/man/bundle-console.1 +4 -22
  72. data/lib/bundler/man/bundle-doctor.1 +4 -18
  73. data/lib/bundler/man/bundle-exec.1 +12 -73
  74. data/lib/bundler/man/bundle-gem.1 +13 -49
  75. data/lib/bundler/man/bundle-help.1 +3 -7
  76. data/lib/bundler/man/bundle-info.1 +3 -9
  77. data/lib/bundler/man/bundle-init.1 +3 -12
  78. data/lib/bundler/man/bundle-inject.1 +6 -19
  79. data/lib/bundler/man/bundle-install.1 +27 -125
  80. data/lib/bundler/man/bundle-install.1.ronn +1 -0
  81. data/lib/bundler/man/bundle-list.1 +4 -19
  82. data/lib/bundler/man/bundle-lock.1 +5 -29
  83. data/lib/bundler/man/bundle-open.1 +7 -27
  84. data/lib/bundler/man/bundle-outdated.1 +3 -55
  85. data/lib/bundler/man/bundle-outdated.1.ronn +1 -0
  86. data/lib/bundler/man/bundle-platform.1 +5 -27
  87. data/lib/bundler/man/bundle-plugin.1 +3 -29
  88. data/lib/bundler/man/bundle-pristine.1 +5 -16
  89. data/lib/bundler/man/bundle-remove.1 +4 -14
  90. data/lib/bundler/man/bundle-show.1 +3 -10
  91. data/lib/bundler/man/bundle-update.1 +18 -137
  92. data/lib/bundler/man/bundle-version.1 +3 -16
  93. data/lib/bundler/man/bundle-viz.1 +4 -16
  94. data/lib/bundler/man/bundle.1 +5 -44
  95. data/lib/bundler/man/gemfile.5 +24 -301
  96. data/lib/bundler/man/gemfile.5.ronn +4 -0
  97. data/lib/bundler/match_metadata.rb +4 -0
  98. data/lib/bundler/match_platform.rb +1 -1
  99. data/lib/bundler/plugin/api/source.rb +3 -2
  100. data/lib/bundler/plugin/installer.rb +1 -1
  101. data/lib/bundler/plugin.rb +3 -3
  102. data/lib/bundler/resolver/base.rb +1 -1
  103. data/lib/bundler/resolver/incompatibility.rb +1 -1
  104. data/lib/bundler/resolver/spec_group.rb +1 -4
  105. data/lib/bundler/resolver.rb +16 -16
  106. data/lib/bundler/ruby_dsl.rb +20 -12
  107. data/lib/bundler/ruby_version.rb +1 -1
  108. data/lib/bundler/rubygems_ext.rb +24 -50
  109. data/lib/bundler/rubygems_gem_installer.rb +6 -56
  110. data/lib/bundler/rubygems_integration.rb +25 -94
  111. data/lib/bundler/runtime.rb +2 -2
  112. data/lib/bundler/self_manager.rb +23 -7
  113. data/lib/bundler/settings.rb +27 -7
  114. data/lib/bundler/setup.rb +4 -1
  115. data/lib/bundler/shared_helpers.rb +35 -13
  116. data/lib/bundler/source/git/git_proxy.rb +15 -15
  117. data/lib/bundler/source/git.rb +4 -3
  118. data/lib/bundler/source/metadata.rb +15 -15
  119. data/lib/bundler/source/path.rb +7 -6
  120. data/lib/bundler/source/rubygems.rb +21 -14
  121. data/lib/bundler/source.rb +2 -0
  122. data/lib/bundler/spec_set.rb +38 -10
  123. data/lib/bundler/stub_specification.rb +1 -0
  124. data/lib/bundler/templates/Executable.bundler +1 -1
  125. data/lib/bundler/templates/newgem/README.md.tt +3 -3
  126. data/lib/bundler/templates/newgem/Rakefile.tt +2 -6
  127. data/lib/bundler/templates/newgem/ext/newgem/Cargo.toml.tt +1 -1
  128. data/lib/bundler/templates/newgem/standard.yml.tt +1 -1
  129. data/lib/bundler/ui/shell.rb +1 -1
  130. data/lib/bundler/vendor/connection_pool/.document +1 -0
  131. data/lib/bundler/vendor/connection_pool/lib/connection_pool/version.rb +1 -1
  132. data/lib/bundler/vendor/connection_pool/lib/connection_pool.rb +53 -6
  133. data/lib/bundler/vendor/fileutils/.document +1 -0
  134. data/lib/bundler/vendor/fileutils/lib/fileutils.rb +8 -20
  135. data/lib/bundler/vendor/net-http-persistent/.document +1 -0
  136. data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/connection.rb +3 -3
  137. data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/pool.rb +2 -2
  138. data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/timed_stack_multi.rb +1 -1
  139. data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +34 -34
  140. data/lib/bundler/vendor/pub_grub/.document +1 -0
  141. data/lib/bundler/vendor/thor/.document +1 -0
  142. data/lib/bundler/vendor/tsort/.document +1 -0
  143. data/lib/bundler/vendor/tsort/lib/tsort.rb +3 -0
  144. data/lib/bundler/vendor/uri/.document +1 -0
  145. data/lib/bundler/vendor/uri/lib/uri/common.rb +256 -132
  146. data/lib/bundler/vendor/uri/lib/uri/generic.rb +1 -0
  147. data/lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +95 -31
  148. data/lib/bundler/vendor/uri/lib/uri/version.rb +1 -1
  149. data/lib/bundler/vendored_net_http.rb +8 -0
  150. data/lib/bundler/vendored_persistent.rb +0 -4
  151. data/lib/bundler/vendored_timeout.rb +8 -0
  152. data/lib/bundler/version.rb +1 -1
  153. data/lib/bundler/vlad.rb +1 -1
  154. data/lib/bundler/yaml_serializer.rb +3 -3
  155. data/lib/bundler.rb +41 -32
  156. metadata +18 -5
@@ -1,114 +1,81 @@
1
- .\" generated with Ronn/v0.7.3
2
- .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
- .
4
- .TH "BUNDLE\-UPDATE" "1" "October 2023" "" ""
5
- .
1
+ .\" generated with nRonn/v0.11.1
2
+ .\" https://github.com/n-ronn/nronn/tree/0.11.1
3
+ .TH "BUNDLE\-UPDATE" "1" "December 2023" ""
6
4
  .SH "NAME"
7
5
  \fBbundle\-update\fR \- Update your gems to the latest available versions
8
- .
9
6
  .SH "SYNOPSIS"
10
7
  \fBbundle update\fR \fI*gems\fR [\-\-all] [\-\-group=NAME] [\-\-source=NAME] [\-\-local] [\-\-ruby] [\-\-bundler[=VERSION]] [\-\-full\-index] [\-\-jobs=JOBS] [\-\-quiet] [\-\-patch|\-\-minor|\-\-major] [\-\-redownload] [\-\-strict] [\-\-conservative]
11
- .
12
8
  .SH "DESCRIPTION"
13
9
  Update the gems specified (all gems, if \fB\-\-all\fR flag is used), ignoring the previously installed gems specified in the \fBGemfile\.lock\fR\. In general, you should use bundle install(1) \fIbundle\-install\.1\.html\fR to install the same exact gems and versions across machines\.
14
- .
15
10
  .P
16
11
  You would use \fBbundle update\fR to explicitly update the version of a gem\.
17
- .
18
12
  .SH "OPTIONS"
19
- .
20
13
  .TP
21
14
  \fB\-\-all\fR
22
15
  Update all gems specified in Gemfile\.
23
- .
24
16
  .TP
25
17
  \fB\-\-group=<name>\fR, \fB\-g=[<name>]\fR
26
18
  Only update the gems in the specified group\. For instance, you can update all gems in the development group with \fBbundle update \-\-group development\fR\. You can also call \fBbundle update rails \-\-group test\fR to update the rails gem and all gems in the test group, for example\.
27
- .
28
19
  .TP
29
20
  \fB\-\-source=<name>\fR
30
21
  The name of a \fB:git\fR or \fB:path\fR source used in the Gemfile(5)\. For instance, with a \fB:git\fR source of \fBhttp://github\.com/rails/rails\.git\fR, you would call \fBbundle update \-\-source rails\fR
31
- .
32
22
  .TP
33
23
  \fB\-\-local\fR
34
24
  Do not attempt to fetch gems remotely and use the gem cache instead\.
35
- .
36
25
  .TP
37
26
  \fB\-\-ruby\fR
38
27
  Update the locked version of Ruby to the current version of Ruby\.
39
- .
40
28
  .TP
41
29
  \fB\-\-bundler\fR
42
30
  Update the locked version of bundler to the invoked bundler version\.
43
- .
44
31
  .TP
45
32
  \fB\-\-full\-index\fR
46
33
  Fall back to using the single\-file index of all gems\.
47
- .
48
34
  .TP
49
35
  \fB\-\-jobs=[<number>]\fR, \fB\-j[<number>]\fR
50
36
  Specify the number of jobs to run in parallel\. The default is the number of available processors\.
51
- .
52
37
  .TP
53
38
  \fB\-\-retry=[<number>]\fR
54
39
  Retry failed network or git requests for \fInumber\fR times\.
55
- .
56
40
  .TP
57
41
  \fB\-\-quiet\fR
58
42
  Only output warnings and errors\.
59
- .
60
43
  .TP
61
44
  \fB\-\-redownload\fR
62
45
  Force downloading every gem\.
63
- .
64
46
  .TP
65
47
  \fB\-\-patch\fR
66
48
  Prefer updating only to next patch version\.
67
- .
68
49
  .TP
69
50
  \fB\-\-minor\fR
70
51
  Prefer updating only to next minor version\.
71
- .
72
52
  .TP
73
53
  \fB\-\-major\fR
74
54
  Prefer updating to next major version (default)\.
75
- .
76
55
  .TP
77
56
  \fB\-\-strict\fR
78
57
  Do not allow any gem to be updated past latest \fB\-\-patch\fR | \fB\-\-minor\fR | \fB\-\-major\fR\.
79
- .
80
58
  .TP
81
59
  \fB\-\-conservative\fR
82
60
  Use bundle install conservative update behavior and do not allow indirect dependencies to be updated\.
83
- .
84
61
  .SH "UPDATING ALL GEMS"
85
62
  If you run \fBbundle update \-\-all\fR, bundler will ignore any previously installed gems and resolve all dependencies again based on the latest versions of all gems available in the sources\.
86
- .
87
63
  .P
88
64
  Consider the following Gemfile(5):
89
- .
90
65
  .IP "" 4
91
- .
92
66
  .nf
93
-
94
67
  source "https://rubygems\.org"
95
68
 
96
69
  gem "rails", "3\.0\.0\.rc"
97
70
  gem "nokogiri"
98
- .
99
71
  .fi
100
- .
101
72
  .IP "" 0
102
- .
103
73
  .P
104
74
  When you run bundle install(1) \fIbundle\-install\.1\.html\fR the first time, bundler will resolve all of the dependencies, all the way down, and install what you need:
105
- .
106
75
  .IP "" 4
107
- .
108
76
  .nf
109
-
110
- Fetching gem metadata from https://rubygems\.org/\.\.\.\.\.\.\.\.\.
111
- Resolving dependencies\.\.\.
77
+ Fetching gem metadata from https://rubygems\.org/\|\.\|\.\|\.\|\.\|\.\|\.\|\.\|\.\|\.
78
+ Resolving dependencies\|\.\|\.\|\.
112
79
  Installing builder 2\.1\.2
113
80
  Installing abstract 1\.0\.0
114
81
  Installing rack 1\.2\.8
@@ -138,55 +105,36 @@ Installing nokogiri 1\.6\.5
138
105
 
139
106
  Bundle complete! 2 Gemfile dependencies, 26 gems total\.
140
107
  Use `bundle show [gemname]` to see where a bundled gem is installed\.
141
- .
142
108
  .fi
143
- .
144
109
  .IP "" 0
145
- .
146
110
  .P
147
111
  As you can see, even though you have two gems in the Gemfile(5), your application needs 26 different gems in order to run\. Bundler remembers the exact versions it installed in \fBGemfile\.lock\fR\. The next time you run bundle install(1) \fIbundle\-install\.1\.html\fR, bundler skips the dependency resolution and installs the same gems as it installed last time\.
148
- .
149
112
  .P
150
- After checking in the \fBGemfile\.lock\fR into version control and cloning it on another machine, running bundle install(1) \fIbundle\-install\.1\.html\fR will \fIstill\fR install the gems that you installed last time\. You don\'t need to worry that a new release of \fBerubis\fR or \fBmail\fR changes the gems you use\.
151
- .
113
+ After checking in the \fBGemfile\.lock\fR into version control and cloning it on another machine, running bundle install(1) \fIbundle\-install\.1\.html\fR will \fIstill\fR install the gems that you installed last time\. You don't need to worry that a new release of \fBerubis\fR or \fBmail\fR changes the gems you use\.
152
114
  .P
153
115
  However, from time to time, you might want to update the gems you are using to the newest versions that still match the gems in your Gemfile(5)\.
154
- .
155
116
  .P
156
117
  To do this, run \fBbundle update \-\-all\fR, which will ignore the \fBGemfile\.lock\fR, and resolve all the dependencies again\. Keep in mind that this process can result in a significantly different set of the 25 gems, based on the requirements of new gems that the gem authors released since the last time you ran \fBbundle update \-\-all\fR\.
157
- .
158
118
  .SH "UPDATING A LIST OF GEMS"
159
119
  Sometimes, you want to update a single gem in the Gemfile(5), and leave the rest of the gems that you specified locked to the versions in the \fBGemfile\.lock\fR\.
160
- .
161
120
  .P
162
121
  For instance, in the scenario above, imagine that \fBnokogiri\fR releases version \fB1\.4\.4\fR, and you want to update it \fIwithout\fR updating Rails and all of its dependencies\. To do this, run \fBbundle update nokogiri\fR\.
163
- .
164
122
  .P
165
123
  Bundler will update \fBnokogiri\fR and any of its dependencies, but leave alone Rails and its dependencies\.
166
- .
167
124
  .SH "OVERLAPPING DEPENDENCIES"
168
125
  Sometimes, multiple gems declared in your Gemfile(5) are satisfied by the same second\-level dependency\. For instance, consider the case of \fBthin\fR and \fBrack\-perftools\-profiler\fR\.
169
- .
170
126
  .IP "" 4
171
- .
172
127
  .nf
173
-
174
128
  source "https://rubygems\.org"
175
129
 
176
130
  gem "thin"
177
131
  gem "rack\-perftools\-profiler"
178
- .
179
132
  .fi
180
- .
181
133
  .IP "" 0
182
- .
183
134
  .P
184
135
  The \fBthin\fR gem depends on \fBrack >= 1\.0\fR, while \fBrack\-perftools\-profiler\fR depends on \fBrack ~> 1\.0\fR\. If you run bundle install, you get:
185
- .
186
136
  .IP "" 4
187
- .
188
137
  .nf
189
-
190
138
  Fetching source index for https://rubygems\.org/
191
139
  Installing daemons (1\.1\.0)
192
140
  Installing eventmachine (0\.12\.10) with native extensions
@@ -196,199 +144,132 @@ Installing rack (1\.2\.1)
196
144
  Installing rack\-perftools_profiler (0\.0\.2)
197
145
  Installing thin (1\.2\.7) with native extensions
198
146
  Using bundler (1\.0\.0\.rc\.3)
199
- .
200
147
  .fi
201
- .
202
148
  .IP "" 0
203
- .
204
149
  .P
205
- In this case, the two gems have their own set of dependencies, but they share \fBrack\fR in common\. If you run \fBbundle update thin\fR, bundler will update \fBdaemons\fR, \fBeventmachine\fR and \fBrack\fR, which are dependencies of \fBthin\fR, but not \fBopen4\fR or \fBperftools\.rb\fR, which are dependencies of \fBrack\-perftools_profiler\fR\. Note that \fBbundle update thin\fR will update \fBrack\fR even though it\'s \fIalso\fR a dependency of \fBrack\-perftools_profiler\fR\.
206
- .
150
+ In this case, the two gems have their own set of dependencies, but they share \fBrack\fR in common\. If you run \fBbundle update thin\fR, bundler will update \fBdaemons\fR, \fBeventmachine\fR and \fBrack\fR, which are dependencies of \fBthin\fR, but not \fBopen4\fR or \fBperftools\.rb\fR, which are dependencies of \fBrack\-perftools_profiler\fR\. Note that \fBbundle update thin\fR will update \fBrack\fR even though it's \fIalso\fR a dependency of \fBrack\-perftools_profiler\fR\.
207
151
  .P
208
152
  In short, by default, when you update a gem using \fBbundle update\fR, bundler will update all dependencies of that gem, including those that are also dependencies of another gem\.
209
- .
210
153
  .P
211
154
  To prevent updating indirect dependencies, prior to version 1\.14 the only option was the \fBCONSERVATIVE UPDATING\fR behavior in bundle install(1) \fIbundle\-install\.1\.html\fR:
212
- .
213
155
  .P
214
156
  In this scenario, updating the \fBthin\fR version manually in the Gemfile(5), and then running bundle install(1) \fIbundle\-install\.1\.html\fR will only update \fBdaemons\fR and \fBeventmachine\fR, but not \fBrack\fR\. For more information, see the \fBCONSERVATIVE UPDATING\fR section of bundle install(1) \fIbundle\-install\.1\.html\fR\.
215
- .
216
157
  .P
217
158
  Starting with 1\.14, specifying the \fB\-\-conservative\fR option will also prevent indirect dependencies from being updated\.
218
- .
219
159
  .SH "PATCH LEVEL OPTIONS"
220
160
  Version 1\.14 introduced 4 patch\-level options that will influence how gem versions are resolved\. One of the following options can be used: \fB\-\-patch\fR, \fB\-\-minor\fR or \fB\-\-major\fR\. \fB\-\-strict\fR can be added to further influence resolution\.
221
- .
222
161
  .TP
223
162
  \fB\-\-patch\fR
224
163
  Prefer updating only to next patch version\.
225
- .
226
164
  .TP
227
165
  \fB\-\-minor\fR
228
166
  Prefer updating only to next minor version\.
229
- .
230
167
  .TP
231
168
  \fB\-\-major\fR
232
169
  Prefer updating to next major version (default)\.
233
- .
234
170
  .TP
235
171
  \fB\-\-strict\fR
236
172
  Do not allow any gem to be updated past latest \fB\-\-patch\fR | \fB\-\-minor\fR | \fB\-\-major\fR\.
237
- .
238
173
  .P
239
- When Bundler is resolving what versions to use to satisfy declared requirements in the Gemfile or in parent gems, it looks up all available versions, filters out any versions that don\'t satisfy the requirement, and then, by default, sorts them from newest to oldest, considering them in that order\.
240
- .
174
+ When Bundler is resolving what versions to use to satisfy declared requirements in the Gemfile or in parent gems, it looks up all available versions, filters out any versions that don't satisfy the requirement, and then, by default, sorts them from newest to oldest, considering them in that order\.
241
175
  .P
242
176
  Providing one of the patch level options (e\.g\. \fB\-\-patch\fR) changes the sort order of the satisfying versions, causing Bundler to consider the latest \fB\-\-patch\fR or \fB\-\-minor\fR version available before other versions\. Note that versions outside the stated patch level could still be resolved to if necessary to find a suitable dependency graph\.
243
- .
244
177
  .P
245
- For example, if gem \'foo\' is locked at 1\.0\.2, with no gem requirement defined in the Gemfile, and versions 1\.0\.3, 1\.0\.4, 1\.1\.0, 1\.1\.1, 2\.0\.0 all exist, the default order of preference by default (\fB\-\-major\fR) will be "2\.0\.0, 1\.1\.1, 1\.1\.0, 1\.0\.4, 1\.0\.3, 1\.0\.2"\.
246
- .
178
+ For example, if gem 'foo' is locked at 1\.0\.2, with no gem requirement defined in the Gemfile, and versions 1\.0\.3, 1\.0\.4, 1\.1\.0, 1\.1\.1, 2\.0\.0 all exist, the default order of preference by default (\fB\-\-major\fR) will be "2\.0\.0, 1\.1\.1, 1\.1\.0, 1\.0\.4, 1\.0\.3, 1\.0\.2"\.
247
179
  .P
248
180
  If the \fB\-\-patch\fR option is used, the order of preference will change to "1\.0\.4, 1\.0\.3, 1\.0\.2, 1\.1\.1, 1\.1\.0, 2\.0\.0"\.
249
- .
250
181
  .P
251
182
  If the \fB\-\-minor\fR option is used, the order of preference will change to "1\.1\.1, 1\.1\.0, 1\.0\.4, 1\.0\.3, 1\.0\.2, 2\.0\.0"\.
252
- .
253
183
  .P
254
184
  Combining the \fB\-\-strict\fR option with any of the patch level options will remove any versions beyond the scope of the patch level option, to ensure that no gem is updated that far\.
255
- .
256
185
  .P
257
186
  To continue the previous example, if both \fB\-\-patch\fR and \fB\-\-strict\fR options are used, the available versions for resolution would be "1\.0\.4, 1\.0\.3, 1\.0\.2"\. If \fB\-\-minor\fR and \fB\-\-strict\fR are used, it would be "1\.1\.1, 1\.1\.0, 1\.0\.4, 1\.0\.3, 1\.0\.2"\.
258
- .
259
187
  .P
260
- Gem requirements as defined in the Gemfile will still be the first determining factor for what versions are available\. If the gem requirement for \fBfoo\fR in the Gemfile is \'~> 1\.0\', that will accomplish the same thing as providing the \fB\-\-minor\fR and \fB\-\-strict\fR options\.
261
- .
188
+ Gem requirements as defined in the Gemfile will still be the first determining factor for what versions are available\. If the gem requirement for \fBfoo\fR in the Gemfile is '~> 1\.0', that will accomplish the same thing as providing the \fB\-\-minor\fR and \fB\-\-strict\fR options\.
262
189
  .SH "PATCH LEVEL EXAMPLES"
263
190
  Given the following gem specifications:
264
- .
265
191
  .IP "" 4
266
- .
267
192
  .nf
268
-
269
193
  foo 1\.4\.3, requires: ~> bar 2\.0
270
194
  foo 1\.4\.4, requires: ~> bar 2\.0
271
195
  foo 1\.4\.5, requires: ~> bar 2\.1
272
196
  foo 1\.5\.0, requires: ~> bar 2\.1
273
197
  foo 1\.5\.1, requires: ~> bar 3\.0
274
198
  bar with versions 2\.0\.3, 2\.0\.4, 2\.1\.0, 2\.1\.1, 3\.0\.0
275
- .
276
199
  .fi
277
- .
278
200
  .IP "" 0
279
- .
280
201
  .P
281
202
  Gemfile:
282
- .
283
203
  .IP "" 4
284
- .
285
204
  .nf
286
-
287
- gem \'foo\'
288
- .
205
+ gem 'foo'
289
206
  .fi
290
- .
291
207
  .IP "" 0
292
- .
293
208
  .P
294
209
  Gemfile\.lock:
295
- .
296
210
  .IP "" 4
297
- .
298
211
  .nf
299
-
300
212
  foo (1\.4\.3)
301
213
  bar (~> 2\.0)
302
214
  bar (2\.0\.3)
303
- .
304
215
  .fi
305
- .
306
216
  .IP "" 0
307
- .
308
217
  .P
309
218
  Cases:
310
- .
311
219
  .IP "" 4
312
- .
313
220
  .nf
314
-
315
221
  # Command Line Result
316
222
  \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
317
- 1 bundle update \-\-patch \'foo 1\.4\.5\', \'bar 2\.1\.1\'
318
- 2 bundle update \-\-patch foo \'foo 1\.4\.5\', \'bar 2\.1\.1\'
319
- 3 bundle update \-\-minor \'foo 1\.5\.1\', \'bar 3\.0\.0\'
320
- 4 bundle update \-\-minor \-\-strict \'foo 1\.5\.0\', \'bar 2\.1\.1\'
321
- 5 bundle update \-\-patch \-\-strict \'foo 1\.4\.4\', \'bar 2\.0\.4\'
322
- .
223
+ 1 bundle update \-\-patch 'foo 1\.4\.5', 'bar 2\.1\.1'
224
+ 2 bundle update \-\-patch foo 'foo 1\.4\.5', 'bar 2\.1\.1'
225
+ 3 bundle update \-\-minor 'foo 1\.5\.1', 'bar 3\.0\.0'
226
+ 4 bundle update \-\-minor \-\-strict 'foo 1\.5\.0', 'bar 2\.1\.1'
227
+ 5 bundle update \-\-patch \-\-strict 'foo 1\.4\.4', 'bar 2\.0\.4'
323
228
  .fi
324
- .
325
229
  .IP "" 0
326
- .
327
230
  .P
328
231
  In case 1, bar is upgraded to 2\.1\.1, a minor version increase, because the dependency from foo 1\.4\.5 required it\.
329
- .
330
232
  .P
331
- In case 2, only foo is requested to be unlocked, but bar is also allowed to move because it\'s not a declared dependency in the Gemfile\.
332
- .
233
+ In case 2, only foo is requested to be unlocked, but bar is also allowed to move because it's not a declared dependency in the Gemfile\.
333
234
  .P
334
235
  In case 3, bar goes up a whole major release, because a minor increase is preferred now for foo, and when it goes to 1\.5\.1, it requires 3\.0\.0 of bar\.
335
- .
336
236
  .P
337
- In case 4, foo is preferred up to a minor version, but 1\.5\.1 won\'t work because the \-\-strict flag removes bar 3\.0\.0 from consideration since it\'s a major increment\.
338
- .
237
+ In case 4, foo is preferred up to a minor version, but 1\.5\.1 won't work because the \-\-strict flag removes bar 3\.0\.0 from consideration since it's a major increment\.
339
238
  .P
340
239
  In case 5, both foo and bar have any minor or major increments removed from consideration because of the \-\-strict flag, so the most they can move is up to 1\.4\.4 and 2\.0\.4\.
341
- .
342
240
  .SH "RECOMMENDED WORKFLOW"
343
241
  In general, when working with an application managed with bundler, you should use the following workflow:
344
- .
345
242
  .IP "\(bu" 4
346
243
  After you create your Gemfile(5) for the first time, run
347
- .
348
244
  .IP
349
245
  $ bundle install
350
- .
351
246
  .IP "\(bu" 4
352
247
  Check the resulting \fBGemfile\.lock\fR into version control
353
- .
354
248
  .IP
355
249
  $ git add Gemfile\.lock
356
- .
357
250
  .IP "\(bu" 4
358
251
  When checking out this repository on another development machine, run
359
- .
360
252
  .IP
361
253
  $ bundle install
362
- .
363
254
  .IP "\(bu" 4
364
255
  When checking out this repository on a deployment machine, run
365
- .
366
256
  .IP
367
257
  $ bundle install \-\-deployment
368
- .
369
258
  .IP "\(bu" 4
370
259
  After changing the Gemfile(5) to reflect a new or update dependency, run
371
- .
372
260
  .IP
373
261
  $ bundle install
374
- .
375
262
  .IP "\(bu" 4
376
263
  Make sure to check the updated \fBGemfile\.lock\fR into version control
377
- .
378
264
  .IP
379
265
  $ git add Gemfile\.lock
380
- .
381
266
  .IP "\(bu" 4
382
267
  If bundle install(1) \fIbundle\-install\.1\.html\fR reports a conflict, manually update the specific gems that you changed in the Gemfile(5)
383
- .
384
268
  .IP
385
269
  $ bundle update rails thin
386
- .
387
270
  .IP "\(bu" 4
388
271
  If you want to update all the gems to the latest possible versions that still match the gems listed in the Gemfile(5), run
389
- .
390
272
  .IP
391
273
  $ bundle update \-\-all
392
- .
393
274
  .IP "" 0
394
275
 
@@ -1,35 +1,22 @@
1
- .\" generated with Ronn/v0.7.3
2
- .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
- .
4
- .TH "BUNDLE\-VERSION" "1" "October 2023" "" ""
5
- .
1
+ .\" generated with nRonn/v0.11.1
2
+ .\" https://github.com/n-ronn/nronn/tree/0.11.1
3
+ .TH "BUNDLE\-VERSION" "1" "December 2023" ""
6
4
  .SH "NAME"
7
5
  \fBbundle\-version\fR \- Prints Bundler version information
8
- .
9
6
  .SH "SYNOPSIS"
10
7
  \fBbundle version\fR
11
- .
12
8
  .SH "DESCRIPTION"
13
9
  Prints Bundler version information\.
14
- .
15
10
  .SH "OPTIONS"
16
11
  No options\.
17
- .
18
12
  .SH "EXAMPLE"
19
13
  Print the version of Bundler with build date and commit hash of the in the Git source\.
20
- .
21
14
  .IP "" 4
22
- .
23
15
  .nf
24
-
25
16
  bundle version
26
- .
27
17
  .fi
28
- .
29
18
  .IP "" 0
30
- .
31
19
  .P
32
20
  shows \fBBundler version 2\.3\.21 (2022\-08\-24 commit d54be5fdd8)\fR for example\.
33
- .
34
21
  .P
35
22
  cf\. \fBbundle \-\-version\fR shows \fBBundler version 2\.3\.21\fR\.
@@ -1,41 +1,29 @@
1
- .\" generated with Ronn/v0.7.3
2
- .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
- .
4
- .TH "BUNDLE\-VIZ" "1" "October 2023" "" ""
5
- .
1
+ .\" generated with nRonn/v0.11.1
2
+ .\" https://github.com/n-ronn/nronn/tree/0.11.1
3
+ .TH "BUNDLE\-VIZ" "1" "December 2023" ""
6
4
  .SH "NAME"
7
5
  \fBbundle\-viz\fR \- Generates a visual dependency graph for your Gemfile
8
- .
9
6
  .SH "SYNOPSIS"
10
7
  \fBbundle viz\fR [\-\-file=FILE] [\-\-format=FORMAT] [\-\-requirements] [\-\-version] [\-\-without=GROUP GROUP]
11
- .
12
8
  .SH "DESCRIPTION"
13
9
  \fBviz\fR generates a PNG file of the current \fBGemfile(5)\fR as a dependency graph\. \fBviz\fR requires the ruby\-graphviz gem (and its dependencies)\.
14
- .
15
10
  .P
16
11
  The associated gems must also be installed via \fBbundle install(1)\fR \fIbundle\-install\.1\.html\fR\.
17
- .
18
12
  .P
19
13
  \fBviz\fR command was deprecated in Bundler 2\.2\. Use bundler\-graph plugin \fIhttps://github\.com/rubygems/bundler\-graph\fR instead\.
20
- .
21
14
  .SH "OPTIONS"
22
- .
23
15
  .TP
24
16
  \fB\-\-file\fR, \fB\-f\fR
25
17
  The name to use for the generated file\. See \fB\-\-format\fR option
26
- .
27
18
  .TP
28
19
  \fB\-\-format\fR, \fB\-F\fR
29
- This is output format option\. Supported format is png, jpg, svg, dot \.\.\.
30
- .
20
+ This is output format option\. Supported format is png, jpg, svg, dot \|\.\|\.\|\.
31
21
  .TP
32
22
  \fB\-\-requirements\fR, \fB\-R\fR
33
23
  Set to show the version of each required dependency\.
34
- .
35
24
  .TP
36
25
  \fB\-\-version\fR, \fB\-v\fR
37
26
  Set to show each gem version\.
38
- .
39
27
  .TP
40
28
  \fB\-\-without\fR, \fB\-W\fR
41
29
  Exclude gems that are part of the specified named group\.
@@ -1,141 +1,102 @@
1
- .\" generated with Ronn/v0.7.3
2
- .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
- .
4
- .TH "BUNDLE" "1" "October 2023" "" ""
5
- .
1
+ .\" generated with nRonn/v0.11.1
2
+ .\" https://github.com/n-ronn/nronn/tree/0.11.1
3
+ .TH "BUNDLE" "1" "December 2023" ""
6
4
  .SH "NAME"
7
5
  \fBbundle\fR \- Ruby Dependency Management
8
- .
9
6
  .SH "SYNOPSIS"
10
7
  \fBbundle\fR COMMAND [\-\-no\-color] [\-\-verbose] [ARGS]
11
- .
12
8
  .SH "DESCRIPTION"
13
- Bundler manages an \fBapplication\'s dependencies\fR through its entire life across many machines systematically and repeatably\.
14
- .
9
+ Bundler manages an \fBapplication's dependencies\fR through its entire life across many machines systematically and repeatably\.
15
10
  .P
16
11
  See the bundler website \fIhttps://bundler\.io\fR for information on getting started, and Gemfile(5) for more information on the \fBGemfile\fR format\.
17
- .
18
12
  .SH "OPTIONS"
19
- .
20
13
  .TP
21
14
  \fB\-\-no\-color\fR
22
15
  Print all output without color
23
- .
24
16
  .TP
25
17
  \fB\-\-retry\fR, \fB\-r\fR
26
18
  Specify the number of times you wish to attempt network commands
27
- .
28
19
  .TP
29
20
  \fB\-\-verbose\fR, \fB\-V\fR
30
21
  Print out additional logging information
31
- .
32
22
  .SH "BUNDLE COMMANDS"
33
23
  We divide \fBbundle\fR subcommands into primary commands and utilities:
34
- .
35
24
  .SH "PRIMARY COMMANDS"
36
- .
37
25
  .TP
38
26
  \fBbundle install(1)\fR \fIbundle\-install\.1\.html\fR
39
27
  Install the gems specified by the \fBGemfile\fR or \fBGemfile\.lock\fR
40
- .
41
28
  .TP
42
29
  \fBbundle update(1)\fR \fIbundle\-update\.1\.html\fR
43
30
  Update dependencies to their latest versions
44
- .
45
31
  .TP
46
32
  \fBbundle cache(1)\fR \fIbundle\-cache\.1\.html\fR
47
33
  Package the \.gem files required by your application into the \fBvendor/cache\fR directory (aliases: \fBbundle package\fR, \fBbundle pack\fR)
48
- .
49
34
  .TP
50
35
  \fBbundle exec(1)\fR \fIbundle\-exec\.1\.html\fR
51
36
  Execute a script in the current bundle
52
- .
53
37
  .TP
54
38
  \fBbundle config(1)\fR \fIbundle\-config\.1\.html\fR
55
39
  Specify and read configuration options for Bundler
56
- .
57
40
  .TP
58
41
  \fBbundle help(1)\fR \fIbundle\-help\.1\.html\fR
59
42
  Display detailed help for each subcommand
60
- .
61
43
  .SH "UTILITIES"
62
- .
63
44
  .TP
64
45
  \fBbundle add(1)\fR \fIbundle\-add\.1\.html\fR
65
46
  Add the named gem to the Gemfile and run \fBbundle install\fR
66
- .
67
47
  .TP
68
48
  \fBbundle binstubs(1)\fR \fIbundle\-binstubs\.1\.html\fR
69
49
  Generate binstubs for executables in a gem
70
- .
71
50
  .TP
72
51
  \fBbundle check(1)\fR \fIbundle\-check\.1\.html\fR
73
52
  Determine whether the requirements for your application are installed and available to Bundler
74
- .
75
53
  .TP
76
54
  \fBbundle show(1)\fR \fIbundle\-show\.1\.html\fR
77
55
  Show the source location of a particular gem in the bundle
78
- .
79
56
  .TP
80
57
  \fBbundle outdated(1)\fR \fIbundle\-outdated\.1\.html\fR
81
58
  Show all of the outdated gems in the current bundle
82
- .
83
59
  .TP
84
60
  \fBbundle console(1)\fR (deprecated)
85
61
  Start an IRB session in the current bundle
86
- .
87
62
  .TP
88
63
  \fBbundle open(1)\fR \fIbundle\-open\.1\.html\fR
89
64
  Open an installed gem in the editor
90
- .
91
65
  .TP
92
66
  \fBbundle lock(1)\fR \fIbundle\-lock\.1\.html\fR
93
67
  Generate a lockfile for your dependencies
94
- .
95
68
  .TP
96
69
  \fBbundle viz(1)\fR \fIbundle\-viz\.1\.html\fR (deprecated)
97
70
  Generate a visual representation of your dependencies
98
- .
99
71
  .TP
100
72
  \fBbundle init(1)\fR \fIbundle\-init\.1\.html\fR
101
73
  Generate a simple \fBGemfile\fR, placed in the current directory
102
- .
103
74
  .TP
104
75
  \fBbundle gem(1)\fR \fIbundle\-gem\.1\.html\fR
105
76
  Create a simple gem, suitable for development with Bundler
106
- .
107
77
  .TP
108
78
  \fBbundle platform(1)\fR \fIbundle\-platform\.1\.html\fR
109
79
  Display platform compatibility information
110
- .
111
80
  .TP
112
81
  \fBbundle clean(1)\fR \fIbundle\-clean\.1\.html\fR
113
82
  Clean up unused gems in your Bundler directory
114
- .
115
83
  .TP
116
84
  \fBbundle doctor(1)\fR \fIbundle\-doctor\.1\.html\fR
117
85
  Display warnings about common problems
118
- .
119
86
  .TP
120
87
  \fBbundle remove(1)\fR \fIbundle\-remove\.1\.html\fR
121
88
  Removes gems from the Gemfile
122
- .
123
89
  .TP
124
90
  \fBbundle plugin(1)\fR \fIbundle\-plugin\.1\.html\fR
125
91
  Manage Bundler plugins
126
- .
127
92
  .TP
128
93
  \fBbundle version(1)\fR \fIbundle\-version\.1\.html\fR
129
94
  Prints Bundler version information
130
- .
131
95
  .SH "PLUGINS"
132
- When running a command that isn\'t listed in PRIMARY COMMANDS or UTILITIES, Bundler will try to find an executable on your path named \fBbundler\-<command>\fR and execute it, passing down any extra arguments to it\.
133
- .
96
+ When running a command that isn't listed in PRIMARY COMMANDS or UTILITIES, Bundler will try to find an executable on your path named \fBbundler\-<command>\fR and execute it, passing down any extra arguments to it\.
134
97
  .SH "OBSOLETE"
135
98
  These commands are obsolete and should no longer be used:
136
- .
137
99
  .IP "\(bu" 4
138
100
  \fBbundle inject(1)\fR
139
- .
140
101
  .IP "" 0
141
102