bundler 2.6.9 → 4.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +2212 -1879
- data/README.md +11 -11
- data/bundler.gemspec +5 -5
- data/lib/bundler/build_metadata.rb +10 -11
- data/lib/bundler/capistrano.rb +1 -19
- data/lib/bundler/checksum.rb +6 -0
- data/lib/bundler/cli/add.rb +10 -0
- data/lib/bundler/cli/cache.rb +1 -12
- data/lib/bundler/cli/common.rb +21 -4
- data/lib/bundler/cli/config.rb +1 -2
- data/lib/bundler/cli/console.rb +5 -0
- data/lib/bundler/cli/exec.rb +29 -4
- data/lib/bundler/cli/gem.rb +89 -63
- data/lib/bundler/cli/install.rb +15 -90
- data/lib/bundler/cli/issue.rb +2 -2
- data/lib/bundler/cli/list.rb +33 -2
- data/lib/bundler/cli/lock.rb +5 -5
- data/lib/bundler/cli/outdated.rb +1 -1
- data/lib/bundler/cli/plugin.rb +5 -1
- data/lib/bundler/cli/pristine.rb +5 -1
- data/lib/bundler/cli/show.rb +3 -7
- data/lib/bundler/cli/update.rb +5 -5
- data/lib/bundler/cli.rb +162 -127
- data/lib/bundler/compact_index_client.rb +1 -6
- data/lib/bundler/current_ruby.rb +17 -5
- data/lib/bundler/definition.rb +199 -117
- data/lib/bundler/dependency.rb +1 -1
- data/lib/bundler/deployment.rb +1 -64
- data/lib/bundler/digest.rb +1 -1
- data/lib/bundler/dsl.rb +48 -48
- data/lib/bundler/environment_preserver.rb +1 -0
- data/lib/bundler/errors.rb +1 -5
- data/lib/bundler/feature_flag.rb +5 -35
- data/lib/bundler/fetcher/compact_index.rb +1 -1
- data/lib/bundler/fetcher/dependency.rb +9 -2
- data/lib/bundler/fetcher/downloader.rb +33 -8
- data/lib/bundler/fetcher/gem_remote_fetcher.rb +6 -0
- data/lib/bundler/fetcher.rb +49 -19
- data/lib/bundler/friendly_errors.rb +4 -3
- data/lib/bundler/index.rb +7 -9
- data/lib/bundler/injector.rb +1 -2
- data/lib/bundler/inline.rb +9 -1
- data/lib/bundler/installer/gem_installer.rb +14 -11
- data/lib/bundler/installer/parallel_installer.rb +63 -17
- data/lib/bundler/installer.rb +6 -19
- data/lib/bundler/lazy_specification.rb +47 -20
- data/lib/bundler/lockfile_generator.rb +1 -1
- data/lib/bundler/lockfile_parser.rb +11 -5
- data/lib/bundler/man/bundle-add.1 +1 -1
- data/lib/bundler/man/bundle-binstubs.1 +3 -6
- data/lib/bundler/man/bundle-binstubs.1.ronn +4 -6
- data/lib/bundler/man/bundle-cache.1 +2 -14
- data/lib/bundler/man/bundle-cache.1.ronn +1 -14
- data/lib/bundler/man/bundle-check.1 +2 -5
- data/lib/bundler/man/bundle-check.1.ronn +0 -5
- data/lib/bundler/man/bundle-clean.1 +1 -1
- data/lib/bundler/man/bundle-config.1 +206 -148
- data/lib/bundler/man/bundle-config.1.ronn +135 -118
- data/lib/bundler/man/bundle-console.1 +1 -1
- data/lib/bundler/man/bundle-doctor.1 +43 -4
- data/lib/bundler/man/bundle-doctor.1.ronn +48 -4
- data/lib/bundler/man/bundle-env.1 +1 -1
- data/lib/bundler/man/bundle-exec.1 +2 -5
- data/lib/bundler/man/bundle-exec.1.ronn +1 -5
- data/lib/bundler/man/bundle-fund.1 +1 -1
- data/lib/bundler/man/bundle-gem.1 +64 -44
- data/lib/bundler/man/bundle-gem.1.ronn +10 -9
- data/lib/bundler/man/bundle-help.1 +1 -1
- data/lib/bundler/man/bundle-info.1 +1 -1
- data/lib/bundler/man/bundle-init.1 +1 -1
- data/lib/bundler/man/bundle-install.1 +16 -59
- data/lib/bundler/man/bundle-install.1.ronn +27 -108
- data/lib/bundler/man/bundle-issue.1 +1 -1
- data/lib/bundler/man/bundle-licenses.1 +1 -1
- data/lib/bundler/man/bundle-list.1 +6 -1
- data/lib/bundler/man/bundle-list.1.ronn +5 -0
- data/lib/bundler/man/bundle-lock.1 +1 -1
- data/lib/bundler/man/bundle-open.1 +1 -1
- data/lib/bundler/man/bundle-outdated.1 +1 -1
- data/lib/bundler/man/bundle-platform.1 +1 -1
- data/lib/bundler/man/bundle-plugin.1 +33 -15
- data/lib/bundler/man/bundle-plugin.1.ronn +36 -15
- data/lib/bundler/man/bundle-pristine.1 +1 -1
- data/lib/bundler/man/bundle-remove.1 +2 -8
- data/lib/bundler/man/bundle-remove.1.ronn +1 -8
- data/lib/bundler/man/bundle-show.1 +2 -5
- data/lib/bundler/man/bundle-show.1.ronn +0 -4
- data/lib/bundler/man/bundle-update.1 +5 -5
- data/lib/bundler/man/bundle-update.1.ronn +4 -4
- data/lib/bundler/man/bundle-version.1 +1 -1
- data/lib/bundler/man/bundle.1 +1 -10
- data/lib/bundler/man/bundle.1.ronn +0 -9
- data/lib/bundler/man/gemfile.5 +32 -1
- data/lib/bundler/man/gemfile.5.ronn +28 -0
- data/lib/bundler/man/index.txt +0 -2
- data/lib/bundler/match_platform.rb +31 -12
- data/lib/bundler/materialization.rb +3 -3
- data/lib/bundler/plugin/api/source.rb +8 -0
- data/lib/bundler/plugin/index.rb +6 -0
- data/lib/bundler/plugin/installer.rb +2 -11
- data/lib/bundler/plugin/source_list.rb +1 -1
- data/lib/bundler/plugin.rb +7 -4
- data/lib/bundler/resolver/package.rb +2 -1
- data/lib/bundler/resolver/strategy.rb +6 -3
- data/lib/bundler/resolver.rb +20 -4
- data/lib/bundler/retry.rb +30 -4
- data/lib/bundler/ruby_dsl.rb +17 -12
- data/lib/bundler/ruby_version.rb +1 -3
- data/lib/bundler/rubygems_ext.rb +117 -121
- data/lib/bundler/rubygems_gem_installer.rb +5 -4
- data/lib/bundler/rubygems_integration.rb +13 -12
- data/lib/bundler/runtime.rb +14 -3
- data/lib/bundler/self_manager.rb +34 -43
- data/lib/bundler/settings/validator.rb +5 -21
- data/lib/bundler/settings.rb +17 -32
- data/lib/bundler/shared_helpers.rb +12 -18
- data/lib/bundler/source/gemspec.rb +4 -0
- data/lib/bundler/source/git/git_proxy.rb +55 -29
- data/lib/bundler/source/git.rb +2 -3
- data/lib/bundler/source/path.rb +12 -7
- data/lib/bundler/source/rubygems.rb +59 -43
- data/lib/bundler/source/rubygems_aggregate.rb +4 -1
- data/lib/bundler/source.rb +3 -1
- data/lib/bundler/source_list.rb +5 -50
- data/lib/bundler/source_map.rb +8 -7
- data/lib/bundler/spec_set.rb +9 -14
- data/lib/bundler/stub_specification.rb +1 -0
- data/lib/bundler/templates/Executable +0 -11
- data/lib/bundler/templates/newgem/CODE_OF_CONDUCT.md.tt +7 -129
- data/lib/bundler/templates/newgem/Cargo.toml.tt +6 -0
- data/lib/bundler/templates/newgem/Rakefile.tt +5 -0
- data/lib/bundler/templates/newgem/circleci/config.yml.tt +12 -0
- data/lib/bundler/templates/newgem/ext/newgem/Cargo.toml.tt +8 -1
- data/lib/bundler/templates/newgem/ext/newgem/build.rs.tt +5 -0
- data/lib/bundler/templates/newgem/ext/newgem/extconf-go.rb.tt +11 -0
- data/lib/bundler/templates/newgem/ext/newgem/go.mod.tt +5 -0
- data/lib/bundler/templates/newgem/ext/newgem/newgem-go.c.tt +2 -0
- data/lib/bundler/templates/newgem/ext/newgem/newgem.go.tt +31 -0
- data/lib/bundler/templates/newgem/ext/newgem/src/lib.rs.tt +13 -2
- data/lib/bundler/templates/newgem/github/workflows/build-gems.yml.tt +69 -0
- data/lib/bundler/templates/newgem/github/workflows/main.yml.tt +12 -1
- data/lib/bundler/templates/newgem/gitlab-ci.yml.tt +9 -0
- data/lib/bundler/templates/newgem/lib/newgem.rb.tt +1 -1
- data/lib/bundler/templates/newgem/newgem.gemspec.tt +10 -10
- data/lib/bundler/templates/newgem/spec/newgem_spec.rb.tt +8 -0
- data/lib/bundler/templates/newgem/test/minitest/test_newgem.rb.tt +6 -0
- data/lib/bundler/ui/shell.rb +12 -8
- data/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb +26 -23
- data/lib/bundler/vendor/connection_pool/lib/connection_pool/version.rb +1 -1
- data/lib/bundler/vendor/connection_pool/lib/connection_pool.rb +50 -6
- data/lib/bundler/vendor/fileutils/lib/fileutils.rb +57 -52
- data/lib/bundler/vendor/net-http-persistent/README.rdoc +1 -1
- data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/timed_stack_multi.rb +2 -1
- data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +84 -42
- data/lib/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +42 -6
- data/lib/bundler/vendor/thor/lib/thor/parser/options.rb +1 -1
- data/lib/bundler/vendor/thor/lib/thor/runner.rb +2 -2
- data/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +3 -7
- data/lib/bundler/vendor/thor/lib/thor/version.rb +1 -1
- data/lib/bundler/vendor/thor/lib/thor.rb +1 -1
- data/lib/bundler/vendor/uri/lib/uri/common.rb +57 -15
- data/lib/bundler/vendor/uri/lib/uri/file.rb +1 -1
- data/lib/bundler/vendor/uri/lib/uri/generic.rb +34 -21
- data/lib/bundler/vendor/uri/lib/uri/http.rb +12 -0
- data/lib/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +9 -8
- data/lib/bundler/vendor/uri/lib/uri/version.rb +2 -2
- data/lib/bundler/version.rb +10 -2
- data/lib/bundler/vlad.rb +1 -14
- data/lib/bundler/worker.rb +12 -4
- data/lib/bundler.rb +20 -40
- metadata +13 -25
- data/lib/bundler/cli/inject.rb +0 -60
- data/lib/bundler/cli/viz.rb +0 -31
- data/lib/bundler/gem_helpers.rb +0 -144
- data/lib/bundler/graph.rb +0 -152
- data/lib/bundler/man/bundle-inject.1 +0 -31
- data/lib/bundler/man/bundle-inject.1.ronn +0 -32
- data/lib/bundler/man/bundle-viz.1 +0 -30
- data/lib/bundler/man/bundle-viz.1.ronn +0 -36
- data/lib/bundler/similarity_detector.rb +0 -63
- data/lib/bundler/templates/Executable.bundler +0 -109
- data/lib/bundler/vendor/connection_pool/.document +0 -1
- data/lib/bundler/vendor/fileutils/.document +0 -1
- data/lib/bundler/vendor/net-http-persistent/.document +0 -1
- data/lib/bundler/vendor/pub_grub/.document +0 -1
- data/lib/bundler/vendor/securerandom/.document +0 -1
- data/lib/bundler/vendor/thor/.document +0 -1
- data/lib/bundler/vendor/tsort/.document +0 -1
- data/lib/bundler/vendor/uri/.document +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
|
3
|
-
.TH "BUNDLE\-LOCK" "1" "March
|
|
3
|
+
.TH "BUNDLE\-LOCK" "1" "March 2026" ""
|
|
4
4
|
.SH "NAME"
|
|
5
5
|
\fBbundle\-lock\fR \- Creates / Updates a lockfile without installing
|
|
6
6
|
.SH "SYNOPSIS"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
|
3
|
-
.TH "BUNDLE\-OPEN" "1" "March
|
|
3
|
+
.TH "BUNDLE\-OPEN" "1" "March 2026" ""
|
|
4
4
|
.SH "NAME"
|
|
5
5
|
\fBbundle\-open\fR \- Opens the source directory for a gem in your bundle
|
|
6
6
|
.SH "SYNOPSIS"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
|
3
|
-
.TH "BUNDLE\-OUTDATED" "1" "March
|
|
3
|
+
.TH "BUNDLE\-OUTDATED" "1" "March 2026" ""
|
|
4
4
|
.SH "NAME"
|
|
5
5
|
\fBbundle\-outdated\fR \- List installed gems with newer versions available
|
|
6
6
|
.SH "SYNOPSIS"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
|
3
|
-
.TH "BUNDLE\-PLATFORM" "1" "March
|
|
3
|
+
.TH "BUNDLE\-PLATFORM" "1" "March 2026" ""
|
|
4
4
|
.SH "NAME"
|
|
5
5
|
\fBbundle\-platform\fR \- Displays platform compatibility information
|
|
6
6
|
.SH "SYNOPSIS"
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
|
3
|
-
.TH "BUNDLE\-PLUGIN" "1" "March
|
|
3
|
+
.TH "BUNDLE\-PLUGIN" "1" "March 2026" ""
|
|
4
4
|
.SH "NAME"
|
|
5
5
|
\fBbundle\-plugin\fR \- Manage Bundler plugins
|
|
6
6
|
.SH "SYNOPSIS"
|
|
7
|
-
\fBbundle plugin\fR install PLUGINS [\-\-source
|
|
7
|
+
\fBbundle plugin\fR install PLUGINS [\-\-source=SOURCE] [\-\-version=VERSION] [\-\-git=GIT] [\-\-branch=BRANCH|\-\-ref=REF] [\-\-path=PATH]
|
|
8
8
|
.br
|
|
9
|
-
\fBbundle plugin\fR uninstall PLUGINS
|
|
9
|
+
\fBbundle plugin\fR uninstall PLUGINS [\-\-all]
|
|
10
10
|
.br
|
|
11
11
|
\fBbundle plugin\fR list
|
|
12
12
|
.br
|
|
@@ -16,18 +16,23 @@ You can install, uninstall, and list plugin(s) with this command to extend funct
|
|
|
16
16
|
.SH "SUB\-COMMANDS"
|
|
17
17
|
.SS "install"
|
|
18
18
|
Install the given plugin(s)\.
|
|
19
|
+
.P
|
|
20
|
+
For example, \fBbundle plugin install bundler\-graph\fR will install bundler\-graph gem from globally configured sources (defaults to RubyGems\.org)\. Note that the global source specified in Gemfile is ignored\.
|
|
21
|
+
.P
|
|
22
|
+
\fBOPTIONS\fR
|
|
19
23
|
.TP
|
|
20
|
-
\
|
|
21
|
-
Install
|
|
22
|
-
.
|
|
23
|
-
\fBbundle plugin install bundler\-graph \-\-source https://example\.com\fR
|
|
24
|
-
Install bundler\-graph gem from example\.com\. The global source, specified in source in Gemfile is not considered\.
|
|
24
|
+
\fB\-\-source=SOURCE\fR
|
|
25
|
+
Install the plugin gem from a specific source, rather than from globally configured sources\.
|
|
26
|
+
.IP
|
|
27
|
+
Example: \fBbundle plugin install bundler\-graph \-\-source https://example\.com\fR
|
|
25
28
|
.TP
|
|
26
|
-
\
|
|
27
|
-
|
|
29
|
+
\fB\-\-version=VERSION\fR
|
|
30
|
+
Specify a version of the plugin gem to install via \fB\-\-version\fR\.
|
|
31
|
+
.IP
|
|
32
|
+
Example: \fBbundle plugin install bundler\-graph \-\-version 0\.2\.1\fR
|
|
28
33
|
.TP
|
|
29
|
-
\
|
|
30
|
-
Install
|
|
34
|
+
\fB\-\-git=GIT\fR
|
|
35
|
+
Install the plugin gem from a Git repository\. You can use standard Git URLs like:
|
|
31
36
|
.IP
|
|
32
37
|
\fBssh://[user@]host\.xz[:port]/path/to/repo\.git\fR
|
|
33
38
|
.br
|
|
@@ -37,12 +42,25 @@ Install bundler\-graph gem from Git repository\. You can use standard Git URLs l
|
|
|
37
42
|
.br
|
|
38
43
|
\fBfile:///path/to/repo\fR
|
|
39
44
|
.IP
|
|
40
|
-
|
|
45
|
+
Example: \fBbundle plugin install bundler\-graph \-\-git https://github\.com/rubygems/bundler\-graph\fR
|
|
41
46
|
.TP
|
|
42
|
-
\
|
|
43
|
-
|
|
47
|
+
\fB\-\-branch=BRANCH\fR
|
|
48
|
+
When you specify \fB\-\-git\fR, you can use \fB\-\-branch\fR to use\.
|
|
49
|
+
.TP
|
|
50
|
+
\fB\-\-ref=REF\fR
|
|
51
|
+
When you specify \fB\-\-git\fR, you can use \fB\-\-ref\fR to specify any tag, or commit hash (revision) to use\.
|
|
52
|
+
.TP
|
|
53
|
+
\fB\-\-path=PATH\fR
|
|
54
|
+
Install the plugin gem from a local path\.
|
|
55
|
+
.IP
|
|
56
|
+
Example: \fBbundle plugin install bundler\-graph \-\-path \.\./bundler\-graph\fR
|
|
44
57
|
.SS "uninstall"
|
|
45
58
|
Uninstall the plugin(s) specified in PLUGINS\.
|
|
59
|
+
.P
|
|
60
|
+
\fBOPTIONS\fR
|
|
61
|
+
.TP
|
|
62
|
+
\fB\-\-all\fR
|
|
63
|
+
Uninstall all the installed plugins\. If no plugin is installed, then it does nothing\.
|
|
46
64
|
.SS "list"
|
|
47
65
|
List the installed plugins and available commands\.
|
|
48
66
|
.P
|
|
@@ -3,10 +3,10 @@ bundle-plugin(1) -- Manage Bundler plugins
|
|
|
3
3
|
|
|
4
4
|
## SYNOPSIS
|
|
5
5
|
|
|
6
|
-
`bundle plugin` install PLUGINS [--source
|
|
7
|
-
[--git
|
|
8
|
-
[--path
|
|
9
|
-
`bundle plugin` uninstall PLUGINS<br>
|
|
6
|
+
`bundle plugin` install PLUGINS [--source=SOURCE] [--version=VERSION]
|
|
7
|
+
[--git=GIT] [--branch=BRANCH|--ref=REF]
|
|
8
|
+
[--path=PATH]<br>
|
|
9
|
+
`bundle plugin` uninstall PLUGINS [--all]<br>
|
|
10
10
|
`bundle plugin` list<br>
|
|
11
11
|
`bundle plugin` help [COMMAND]
|
|
12
12
|
|
|
@@ -20,32 +20,53 @@ You can install, uninstall, and list plugin(s) with this command to extend funct
|
|
|
20
20
|
|
|
21
21
|
Install the given plugin(s).
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
For example, `bundle plugin install bundler-graph` will install bundler-graph
|
|
24
|
+
gem from globally configured sources (defaults to RubyGems.org). Note that the
|
|
25
|
+
global source specified in Gemfile is ignored.
|
|
25
26
|
|
|
26
|
-
|
|
27
|
-
Install bundler-graph gem from example.com. The global source, specified in source in Gemfile is not considered.
|
|
27
|
+
**OPTIONS**
|
|
28
28
|
|
|
29
|
-
*
|
|
30
|
-
|
|
29
|
+
* `--source=SOURCE`:
|
|
30
|
+
Install the plugin gem from a specific source, rather than from globally configured sources.
|
|
31
31
|
|
|
32
|
-
|
|
33
|
-
|
|
32
|
+
Example: `bundle plugin install bundler-graph --source https://example.com`
|
|
33
|
+
|
|
34
|
+
* `--version=VERSION`:
|
|
35
|
+
Specify a version of the plugin gem to install via `--version`.
|
|
36
|
+
|
|
37
|
+
Example: `bundle plugin install bundler-graph --version 0.2.1`
|
|
38
|
+
|
|
39
|
+
* `--git=GIT`:
|
|
40
|
+
Install the plugin gem from a Git repository. You can use standard Git URLs like:
|
|
34
41
|
|
|
35
42
|
`ssh://[user@]host.xz[:port]/path/to/repo.git`<br>
|
|
36
43
|
`http[s]://host.xz[:port]/path/to/repo.git`<br>
|
|
37
44
|
`/path/to/repo`<br>
|
|
38
45
|
`file:///path/to/repo`
|
|
39
46
|
|
|
40
|
-
|
|
47
|
+
Example: `bundle plugin install bundler-graph --git https://github.com/rubygems/bundler-graph`
|
|
48
|
+
|
|
49
|
+
* `--branch=BRANCH`:
|
|
50
|
+
When you specify `--git`, you can use `--branch` to use.
|
|
41
51
|
|
|
42
|
-
*
|
|
43
|
-
|
|
52
|
+
* `--ref=REF`:
|
|
53
|
+
When you specify `--git`, you can use `--ref` to specify any tag, or commit
|
|
54
|
+
hash (revision) to use.
|
|
55
|
+
|
|
56
|
+
* `--path=PATH`:
|
|
57
|
+
Install the plugin gem from a local path.
|
|
58
|
+
|
|
59
|
+
Example: `bundle plugin install bundler-graph --path ../bundler-graph`
|
|
44
60
|
|
|
45
61
|
### uninstall
|
|
46
62
|
|
|
47
63
|
Uninstall the plugin(s) specified in PLUGINS.
|
|
48
64
|
|
|
65
|
+
**OPTIONS**
|
|
66
|
+
|
|
67
|
+
* `--all`:
|
|
68
|
+
Uninstall all the installed plugins. If no plugin is installed, then it does nothing.
|
|
69
|
+
|
|
49
70
|
### list
|
|
50
71
|
|
|
51
72
|
List the installed plugins and available commands.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
|
3
|
-
.TH "BUNDLE\-PRISTINE" "1" "March
|
|
3
|
+
.TH "BUNDLE\-PRISTINE" "1" "March 2026" ""
|
|
4
4
|
.SH "NAME"
|
|
5
5
|
\fBbundle\-pristine\fR \- Restores installed gems to their pristine condition
|
|
6
6
|
.SH "SYNOPSIS"
|
|
@@ -1,21 +1,15 @@
|
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
|
3
|
-
.TH "BUNDLE\-REMOVE" "1" "March
|
|
3
|
+
.TH "BUNDLE\-REMOVE" "1" "March 2026" ""
|
|
4
4
|
.SH "NAME"
|
|
5
5
|
\fBbundle\-remove\fR \- Removes gems from the Gemfile
|
|
6
6
|
.SH "SYNOPSIS"
|
|
7
|
-
|
|
7
|
+
`bundle remove [GEM [GEM \|\.\|\.\|\.]]
|
|
8
8
|
.SH "DESCRIPTION"
|
|
9
9
|
Removes the given gems from the Gemfile while ensuring that the resulting Gemfile is still valid\. If a gem cannot be removed, a warning is printed\. If a gem is already absent from the Gemfile, and error is raised\.
|
|
10
|
-
.SH "OPTIONS"
|
|
11
|
-
.TP
|
|
12
|
-
\fB\-\-install\fR
|
|
13
|
-
Runs \fBbundle install\fR after the given gems have been removed from the Gemfile, which ensures that both the lockfile and the installed gems on disk are also updated to remove the given gem(s)\.
|
|
14
10
|
.P
|
|
15
11
|
Example:
|
|
16
12
|
.P
|
|
17
13
|
bundle remove rails
|
|
18
14
|
.P
|
|
19
15
|
bundle remove rails rack
|
|
20
|
-
.P
|
|
21
|
-
bundle remove rails rack \-\-install
|
|
@@ -3,21 +3,14 @@ bundle-remove(1) -- Removes gems from the Gemfile
|
|
|
3
3
|
|
|
4
4
|
## SYNOPSIS
|
|
5
5
|
|
|
6
|
-
`bundle remove [GEM [GEM ...]]
|
|
6
|
+
`bundle remove [GEM [GEM ...]]
|
|
7
7
|
|
|
8
8
|
## DESCRIPTION
|
|
9
9
|
|
|
10
10
|
Removes the given gems from the Gemfile while ensuring that the resulting Gemfile is still valid. If a gem cannot be removed, a warning is printed. If a gem is already absent from the Gemfile, and error is raised.
|
|
11
11
|
|
|
12
|
-
## OPTIONS
|
|
13
|
-
|
|
14
|
-
* `--install`:
|
|
15
|
-
Runs `bundle install` after the given gems have been removed from the Gemfile, which ensures that both the lockfile and the installed gems on disk are also updated to remove the given gem(s).
|
|
16
|
-
|
|
17
12
|
Example:
|
|
18
13
|
|
|
19
14
|
bundle remove rails
|
|
20
15
|
|
|
21
16
|
bundle remove rails rack
|
|
22
|
-
|
|
23
|
-
bundle remove rails rack --install
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
|
3
|
-
.TH "BUNDLE\-SHOW" "1" "March
|
|
3
|
+
.TH "BUNDLE\-SHOW" "1" "March 2026" ""
|
|
4
4
|
.SH "NAME"
|
|
5
5
|
\fBbundle\-show\fR \- Shows all the gems in your bundle, or the path to a gem
|
|
6
6
|
.SH "SYNOPSIS"
|
|
7
|
-
\fBbundle show\fR [GEM] [\-\-paths]
|
|
7
|
+
\fBbundle show\fR [GEM] [\-\-paths]
|
|
8
8
|
.SH "DESCRIPTION"
|
|
9
9
|
Without the [GEM] option, \fBshow\fR will print a list of the names and versions of all gems that are required by your [\fBGemfile(5)\fR][Gemfile(5)], sorted by name\.
|
|
10
10
|
.P
|
|
@@ -13,7 +13,4 @@ Calling show with [GEM] will list the exact location of that gem on your machine
|
|
|
13
13
|
.TP
|
|
14
14
|
\fB\-\-paths\fR
|
|
15
15
|
List the paths of all gems that are required by your [\fBGemfile(5)\fR][Gemfile(5)], sorted by gem name\.
|
|
16
|
-
.TP
|
|
17
|
-
\fB\-\-outdated\fR
|
|
18
|
-
Show verbose output including whether gems are outdated\.
|
|
19
16
|
|
|
@@ -5,7 +5,6 @@ bundle-show(1) -- Shows all the gems in your bundle, or the path to a gem
|
|
|
5
5
|
|
|
6
6
|
`bundle show` [GEM]
|
|
7
7
|
[--paths]
|
|
8
|
-
[--outdated]
|
|
9
8
|
|
|
10
9
|
## DESCRIPTION
|
|
11
10
|
|
|
@@ -20,6 +19,3 @@ machine.
|
|
|
20
19
|
* `--paths`:
|
|
21
20
|
List the paths of all gems that are required by your [`Gemfile(5)`][Gemfile(5)],
|
|
22
21
|
sorted by gem name.
|
|
23
|
-
|
|
24
|
-
* `--outdated`:
|
|
25
|
-
Show verbose output including whether gems are outdated.
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
|
3
|
-
.TH "BUNDLE\-UPDATE" "1" "March
|
|
3
|
+
.TH "BUNDLE\-UPDATE" "1" "March 2026" ""
|
|
4
4
|
.SH "NAME"
|
|
5
5
|
\fBbundle\-update\fR \- Update your gems to the latest available versions
|
|
6
6
|
.SH "SYNOPSIS"
|
|
7
|
-
\fBbundle update\fR \fI*gems\fR [\-\-all] [\-\-group=NAME] [\-\-source=NAME] [\-\-local] [\-\-ruby] [\-\-bundler[=VERSION]] [\-\-full\-index] [\-\-gemfile=GEMFILE] [\-\-jobs=NUMBER] [\-\-quiet] [\-\-patch|\-\-minor|\-\-major] [\-\-pre] [\-\-
|
|
7
|
+
\fBbundle update\fR \fI*gems\fR [\-\-all] [\-\-group=NAME] [\-\-source=NAME] [\-\-local] [\-\-ruby] [\-\-bundler[=VERSION]] [\-\-force] [\-\-full\-index] [\-\-gemfile=GEMFILE] [\-\-jobs=NUMBER] [\-\-quiet] [\-\-patch|\-\-minor|\-\-major] [\-\-pre] [\-\-strict] [\-\-conservative]
|
|
8
8
|
.SH "DESCRIPTION"
|
|
9
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\.
|
|
10
10
|
.P
|
|
@@ -29,6 +29,9 @@ Update the locked version of Ruby to the current version of Ruby\.
|
|
|
29
29
|
\fB\-\-bundler[=BUNDLER]\fR
|
|
30
30
|
Update the locked version of bundler to the invoked bundler version\.
|
|
31
31
|
.TP
|
|
32
|
+
\fB\-\-force\fR, \fB\-\-redownload\fR
|
|
33
|
+
Force reinstalling every gem, even if already installed\.
|
|
34
|
+
.TP
|
|
32
35
|
\fB\-\-full\-index\fR
|
|
33
36
|
Fall back to using the single\-file index of all gems\.
|
|
34
37
|
.TP
|
|
@@ -44,9 +47,6 @@ Retry failed network or git requests for \fInumber\fR times\.
|
|
|
44
47
|
\fB\-\-quiet\fR
|
|
45
48
|
Only output warnings and errors\.
|
|
46
49
|
.TP
|
|
47
|
-
\fB\-\-redownload\fR, \fB\-\-force\fR
|
|
48
|
-
Force downloading every gem\.
|
|
49
|
-
.TP
|
|
50
50
|
\fB\-\-patch\fR
|
|
51
51
|
Prefer updating only to next patch version\.
|
|
52
52
|
.TP
|
|
@@ -9,13 +9,13 @@ bundle-update(1) -- Update your gems to the latest available versions
|
|
|
9
9
|
[--local]
|
|
10
10
|
[--ruby]
|
|
11
11
|
[--bundler[=VERSION]]
|
|
12
|
+
[--force]
|
|
12
13
|
[--full-index]
|
|
13
14
|
[--gemfile=GEMFILE]
|
|
14
15
|
[--jobs=NUMBER]
|
|
15
16
|
[--quiet]
|
|
16
17
|
[--patch|--minor|--major]
|
|
17
18
|
[--pre]
|
|
18
|
-
[--redownload]
|
|
19
19
|
[--strict]
|
|
20
20
|
[--conservative]
|
|
21
21
|
|
|
@@ -54,6 +54,9 @@ gem.
|
|
|
54
54
|
* `--bundler[=BUNDLER]`:
|
|
55
55
|
Update the locked version of bundler to the invoked bundler version.
|
|
56
56
|
|
|
57
|
+
* `--force`, `--redownload`:
|
|
58
|
+
Force reinstalling every gem, even if already installed.
|
|
59
|
+
|
|
57
60
|
* `--full-index`:
|
|
58
61
|
Fall back to using the single-file index of all gems.
|
|
59
62
|
|
|
@@ -70,9 +73,6 @@ gem.
|
|
|
70
73
|
* `--quiet`:
|
|
71
74
|
Only output warnings and errors.
|
|
72
75
|
|
|
73
|
-
* `--redownload`, `--force`:
|
|
74
|
-
Force downloading every gem.
|
|
75
|
-
|
|
76
76
|
* `--patch`:
|
|
77
77
|
Prefer updating only to next patch version.
|
|
78
78
|
|
data/lib/bundler/man/bundle.1
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
|
3
|
-
.TH "BUNDLE" "1" "March
|
|
3
|
+
.TH "BUNDLE" "1" "March 2026" ""
|
|
4
4
|
.SH "NAME"
|
|
5
5
|
\fBbundle\fR \- Ruby Dependency Management
|
|
6
6
|
.SH "SYNOPSIS"
|
|
@@ -66,9 +66,6 @@ Open an installed gem in the editor
|
|
|
66
66
|
\fBbundle lock(1)\fR \fIbundle\-lock\.1\.html\fR
|
|
67
67
|
Generate a lockfile for your dependencies
|
|
68
68
|
.TP
|
|
69
|
-
\fBbundle viz(1)\fR \fIbundle\-viz\.1\.html\fR (deprecated)
|
|
70
|
-
Generate a visual representation of your dependencies
|
|
71
|
-
.TP
|
|
72
69
|
\fBbundle init(1)\fR \fIbundle\-init\.1\.html\fR
|
|
73
70
|
Generate a simple \fBGemfile\fR, placed in the current directory
|
|
74
71
|
.TP
|
|
@@ -94,9 +91,3 @@ Manage Bundler plugins
|
|
|
94
91
|
Prints Bundler version information
|
|
95
92
|
.SH "PLUGINS"
|
|
96
93
|
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\.
|
|
97
|
-
.SH "OBSOLETE"
|
|
98
|
-
These commands are obsolete and should no longer be used:
|
|
99
|
-
.IP "\(bu" 4
|
|
100
|
-
\fBbundle inject(1)\fR
|
|
101
|
-
.IP "" 0
|
|
102
|
-
|
|
@@ -76,9 +76,6 @@ We divide `bundle` subcommands into primary commands and utilities:
|
|
|
76
76
|
* [`bundle lock(1)`](bundle-lock.1.html):
|
|
77
77
|
Generate a lockfile for your dependencies
|
|
78
78
|
|
|
79
|
-
* [`bundle viz(1)`](bundle-viz.1.html) (deprecated):
|
|
80
|
-
Generate a visual representation of your dependencies
|
|
81
|
-
|
|
82
79
|
* [`bundle init(1)`](bundle-init.1.html):
|
|
83
80
|
Generate a simple `Gemfile`, placed in the current directory
|
|
84
81
|
|
|
@@ -108,9 +105,3 @@ We divide `bundle` subcommands into primary commands and utilities:
|
|
|
108
105
|
When running a command that isn't listed in PRIMARY COMMANDS or UTILITIES,
|
|
109
106
|
Bundler will try to find an executable on your path named `bundler-<command>`
|
|
110
107
|
and execute it, passing down any extra arguments to it.
|
|
111
|
-
|
|
112
|
-
## OBSOLETE
|
|
113
|
-
|
|
114
|
-
These commands are obsolete and should no longer be used:
|
|
115
|
-
|
|
116
|
-
* `bundle inject(1)`
|
data/lib/bundler/man/gemfile.5
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
|
3
|
-
.TH "GEMFILE" "5" "March
|
|
3
|
+
.TH "GEMFILE" "5" "March 2026" ""
|
|
4
4
|
.SH "NAME"
|
|
5
5
|
\fBGemfile\fR \- A format for describing gem dependencies for Ruby programs
|
|
6
6
|
.SH "SYNOPSIS"
|
|
@@ -469,4 +469,35 @@ For implicit gems (dependencies of explicit gems), any source, git, or path repo
|
|
|
469
469
|
.IP "3." 4
|
|
470
470
|
If neither of the above conditions are met, the global source will be used\. If multiple global sources are specified, they will be prioritized from last to first, but this is deprecated since Bundler 1\.13, so Bundler prints a warning and will abort with an error in the future\.
|
|
471
471
|
.IP "" 0
|
|
472
|
+
.SH "LOCKFILE"
|
|
473
|
+
By default, Bundler will create a lockfile by adding \fB\.lock\fR to the end of the Gemfile name\. To change this, use the \fBlockfile\fR method:
|
|
474
|
+
.IP "" 4
|
|
475
|
+
.nf
|
|
476
|
+
lockfile "/path/to/lockfile\.lock"
|
|
477
|
+
.fi
|
|
478
|
+
.IP "" 0
|
|
479
|
+
.P
|
|
480
|
+
This is useful when you want to use different lockfiles per ruby version or platform\.
|
|
481
|
+
.P
|
|
482
|
+
To avoid writing a lock file, use \fBfalse\fR as the argument:
|
|
483
|
+
.IP "" 4
|
|
484
|
+
.nf
|
|
485
|
+
lockfile false
|
|
486
|
+
.fi
|
|
487
|
+
.IP "" 0
|
|
488
|
+
.P
|
|
489
|
+
This is useful for library development and other situations where the code is expected to work with a range of dependency versions\.
|
|
490
|
+
.SS "LOCKFILE PRECEDENCE"
|
|
491
|
+
When determining path to the lockfile or whether to create a lockfile, the following precedence is used:
|
|
492
|
+
.IP "1." 4
|
|
493
|
+
The \fBbundle install\fR \fB\-\-no\-lock\fR option (which disables lockfile creation)\.
|
|
494
|
+
.IP "2." 4
|
|
495
|
+
The \fBbundle install\fR \fB\-\-lockfile\fR option\.
|
|
496
|
+
.IP "3." 4
|
|
497
|
+
The \fBBUNDLE_LOCKFILE\fR environment variable\.
|
|
498
|
+
.IP "4." 4
|
|
499
|
+
The \fBlockfile\fR method in the Gemfile\.
|
|
500
|
+
.IP "5." 4
|
|
501
|
+
The default behavior of adding \fB\.lock\fR to the end of the Gemfile name\.
|
|
502
|
+
.IP "" 0
|
|
472
503
|
|
|
@@ -556,3 +556,31 @@ bundler uses the following priority order:
|
|
|
556
556
|
If multiple global sources are specified, they will be prioritized from
|
|
557
557
|
last to first, but this is deprecated since Bundler 1.13, so Bundler prints
|
|
558
558
|
a warning and will abort with an error in the future.
|
|
559
|
+
|
|
560
|
+
## LOCKFILE
|
|
561
|
+
|
|
562
|
+
By default, Bundler will create a lockfile by adding `.lock` to the end of the
|
|
563
|
+
Gemfile name. To change this, use the `lockfile` method:
|
|
564
|
+
|
|
565
|
+
lockfile "/path/to/lockfile.lock"
|
|
566
|
+
|
|
567
|
+
This is useful when you want to use different lockfiles per ruby version or
|
|
568
|
+
platform.
|
|
569
|
+
|
|
570
|
+
To avoid writing a lock file, use `false` as the argument:
|
|
571
|
+
|
|
572
|
+
lockfile false
|
|
573
|
+
|
|
574
|
+
This is useful for library development and other situations where the code is
|
|
575
|
+
expected to work with a range of dependency versions.
|
|
576
|
+
|
|
577
|
+
### LOCKFILE PRECEDENCE
|
|
578
|
+
|
|
579
|
+
When determining path to the lockfile or whether to create a lockfile, the
|
|
580
|
+
following precedence is used:
|
|
581
|
+
|
|
582
|
+
1. The `bundle install` `--no-lock` option (which disables lockfile creation).
|
|
583
|
+
1. The `bundle install` `--lockfile` option.
|
|
584
|
+
1. The `BUNDLE_LOCKFILE` environment variable.
|
|
585
|
+
1. The `lockfile` method in the Gemfile.
|
|
586
|
+
1. The default behavior of adding `.lock` to the end of the Gemfile name.
|
data/lib/bundler/man/index.txt
CHANGED
|
@@ -15,7 +15,6 @@ bundle-gem(1) bundle-gem.1
|
|
|
15
15
|
bundle-help(1) bundle-help.1
|
|
16
16
|
bundle-info(1) bundle-info.1
|
|
17
17
|
bundle-init(1) bundle-init.1
|
|
18
|
-
bundle-inject(1) bundle-inject.1
|
|
19
18
|
bundle-install(1) bundle-install.1
|
|
20
19
|
bundle-issue(1) bundle-issue.1
|
|
21
20
|
bundle-licenses(1) bundle-licenses.1
|
|
@@ -30,4 +29,3 @@ bundle-remove(1) bundle-remove.1
|
|
|
30
29
|
bundle-show(1) bundle-show.1
|
|
31
30
|
bundle-update(1) bundle-update.1
|
|
32
31
|
bundle-version(1) bundle-version.1
|
|
33
|
-
bundle-viz(1) bundle-viz.1
|
|
@@ -1,23 +1,42 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
require_relative "gem_helpers"
|
|
4
|
-
|
|
5
3
|
module Bundler
|
|
6
4
|
module MatchPlatform
|
|
7
|
-
|
|
5
|
+
def installable_on_platform?(target_platform) # :nodoc:
|
|
6
|
+
return true if [Gem::Platform::RUBY, nil, target_platform].include?(platform)
|
|
7
|
+
return true if Gem::Platform.new(platform) === target_platform
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
MatchPlatform.platforms_match?(platform, p)
|
|
9
|
+
false
|
|
11
10
|
end
|
|
12
11
|
|
|
13
|
-
def self.
|
|
14
|
-
|
|
15
|
-
return true if gemspec_platform == Gem::Platform::RUBY
|
|
16
|
-
return true if local_platform == gemspec_platform
|
|
17
|
-
gemspec_platform = Gem::Platform.new(gemspec_platform)
|
|
18
|
-
return true if gemspec_platform === local_platform
|
|
12
|
+
def self.select_best_platform_match(specs, platform, force_ruby: false, prefer_locked: false)
|
|
13
|
+
matching = select_all_platform_match(specs, platform, force_ruby: force_ruby, prefer_locked: prefer_locked)
|
|
19
14
|
|
|
20
|
-
|
|
15
|
+
Gem::Platform.sort_and_filter_best_platform_match(matching, platform)
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def self.select_best_local_platform_match(specs, force_ruby: false)
|
|
19
|
+
local = Bundler.local_platform
|
|
20
|
+
matching = select_all_platform_match(specs, local, force_ruby: force_ruby).filter_map(&:materialized_for_installation)
|
|
21
|
+
|
|
22
|
+
Gem::Platform.sort_best_platform_match(matching, local)
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def self.select_all_platform_match(specs, platform, force_ruby: false, prefer_locked: false)
|
|
26
|
+
matching = specs.select {|spec| spec.installable_on_platform?(force_ruby ? Gem::Platform::RUBY : platform) }
|
|
27
|
+
|
|
28
|
+
specs.each(&:force_ruby_platform!) if force_ruby
|
|
29
|
+
|
|
30
|
+
if prefer_locked
|
|
31
|
+
locked_originally = matching.select {|spec| spec.is_a?(::Bundler::LazySpecification) }
|
|
32
|
+
return locked_originally if locked_originally.any?
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
matching
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
def self.generic_local_platform_is_ruby?
|
|
39
|
+
Bundler.generic_local_platform == Gem::Platform::RUBY
|
|
21
40
|
end
|
|
22
41
|
end
|
|
23
42
|
end
|
|
@@ -22,14 +22,14 @@ module Bundler
|
|
|
22
22
|
@specs ||= if @candidates.nil?
|
|
23
23
|
[]
|
|
24
24
|
elsif platform
|
|
25
|
-
|
|
25
|
+
MatchPlatform.select_best_platform_match(@candidates, platform, force_ruby: dep.force_ruby_platform)
|
|
26
26
|
else
|
|
27
|
-
|
|
27
|
+
MatchPlatform.select_best_local_platform_match(@candidates, force_ruby: dep.force_ruby_platform || dep.default_force_ruby_platform)
|
|
28
28
|
end
|
|
29
29
|
end
|
|
30
30
|
|
|
31
31
|
def dependencies
|
|
32
|
-
specs.first.runtime_dependencies.map {|d| [d, platform] }
|
|
32
|
+
(materialized_spec || specs.first).runtime_dependencies.map {|d| [d, platform] }
|
|
33
33
|
end
|
|
34
34
|
|
|
35
35
|
def materialized_spec
|
|
@@ -74,6 +74,14 @@ module Bundler
|
|
|
74
74
|
{}
|
|
75
75
|
end
|
|
76
76
|
|
|
77
|
+
# Download the gem specified by the spec at appropriate path.
|
|
78
|
+
#
|
|
79
|
+
# A source plugin can implement this method to split the download and the
|
|
80
|
+
# installation of a gem.
|
|
81
|
+
#
|
|
82
|
+
# @return [Boolean] Whether the download of the gem succeeded.
|
|
83
|
+
def download(spec, opts); end
|
|
84
|
+
|
|
77
85
|
# Install the gem specified by the spec at appropriate path.
|
|
78
86
|
# `install_path` provides a sufficient default, if the source can only
|
|
79
87
|
# satisfy one gem, but is not binding.
|
data/lib/bundler/plugin/index.rb
CHANGED
|
@@ -43,16 +43,6 @@ module Bundler
|
|
|
43
43
|
private
|
|
44
44
|
|
|
45
45
|
def check_sources_consistency!(options)
|
|
46
|
-
if options.key?(:git) && options.key?(:local_git)
|
|
47
|
-
raise InvalidOption, "Remote and local plugin git sources can't be both specified"
|
|
48
|
-
end
|
|
49
|
-
|
|
50
|
-
# back-compat; local_git is an alias for git
|
|
51
|
-
if options.key?(:local_git)
|
|
52
|
-
Bundler::SharedHelpers.major_deprecation(2, "--local_git is deprecated, use --git")
|
|
53
|
-
options[:git] = options.delete(:local_git)
|
|
54
|
-
end
|
|
55
|
-
|
|
56
46
|
if (options.keys & [:source, :git, :path]).length > 1
|
|
57
47
|
raise InvalidOption, "Only one of --source, --git, or --path may be specified"
|
|
58
48
|
end
|
|
@@ -120,7 +110,8 @@ module Bundler
|
|
|
120
110
|
paths = {}
|
|
121
111
|
|
|
122
112
|
specs.each do |spec|
|
|
123
|
-
spec.source.
|
|
113
|
+
spec.source.download(spec)
|
|
114
|
+
spec.source.install(spec)
|
|
124
115
|
|
|
125
116
|
paths[spec.name] = spec
|
|
126
117
|
end
|