bundler 2.2.3 → 2.3.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +503 -7
- data/README.md +1 -1
- data/bundler.gemspec +2 -3
- data/exe/bundle +7 -8
- data/lib/bundler/.document +1 -0
- data/lib/bundler/build_metadata.rb +2 -2
- data/lib/bundler/cli/cache.rb +2 -1
- data/lib/bundler/cli/check.rb +4 -2
- data/lib/bundler/cli/common.rb +15 -2
- data/lib/bundler/cli/doctor.rb +15 -4
- data/lib/bundler/cli/exec.rb +1 -6
- data/lib/bundler/cli/gem.rb +132 -24
- data/lib/bundler/cli/info.rb +16 -4
- data/lib/bundler/cli/install.rb +12 -27
- data/lib/bundler/cli/issue.rb +4 -3
- data/lib/bundler/cli/list.rb +7 -1
- data/lib/bundler/cli/lock.rb +5 -1
- data/lib/bundler/cli/open.rb +1 -2
- data/lib/bundler/cli/outdated.rb +10 -11
- data/lib/bundler/cli/remove.rb +1 -2
- data/lib/bundler/cli/update.rb +17 -8
- data/lib/bundler/cli.rb +44 -60
- data/lib/bundler/compact_index_client/cache.rb +0 -9
- data/lib/bundler/compact_index_client/updater.rb +10 -19
- data/lib/bundler/compact_index_client.rb +2 -8
- data/lib/bundler/current_ruby.rb +5 -4
- data/lib/bundler/definition.rb +158 -316
- data/lib/bundler/dep_proxy.rb +15 -8
- data/lib/bundler/dependency.rb +5 -7
- data/lib/bundler/digest.rb +71 -0
- data/lib/bundler/dsl.rb +67 -66
- data/lib/bundler/endpoint_specification.rb +21 -11
- data/lib/bundler/environment_preserver.rb +4 -1
- data/lib/bundler/errors.rb +19 -3
- data/lib/bundler/feature_flag.rb +0 -5
- data/lib/bundler/fetcher/compact_index.rb +10 -15
- data/lib/bundler/fetcher/downloader.rb +9 -6
- data/lib/bundler/fetcher/index.rb +0 -27
- data/lib/bundler/fetcher.rb +10 -17
- data/lib/bundler/friendly_errors.rb +5 -32
- data/lib/bundler/gem_helper.rb +28 -21
- data/lib/bundler/gem_version_promoter.rb +2 -2
- data/lib/bundler/index.rb +8 -12
- data/lib/bundler/injector.rb +12 -3
- data/lib/bundler/inline.rb +2 -1
- data/lib/bundler/installer/gem_installer.rb +4 -22
- data/lib/bundler/installer/parallel_installer.rb +36 -15
- data/lib/bundler/installer/standalone.rb +29 -9
- data/lib/bundler/installer.rb +8 -34
- data/lib/bundler/lazy_specification.rb +32 -20
- data/lib/bundler/lockfile_generator.rb +1 -1
- data/lib/bundler/lockfile_parser.rb +16 -45
- data/{man → lib/bundler/man}/bundle-add.1 +10 -2
- data/lib/bundler/man/bundle-add.1.ronn +7 -1
- data/{man → lib/bundler/man}/bundle-binstubs.1 +1 -1
- data/{man → lib/bundler/man}/bundle-cache.1 +1 -1
- data/{man → lib/bundler/man}/bundle-check.1 +1 -1
- data/{man → lib/bundler/man}/bundle-clean.1 +1 -1
- data/{man → lib/bundler/man}/bundle-config.1 +27 -19
- data/lib/bundler/man/bundle-config.1.ronn +33 -25
- data/{man → lib/bundler/man}/bundle-doctor.1 +1 -1
- data/{man → lib/bundler/man}/bundle-exec.1 +1 -1
- data/{man → lib/bundler/man}/bundle-gem.1 +14 -1
- data/lib/bundler/man/bundle-gem.1.ronn +16 -0
- data/{man → lib/bundler/man}/bundle-info.1 +1 -1
- data/{man → lib/bundler/man}/bundle-init.1 +1 -1
- data/{man → lib/bundler/man}/bundle-inject.1 +1 -1
- data/{man → lib/bundler/man}/bundle-install.1 +2 -2
- data/lib/bundler/man/bundle-install.1.ronn +2 -2
- data/{man → lib/bundler/man}/bundle-list.1 +1 -1
- data/{man → lib/bundler/man}/bundle-lock.1 +1 -1
- data/{man → lib/bundler/man}/bundle-open.1 +1 -1
- data/{man → lib/bundler/man}/bundle-outdated.1 +1 -1
- data/{man → lib/bundler/man}/bundle-platform.1 +1 -1
- data/{man → lib/bundler/man}/bundle-pristine.1 +1 -1
- data/{man → lib/bundler/man}/bundle-remove.1 +1 -1
- data/{man → lib/bundler/man}/bundle-show.1 +1 -1
- data/{man → lib/bundler/man}/bundle-update.1 +5 -5
- data/lib/bundler/man/bundle-update.1.ronn +5 -4
- data/{man → lib/bundler/man}/bundle-viz.1 +1 -1
- data/{man → lib/bundler/man}/bundle.1 +1 -1
- data/{man → lib/bundler/man}/gemfile.5 +28 -2
- data/lib/bundler/man/gemfile.5.ronn +9 -1
- data/{man → lib/bundler/man}/index.txt +0 -0
- data/lib/bundler/plugin/api/source.rb +22 -0
- data/lib/bundler/plugin/index.rb +4 -1
- data/lib/bundler/plugin/installer.rb +10 -10
- data/lib/bundler/plugin/source_list.rb +4 -0
- data/lib/bundler/plugin.rb +28 -8
- data/lib/bundler/process_lock.rb +1 -1
- data/lib/bundler/psyched_yaml.rb +1 -13
- data/lib/bundler/resolver/spec_group.rb +36 -48
- data/lib/bundler/resolver.rb +97 -151
- data/lib/bundler/retry.rb +1 -1
- data/lib/bundler/ruby_version.rb +1 -1
- data/lib/bundler/rubygems_ext.rb +46 -8
- data/lib/bundler/rubygems_gem_installer.rb +68 -1
- data/lib/bundler/rubygems_integration.rb +43 -60
- data/lib/bundler/runtime.rb +18 -11
- data/lib/bundler/self_manager.rb +168 -0
- data/lib/bundler/settings.rb +97 -21
- data/lib/bundler/setup.rb +2 -2
- data/lib/bundler/shared_helpers.rb +6 -21
- data/lib/bundler/source/git/git_proxy.rb +60 -53
- data/lib/bundler/source/git.rb +38 -18
- data/lib/bundler/source/metadata.rb +1 -5
- data/lib/bundler/source/path/installer.rb +3 -1
- data/lib/bundler/source/path.rb +3 -1
- data/lib/bundler/source/rubygems.rb +113 -100
- data/lib/bundler/source/rubygems_aggregate.rb +68 -0
- data/lib/bundler/source.rb +21 -0
- data/lib/bundler/source_list.rb +100 -62
- data/lib/bundler/source_map.rb +58 -0
- data/lib/bundler/spec_set.rb +21 -34
- data/lib/bundler/stub_specification.rb +8 -0
- data/lib/bundler/templates/Executable.bundler +7 -7
- data/lib/bundler/templates/Gemfile +0 -2
- data/lib/bundler/templates/gems.rb +0 -3
- data/lib/bundler/templates/newgem/CHANGELOG.md.tt +5 -0
- data/lib/bundler/templates/newgem/Gemfile.tt +5 -2
- data/lib/bundler/templates/newgem/README.md.tt +5 -3
- data/lib/bundler/templates/newgem/Rakefile.tt +15 -2
- data/lib/bundler/templates/newgem/github/workflows/main.yml.tt +15 -6
- data/lib/bundler/templates/newgem/newgem.gemspec.tt +18 -16
- data/lib/bundler/templates/newgem/rubocop.yml.tt +3 -0
- data/lib/bundler/templates/newgem/sig/newgem.rbs.tt +8 -0
- data/lib/bundler/templates/newgem/standard.yml.tt +2 -0
- data/lib/bundler/templates/newgem/test/minitest/{newgem_test.rb.tt → test_newgem.rb.tt} +1 -1
- data/lib/bundler/ui/shell.rb +1 -1
- data/lib/bundler/vendor/.document +1 -0
- data/lib/bundler/vendor/connection_pool/LICENSE +20 -0
- data/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb +19 -21
- data/lib/bundler/vendor/connection_pool/lib/connection_pool/version.rb +1 -1
- data/lib/bundler/vendor/connection_pool/lib/connection_pool/wrapper.rb +57 -0
- data/lib/bundler/vendor/connection_pool/lib/connection_pool.rb +39 -74
- data/lib/bundler/vendor/fileutils/LICENSE.txt +22 -0
- data/lib/bundler/vendor/molinillo/LICENSE +9 -0
- data/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb +7 -0
- data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb +11 -5
- data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb +2 -3
- data/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +2 -2
- data/lib/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb +12 -1
- data/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb +11 -7
- data/lib/bundler/vendor/net-http-persistent/README.rdoc +82 -0
- data/lib/bundler/vendor/thor/LICENSE.md +20 -0
- data/lib/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +9 -7
- data/lib/bundler/vendor/thor/lib/thor/actions/inject_into_file.rb +1 -2
- data/lib/bundler/vendor/thor/lib/thor/actions.rb +7 -3
- data/lib/bundler/vendor/thor/lib/thor/core_ext/hash_with_indifferent_access.rb +6 -0
- data/lib/bundler/vendor/thor/lib/thor/error.rb +10 -5
- data/lib/bundler/vendor/thor/lib/thor/parser/arguments.rb +5 -1
- data/lib/bundler/vendor/thor/lib/thor/parser/options.rb +28 -9
- data/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +27 -6
- data/lib/bundler/vendor/thor/lib/thor/shell/color.rb +5 -1
- data/lib/bundler/vendor/thor/lib/thor/shell.rb +1 -1
- data/lib/bundler/vendor/thor/lib/thor/util.rb +1 -1
- data/lib/bundler/vendor/thor/lib/thor/version.rb +1 -1
- data/lib/bundler/vendor/thor/lib/thor.rb +5 -6
- data/lib/bundler/vendor/tmpdir/lib/tmpdir.rb +1 -1
- data/lib/bundler/vendor/tsort/LICENSE.txt +22 -0
- data/lib/bundler/vendor/tsort/lib/tsort.rb +453 -0
- data/lib/bundler/vendor/uri/LICENSE.txt +22 -0
- data/lib/bundler/vendor/uri/lib/uri/common.rb +17 -80
- data/lib/bundler/vendor/uri/lib/uri/ftp.rb +0 -1
- data/lib/bundler/vendor/uri/lib/uri/generic.rb +5 -6
- data/lib/bundler/vendor/uri/lib/uri/http.rb +0 -1
- data/lib/bundler/vendor/uri/lib/uri/https.rb +0 -1
- data/lib/bundler/vendor/uri/lib/uri/ldap.rb +1 -1
- data/lib/bundler/vendor/uri/lib/uri/mailto.rb +0 -1
- data/lib/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +1 -14
- data/lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +1 -12
- data/lib/bundler/vendor/uri/lib/uri/version.rb +1 -1
- data/lib/bundler/vendor/uri/lib/uri/ws.rb +84 -0
- data/lib/bundler/vendor/uri/lib/uri/wss.rb +22 -0
- data/lib/bundler/vendor/uri/lib/uri.rb +0 -1
- data/lib/bundler/vendored_tsort.rb +4 -0
- data/lib/bundler/version.rb +1 -1
- data/lib/bundler/worker.rb +19 -4
- data/lib/bundler.rb +29 -33
- metadata +54 -35
- data/lib/bundler/gemdeps.rb +0 -29
- data/lib/bundler/vendor/connection_pool/lib/connection_pool/monotonic_time.rb +0 -66
@@ -47,10 +47,6 @@ configuration only from the local application.
|
|
47
47
|
Executing bundle with the `BUNDLE_IGNORE_CONFIG` environment variable set will
|
48
48
|
cause it to ignore all configuration.
|
49
49
|
|
50
|
-
Executing `bundle config set --local disable_multisource true` upgrades the warning about
|
51
|
-
the Gemfile containing multiple primary sources to an error. Executing `bundle
|
52
|
-
config unset disable_multisource` downgrades this error to a warning.
|
53
|
-
|
54
50
|
## REMEMBERING OPTIONS
|
55
51
|
|
56
52
|
Flags passed to `bundle install` or the Bundler runtime, such as `--path foo` or
|
@@ -133,9 +129,6 @@ the environment variable `BUNDLE_LOCAL__RACK`.
|
|
133
129
|
The following is a list of all configuration keys and their purpose. You can
|
134
130
|
learn more about their operation in [bundle install(1)](bundle-install.1.html).
|
135
131
|
|
136
|
-
* `allow_bundler_dependency_conflicts` (`BUNDLE_ALLOW_BUNDLER_DEPENDENCY_CONFLICTS`):
|
137
|
-
Allow resolving to specifications that have dependencies on `bundler` that
|
138
|
-
are incompatible with the running Bundler version.
|
139
132
|
* `allow_deployment_source_credential_changes` (`BUNDLE_ALLOW_DEPLOYMENT_SOURCE_CREDENTIAL_CHANGES`):
|
140
133
|
When in deployment mode, allow changing the credentials to a gem's source.
|
141
134
|
Ex: `https://some.host.com/gems/path/` -> `https://user_name:password@some.host.com/gems/path`
|
@@ -178,10 +171,9 @@ learn more about their operation in [bundle install(1)](bundle-install.1.html).
|
|
178
171
|
* `disable_local_branch_check` (`BUNDLE_DISABLE_LOCAL_BRANCH_CHECK`):
|
179
172
|
Allow Bundler to use a local git override without a branch specified in the
|
180
173
|
Gemfile.
|
181
|
-
* `
|
182
|
-
|
183
|
-
|
184
|
-
Use `bundle config unset disable_multisource` to unset.
|
174
|
+
* `disable_local_revision_check` (`BUNDLE_DISABLE_LOCAL_REVISION_CHECK`):
|
175
|
+
Allow Bundler to use a local git override without checking if the revision
|
176
|
+
present in the lockfile is present in the repository.
|
185
177
|
* `disable_shared_gems` (`BUNDLE_DISABLE_SHARED_GEMS`):
|
186
178
|
Stop Bundler from accessing gems installed to RubyGems' normal location.
|
187
179
|
* `disable_version_check` (`BUNDLE_DISABLE_VERSION_CHECK`):
|
@@ -194,6 +186,10 @@ learn more about their operation in [bundle install(1)](bundle-install.1.html).
|
|
194
186
|
Disallow changes to the `Gemfile`. When the `Gemfile` is changed and the
|
195
187
|
lockfile has not been updated, running Bundler commands will be blocked.
|
196
188
|
Defaults to `true` when `--deployment` is used.
|
189
|
+
* `gem.github_username` (`BUNDLE_GEM__GITHUB_USERNAME`):
|
190
|
+
Sets a GitHub username or organization to be used in `README` file when you
|
191
|
+
create a new gem via `bundle gem` command. It can be overridden by passing an
|
192
|
+
explicit `--github-username` flag to `bundle gem`.
|
197
193
|
* `gem.push_key` (`BUNDLE_GEM__PUSH_KEY`):
|
198
194
|
Sets the `--key` parameter for `gem push` when using the `rake release`
|
199
195
|
command with a private gemstash server.
|
@@ -206,20 +202,18 @@ learn more about their operation in [bundle install(1)](bundle-install.1.html).
|
|
206
202
|
* `global_gem_cache` (`BUNDLE_GLOBAL_GEM_CACHE`):
|
207
203
|
Whether Bundler should cache all gems globally, rather than locally to the
|
208
204
|
installing Ruby installation.
|
209
|
-
* `ignore_messages` (`BUNDLE_IGNORE_MESSAGES`):
|
210
|
-
messages will be printed. To silence a single gem,
|
211
|
-
`ignore_messages.httparty true`.
|
212
|
-
* `init_gems_rb` (`BUNDLE_INIT_GEMS_RB`)
|
205
|
+
* `ignore_messages` (`BUNDLE_IGNORE_MESSAGES`):
|
206
|
+
When set, no post install messages will be printed. To silence a single gem,
|
207
|
+
use dot notation like `ignore_messages.httparty true`.
|
208
|
+
* `init_gems_rb` (`BUNDLE_INIT_GEMS_RB`):
|
213
209
|
Generate a `gems.rb` instead of a `Gemfile` when running `bundle init`.
|
214
210
|
* `jobs` (`BUNDLE_JOBS`):
|
215
|
-
The number of gems Bundler can install in parallel. Defaults to
|
211
|
+
The number of gems Bundler can install in parallel. Defaults to the number of
|
212
|
+
available processors.
|
216
213
|
* `no_install` (`BUNDLE_NO_INSTALL`):
|
217
214
|
Whether `bundle package` should skip installing gems.
|
218
215
|
* `no_prune` (`BUNDLE_NO_PRUNE`):
|
219
216
|
Whether Bundler should leave outdated gems unpruned when caching.
|
220
|
-
* `only_update_to_newer_versions` (`BUNDLE_ONLY_UPDATE_TO_NEWER_VERSIONS`):
|
221
|
-
During `bundle update`, only resolve to newer versions of the gems in the
|
222
|
-
lockfile.
|
223
217
|
* `path` (`BUNDLE_PATH`):
|
224
218
|
The location on disk where all gems in your bundle will be located regardless
|
225
219
|
of `$GEM_HOME` or `$GEM_PATH` values. Bundle gems not found in this location
|
@@ -233,7 +227,7 @@ learn more about their operation in [bundle install(1)](bundle-install.1.html).
|
|
233
227
|
Enable Bundler's experimental plugin system.
|
234
228
|
* `prefer_patch` (BUNDLE_PREFER_PATCH):
|
235
229
|
Prefer updating only to next patch version during updates. Makes `bundle update` calls equivalent to `bundler update --patch`.
|
236
|
-
* `print_only_version_number` (`BUNDLE_PRINT_ONLY_VERSION_NUMBER`)
|
230
|
+
* `print_only_version_number` (`BUNDLE_PRINT_ONLY_VERSION_NUMBER`):
|
237
231
|
Print only version number from `bundler --version`.
|
238
232
|
* `redirect` (`BUNDLE_REDIRECT`):
|
239
233
|
The number of redirects allowed for network requests. Defaults to `5`.
|
@@ -266,10 +260,7 @@ learn more about their operation in [bundle install(1)](bundle-install.1.html).
|
|
266
260
|
The location where RubyGems installs binstubs. Defaults to `Gem.bindir`.
|
267
261
|
* `timeout` (`BUNDLE_TIMEOUT`):
|
268
262
|
The seconds allowed before timing out for network requests. Defaults to `10`.
|
269
|
-
* `
|
270
|
-
Whether running `bundle update --source NAME` unlocks a gem with the given
|
271
|
-
name. Defaults to `true`.
|
272
|
-
* `update_requires_all_flag` (`BUNDLE_UPDATE_REQUIRES_ALL_FLAG`)
|
263
|
+
* `update_requires_all_flag` (`BUNDLE_UPDATE_REQUIRES_ALL_FLAG`):
|
273
264
|
Require passing `--all` to `bundle update` when everything should be updated,
|
274
265
|
and disallow passing no options to `bundle update`.
|
275
266
|
* `user_agent` (`BUNDLE_USER_AGENT`):
|
@@ -369,11 +360,28 @@ Or you can set the credentials as an environment variable like so:
|
|
369
360
|
|
370
361
|
export BUNDLE_GITHUB__COM=username:password
|
371
362
|
|
372
|
-
This is especially useful for private repositories on hosts such as
|
363
|
+
This is especially useful for private repositories on hosts such as GitHub,
|
373
364
|
where you can use personal OAuth tokens:
|
374
365
|
|
375
366
|
export BUNDLE_GITHUB__COM=abcd0123generatedtoken:x-oauth-basic
|
376
367
|
|
368
|
+
Note that any configured credentials will be redacted by informative commands
|
369
|
+
such as `bundle config list` or `bundle config get`, unless you use the
|
370
|
+
`--parseable` flag. This is to avoid unintentionally leaking credentials when
|
371
|
+
copy-pasting bundler output.
|
372
|
+
|
373
|
+
Also note that to guarantee a sane mapping between valid environment variable
|
374
|
+
names and valid host names, bundler makes the following transformations:
|
375
|
+
|
376
|
+
* Any `-` characters in a host name are mapped to a triple dash (`___`) in the
|
377
|
+
corresponding environment variable.
|
378
|
+
|
379
|
+
* Any `.` characters in a host name are mapped to a double dash (`__`) in the
|
380
|
+
corresponding environment variable.
|
381
|
+
|
382
|
+
This means that if you have a gem server named `my.gem-host.com`, you'll need to
|
383
|
+
use the `BUNDLE_MY__GEM___HOST__COM` variable to configure credentials for it
|
384
|
+
through ENV.
|
377
385
|
|
378
386
|
## CONFIGURE BUNDLER DIRECTORIES
|
379
387
|
|
@@ -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\-GEM" "1" "
|
4
|
+
.TH "BUNDLE\-GEM" "1" "December 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-gem\fR \- Generate a project skeleton for creating a rubygem
|
@@ -90,6 +90,19 @@ When Bundler is configured to not generate CI files, an interactive prompt will
|
|
90
90
|
When Bundler is unconfigured, an interactive prompt will be displayed and the answer will be saved in Bundler\'s global config for future \fBbundle gem\fR use\.
|
91
91
|
.
|
92
92
|
.TP
|
93
|
+
\fB\-\-linter\fR, \fB\-\-linter=rubocop\fR, \fB\-\-linter=standard\fR
|
94
|
+
Specify the linter and code formatter that Bundler should add to the project\'s development dependencies\. Acceptable values are \fBrubocop\fR and \fBstandard\fR\. A configuration file will be generated in the project directory\. Given no option is specified:
|
95
|
+
.
|
96
|
+
.IP
|
97
|
+
When Bundler is configured to add a linter, this defaults to Bundler\'s global config setting \fBgem\.linter\fR\.
|
98
|
+
.
|
99
|
+
.IP
|
100
|
+
When Bundler is configured not to add a linter, an interactive prompt will be displayed and the answer will be used for the current rubygem project\.
|
101
|
+
.
|
102
|
+
.IP
|
103
|
+
When Bundler is unconfigured, an interactive prompt will be displayed and the answer will be saved in Bundler\'s global config for future \fBbundle gem\fR use\.
|
104
|
+
.
|
105
|
+
.TP
|
93
106
|
\fB\-e\fR, \fB\-\-edit[=EDITOR]\fR
|
94
107
|
Open the resulting GEM_NAME\.gemspec in EDITOR, or the default editor if not specified\. The default is \fB$BUNDLER_EDITOR\fR, \fB$VISUAL\fR, or \fB$EDITOR\fR\.
|
95
108
|
.
|
@@ -92,6 +92,22 @@ configuration file using the following names:
|
|
92
92
|
the answer will be saved in Bundler's global config for future `bundle gem`
|
93
93
|
use.
|
94
94
|
|
95
|
+
* `--linter`, `--linter=rubocop`, `--linter=standard`:
|
96
|
+
Specify the linter and code formatter that Bundler should add to the
|
97
|
+
project's development dependencies. Acceptable values are `rubocop` and
|
98
|
+
`standard`. A configuration file will be generated in the project directory.
|
99
|
+
Given no option is specified:
|
100
|
+
|
101
|
+
When Bundler is configured to add a linter, this defaults to Bundler's
|
102
|
+
global config setting `gem.linter`.
|
103
|
+
|
104
|
+
When Bundler is configured not to add a linter, an interactive prompt
|
105
|
+
will be displayed and the answer will be used for the current rubygem project.
|
106
|
+
|
107
|
+
When Bundler is unconfigured, an interactive prompt will be displayed and
|
108
|
+
the answer will be saved in Bundler's global config for future `bundle gem`
|
109
|
+
use.
|
110
|
+
|
95
111
|
* `-e`, `--edit[=EDITOR]`:
|
96
112
|
Open the resulting GEM_NAME.gemspec in EDITOR, or the default editor if not
|
97
113
|
specified. The default is `$BUNDLER_EDITOR`, `$VISUAL`, or `$EDITOR`.
|
@@ -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" "
|
4
|
+
.TH "BUNDLE\-INFO" "1" "December 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-info\fR \- Show information for the given gem in your bundle
|
@@ -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" "
|
4
|
+
.TH "BUNDLE\-INIT" "1" "December 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-init\fR \- Generates a Gemfile into the current working directory
|
@@ -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" "
|
4
|
+
.TH "BUNDLE\-INJECT" "1" "December 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-inject\fR \- Add named gem(s) with version requirements to Gemfile
|
@@ -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" "
|
4
|
+
.TH "BUNDLE\-INSTALL" "1" "December 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-install\fR \- Install the dependencies specified in your Gemfile
|
@@ -63,7 +63,7 @@ The location of the Gemfile(5) which Bundler should use\. This defaults to a Gem
|
|
63
63
|
.
|
64
64
|
.TP
|
65
65
|
\fB\-\-jobs=[<number>]\fR, \fB\-j[<number>]\fR
|
66
|
-
The maximum number of parallel download and install jobs\. The default is
|
66
|
+
The maximum number of parallel download and install jobs\. The default is the number of available processors\.
|
67
67
|
.
|
68
68
|
.TP
|
69
69
|
\fB\-\-local\fR
|
@@ -100,8 +100,8 @@ automatically and that requires `bundler` to silently remember them. Since
|
|
100
100
|
to this location.
|
101
101
|
|
102
102
|
* `--jobs=[<number>]`, `-j[<number>]`:
|
103
|
-
The maximum number of parallel download and install jobs. The default
|
104
|
-
|
103
|
+
The maximum number of parallel download and install jobs. The default is the
|
104
|
+
number of available processors.
|
105
105
|
|
106
106
|
* `--local`:
|
107
107
|
Do not attempt to connect to `rubygems.org`. Instead, Bundler will use the
|
@@ -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\-LOCK" "1" "
|
4
|
+
.TH "BUNDLE\-LOCK" "1" "December 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-lock\fR \- Creates / Updates a lockfile without installing
|
@@ -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\-OPEN" "1" "
|
4
|
+
.TH "BUNDLE\-OPEN" "1" "December 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-open\fR \- Opens the source directory for a gem in your bundle
|
@@ -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\-OUTDATED" "1" "
|
4
|
+
.TH "BUNDLE\-OUTDATED" "1" "December 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-outdated\fR \- List installed gems with newer versions available
|
@@ -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\-PLATFORM" "1" "
|
4
|
+
.TH "BUNDLE\-PLATFORM" "1" "December 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-platform\fR \- Displays platform compatibility information
|
@@ -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\-PRISTINE" "1" "
|
4
|
+
.TH "BUNDLE\-PRISTINE" "1" "December 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-pristine\fR \- Restores installed gems to their pristine condition
|
@@ -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\-SHOW" "1" "
|
4
|
+
.TH "BUNDLE\-SHOW" "1" "December 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-show\fR \- Shows all the gems in your bundle, or the path to a gem
|
@@ -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\-UPDATE" "1" "
|
4
|
+
.TH "BUNDLE\-UPDATE" "1" "December 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-update\fR \- Update your gems to the latest available versions
|
@@ -47,7 +47,7 @@ Fall back to using the single\-file index of all gems\.
|
|
47
47
|
.
|
48
48
|
.TP
|
49
49
|
\fB\-\-jobs=[<number>]\fR, \fB\-j[<number>]\fR
|
50
|
-
Specify the number of jobs to run in parallel\. The default is
|
50
|
+
Specify the number of jobs to run in parallel\. The default is the number of available processors\.
|
51
51
|
.
|
52
52
|
.TP
|
53
53
|
\fB\-\-retry=[<number>]\fR
|
@@ -79,7 +79,7 @@ Do not allow any gem to be updated past latest \fB\-\-patch\fR | \fB\-\-minor\fR
|
|
79
79
|
.
|
80
80
|
.TP
|
81
81
|
\fB\-\-conservative\fR
|
82
|
-
Use bundle install conservative update behavior and do not allow
|
82
|
+
Use bundle install conservative update behavior and do not allow indirect dependencies to be updated\.
|
83
83
|
.
|
84
84
|
.SH "UPDATING ALL GEMS"
|
85
85
|
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\.
|
@@ -208,13 +208,13 @@ In this case, the two gems have their own set of dependencies, but they share \f
|
|
208
208
|
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
209
|
.
|
210
210
|
.P
|
211
|
-
To prevent updating
|
211
|
+
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
212
|
.
|
213
213
|
.P
|
214
214
|
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
215
|
.
|
216
216
|
.P
|
217
|
-
Starting with 1\.14, specifying the \fB\-\-conservative\fR option will also prevent
|
217
|
+
Starting with 1\.14, specifying the \fB\-\-conservative\fR option will also prevent indirect dependencies from being updated\.
|
218
218
|
.
|
219
219
|
.SH "PATCH LEVEL OPTIONS"
|
220
220
|
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\.
|
@@ -56,7 +56,8 @@ gem.
|
|
56
56
|
Fall back to using the single-file index of all gems.
|
57
57
|
|
58
58
|
* `--jobs=[<number>]`, `-j[<number>]`:
|
59
|
-
Specify the number of jobs to run in parallel. The default is
|
59
|
+
Specify the number of jobs to run in parallel. The default is the number of
|
60
|
+
available processors.
|
60
61
|
|
61
62
|
* `--retry=[<number>]`:
|
62
63
|
Retry failed network or git requests for <number> times.
|
@@ -80,7 +81,7 @@ gem.
|
|
80
81
|
Do not allow any gem to be updated past latest `--patch` | `--minor` | `--major`.
|
81
82
|
|
82
83
|
* `--conservative`:
|
83
|
-
Use bundle install conservative update behavior and do not allow
|
84
|
+
Use bundle install conservative update behavior and do not allow indirect dependencies to be updated.
|
84
85
|
|
85
86
|
## UPDATING ALL GEMS
|
86
87
|
|
@@ -195,7 +196,7 @@ In short, by default, when you update a gem using `bundle update`, bundler will
|
|
195
196
|
update all dependencies of that gem, including those that are also dependencies
|
196
197
|
of another gem.
|
197
198
|
|
198
|
-
To prevent updating
|
199
|
+
To prevent updating indirect dependencies, prior to version 1.14 the only option
|
199
200
|
was the `CONSERVATIVE UPDATING` behavior in [bundle install(1)](bundle-install.1.html):
|
200
201
|
|
201
202
|
In this scenario, updating the `thin` version manually in the Gemfile(5),
|
@@ -203,7 +204,7 @@ and then running [bundle install(1)](bundle-install.1.html) will only update `da
|
|
203
204
|
but not `rack`. For more information, see the `CONSERVATIVE UPDATING` section
|
204
205
|
of [bundle install(1)](bundle-install.1.html).
|
205
206
|
|
206
|
-
Starting with 1.14, specifying the `--conservative` option will also prevent
|
207
|
+
Starting with 1.14, specifying the `--conservative` option will also prevent indirect
|
207
208
|
dependencies from being updated.
|
208
209
|
|
209
210
|
## PATCH LEVEL OPTIONS
|
@@ -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\-VIZ" "1" "
|
4
|
+
.TH "BUNDLE\-VIZ" "1" "December 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-viz\fR \- Generates a visual dependency graph for your Gemfile
|
@@ -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 "GEMFILE" "5" "
|
4
|
+
.TH "GEMFILE" "5" "December 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBGemfile\fR \- A format for describing gem dependencies for Ruby programs
|
@@ -506,8 +506,34 @@ gem "rails", :git => "git://github\.com/rails/rails\.git"
|
|
506
506
|
.P
|
507
507
|
Since the \fBgithub\fR method is a specialization of \fBgit_source\fR, it accepts a \fB:branch\fR named argument\.
|
508
508
|
.
|
509
|
+
.P
|
510
|
+
You can also directly pass a pull request URL:
|
511
|
+
.
|
512
|
+
.IP "" 4
|
513
|
+
.
|
514
|
+
.nf
|
515
|
+
|
516
|
+
gem "rails", :github => "https://github\.com/rails/rails/pull/43753"
|
517
|
+
.
|
518
|
+
.fi
|
519
|
+
.
|
520
|
+
.IP "" 0
|
521
|
+
.
|
522
|
+
.P
|
523
|
+
Which is equivalent to:
|
524
|
+
.
|
525
|
+
.IP "" 4
|
526
|
+
.
|
527
|
+
.nf
|
528
|
+
|
529
|
+
gem "rails", :github => "rails/rails", branch: "refs/pull/43753/head"
|
530
|
+
.
|
531
|
+
.fi
|
532
|
+
.
|
533
|
+
.IP "" 0
|
534
|
+
.
|
509
535
|
.SS "GIST"
|
510
|
-
If the git repository you want to use is hosted as a
|
536
|
+
If the git repository you want to use is hosted as a GitHub Gist and is public, you can use the :gist shorthand to specify the gist identifier (without the trailing "\.git")\.
|
511
537
|
.
|
512
538
|
.IP "" 4
|
513
539
|
.
|
@@ -372,9 +372,17 @@ Are both equivalent to
|
|
372
372
|
|
373
373
|
Since the `github` method is a specialization of `git_source`, it accepts a `:branch` named argument.
|
374
374
|
|
375
|
+
You can also directly pass a pull request URL:
|
376
|
+
|
377
|
+
gem "rails", :github => "https://github.com/rails/rails/pull/43753"
|
378
|
+
|
379
|
+
Which is equivalent to:
|
380
|
+
|
381
|
+
gem "rails", :github => "rails/rails", branch: "refs/pull/43753/head"
|
382
|
+
|
375
383
|
### GIST
|
376
384
|
|
377
|
-
If the git repository you want to use is hosted as a
|
385
|
+
If the git repository you want to use is hosted as a GitHub Gist and is public, you can use
|
378
386
|
the :gist shorthand to specify the gist identifier (without the trailing ".git").
|
379
387
|
|
380
388
|
gem "the_hatch", :gist => "4815162342"
|
File without changes
|
@@ -140,6 +140,13 @@ module Bundler
|
|
140
140
|
end
|
141
141
|
end
|
142
142
|
|
143
|
+
# Set internal representation to fetch the gems/specs locally.
|
144
|
+
#
|
145
|
+
# When this is called, the source should try to fetch the specs and
|
146
|
+
# install from the local system.
|
147
|
+
def local!
|
148
|
+
end
|
149
|
+
|
143
150
|
# Set internal representation to fetch the gems/specs from remote.
|
144
151
|
#
|
145
152
|
# When this is called, the source should try to fetch the specs and
|
@@ -237,6 +244,20 @@ module Bundler
|
|
237
244
|
specs.unmet_dependency_names
|
238
245
|
end
|
239
246
|
|
247
|
+
# Used by definition.
|
248
|
+
#
|
249
|
+
# Note: Do not override if you don't know what you are doing.
|
250
|
+
def spec_names
|
251
|
+
specs.spec_names
|
252
|
+
end
|
253
|
+
|
254
|
+
# Used by definition.
|
255
|
+
#
|
256
|
+
# Note: Do not override if you don't know what you are doing.
|
257
|
+
def add_dependency_names(names)
|
258
|
+
@dependencies |= Array(names)
|
259
|
+
end
|
260
|
+
|
240
261
|
# Note: Do not override if you don't know what you are doing.
|
241
262
|
def can_lock?(spec)
|
242
263
|
spec.source == self
|
@@ -262,6 +283,7 @@ module Bundler
|
|
262
283
|
def to_s
|
263
284
|
"plugin source for #{@type} with uri #{@uri}"
|
264
285
|
end
|
286
|
+
alias_method :identifier, :to_s
|
265
287
|
|
266
288
|
# Note: Do not override if you don't know what you are doing.
|
267
289
|
def include?(other)
|
data/lib/bundler/plugin/index.rb
CHANGED
@@ -74,7 +74,10 @@ module Bundler
|
|
74
74
|
def unregister_plugin(name)
|
75
75
|
@commands.delete_if {|_, v| v == name }
|
76
76
|
@sources.delete_if {|_, v| v == name }
|
77
|
-
@hooks.each
|
77
|
+
@hooks.each do |hook, names|
|
78
|
+
names.delete(name)
|
79
|
+
@hooks.delete(hook) if names.empty?
|
80
|
+
end
|
78
81
|
@plugin_paths.delete(name)
|
79
82
|
@load_paths.delete(name)
|
80
83
|
save_index
|
@@ -16,15 +16,13 @@ module Bundler
|
|
16
16
|
|
17
17
|
version = options[:version] || [">= 0"]
|
18
18
|
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
install_rubygems(names, version, sources)
|
27
|
-
end
|
19
|
+
if options[:git]
|
20
|
+
install_git(names, version, options)
|
21
|
+
elsif options[:local_git]
|
22
|
+
install_local_git(names, version, options)
|
23
|
+
else
|
24
|
+
sources = options[:source] || Gem.sources
|
25
|
+
install_rubygems(names, version, sources)
|
28
26
|
end
|
29
27
|
end
|
30
28
|
|
@@ -79,10 +77,12 @@ module Bundler
|
|
79
77
|
source_list = SourceList.new
|
80
78
|
|
81
79
|
source_list.add_git_source(git_source_options) if git_source_options
|
82
|
-
source_list.
|
80
|
+
Array(rubygems_source).each {|remote| source_list.add_global_rubygems_remote(remote) } if rubygems_source
|
83
81
|
|
84
82
|
deps = names.map {|name| Dependency.new name, version }
|
85
83
|
|
84
|
+
Bundler.configure_gem_home_and_path(Plugin.root)
|
85
|
+
|
86
86
|
definition = Definition.new(nil, deps, source_list, true)
|
87
87
|
install_definition(definition)
|
88
88
|
end
|