bundler 2.1.4 → 2.2.17
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +1774 -1430
- data/README.md +6 -8
- data/bundler.gemspec +4 -4
- data/exe/bundle +3 -0
- data/lib/bundler.rb +33 -9
- data/lib/bundler/build_metadata.rb +3 -11
- data/lib/bundler/cli.rb +59 -23
- data/lib/bundler/cli/add.rb +1 -1
- data/lib/bundler/cli/binstubs.rb +6 -2
- data/lib/bundler/cli/cache.rb +2 -7
- data/lib/bundler/cli/clean.rb +1 -1
- data/lib/bundler/cli/common.rb +29 -2
- data/lib/bundler/cli/console.rb +1 -1
- data/lib/bundler/cli/doctor.rb +1 -1
- data/lib/bundler/cli/exec.rb +4 -4
- data/lib/bundler/cli/fund.rb +36 -0
- data/lib/bundler/cli/gem.rb +129 -28
- data/lib/bundler/cli/info.rb +15 -4
- data/lib/bundler/cli/init.rb +2 -2
- data/lib/bundler/cli/inject.rb +1 -1
- data/lib/bundler/cli/install.rb +13 -11
- data/lib/bundler/cli/issue.rb +2 -2
- data/lib/bundler/cli/list.rb +12 -10
- data/lib/bundler/cli/outdated.rb +88 -67
- data/lib/bundler/cli/plugin.rb +10 -0
- data/lib/bundler/cli/pristine.rb +5 -0
- data/lib/bundler/cli/show.rb +1 -1
- data/lib/bundler/cli/update.rb +3 -1
- data/lib/bundler/compact_index_client.rb +1 -1
- data/lib/bundler/compact_index_client/cache.rb +6 -14
- data/lib/bundler/compact_index_client/gem_parser.rb +28 -0
- data/lib/bundler/compact_index_client/updater.rb +13 -17
- data/lib/bundler/current_ruby.rb +1 -0
- data/lib/bundler/definition.rb +121 -131
- data/lib/bundler/dep_proxy.rb +16 -9
- data/lib/bundler/dependency.rb +3 -10
- data/lib/bundler/dsl.rb +40 -33
- data/lib/bundler/endpoint_specification.rb +1 -1
- data/lib/bundler/env.rb +1 -1
- data/lib/bundler/environment_preserver.rb +26 -2
- data/lib/bundler/errors.rb +1 -0
- data/lib/bundler/feature_flag.rb +0 -5
- data/lib/bundler/fetcher.rb +5 -4
- data/lib/bundler/fetcher/base.rb +1 -1
- data/lib/bundler/fetcher/compact_index.rb +1 -1
- data/lib/bundler/fetcher/downloader.rb +9 -5
- data/lib/bundler/fetcher/index.rb +3 -4
- data/lib/bundler/friendly_errors.rb +22 -13
- data/lib/bundler/gem_helper.rb +51 -18
- data/lib/bundler/gem_helpers.rb +36 -25
- data/lib/bundler/gem_version_promoter.rb +4 -4
- data/lib/bundler/graph.rb +1 -1
- data/lib/bundler/index.rb +12 -7
- data/lib/bundler/injector.rb +23 -5
- data/lib/bundler/inline.rb +3 -2
- data/lib/bundler/installer.rb +37 -49
- data/lib/bundler/installer/gem_installer.rb +3 -3
- data/lib/bundler/installer/parallel_installer.rb +46 -25
- data/lib/bundler/installer/standalone.rb +17 -2
- data/lib/bundler/lazy_specification.rb +45 -25
- data/lib/bundler/lockfile_generator.rb +1 -1
- data/lib/bundler/lockfile_parser.rb +4 -14
- data/lib/bundler/man/.document +1 -0
- data/{man → lib/bundler/man}/bundle-add.1 +1 -1
- data/{man/bundle-add.ronn → lib/bundler/man/bundle-add.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-binstubs.1 +5 -3
- data/{man/bundle-binstubs.ronn → lib/bundler/man/bundle-binstubs.1.ronn} +2 -4
- data/{man → lib/bundler/man}/bundle-cache.1 +1 -1
- data/{man/bundle-cache.ronn → lib/bundler/man/bundle-cache.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-check.1 +1 -1
- data/{man/bundle-check.ronn → lib/bundler/man/bundle-check.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-clean.1 +1 -1
- data/{man/bundle-clean.ronn → lib/bundler/man/bundle-clean.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-config.1 +42 -34
- data/{man/bundle-config.ronn → lib/bundler/man/bundle-config.1.ronn} +51 -43
- data/{man → lib/bundler/man}/bundle-doctor.1 +1 -1
- data/{man/bundle-doctor.ronn → lib/bundler/man/bundle-doctor.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-exec.1 +1 -1
- data/{man/bundle-exec.ronn → lib/bundler/man/bundle-exec.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-gem.1 +25 -3
- data/{man/bundle-gem.ronn → lib/bundler/man/bundle-gem.1.ronn} +30 -7
- data/{man → lib/bundler/man}/bundle-info.1 +1 -1
- data/{man/bundle-info.ronn → lib/bundler/man/bundle-info.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-init.1 +1 -1
- data/{man/bundle-init.ronn → lib/bundler/man/bundle-init.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-inject.1 +1 -1
- data/{man/bundle-inject.ronn → lib/bundler/man/bundle-inject.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-install.1 +30 -3
- data/{man/bundle-install.ronn → lib/bundler/man/bundle-install.1.ronn} +25 -3
- data/{man → lib/bundler/man}/bundle-list.1 +7 -7
- data/{man/bundle-list.ronn → lib/bundler/man/bundle-list.1.ronn} +6 -6
- data/{man → lib/bundler/man}/bundle-lock.1 +1 -1
- data/{man/bundle-lock.ronn → lib/bundler/man/bundle-lock.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-open.1 +1 -1
- data/{man/bundle-open.ronn → lib/bundler/man/bundle-open.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-outdated.1 +1 -1
- data/{man/bundle-outdated.ronn → lib/bundler/man/bundle-outdated.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-platform.1 +1 -1
- data/{man/bundle-platform.ronn → lib/bundler/man/bundle-platform.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-pristine.1 +1 -1
- data/{man/bundle-pristine.ronn → lib/bundler/man/bundle-pristine.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-remove.1 +1 -1
- data/{man/bundle-remove.ronn → lib/bundler/man/bundle-remove.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-show.1 +1 -1
- data/{man/bundle-show.ronn → lib/bundler/man/bundle-show.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-update.1 +1 -1
- data/{man/bundle-update.ronn → lib/bundler/man/bundle-update.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle-viz.1 +1 -1
- data/{man/bundle-viz.ronn → lib/bundler/man/bundle-viz.1.ronn} +0 -0
- data/{man → lib/bundler/man}/bundle.1 +1 -1
- data/{man/bundle.ronn → lib/bundler/man/bundle.1.ronn} +0 -0
- data/{man → lib/bundler/man}/gemfile.5 +4 -4
- data/{man → lib/bundler/man}/gemfile.5.ronn +4 -4
- data/{man → lib/bundler/man}/index.txt +0 -0
- data/lib/bundler/mirror.rb +2 -2
- data/lib/bundler/plugin.rb +33 -7
- data/lib/bundler/plugin/api/source.rb +8 -1
- data/lib/bundler/plugin/dsl.rb +1 -1
- data/lib/bundler/plugin/index.rb +10 -1
- data/lib/bundler/plugin/installer.rb +9 -11
- data/lib/bundler/plugin/installer/rubygems.rb +1 -1
- data/lib/bundler/plugin/source_list.rb +5 -1
- data/lib/bundler/psyched_yaml.rb +0 -15
- data/lib/bundler/remote_specification.rb +5 -2
- data/lib/bundler/resolver.rb +133 -77
- data/lib/bundler/resolver/spec_group.rb +75 -48
- data/lib/bundler/retry.rb +2 -2
- data/lib/bundler/ruby_version.rb +1 -1
- data/lib/bundler/rubygems_ext.rb +69 -9
- data/lib/bundler/rubygems_gem_installer.rb +50 -9
- data/lib/bundler/rubygems_integration.rb +25 -60
- data/lib/bundler/runtime.rb +4 -14
- data/lib/bundler/settings.rb +107 -54
- data/lib/bundler/shared_helpers.rb +3 -3
- data/lib/bundler/similarity_detector.rb +1 -1
- data/lib/bundler/source.rb +7 -1
- data/lib/bundler/source/git.rb +24 -22
- data/lib/bundler/source/git/git_proxy.rb +82 -80
- data/lib/bundler/source/metadata.rb +0 -4
- data/lib/bundler/source/path.rb +10 -4
- data/lib/bundler/source/path/installer.rb +10 -10
- data/lib/bundler/source/rubygems.rb +45 -24
- data/lib/bundler/source/rubygems/remote.rb +1 -1
- data/lib/bundler/source_list.rb +31 -26
- data/lib/bundler/spec_set.rb +29 -17
- data/lib/bundler/stub_specification.rb +25 -7
- data/lib/bundler/templates/Gemfile +1 -1
- data/lib/bundler/templates/gems.rb +1 -1
- data/lib/bundler/templates/newgem/CHANGELOG.md.tt +5 -0
- data/lib/bundler/templates/newgem/CODE_OF_CONDUCT.md.tt +57 -47
- data/lib/bundler/templates/newgem/Gemfile.tt +9 -1
- data/lib/bundler/templates/newgem/README.md.tt +6 -5
- data/lib/bundler/templates/newgem/Rakefile.tt +19 -5
- data/lib/bundler/templates/newgem/bin/console.tt +1 -0
- data/lib/bundler/templates/newgem/circleci/config.yml.tt +13 -0
- data/lib/bundler/templates/newgem/ext/newgem/extconf.rb.tt +2 -0
- data/lib/bundler/templates/newgem/github/workflows/main.yml.tt +16 -0
- data/lib/bundler/templates/newgem/gitlab-ci.yml.tt +9 -0
- data/lib/bundler/templates/newgem/lib/newgem.rb.tt +4 -2
- data/lib/bundler/templates/newgem/lib/newgem/version.rb.tt +2 -0
- data/lib/bundler/templates/newgem/newgem.gemspec.tt +15 -7
- data/lib/bundler/templates/newgem/rubocop.yml.tt +13 -0
- data/lib/bundler/templates/newgem/spec/newgem_spec.rb.tt +2 -0
- data/lib/bundler/templates/newgem/spec/spec_helper.rb.tt +2 -1
- data/lib/bundler/templates/newgem/test/{newgem_test.rb.tt → minitest/newgem_test.rb.tt} +2 -0
- data/lib/bundler/templates/newgem/test/{test_helper.rb.tt → minitest/test_helper.rb.tt} +2 -0
- data/lib/bundler/templates/newgem/test/test-unit/newgem_test.rb.tt +15 -0
- data/lib/bundler/templates/newgem/test/test-unit/test_helper.rb.tt +6 -0
- data/lib/bundler/ui/shell.rb +5 -5
- data/lib/bundler/uri_credentials_filter.rb +3 -1
- data/lib/bundler/vendor/molinillo/lib/molinillo.rb +0 -1
- data/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb +7 -0
- data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb +34 -2
- data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb +2 -2
- data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb +11 -5
- data/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +3 -3
- data/lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb +1 -1
- data/lib/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb +12 -1
- data/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb +49 -47
- data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +82 -189
- data/lib/bundler/vendor/thor/lib/thor.rb +5 -13
- data/lib/bundler/vendor/thor/lib/thor/actions.rb +1 -1
- data/lib/bundler/vendor/thor/lib/thor/actions/create_link.rb +2 -1
- data/lib/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +4 -2
- data/lib/bundler/vendor/thor/lib/thor/base.rb +9 -0
- data/lib/bundler/vendor/thor/lib/thor/error.rb +1 -1
- data/lib/bundler/vendor/thor/lib/thor/parser/arguments.rb +5 -1
- data/lib/bundler/vendor/thor/lib/thor/parser/options.rb +9 -8
- data/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +5 -2
- data/lib/bundler/vendor/thor/lib/thor/shell/color.rb +5 -1
- data/lib/bundler/vendor/thor/lib/thor/version.rb +1 -1
- data/lib/bundler/vendor/tmpdir/lib/tmpdir.rb +154 -0
- data/lib/bundler/vendored_persistent.rb +0 -7
- data/lib/bundler/vendored_tmpdir.rb +4 -0
- data/lib/bundler/version.rb +1 -1
- data/lib/bundler/worker.rb +1 -1
- data/lib/bundler/yaml_serializer.rb +1 -1
- metadata +71 -85
- data/lib/bundler/vendor/molinillo/lib/molinillo/compatibility.rb +0 -26
- data/man/bundle-add.1.txt +0 -58
- data/man/bundle-binstubs.1.txt +0 -48
- data/man/bundle-cache.1.txt +0 -78
- data/man/bundle-check.1.txt +0 -33
- data/man/bundle-clean.1.txt +0 -26
- data/man/bundle-config.1.txt +0 -528
- data/man/bundle-doctor.1.txt +0 -44
- data/man/bundle-exec.1.txt +0 -178
- data/man/bundle-gem.1.txt +0 -91
- data/man/bundle-info.1.txt +0 -21
- data/man/bundle-init.1.txt +0 -34
- data/man/bundle-inject.1.txt +0 -32
- data/man/bundle-install.1.txt +0 -401
- data/man/bundle-list.1.txt +0 -43
- data/man/bundle-lock.1.txt +0 -93
- data/man/bundle-open.1.txt +0 -29
- data/man/bundle-outdated.1.txt +0 -131
- data/man/bundle-platform.1.txt +0 -57
- data/man/bundle-pristine.1.txt +0 -44
- data/man/bundle-remove.1.txt +0 -34
- data/man/bundle-show.1.txt +0 -27
- data/man/bundle-update.1.txt +0 -390
- data/man/bundle-viz.1.txt +0 -39
- data/man/bundle.1.txt +0 -116
- data/man/gemfile.5.txt +0 -649
@@ -64,8 +64,6 @@ module Bundler
|
|
64
64
|
@state = nil
|
65
65
|
@specs = {}
|
66
66
|
|
67
|
-
@rubygems_aggregate = Source::Rubygems.new
|
68
|
-
|
69
67
|
if lockfile.match(/<<<<<<<|=======|>>>>>>>|\|\|\|\|\|\|\|/)
|
70
68
|
raise LockfileError, "Your #{Bundler.default_lockfile.relative_path_from(SharedHelpers.pwd)} contains merge conflicts.\n" \
|
71
69
|
"Run `git checkout HEAD -- #{Bundler.default_lockfile.relative_path_from(SharedHelpers.pwd)}` first to get a clean lock."
|
@@ -89,7 +87,6 @@ module Bundler
|
|
89
87
|
send("parse_#{@state}", line)
|
90
88
|
end
|
91
89
|
end
|
92
|
-
@sources << @rubygems_aggregate unless Bundler.feature_flag.disable_multisource?
|
93
90
|
@specs = @specs.values.sort_by(&:identifier)
|
94
91
|
warn_for_outdated_bundler_version
|
95
92
|
rescue ArgumentError => e
|
@@ -109,7 +106,7 @@ module Bundler
|
|
109
106
|
"bundler:#{bundler_version}#{prerelease_text}`.\n"
|
110
107
|
end
|
111
108
|
|
112
|
-
|
109
|
+
private
|
113
110
|
|
114
111
|
TYPES = {
|
115
112
|
GIT => Bundler::Source::Git,
|
@@ -134,16 +131,9 @@ module Bundler
|
|
134
131
|
@sources << @current_source
|
135
132
|
end
|
136
133
|
when GEM
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
@sources << @current_source
|
141
|
-
else
|
142
|
-
Array(@opts["remote"]).each do |url|
|
143
|
-
@rubygems_aggregate.add_remote(url)
|
144
|
-
end
|
145
|
-
@current_source = @rubygems_aggregate
|
146
|
-
end
|
134
|
+
@opts["remotes"] = Array(@opts.delete("remote")).reverse
|
135
|
+
@current_source = TYPES[@type].from_lock(@opts)
|
136
|
+
@sources << @current_source
|
147
137
|
when PLUGIN
|
148
138
|
@current_source = Plugin.source_from_lock(@opts)
|
149
139
|
@sources << @current_source
|
@@ -0,0 +1 @@
|
|
1
|
+
# Ignore all files in this directory
|
File without changes
|
@@ -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" "
|
4
|
+
.TH "BUNDLE\-BINSTUBS" "1" "April 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-binstubs\fR \- Install the binstubs of the listed gems
|
@@ -36,5 +36,7 @@ Makes binstubs that can work without depending on Rubygems or Bundler at runtime
|
|
36
36
|
\fB\-\-shebang\fR
|
37
37
|
Specify a different shebang executable name than the default (default \'ruby\')
|
38
38
|
.
|
39
|
-
.
|
40
|
-
|
39
|
+
.TP
|
40
|
+
\fB\-\-all\fR
|
41
|
+
Create binstubs for all gems in the bundle\.
|
42
|
+
|
@@ -37,7 +37,5 @@ Calling binstubs with [GEM [GEM]] will create binstubs for all given gems.
|
|
37
37
|
* `--shebang`:
|
38
38
|
Specify a different shebang executable name than the default (default 'ruby')
|
39
39
|
|
40
|
-
|
41
|
-
|
42
|
-
To create binstubs for all the gems in the bundle you can use the `--binstubs`
|
43
|
-
flag in [bundle install(1)](bundle-install.1.html).
|
40
|
+
* `--all`:
|
41
|
+
Create binstubs for all gems in the 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\-CACHE" "1" "
|
4
|
+
.TH "BUNDLE\-CACHE" "1" "April 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-cache\fR \- Package your needed \fB\.gem\fR files into your application
|
File without changes
|
@@ -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" "
|
4
|
+
.TH "BUNDLE\-CHECK" "1" "April 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-check\fR \- Verifies if dependencies are satisfied by installed gems
|
File without changes
|
File without changes
|
@@ -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" "
|
4
|
+
.TH "BUNDLE\-CONFIG" "1" "April 2021" "" ""
|
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 (\
|
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 <name> <value>\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
|
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\.
|
@@ -57,13 +57,13 @@ Executing \fBbundle config unset \-\-local <name> <value>\fR will delete the con
|
|
57
57
|
Executing bundle with the \fBBUNDLE_IGNORE_CONFIG\fR environment variable set will cause it to ignore all configuration\.
|
58
58
|
.
|
59
59
|
.P
|
60
|
-
Executing \fBbundle config set disable_multisource true\fR upgrades the warning about the Gemfile containing multiple primary sources to an error\. Executing \fBbundle config unset disable_multisource\fR downgrades this error to a warning\.
|
60
|
+
Executing \fBbundle config set \-\-local disable_multisource true\fR upgrades the warning about the Gemfile containing multiple primary sources to an error\. Executing \fBbundle config unset disable_multisource\fR downgrades this error to a warning\.
|
61
61
|
.
|
62
62
|
.SH "REMEMBERING OPTIONS"
|
63
63
|
Flags passed to \fBbundle install\fR or the Bundler runtime, such as \fB\-\-path foo\fR or \fB\-\-without production\fR, are remembered between commands and saved to your local application\'s configuration (normally, \fB\./\.bundle/config\fR)\.
|
64
64
|
.
|
65
65
|
.P
|
66
|
-
However, this will be changed in bundler 3, so it\'s better not to rely on this behavior\. If these options must be remembered, it\'s better to set them using \fBbundle config\fR (e\.g\., \fBbundle config set path foo\fR)\.
|
66
|
+
However, this will be changed in bundler 3, so it\'s better not to rely on this behavior\. If these options must be remembered, it\'s better to set them using \fBbundle config\fR (e\.g\., \fBbundle config set \-\-local path foo\fR)\.
|
67
67
|
.
|
68
68
|
.P
|
69
69
|
The options that can be configured are:
|
@@ -111,7 +111,7 @@ Since the specific location of that executable can change from machine to machin
|
|
111
111
|
.
|
112
112
|
.nf
|
113
113
|
|
114
|
-
bundle config set build\.mysql \-\-with\-mysql\-config=/usr/local/mysql/bin/mysql_config
|
114
|
+
bundle config set \-\-global build\.mysql \-\-with\-mysql\-config=/usr/local/mysql/bin/mysql_config
|
115
115
|
.
|
116
116
|
.fi
|
117
117
|
.
|
@@ -136,9 +136,6 @@ Any periods in the configuration keys must be replaced with two underscores when
|
|
136
136
|
The following is a list of all configuration keys and their purpose\. You can learn more about their operation in bundle install(1) \fIbundle\-install\.1\.html\fR\.
|
137
137
|
.
|
138
138
|
.IP "\(bu" 4
|
139
|
-
\fBallow_bundler_dependency_conflicts\fR (\fBBUNDLE_ALLOW_BUNDLER_DEPENDENCY_CONFLICTS\fR): Allow resolving to specifications that have dependencies on \fBbundler\fR that are incompatible with the running Bundler version\.
|
140
|
-
.
|
141
|
-
.IP "\(bu" 4
|
142
139
|
\fBallow_deployment_source_credential_changes\fR (\fBBUNDLE_ALLOW_DEPLOYMENT_SOURCE_CREDENTIAL_CHANGES\fR): When in deployment mode, allow changing the credentials to a gem\'s source\. Ex: \fBhttps://some\.host\.com/gems/path/\fR \-> \fBhttps://user_name:password@some\.host\.com/gems/path\fR
|
143
140
|
.
|
144
141
|
.IP "\(bu" 4
|
@@ -154,7 +151,7 @@ The following is a list of all configuration keys and their purpose\. You can le
|
|
154
151
|
\fBbin\fR (\fBBUNDLE_BIN\fR): Install executables from gems in the bundle to the specified directory\. Defaults to \fBfalse\fR\.
|
155
152
|
.
|
156
153
|
.IP "\(bu" 4
|
157
|
-
\fBcache_all\fR (\fBBUNDLE_CACHE_ALL\fR): Cache all gems, including path and git gems\.
|
154
|
+
\fBcache_all\fR (\fBBUNDLE_CACHE_ALL\fR): Cache all gems, including path and git gems\. This needs to be explicitly configured on bundler 1 and bundler 2, but will be the default on bundler 3\.
|
158
155
|
.
|
159
156
|
.IP "\(bu" 4
|
160
157
|
\fBcache_all_platforms\fR (\fBBUNDLE_CACHE_ALL_PLATFORMS\fR): Cache gems for all platforms\.
|
@@ -184,10 +181,10 @@ The following is a list of all configuration keys and their purpose\. You can le
|
|
184
181
|
\fBdisable_local_branch_check\fR (\fBBUNDLE_DISABLE_LOCAL_BRANCH_CHECK\fR): Allow Bundler to use a local git override without a branch specified in the Gemfile\.
|
185
182
|
.
|
186
183
|
.IP "\(bu" 4
|
187
|
-
\
|
184
|
+
\fBdisable_local_revision_check\fR (\fBBUNDLE_DISABLE_LOCAL_REVISION_CHECK\fR): Allow Bundler to use a local git override without checking if the revision present in the lockfile is present in the repository\.
|
188
185
|
.
|
189
186
|
.IP "\(bu" 4
|
190
|
-
\
|
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\.
|
191
188
|
.
|
192
189
|
.IP "\(bu" 4
|
193
190
|
\fBdisable_shared_gems\fR (\fBBUNDLE_DISABLE_SHARED_GEMS\fR): Stop Bundler from accessing gems installed to RubyGems\' normal location\.
|
@@ -202,6 +199,9 @@ The following is a list of all configuration keys and their purpose\. You can le
|
|
202
199
|
\fBfrozen\fR (\fBBUNDLE_FROZEN\fR): Disallow changes to the \fBGemfile\fR\. When the \fBGemfile\fR is changed and the lockfile has not been updated, running Bundler commands will be blocked\. Defaults to \fBtrue\fR when \fB\-\-deployment\fR is used\.
|
203
200
|
.
|
204
201
|
.IP "\(bu" 4
|
202
|
+
\fBgem\.github_username\fR (\fBBUNDLE_GEM__GITHUB_USERNAME\fR): Sets a GitHub username or organization to be used in \fBREADME\fR file when you create a new gem via \fBbundle gem\fR command\. It can be overridden by passing an explicit \fB\-\-github\-username\fR flag to \fBbundle gem\fR\.
|
203
|
+
.
|
204
|
+
.IP "\(bu" 4
|
205
205
|
\fBgem\.push_key\fR (\fBBUNDLE_GEM__PUSH_KEY\fR): Sets the \fB\-\-key\fR parameter for \fBgem push\fR when using the \fBrake release\fR command with a private gemstash server\.
|
206
206
|
.
|
207
207
|
.IP "\(bu" 4
|
@@ -214,10 +214,10 @@ The following is a list of all configuration keys and their purpose\. You can le
|
|
214
214
|
\fBignore_messages\fR (\fBBUNDLE_IGNORE_MESSAGES\fR): When set, no post install messages will be printed\. To silence a single gem, use dot notation like \fBignore_messages\.httparty true\fR\.
|
215
215
|
.
|
216
216
|
.IP "\(bu" 4
|
217
|
-
\fBinit_gems_rb\fR (\fBBUNDLE_INIT_GEMS_RB\fR) Generate a \fBgems\.rb\fR instead of a \fBGemfile\fR when running \fBbundle init\fR\.
|
217
|
+
\fBinit_gems_rb\fR (\fBBUNDLE_INIT_GEMS_RB\fR): Generate a \fBgems\.rb\fR instead of a \fBGemfile\fR when running \fBbundle init\fR\.
|
218
218
|
.
|
219
219
|
.IP "\(bu" 4
|
220
|
-
\fBjobs\fR (\fBBUNDLE_JOBS\fR): The number of gems Bundler can install in parallel\. Defaults to 1\.
|
220
|
+
\fBjobs\fR (\fBBUNDLE_JOBS\fR): The number of gems Bundler can install in parallel\. Defaults to 1 on Windows, and to the the number of processors on other platforms\.
|
221
221
|
.
|
222
222
|
.IP "\(bu" 4
|
223
223
|
\fBno_install\fR (\fBBUNDLE_NO_INSTALL\fR): Whether \fBbundle package\fR should skip installing gems\.
|
@@ -226,9 +226,6 @@ The following is a list of all configuration keys and their purpose\. You can le
|
|
226
226
|
\fBno_prune\fR (\fBBUNDLE_NO_PRUNE\fR): Whether Bundler should leave outdated gems unpruned when caching\.
|
227
227
|
.
|
228
228
|
.IP "\(bu" 4
|
229
|
-
\fBonly_update_to_newer_versions\fR (\fBBUNDLE_ONLY_UPDATE_TO_NEWER_VERSIONS\fR): During \fBbundle update\fR, only resolve to newer versions of the gems in the lockfile\.
|
230
|
-
.
|
231
|
-
.IP "\(bu" 4
|
232
229
|
\fBpath\fR (\fBBUNDLE_PATH\fR): The location on disk where all gems in your bundle will be located regardless of \fB$GEM_HOME\fR or \fB$GEM_PATH\fR values\. Bundle gems not found in this location will be installed by \fBbundle install\fR\. Defaults to \fBGem\.dir\fR\. When \-\-deployment is used, defaults to vendor/bundle\.
|
233
230
|
.
|
234
231
|
.IP "\(bu" 4
|
@@ -244,7 +241,7 @@ The following is a list of all configuration keys and their purpose\. You can le
|
|
244
241
|
\fBprefer_patch\fR (BUNDLE_PREFER_PATCH): Prefer updating only to next patch version during updates\. Makes \fBbundle update\fR calls equivalent to \fBbundler update \-\-patch\fR\.
|
245
242
|
.
|
246
243
|
.IP "\(bu" 4
|
247
|
-
\fBprint_only_version_number\fR (\fBBUNDLE_PRINT_ONLY_VERSION_NUMBER\fR) Print only version number from \fBbundler \-\-version\fR\.
|
244
|
+
\fBprint_only_version_number\fR (\fBBUNDLE_PRINT_ONLY_VERSION_NUMBER\fR): Print only version number from \fBbundler \-\-version\fR\.
|
248
245
|
.
|
249
246
|
.IP "\(bu" 4
|
250
247
|
\fBredirect\fR (\fBBUNDLE_REDIRECT\fR): The number of redirects allowed for network requests\. Defaults to \fB5\fR\.
|
@@ -265,12 +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
|
-
\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
|
-
.
|
273
|
-
.IP "\(bu" 4
|
274
265
|
\fBssl_ca_cert\fR (\fBBUNDLE_SSL_CA_CERT\fR): Path to a designated CA certificate file or folder containing multiple certificates for trusted CAs in PEM format\.
|
275
266
|
.
|
276
267
|
.IP "\(bu" 4
|
@@ -292,7 +283,7 @@ The following is a list of all configuration keys and their purpose\. You can le
|
|
292
283
|
\fBunlock_source_unlocks_spec\fR (\fBBUNDLE_UNLOCK_SOURCE_UNLOCKS_SPEC\fR): Whether running \fBbundle update \-\-source NAME\fR unlocks a gem with the given name\. Defaults to \fBtrue\fR\.
|
293
284
|
.
|
294
285
|
.IP "\(bu" 4
|
295
|
-
\fBupdate_requires_all_flag\fR (\fBBUNDLE_UPDATE_REQUIRES_ALL_FLAG\fR) Require passing \fB\-\-all\fR to \fBbundle update\fR when everything should be updated, and disallow passing no options to \fBbundle update\fR\.
|
286
|
+
\fBupdate_requires_all_flag\fR (\fBBUNDLE_UPDATE_REQUIRES_ALL_FLAG\fR): Require passing \fB\-\-all\fR to \fBbundle update\fR when everything should be updated, and disallow passing no options to \fBbundle update\fR\.
|
296
287
|
.
|
297
288
|
.IP "\(bu" 4
|
298
289
|
\fBuser_agent\fR (\fBBUNDLE_USER_AGENT\fR): The custom user agent fragment Bundler includes in API requests\.
|
@@ -318,7 +309,7 @@ Bundler also allows you to work against a git repository locally instead of usin
|
|
318
309
|
.
|
319
310
|
.nf
|
320
311
|
|
321
|
-
bundle config set local\.GEM_NAME /path/to/local/git/repository
|
312
|
+
bundle config set \-\-local local\.GEM_NAME /path/to/local/git/repository
|
322
313
|
.
|
323
314
|
.fi
|
324
315
|
.
|
@@ -331,7 +322,7 @@ For example, in order to use a local Rack repository, a developer could call:
|
|
331
322
|
.
|
332
323
|
.nf
|
333
324
|
|
334
|
-
bundle config set local\.rack ~/Work/git/rack
|
325
|
+
bundle config set \-\-local local\.rack ~/Work/git/rack
|
335
326
|
.
|
336
327
|
.fi
|
337
328
|
.
|
@@ -353,7 +344,7 @@ Bundler supports overriding gem sources with mirrors\. This allows you to config
|
|
353
344
|
.
|
354
345
|
.nf
|
355
346
|
|
356
|
-
bundle config set mirror\.SOURCE_URL MIRROR_URL
|
347
|
+
bundle config set \-\-global mirror\.SOURCE_URL MIRROR_URL
|
357
348
|
.
|
358
349
|
.fi
|
359
350
|
.
|
@@ -366,7 +357,7 @@ For example, to use a mirror of rubygems\.org hosted at rubygems\-mirror\.org:
|
|
366
357
|
.
|
367
358
|
.nf
|
368
359
|
|
369
|
-
bundle config set mirror\.http://rubygems\.org http://rubygems\-mirror\.org
|
360
|
+
bundle config set \-\-global mirror\.http://rubygems\.org http://rubygems\-mirror\.org
|
370
361
|
.
|
371
362
|
.fi
|
372
363
|
.
|
@@ -379,7 +370,7 @@ Each mirror also provides a fallback timeout setting\. If the mirror does not re
|
|
379
370
|
.
|
380
371
|
.nf
|
381
372
|
|
382
|
-
bundle config set mirror\.SOURCE_URL\.fallback_timeout TIMEOUT
|
373
|
+
bundle config set \-\-global mirror\.SOURCE_URL\.fallback_timeout TIMEOUT
|
383
374
|
.
|
384
375
|
.fi
|
385
376
|
.
|
@@ -392,7 +383,7 @@ For example, to fall back to rubygems\.org after 3 seconds:
|
|
392
383
|
.
|
393
384
|
.nf
|
394
385
|
|
395
|
-
bundle config set mirror\.https://rubygems\.org\.fallback_timeout 3
|
386
|
+
bundle config set \-\-global mirror\.https://rubygems\.org\.fallback_timeout 3
|
396
387
|
.
|
397
388
|
.fi
|
398
389
|
.
|
@@ -408,7 +399,7 @@ Bundler allows you to configure credentials for any gem source, which allows you
|
|
408
399
|
.
|
409
400
|
.nf
|
410
401
|
|
411
|
-
bundle config set SOURCE_HOSTNAME USERNAME:PASSWORD
|
402
|
+
bundle config set \-\-global SOURCE_HOSTNAME USERNAME:PASSWORD
|
412
403
|
.
|
413
404
|
.fi
|
414
405
|
.
|
@@ -421,7 +412,7 @@ For example, to save the credentials of user \fBclaudette\fR for the gem source
|
|
421
412
|
.
|
422
413
|
.nf
|
423
414
|
|
424
|
-
bundle config set gems\.longerous\.com claudette:s00pers3krit
|
415
|
+
bundle config set \-\-global gems\.longerous\.com claudette:s00pers3krit
|
425
416
|
.
|
426
417
|
.fi
|
427
418
|
.
|
@@ -447,7 +438,7 @@ For gems with a git source with HTTP(S) URL you can specify credentials like so:
|
|
447
438
|
.
|
448
439
|
.nf
|
449
440
|
|
450
|
-
bundle config set https://github\.com/
|
441
|
+
bundle config set \-\-global https://github\.com/rubygems/rubygems\.git username:password
|
451
442
|
.
|
452
443
|
.fi
|
453
444
|
.
|
@@ -479,6 +470,23 @@ export BUNDLE_GITHUB__COM=abcd0123generatedtoken:x\-oauth\-basic
|
|
479
470
|
.
|
480
471
|
.IP "" 0
|
481
472
|
.
|
473
|
+
.P
|
474
|
+
Note that any configured credentials will be redacted by informative commands such as \fBbundle config list\fR or \fBbundle config get\fR, unless you use the \fB\-\-parseable\fR flag\. This is to avoid unintentially leaking credentials when copy\-pasting bundler output\.
|
475
|
+
.
|
476
|
+
.P
|
477
|
+
Also note that to guarantee a sane mapping between valid environment variable names and valid host names, bundler makes the following transformations:
|
478
|
+
.
|
479
|
+
.IP "\(bu" 4
|
480
|
+
Any \fB\-\fR characters in a host name are mapped to a triple dash (\fB___\fR) in the corresponding enviroment variable\.
|
481
|
+
.
|
482
|
+
.IP "\(bu" 4
|
483
|
+
Any \fB\.\fR characters in a host name are mapped to a double dash (\fB__\fR) in the corresponding environment variable\.
|
484
|
+
.
|
485
|
+
.IP "" 0
|
486
|
+
.
|
487
|
+
.P
|
488
|
+
This means that if you have a gem server named \fBmy\.gem\-host\.com\fR, you\'ll need to use the \fBBUNDLE_MY__GEM___HOST__COM\fR variable to configure credentials for it through ENV\.
|
489
|
+
.
|
482
490
|
.SH "CONFIGURE BUNDLER DIRECTORIES"
|
483
491
|
Bundler\'s home, config, cache and plugin directories are able to be configured through environment variables\. The default location for Bundler\'s home directory is \fB~/\.bundle\fR, which all directories inherit from by default\. The following outlines the available environment variables and their default values
|
484
492
|
.
|
@@ -11,7 +11,7 @@ This command allows you to interact with Bundler's configuration system.
|
|
11
11
|
|
12
12
|
Bundler loads configuration settings in this order:
|
13
13
|
|
14
|
-
1. Local config (
|
14
|
+
1. Local config (`<project_root>/.bundle/config` or `$BUNDLE_APP_CONFIG/config`)
|
15
15
|
2. Environmental variables (`ENV`)
|
16
16
|
3. Global config (`~/.bundle/config`)
|
17
17
|
4. Bundler default config
|
@@ -30,8 +30,10 @@ overridden and user will be warned.
|
|
30
30
|
|
31
31
|
Executing `bundle config set --global <name> <value>` works the same as above.
|
32
32
|
|
33
|
-
Executing `bundle config set --local <name> <value>` will set that configuration
|
34
|
-
the local application. The configuration will be stored in
|
33
|
+
Executing `bundle config set --local <name> <value>` will set that configuration
|
34
|
+
in the directory for the local application. The configuration will be stored in
|
35
|
+
`<project_root>/.bundle/config`. If `BUNDLE_APP_CONFIG` is set, the configuration
|
36
|
+
will be stored in `$BUNDLE_APP_CONFIG/config`.
|
35
37
|
|
36
38
|
Executing `bundle config unset <name>` will delete the configuration in both
|
37
39
|
local and global sources.
|
@@ -45,7 +47,7 @@ configuration only from the local application.
|
|
45
47
|
Executing bundle with the `BUNDLE_IGNORE_CONFIG` environment variable set will
|
46
48
|
cause it to ignore all configuration.
|
47
49
|
|
48
|
-
Executing `bundle config set disable_multisource true` upgrades the warning about
|
50
|
+
Executing `bundle config set --local disable_multisource true` upgrades the warning about
|
49
51
|
the Gemfile containing multiple primary sources to an error. Executing `bundle
|
50
52
|
config unset disable_multisource` downgrades this error to a warning.
|
51
53
|
|
@@ -57,7 +59,7 @@ application's configuration (normally, `./.bundle/config`).
|
|
57
59
|
|
58
60
|
However, this will be changed in bundler 3, so it's better not to rely on this
|
59
61
|
behavior. If these options must be remembered, it's better to set them using
|
60
|
-
`bundle config` (e.g., `bundle config set path foo`).
|
62
|
+
`bundle config` (e.g., `bundle config set --local path foo`).
|
61
63
|
|
62
64
|
The options that can be configured are:
|
63
65
|
|
@@ -101,7 +103,7 @@ pass configuration flags to `gem install` to specify where to find the
|
|
101
103
|
Since the specific location of that executable can change from machine
|
102
104
|
to machine, you can specify these flags on a per-machine basis.
|
103
105
|
|
104
|
-
bundle config set build.mysql --with-mysql-config=/usr/local/mysql/bin/mysql_config
|
106
|
+
bundle config set --global build.mysql --with-mysql-config=/usr/local/mysql/bin/mysql_config
|
105
107
|
|
106
108
|
After running this command, every time bundler needs to install the
|
107
109
|
`mysql` gem, it will pass along the flags you specified.
|
@@ -131,9 +133,6 @@ the environment variable `BUNDLE_LOCAL__RACK`.
|
|
131
133
|
The following is a list of all configuration keys and their purpose. You can
|
132
134
|
learn more about their operation in [bundle install(1)](bundle-install.1.html).
|
133
135
|
|
134
|
-
* `allow_bundler_dependency_conflicts` (`BUNDLE_ALLOW_BUNDLER_DEPENDENCY_CONFLICTS`):
|
135
|
-
Allow resolving to specifications that have dependencies on `bundler` that
|
136
|
-
are incompatible with the running Bundler version.
|
137
136
|
* `allow_deployment_source_credential_changes` (`BUNDLE_ALLOW_DEPLOYMENT_SOURCE_CREDENTIAL_CHANGES`):
|
138
137
|
When in deployment mode, allow changing the credentials to a gem's source.
|
139
138
|
Ex: `https://some.host.com/gems/path/` -> `https://user_name:password@some.host.com/gems/path`
|
@@ -148,7 +147,8 @@ learn more about their operation in [bundle install(1)](bundle-install.1.html).
|
|
148
147
|
Install executables from gems in the bundle to the specified directory.
|
149
148
|
Defaults to `false`.
|
150
149
|
* `cache_all` (`BUNDLE_CACHE_ALL`):
|
151
|
-
Cache all gems, including path and git gems.
|
150
|
+
Cache all gems, including path and git gems. This needs to be explicitly
|
151
|
+
configured on bundler 1 and bundler 2, but will be the default on bundler 3.
|
152
152
|
* `cache_all_platforms` (`BUNDLE_CACHE_ALL_PLATFORMS`):
|
153
153
|
Cache gems for all platforms.
|
154
154
|
* `cache_path` (`BUNDLE_CACHE_PATH`):
|
@@ -175,12 +175,13 @@ learn more about their operation in [bundle install(1)](bundle-install.1.html).
|
|
175
175
|
* `disable_local_branch_check` (`BUNDLE_DISABLE_LOCAL_BRANCH_CHECK`):
|
176
176
|
Allow Bundler to use a local git override without a branch specified in the
|
177
177
|
Gemfile.
|
178
|
+
* `disable_local_revision_check` (`BUNDLE_DISABLE_LOCAL_REVISION_CHECK`):
|
179
|
+
Allow Bundler to use a local git override without checking if the revision
|
180
|
+
present in the lockfile is present in the repository.
|
178
181
|
* `disable_multisource` (`BUNDLE_DISABLE_MULTISOURCE`):
|
179
182
|
When set, Gemfiles containing multiple sources will produce errors
|
180
183
|
instead of warnings.
|
181
184
|
Use `bundle config unset disable_multisource` to unset.
|
182
|
-
* `disable_platform_warnings` (`BUNDLE_DISABLE_PLATFORM_WARNINGS`):
|
183
|
-
Disable warnings during bundle install when a dependency is unused on the current platform.
|
184
185
|
* `disable_shared_gems` (`BUNDLE_DISABLE_SHARED_GEMS`):
|
185
186
|
Stop Bundler from accessing gems installed to RubyGems' normal location.
|
186
187
|
* `disable_version_check` (`BUNDLE_DISABLE_VERSION_CHECK`):
|
@@ -193,6 +194,10 @@ learn more about their operation in [bundle install(1)](bundle-install.1.html).
|
|
193
194
|
Disallow changes to the `Gemfile`. When the `Gemfile` is changed and the
|
194
195
|
lockfile has not been updated, running Bundler commands will be blocked.
|
195
196
|
Defaults to `true` when `--deployment` is used.
|
197
|
+
* `gem.github_username` (`BUNDLE_GEM__GITHUB_USERNAME`):
|
198
|
+
Sets a GitHub username or organization to be used in `README` file when you
|
199
|
+
create a new gem via `bundle gem` command. It can be overridden by passing an
|
200
|
+
explicit `--github-username` flag to `bundle gem`.
|
196
201
|
* `gem.push_key` (`BUNDLE_GEM__PUSH_KEY`):
|
197
202
|
Sets the `--key` parameter for `gem push` when using the `rake release`
|
198
203
|
command with a private gemstash server.
|
@@ -205,20 +210,18 @@ learn more about their operation in [bundle install(1)](bundle-install.1.html).
|
|
205
210
|
* `global_gem_cache` (`BUNDLE_GLOBAL_GEM_CACHE`):
|
206
211
|
Whether Bundler should cache all gems globally, rather than locally to the
|
207
212
|
installing Ruby installation.
|
208
|
-
* `ignore_messages` (`BUNDLE_IGNORE_MESSAGES`):
|
209
|
-
messages will be printed. To silence a single gem,
|
210
|
-
`ignore_messages.httparty true`.
|
211
|
-
* `init_gems_rb` (`BUNDLE_INIT_GEMS_RB`)
|
213
|
+
* `ignore_messages` (`BUNDLE_IGNORE_MESSAGES`):
|
214
|
+
When set, no post install messages will be printed. To silence a single gem,
|
215
|
+
use dot notation like `ignore_messages.httparty true`.
|
216
|
+
* `init_gems_rb` (`BUNDLE_INIT_GEMS_RB`):
|
212
217
|
Generate a `gems.rb` instead of a `Gemfile` when running `bundle init`.
|
213
218
|
* `jobs` (`BUNDLE_JOBS`):
|
214
|
-
The number of gems Bundler can install in parallel. Defaults to 1
|
219
|
+
The number of gems Bundler can install in parallel. Defaults to 1 on Windows,
|
220
|
+
and to the the number of processors on other platforms.
|
215
221
|
* `no_install` (`BUNDLE_NO_INSTALL`):
|
216
222
|
Whether `bundle package` should skip installing gems.
|
217
223
|
* `no_prune` (`BUNDLE_NO_PRUNE`):
|
218
224
|
Whether Bundler should leave outdated gems unpruned when caching.
|
219
|
-
* `only_update_to_newer_versions` (`BUNDLE_ONLY_UPDATE_TO_NEWER_VERSIONS`):
|
220
|
-
During `bundle update`, only resolve to newer versions of the gems in the
|
221
|
-
lockfile.
|
222
225
|
* `path` (`BUNDLE_PATH`):
|
223
226
|
The location on disk where all gems in your bundle will be located regardless
|
224
227
|
of `$GEM_HOME` or `$GEM_PATH` values. Bundle gems not found in this location
|
@@ -232,7 +235,7 @@ learn more about their operation in [bundle install(1)](bundle-install.1.html).
|
|
232
235
|
Enable Bundler's experimental plugin system.
|
233
236
|
* `prefer_patch` (BUNDLE_PREFER_PATCH):
|
234
237
|
Prefer updating only to next patch version during updates. Makes `bundle update` calls equivalent to `bundler update --patch`.
|
235
|
-
* `print_only_version_number` (`BUNDLE_PRINT_ONLY_VERSION_NUMBER`)
|
238
|
+
* `print_only_version_number` (`BUNDLE_PRINT_ONLY_VERSION_NUMBER`):
|
236
239
|
Print only version number from `bundler --version`.
|
237
240
|
* `redirect` (`BUNDLE_REDIRECT`):
|
238
241
|
The number of redirects allowed for network requests. Defaults to `5`.
|
@@ -249,17 +252,6 @@ learn more about their operation in [bundle install(1)](bundle-install.1.html).
|
|
249
252
|
be changed in the next major version.
|
250
253
|
* `silence_root_warning` (`BUNDLE_SILENCE_ROOT_WARNING`):
|
251
254
|
Silence the warning Bundler prints when installing gems as root.
|
252
|
-
* `skip_default_git_sources` (`BUNDLE_SKIP_DEFAULT_GIT_SOURCES`):
|
253
|
-
Whether Bundler should skip adding default git source shortcuts to the
|
254
|
-
Gemfile DSL.
|
255
|
-
* `specific_platform` (`BUNDLE_SPECIFIC_PLATFORM`):
|
256
|
-
Allow bundler to resolve for the specific running platform and store it in
|
257
|
-
the lockfile, instead of only using a generic platform.
|
258
|
-
A specific platform is the exact platform triple reported by
|
259
|
-
`Gem::Platform.local`, such as `x86_64-darwin-16` or `universal-java-1.8`.
|
260
|
-
On the other hand, generic platforms are those such as `ruby`, `mswin`, or
|
261
|
-
`java`. In this example, `x86_64-darwin-16` would map to `ruby` and
|
262
|
-
`universal-java-1.8` to `java`.
|
263
255
|
* `ssl_ca_cert` (`BUNDLE_SSL_CA_CERT`):
|
264
256
|
Path to a designated CA certificate file or folder containing multiple
|
265
257
|
certificates for trusted CAs in PEM format.
|
@@ -279,7 +271,7 @@ learn more about their operation in [bundle install(1)](bundle-install.1.html).
|
|
279
271
|
* `unlock_source_unlocks_spec` (`BUNDLE_UNLOCK_SOURCE_UNLOCKS_SPEC`):
|
280
272
|
Whether running `bundle update --source NAME` unlocks a gem with the given
|
281
273
|
name. Defaults to `true`.
|
282
|
-
* `update_requires_all_flag` (`BUNDLE_UPDATE_REQUIRES_ALL_FLAG`)
|
274
|
+
* `update_requires_all_flag` (`BUNDLE_UPDATE_REQUIRES_ALL_FLAG`):
|
283
275
|
Require passing `--all` to `bundle update` when everything should be updated,
|
284
276
|
and disallow passing no options to `bundle update`.
|
285
277
|
* `user_agent` (`BUNDLE_USER_AGENT`):
|
@@ -302,11 +294,11 @@ Bundler also allows you to work against a git repository locally
|
|
302
294
|
instead of using the remote version. This can be achieved by setting
|
303
295
|
up a local override:
|
304
296
|
|
305
|
-
bundle config set local.GEM_NAME /path/to/local/git/repository
|
297
|
+
bundle config set --local local.GEM_NAME /path/to/local/git/repository
|
306
298
|
|
307
299
|
For example, in order to use a local Rack repository, a developer could call:
|
308
300
|
|
309
|
-
bundle config set local.rack ~/Work/git/rack
|
301
|
+
bundle config set --local local.rack ~/Work/git/rack
|
310
302
|
|
311
303
|
Now instead of checking out the remote git repository, the local
|
312
304
|
override will be used. Similar to a path source, every time the local
|
@@ -336,21 +328,21 @@ Bundler supports overriding gem sources with mirrors. This allows you to
|
|
336
328
|
configure rubygems.org as the gem source in your Gemfile while still using your
|
337
329
|
mirror to fetch gems.
|
338
330
|
|
339
|
-
bundle config set mirror.SOURCE_URL MIRROR_URL
|
331
|
+
bundle config set --global mirror.SOURCE_URL MIRROR_URL
|
340
332
|
|
341
333
|
For example, to use a mirror of rubygems.org hosted at rubygems-mirror.org:
|
342
334
|
|
343
|
-
bundle config set mirror.http://rubygems.org http://rubygems-mirror.org
|
335
|
+
bundle config set --global mirror.http://rubygems.org http://rubygems-mirror.org
|
344
336
|
|
345
337
|
Each mirror also provides a fallback timeout setting. If the mirror does not
|
346
338
|
respond within the fallback timeout, Bundler will try to use the original
|
347
339
|
server instead of the mirror.
|
348
340
|
|
349
|
-
bundle config set mirror.SOURCE_URL.fallback_timeout TIMEOUT
|
341
|
+
bundle config set --global mirror.SOURCE_URL.fallback_timeout TIMEOUT
|
350
342
|
|
351
343
|
For example, to fall back to rubygems.org after 3 seconds:
|
352
344
|
|
353
|
-
bundle config set mirror.https://rubygems.org.fallback_timeout 3
|
345
|
+
bundle config set --global mirror.https://rubygems.org.fallback_timeout 3
|
354
346
|
|
355
347
|
The default fallback timeout is 0.1 seconds, but the setting can currently
|
356
348
|
only accept whole seconds (for example, 1, 15, or 30).
|
@@ -360,12 +352,12 @@ only accept whole seconds (for example, 1, 15, or 30).
|
|
360
352
|
Bundler allows you to configure credentials for any gem source, which allows
|
361
353
|
you to avoid putting secrets into your Gemfile.
|
362
354
|
|
363
|
-
bundle config set SOURCE_HOSTNAME USERNAME:PASSWORD
|
355
|
+
bundle config set --global SOURCE_HOSTNAME USERNAME:PASSWORD
|
364
356
|
|
365
357
|
For example, to save the credentials of user `claudette` for the gem source at
|
366
358
|
`gems.longerous.com`, you would run:
|
367
359
|
|
368
|
-
bundle config set gems.longerous.com claudette:s00pers3krit
|
360
|
+
bundle config set --global gems.longerous.com claudette:s00pers3krit
|
369
361
|
|
370
362
|
Or you can set the credentials as an environment variable like this:
|
371
363
|
|
@@ -373,7 +365,7 @@ Or you can set the credentials as an environment variable like this:
|
|
373
365
|
|
374
366
|
For gems with a git source with HTTP(S) URL you can specify credentials like so:
|
375
367
|
|
376
|
-
bundle config set https://github.com/
|
368
|
+
bundle config set --global https://github.com/rubygems/rubygems.git username:password
|
377
369
|
|
378
370
|
Or you can set the credentials as an environment variable like so:
|
379
371
|
|
@@ -384,6 +376,23 @@ where you can use personal OAuth tokens:
|
|
384
376
|
|
385
377
|
export BUNDLE_GITHUB__COM=abcd0123generatedtoken:x-oauth-basic
|
386
378
|
|
379
|
+
Note that any configured credentials will be redacted by informative commands
|
380
|
+
such as `bundle config list` or `bundle config get`, unless you use the
|
381
|
+
`--parseable` flag. This is to avoid unintentially leaking credentials when
|
382
|
+
copy-pasting bundler output.
|
383
|
+
|
384
|
+
Also note that to guarantee a sane mapping between valid environment variable
|
385
|
+
names and valid host names, bundler makes the following transformations:
|
386
|
+
|
387
|
+
* Any `-` characters in a host name are mapped to a triple dash (`___`) in the
|
388
|
+
corresponding enviroment variable.
|
389
|
+
|
390
|
+
* Any `.` characters in a host name are mapped to a double dash (`__`) in the
|
391
|
+
corresponding environment variable.
|
392
|
+
|
393
|
+
This means that if you have a gem server named `my.gem-host.com`, you'll need to
|
394
|
+
use the `BUNDLE_MY__GEM___HOST__COM` variable to configure credentials for it
|
395
|
+
through ENV.
|
387
396
|
|
388
397
|
## CONFIGURE BUNDLER DIRECTORIES
|
389
398
|
|
@@ -396,4 +405,3 @@ outlines the available environment variables and their default values
|
|
396
405
|
BUNDLE_USER_CACHE : $BUNDLE_USER_HOME/cache
|
397
406
|
BUNDLE_USER_CONFIG : $BUNDLE_USER_HOME/config
|
398
407
|
BUNDLE_USER_PLUGIN : $BUNDLE_USER_HOME/plugin
|
399
|
-
|