rubygems-update 2.7.6 → 2.7.11
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/.travis.yml +2 -23
- data/History.txt +116 -0
- data/Manifest.txt +3 -3
- data/Rakefile +12 -2
- data/bundler/CHANGELOG.md +130 -0
- data/bundler/README.md +5 -1
- data/bundler/bundler.gemspec +2 -1
- data/bundler/lib/bundler.rb +12 -8
- data/bundler/lib/bundler/build_metadata.rb +19 -2
- data/bundler/lib/bundler/cli.rb +3 -1
- data/bundler/lib/bundler/cli/check.rb +1 -1
- data/bundler/lib/bundler/cli/exec.rb +4 -4
- data/bundler/lib/bundler/cli/gem.rb +5 -2
- data/bundler/lib/bundler/cli/init.rb +5 -0
- data/bundler/lib/bundler/cli/install.rb +2 -2
- data/bundler/lib/bundler/cli/outdated.rb +1 -1
- data/bundler/lib/bundler/cli/update.rb +3 -3
- data/bundler/lib/bundler/compact_index_client/updater.rb +10 -1
- data/bundler/lib/bundler/current_ruby.rb +8 -1
- data/bundler/lib/bundler/definition.rb +33 -23
- data/bundler/lib/bundler/dep_proxy.rb +2 -2
- data/bundler/lib/bundler/dependency.rb +1 -0
- data/bundler/lib/bundler/deprecate.rb +2 -1
- data/bundler/lib/bundler/endpoint_specification.rb +1 -1
- data/bundler/lib/bundler/env.rb +10 -8
- data/bundler/lib/bundler/fetcher.rb +3 -3
- data/bundler/lib/bundler/fetcher/downloader.rb +10 -5
- data/bundler/lib/bundler/fetcher/index.rb +2 -2
- data/bundler/lib/bundler/friendly_errors.rb +2 -0
- data/bundler/lib/bundler/gem_helper.rb +1 -1
- data/bundler/lib/bundler/gem_version_promoter.rb +12 -0
- data/bundler/lib/bundler/injector.rb +5 -5
- data/bundler/lib/bundler/installer.rb +12 -4
- data/bundler/lib/bundler/installer/gem_installer.rb +9 -2
- data/bundler/lib/bundler/installer/parallel_installer.rb +1 -1
- data/bundler/lib/bundler/lazy_specification.rb +1 -1
- data/bundler/lib/bundler/mirror.rb +2 -2
- data/bundler/lib/bundler/plugin.rb +2 -2
- data/bundler/lib/bundler/plugin/index.rb +7 -2
- data/bundler/lib/bundler/process_lock.rb +1 -1
- data/bundler/lib/bundler/resolver.rb +10 -9
- data/bundler/lib/bundler/resolver/spec_group.rb +0 -5
- data/bundler/lib/bundler/ruby_version.rb +1 -1
- data/bundler/lib/bundler/rubygems_integration.rb +9 -3
- data/bundler/lib/bundler/runtime.rb +2 -2
- data/bundler/lib/bundler/shared_helpers.rb +15 -3
- data/bundler/lib/bundler/source/git.rb +2 -1
- data/bundler/lib/bundler/source/git/git_proxy.rb +6 -1
- data/bundler/lib/bundler/source/metadata.rb +1 -1
- data/bundler/lib/bundler/source/rubygems.rb +11 -2
- data/bundler/lib/bundler/source/rubygems/remote.rb +4 -1
- data/bundler/lib/bundler/spec_set.rb +4 -1
- data/bundler/lib/bundler/templates/Executable +1 -1
- data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +8 -2
- data/bundler/lib/bundler/templates/newgem/travis.yml.tt +2 -0
- data/bundler/lib/bundler/ui/shell.rb +3 -1
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb +11 -1
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +7 -2
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb +1 -1
- data/bundler/lib/bundler/version.rb +1 -1
- data/bundler/man/bundle-binstubs.ronn +3 -3
- data/bundler/man/bundle-check.ronn +3 -3
- data/bundler/man/bundle-config.ronn +13 -9
- data/bundler/man/bundle-doctor.ronn +33 -0
- data/bundler/man/bundle-exec.ronn +3 -3
- data/bundler/man/bundle-gem.ronn +1 -1
- data/bundler/man/bundle-init.ronn +15 -4
- data/bundler/man/bundle-inject.ronn +3 -3
- data/bundler/man/bundle-install.ronn +12 -3
- data/bundler/man/bundle-lock.ronn +1 -1
- data/bundler/man/bundle-outdated.ronn +1 -1
- data/bundler/man/bundle-package.ronn +3 -3
- data/bundler/man/bundle-show.ronn +3 -2
- data/bundler/man/bundle-update.ronn +18 -14
- data/bundler/man/bundle-viz.ronn +1 -1
- data/bundler/man/bundle.ronn +27 -27
- data/bundler/man/gemfile.5.ronn +24 -9
- data/lib/rubygems.rb +24 -11
- data/lib/rubygems/bundler_version_finder.rb +9 -22
- data/lib/rubygems/command_manager.rb +6 -4
- data/lib/rubygems/commands/install_command.rb +7 -0
- data/lib/rubygems/commands/owner_command.rb +4 -1
- data/lib/rubygems/commands/push_command.rb +37 -4
- data/lib/rubygems/commands/setup_command.rb +3 -3
- data/lib/rubygems/commands/uninstall_command.rb +1 -1
- data/lib/rubygems/commands/unpack_command.rb +1 -1
- data/lib/rubygems/core_ext/kernel_require.rb +2 -7
- data/lib/rubygems/dependency.rb +1 -0
- data/lib/rubygems/dependency_installer.rb +4 -2
- data/lib/rubygems/exceptions.rb +5 -1
- data/lib/rubygems/gemcutter_utilities.rb +5 -2
- data/lib/rubygems/indexer.rb +1 -1
- data/lib/rubygems/install_update_options.rb +1 -1
- data/lib/rubygems/installer.rb +29 -6
- data/lib/rubygems/package.rb +20 -2
- data/lib/rubygems/package/tar_header.rb +3 -1
- data/lib/rubygems/package/tar_writer.rb +2 -3
- data/lib/rubygems/remote_fetcher.rb +1 -1
- data/lib/rubygems/request_set.rb +28 -17
- data/lib/rubygems/requirement.rb +14 -3
- data/lib/rubygems/resolver/api_specification.rb +5 -0
- data/lib/rubygems/security.rb +6 -1
- data/lib/rubygems/server.rb +3 -3
- data/lib/rubygems/source.rb +1 -1
- data/lib/rubygems/specification.rb +7 -10
- data/lib/rubygems/ssl_certs/{index.rubygems.org → rubygems.org}/GlobalSignRootCA.pem +0 -0
- data/lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem +21 -0
- data/lib/rubygems/test_case.rb +22 -4
- data/lib/rubygems/test_utilities.rb +1 -1
- data/lib/rubygems/user_interaction.rb +9 -2
- data/lib/rubygems/util/licenses.rb +35 -4
- data/lib/rubygems/version.rb +7 -1
- data/lib/ubygems.rb +3 -0
- data/test/rubygems/test_bundled_ca.rb +7 -4
- data/test/rubygems/test_gem.rb +45 -10
- data/test/rubygems/test_gem_bundler_version_finder.rb +8 -7
- data/test/rubygems/test_gem_command_manager.rb +2 -2
- data/test/rubygems/test_gem_commands_build_command.rb +2 -0
- data/test/rubygems/test_gem_commands_install_command.rb +37 -0
- data/test/rubygems/test_gem_commands_push_command.rb +20 -0
- data/test/rubygems/test_gem_commands_setup_command.rb +6 -1
- data/test/rubygems/test_gem_commands_signin_command.rb +1 -1
- data/test/rubygems/test_gem_commands_uninstall_command.rb +1 -1
- data/test/rubygems/test_gem_dependency.rb +1 -1
- data/test/rubygems/test_gem_ext_rake_builder.rb +0 -4
- data/test/rubygems/test_gem_install_update_options.rb +2 -0
- data/test/rubygems/test_gem_installer.rb +109 -3
- data/test/rubygems/test_gem_package.rb +90 -5
- data/test/rubygems/test_gem_package_tar_header.rb +2 -1
- data/test/rubygems/test_gem_remote_fetcher.rb +6 -2
- data/test/rubygems/test_gem_request.rb +5 -2
- data/test/rubygems/test_gem_requirement.rb +6 -0
- data/test/rubygems/test_gem_resolver_api_specification.rb +24 -0
- data/test/rubygems/test_gem_resolver_installer_set.rb +1 -1
- data/test/rubygems/test_gem_security_policy.rb +3 -3
- data/test/rubygems/test_gem_server.rb +12 -12
- data/test/rubygems/test_gem_specification.rb +27 -13
- data/test/rubygems/test_gem_stream_ui.rb +2 -2
- data/test/rubygems/test_gem_text.rb +5 -0
- data/test/rubygems/test_gem_util.rb +4 -2
- data/test/rubygems/test_gem_version.rb +29 -2
- data/util/ci +1 -0
- data/util/generate_spdx_license_list.rb +15 -6
- data/util/update_bundled_ca_certificates.rb +1 -3
- metadata +12 -12
- data/lib/rubygems/ssl_certs/rubygems.global.ssl.fastly.net/DigiCertHighAssuranceEVRootCA.pem +0 -23
- data/lib/rubygems/ssl_certs/rubygems.org/AddTrustExternalCARoot.pem +0 -25
|
@@ -8,9 +8,9 @@ bundle-inject(1) -- Add named gem(s) with version requirements to Gemfile
|
|
|
8
8
|
## DESCRIPTION
|
|
9
9
|
|
|
10
10
|
Adds the named gem(s) with their version requirements to the resolved
|
|
11
|
-
`Gemfile(5)
|
|
11
|
+
[`Gemfile(5)`][Gemfile(5)].
|
|
12
12
|
|
|
13
|
-
This command will add the gem to both your `Gemfile(5)` and Gemfile.lock if it
|
|
13
|
+
This command will add the gem to both your [`Gemfile(5)`][Gemfile(5)] and Gemfile.lock if it
|
|
14
14
|
isn't listed yet.
|
|
15
15
|
|
|
16
16
|
Example:
|
|
@@ -19,4 +19,4 @@ Example:
|
|
|
19
19
|
bundle inject 'rack' '> 0'
|
|
20
20
|
|
|
21
21
|
This will inject the 'rack' gem with a version greater than 0 in your
|
|
22
|
-
`Gemfile(5)` and Gemfile.lock
|
|
22
|
+
[`Gemfile(5)`][Gemfile(5)] and Gemfile.lock
|
|
@@ -290,12 +290,21 @@ of a dependency of a gem in your Gemfile(5)) can result in radically
|
|
|
290
290
|
different gems being needed to satisfy all dependencies.
|
|
291
291
|
|
|
292
292
|
As a result, you `SHOULD` check your `Gemfile.lock` into version
|
|
293
|
-
control. If you do not, every machine that
|
|
294
|
-
repository (including your production server) will resolve all
|
|
293
|
+
control, in both applications and gems. If you do not, every machine that
|
|
294
|
+
checks out your repository (including your production server) will resolve all
|
|
295
295
|
dependencies again, which will result in different versions of
|
|
296
296
|
third-party code being used if `any` of the gems in the Gemfile(5)
|
|
297
297
|
or any of their dependencies have been updated.
|
|
298
298
|
|
|
299
|
+
When Bundler first shipped, the `Gemfile.lock` was included in the `.gitignore`
|
|
300
|
+
file included with generated gems. Over time, however, it became clear that
|
|
301
|
+
this practice forces the pain of broken dependencies onto new contributors,
|
|
302
|
+
while leaving existing contributors potentially unaware of the problem. Since
|
|
303
|
+
`bundle install` is usually the first step towards a contribution, the pain of
|
|
304
|
+
broken dependencies would discourage new contributors from contributing. As a
|
|
305
|
+
result, we have revised our guidance for gem authors to now recommend checking
|
|
306
|
+
in the lock for gems.
|
|
307
|
+
|
|
299
308
|
## CONSERVATIVE UPDATING
|
|
300
309
|
|
|
301
310
|
When you make a change to the Gemfile(5) and then run `bundle install`,
|
|
@@ -361,7 +370,7 @@ which other gems in the Gemfile(5) still depend on, run
|
|
|
361
370
|
`Summary`: In general, after making a change to the Gemfile(5) , you
|
|
362
371
|
should first try to run `bundle install`, which will guarantee that no
|
|
363
372
|
other gem in the Gemfile(5) is impacted by the change. If that
|
|
364
|
-
does not work, run [bundle update(1)]
|
|
373
|
+
does not work, run [bundle update(1)](bundle-update.1.html).
|
|
365
374
|
|
|
366
375
|
## SEE ALSO
|
|
367
376
|
|
|
@@ -69,7 +69,7 @@ are up to date, Bundler will exit with a status of 0. Otherwise, it will exit 1.
|
|
|
69
69
|
|
|
70
70
|
## PATCH LEVEL OPTIONS
|
|
71
71
|
|
|
72
|
-
See [bundle update(1)]
|
|
72
|
+
See [bundle update(1)](bundle-update.1.html) for details.
|
|
73
73
|
|
|
74
74
|
One difference between the patch level options in `bundle update` and here is the `--strict` option.
|
|
75
75
|
`--strict` was already an option on outdated before the patch level options were added. `--strict`
|
|
@@ -27,8 +27,8 @@ in your local bundler configuration.
|
|
|
27
27
|
|
|
28
28
|
## REMOTE FETCHING
|
|
29
29
|
|
|
30
|
-
By default, if you run
|
|
31
|
-
[bundle package(1)]
|
|
30
|
+
By default, if you run `bundle install(1)`](bundle-install.1.html) after running
|
|
31
|
+
[bundle package(1)](bundle-package.1.html), bundler will still connect to `rubygems.org`
|
|
32
32
|
to check whether a platform-specific gem exists for any of the gems
|
|
33
33
|
in `vendor/cache`.
|
|
34
34
|
|
|
@@ -66,7 +66,7 @@ machine and check in the gems. For instance, you can run
|
|
|
66
66
|
staging process, and check in the `vendor/cache` before
|
|
67
67
|
deploying to production.
|
|
68
68
|
|
|
69
|
-
By default, [bundle package(1)]
|
|
69
|
+
By default, [bundle package(1)](bundle-package.1.html) fetches and also
|
|
70
70
|
installs the gems to the default location. To package the
|
|
71
71
|
dependencies to `vendor/cache` without installing them to the
|
|
72
72
|
local install location, you can run `bundle package --no-install`.
|
|
@@ -9,7 +9,7 @@ bundle-show(1) -- Shows all the gems in your bundle, or the path to a gem
|
|
|
9
9
|
## DESCRIPTION
|
|
10
10
|
|
|
11
11
|
Without the [GEM] option, `show` will print a list of the names and versions of
|
|
12
|
-
all gems that are required by your `Gemfile(5)
|
|
12
|
+
all gems that are required by your [`Gemfile(5)`][Gemfile(5)], sorted by name.
|
|
13
13
|
|
|
14
14
|
Calling show with [GEM] will list the exact location of that gem on your
|
|
15
15
|
machine.
|
|
@@ -17,4 +17,5 @@ machine.
|
|
|
17
17
|
## OPTIONS
|
|
18
18
|
|
|
19
19
|
* `--paths`:
|
|
20
|
-
List the paths of all gems that are required by your `Gemfile(5)
|
|
20
|
+
List the paths of all gems that are required by your [`Gemfile(5)`][Gemfile(5)],
|
|
21
|
+
sorted by gem name.
|
|
@@ -3,7 +3,8 @@ bundle-update(1) -- Update your gems to the latest available versions
|
|
|
3
3
|
|
|
4
4
|
## SYNOPSIS
|
|
5
5
|
|
|
6
|
-
`bundle update` <*gems> [--
|
|
6
|
+
`bundle update` <*gems> [--all]
|
|
7
|
+
[--group=NAME]
|
|
7
8
|
[--source=NAME]
|
|
8
9
|
[--local]
|
|
9
10
|
[--ruby]
|
|
@@ -18,9 +19,9 @@ bundle-update(1) -- Update your gems to the latest available versions
|
|
|
18
19
|
|
|
19
20
|
## DESCRIPTION
|
|
20
21
|
|
|
21
|
-
Update the gems specified (all gems, if
|
|
22
|
+
Update the gems specified (all gems, if `--all` flag is used), ignoring
|
|
22
23
|
the previously installed gems specified in the `Gemfile.lock`. In
|
|
23
|
-
general, you should use [bundle install(1)]
|
|
24
|
+
general, you should use [bundle install(1)](bundle-install.1.html) to install the same exact
|
|
24
25
|
gems and versions across machines.
|
|
25
26
|
|
|
26
27
|
You would use `bundle update` to explicitly update the version of a
|
|
@@ -28,6 +29,9 @@ gem.
|
|
|
28
29
|
|
|
29
30
|
## OPTIONS
|
|
30
31
|
|
|
32
|
+
* `--all`:
|
|
33
|
+
Update all gems specified in Gemfile.
|
|
34
|
+
|
|
31
35
|
* `--group=<name>`, `-g=[<name>]`:
|
|
32
36
|
Only update the gems in the specified group. For instance, you can update all gems
|
|
33
37
|
in the development group with `bundle update --group development`. You can also
|
|
@@ -80,7 +84,7 @@ gem.
|
|
|
80
84
|
|
|
81
85
|
## UPDATING ALL GEMS
|
|
82
86
|
|
|
83
|
-
If you run `bundle update
|
|
87
|
+
If you run `bundle update --all`, bundler will ignore
|
|
84
88
|
any previously installed gems and resolve all dependencies again
|
|
85
89
|
based on the latest versions of all gems available in the sources.
|
|
86
90
|
|
|
@@ -91,7 +95,7 @@ Consider the following Gemfile(5):
|
|
|
91
95
|
gem "rails", "3.0.0.rc"
|
|
92
96
|
gem "nokogiri"
|
|
93
97
|
|
|
94
|
-
When you run [bundle install(1)]
|
|
98
|
+
When you run [bundle install(1)](bundle-install.1.html) the first time, bundler will resolve
|
|
95
99
|
all of the dependencies, all the way down, and install what you need:
|
|
96
100
|
|
|
97
101
|
Fetching gem metadata from https://rubygems.org/.........
|
|
@@ -128,21 +132,21 @@ all of the dependencies, all the way down, and install what you need:
|
|
|
128
132
|
|
|
129
133
|
As you can see, even though you have two gems in the Gemfile(5), your application
|
|
130
134
|
needs 26 different gems in order to run. Bundler remembers the exact versions
|
|
131
|
-
it installed in `Gemfile.lock`. The next time you run [bundle install(1)]
|
|
135
|
+
it installed in `Gemfile.lock`. The next time you run [bundle install(1)](bundle-install.1.html), bundler skips
|
|
132
136
|
the dependency resolution and installs the same gems as it installed last time.
|
|
133
137
|
|
|
134
138
|
After checking in the `Gemfile.lock` into version control and cloning it on another
|
|
135
|
-
machine, running [bundle install(1)]
|
|
139
|
+
machine, running [bundle install(1)](bundle-install.1.html) will _still_ install the gems that you installed
|
|
136
140
|
last time. You don't need to worry that a new release of `erubis` or `mail` changes
|
|
137
141
|
the gems you use.
|
|
138
142
|
|
|
139
143
|
However, from time to time, you might want to update the gems you are using to the
|
|
140
144
|
newest versions that still match the gems in your Gemfile(5).
|
|
141
145
|
|
|
142
|
-
To do this, run `bundle update`, which will ignore the `Gemfile.lock`, and resolve
|
|
146
|
+
To do this, run `bundle update --all`, which will ignore the `Gemfile.lock`, and resolve
|
|
143
147
|
all the dependencies again. Keep in mind that this process can result in a significantly
|
|
144
148
|
different set of the 25 gems, based on the requirements of new gems that the gem
|
|
145
|
-
authors released since the last time you ran `bundle update`.
|
|
149
|
+
authors released since the last time you ran `bundle update --all`.
|
|
146
150
|
|
|
147
151
|
## UPDATING A LIST OF GEMS
|
|
148
152
|
|
|
@@ -192,12 +196,12 @@ update all dependencies of that gem, including those that are also dependencies
|
|
|
192
196
|
of another gem.
|
|
193
197
|
|
|
194
198
|
To prevent updating shared dependencies, prior to version 1.14 the only option
|
|
195
|
-
was the `CONSERVATIVE UPDATING` behavior in [bundle install(1)]
|
|
199
|
+
was the `CONSERVATIVE UPDATING` behavior in [bundle install(1)](bundle-install.1.html):
|
|
196
200
|
|
|
197
201
|
In this scenario, updating the `thin` version manually in the Gemfile(5),
|
|
198
|
-
and then running [bundle install(1)]
|
|
202
|
+
and then running [bundle install(1)](bundle-install.1.html) will only update `daemons` and `eventmachine`,
|
|
199
203
|
but not `rack`. For more information, see the `CONSERVATIVE UPDATING` section
|
|
200
|
-
of [bundle install(1)]
|
|
204
|
+
of [bundle install(1)](bundle-install.1.html).
|
|
201
205
|
|
|
202
206
|
Starting with 1.14, specifying the `--conservative` option will also prevent shared
|
|
203
207
|
dependencies from being updated.
|
|
@@ -335,7 +339,7 @@ use the following workflow:
|
|
|
335
339
|
|
|
336
340
|
$ git add Gemfile.lock
|
|
337
341
|
|
|
338
|
-
* If [bundle install(1)]
|
|
342
|
+
* If [bundle install(1)](bundle-install.1.html) reports a conflict, manually update the specific
|
|
339
343
|
gems that you changed in the Gemfile(5)
|
|
340
344
|
|
|
341
345
|
$ bundle update rails thin
|
|
@@ -343,4 +347,4 @@ use the following workflow:
|
|
|
343
347
|
* If you want to update all the gems to the latest possible versions that
|
|
344
348
|
still match the gems listed in the Gemfile(5), run
|
|
345
349
|
|
|
346
|
-
$ bundle update
|
|
350
|
+
$ bundle update --all
|
data/bundler/man/bundle-viz.ronn
CHANGED
|
@@ -14,7 +14,7 @@ bundle-viz(1) -- Generates a visual dependency graph for your Gemfile
|
|
|
14
14
|
`viz` generates a PNG file of the current `Gemfile(5)` as a dependency graph.
|
|
15
15
|
`viz` requires the ruby-graphviz gem (and its dependencies).
|
|
16
16
|
|
|
17
|
-
The associated gems must also be installed via `bundle install(1)
|
|
17
|
+
The associated gems must also be installed via [`bundle install(1)`](bundle-install.1.html).
|
|
18
18
|
|
|
19
19
|
## OPTIONS
|
|
20
20
|
|
data/bundler/man/bundle.ronn
CHANGED
|
@@ -26,73 +26,73 @@ started, and Gemfile(5) for more information on the `Gemfile` format.
|
|
|
26
26
|
|
|
27
27
|
## BUNDLE COMMANDS
|
|
28
28
|
|
|
29
|
-
We divide `bundle` subcommands into primary commands and utilities
|
|
29
|
+
We divide `bundle` subcommands into primary commands and utilities:
|
|
30
30
|
|
|
31
31
|
## PRIMARY COMMANDS
|
|
32
32
|
|
|
33
|
-
* [`bundle install(1)`]
|
|
33
|
+
* [`bundle install(1)`](bundle-install.1.html):
|
|
34
34
|
Install the gems specified by the `Gemfile` or `Gemfile.lock`
|
|
35
35
|
|
|
36
|
-
* [`bundle update(1)`]
|
|
36
|
+
* [`bundle update(1)`](bundle-update.1.html):
|
|
37
37
|
Update dependencies to their latest versions
|
|
38
38
|
|
|
39
|
-
* [`bundle package(1)`]
|
|
39
|
+
* [`bundle package(1)`](bundle-package.1.html):
|
|
40
40
|
Package the .gem files required by your application into the
|
|
41
41
|
`vendor/cache` directory
|
|
42
42
|
|
|
43
|
-
* [`bundle exec(1)`]
|
|
44
|
-
Execute a script in the
|
|
43
|
+
* [`bundle exec(1)`](bundle-exec.1.html):
|
|
44
|
+
Execute a script in the current bundle
|
|
45
45
|
|
|
46
|
-
* [`bundle config(1)`]
|
|
47
|
-
Specify and read configuration options for
|
|
46
|
+
* [`bundle config(1)`](bundle-config.1.html):
|
|
47
|
+
Specify and read configuration options for Bundler
|
|
48
48
|
|
|
49
49
|
* `bundle help(1)`:
|
|
50
50
|
Display detailed help for each subcommand
|
|
51
51
|
|
|
52
52
|
## UTILITIES
|
|
53
53
|
|
|
54
|
-
* `bundle add(1)
|
|
54
|
+
* [`bundle add(1)`](bundle-add.1.html):
|
|
55
55
|
Add the named gem to the Gemfile and run `bundle install`
|
|
56
56
|
|
|
57
|
-
* `bundle binstubs(1)
|
|
57
|
+
* [`bundle binstubs(1)`](bundle-binstubs.1.html):
|
|
58
58
|
Generate binstubs for executables in a gem
|
|
59
59
|
|
|
60
|
-
* `bundle check(1)
|
|
60
|
+
* [`bundle check(1)`](bundle-check.1.html):
|
|
61
61
|
Determine whether the requirements for your application are installed
|
|
62
|
-
and available to
|
|
62
|
+
and available to Bundler
|
|
63
63
|
|
|
64
|
-
* `bundle show(1)
|
|
64
|
+
* [`bundle show(1)`](bundle-show.1.html):
|
|
65
65
|
Show the source location of a particular gem in the bundle
|
|
66
66
|
|
|
67
|
-
* [`bundle outdated(1)`]
|
|
67
|
+
* [`bundle outdated(1)`](bundle-outdated.1.html):
|
|
68
68
|
Show all of the outdated gems in the current bundle
|
|
69
69
|
|
|
70
70
|
* `bundle console(1)`:
|
|
71
|
-
Start an IRB session in the
|
|
71
|
+
Start an IRB session in the current bundle
|
|
72
72
|
|
|
73
|
-
* `bundle open(1)
|
|
73
|
+
* [`bundle open(1)`](bundle-open.1.html):
|
|
74
74
|
Open an installed gem in the editor
|
|
75
75
|
|
|
76
|
-
* [`bundle lock(1)`]
|
|
76
|
+
* [`bundle lock(1)`](bundle-lock.1.hmtl):
|
|
77
77
|
Generate a lockfile for your dependencies
|
|
78
78
|
|
|
79
|
-
* `bundle viz(1)
|
|
79
|
+
* [`bundle viz(1)`](bundle-viz.1.html):
|
|
80
80
|
Generate a visual representation of your dependencies
|
|
81
81
|
|
|
82
|
-
* `bundle init(1)
|
|
82
|
+
* [`bundle init(1)`](bundle-init.1.html):
|
|
83
83
|
Generate a simple `Gemfile`, placed in the current directory
|
|
84
84
|
|
|
85
|
-
* [`bundle gem(1)`]
|
|
86
|
-
Create a simple gem, suitable for development with
|
|
85
|
+
* [`bundle gem(1)`](bundle-gem.1.html):
|
|
86
|
+
Create a simple gem, suitable for development with Bundler
|
|
87
87
|
|
|
88
|
-
* [`bundle platform(1)`]
|
|
88
|
+
* [`bundle platform(1)`](bundle-platform.1.html):
|
|
89
89
|
Display platform compatibility information
|
|
90
90
|
|
|
91
|
-
* `bundle clean(1)
|
|
92
|
-
Clean up unused gems in your
|
|
91
|
+
* [`bundle clean(1)`](bundle-clean.1.html):
|
|
92
|
+
Clean up unused gems in your Bundler directory
|
|
93
93
|
|
|
94
|
-
* `bundle doctor(1)
|
|
95
|
-
Display warnings about common
|
|
94
|
+
* [`bundle doctor(1)`](bundle-doctor.1.html):
|
|
95
|
+
Display warnings about common problems
|
|
96
96
|
|
|
97
97
|
## PLUGINS
|
|
98
98
|
|
|
@@ -102,7 +102,7 @@ and execute it, passing down any extra arguments to it.
|
|
|
102
102
|
|
|
103
103
|
## OBSOLETE
|
|
104
104
|
|
|
105
|
-
These commands are obsolete and should no longer be used
|
|
105
|
+
These commands are obsolete and should no longer be used:
|
|
106
106
|
|
|
107
107
|
* `bundle cache(1)`
|
|
108
108
|
* `bundle show(1)`
|
data/bundler/man/gemfile.5.ronn
CHANGED
|
@@ -35,7 +35,7 @@ this warning, by using the [`:source` option](#SOURCE) or a
|
|
|
35
35
|
|
|
36
36
|
### CREDENTIALS
|
|
37
37
|
|
|
38
|
-
Some gem sources require a username and password. Use [bundle config(1)]
|
|
38
|
+
Some gem sources require a username and password. Use [bundle config(1)](bundle-config.1.html) to set
|
|
39
39
|
the username and password for any of the sources that need it. The command must
|
|
40
40
|
be run once on each computer that will install the Gemfile, but this keeps the
|
|
41
41
|
credentials from being stored in plain text in version control.
|
|
@@ -59,8 +59,8 @@ All parameters are `OPTIONAL` unless otherwise specified.
|
|
|
59
59
|
### VERSION (required)
|
|
60
60
|
|
|
61
61
|
The version of Ruby that your application requires. If your application
|
|
62
|
-
requires an alternate Ruby engine, such as JRuby or
|
|
63
|
-
the Ruby version that the engine is compatible with.
|
|
62
|
+
requires an alternate Ruby engine, such as JRuby, Rubinius or TruffleRuby, this
|
|
63
|
+
should be the Ruby version that the engine is compatible with.
|
|
64
64
|
|
|
65
65
|
ruby "1.9.3"
|
|
66
66
|
|
|
@@ -188,22 +188,24 @@ platforms.
|
|
|
188
188
|
There are a number of `Gemfile` platforms:
|
|
189
189
|
|
|
190
190
|
* `ruby`:
|
|
191
|
-
C Ruby (MRI) or
|
|
191
|
+
C Ruby (MRI), Rubinius or TruffleRuby, but `NOT` Windows
|
|
192
192
|
* `mri`:
|
|
193
|
-
Same as _ruby_, but
|
|
193
|
+
Same as _ruby_, but only C Ruby (MRI)
|
|
194
194
|
* `mingw`:
|
|
195
195
|
Windows 32 bit 'mingw32' platform (aka RubyInstaller)
|
|
196
196
|
* `x64_mingw`:
|
|
197
197
|
Windows 64 bit 'mingw32' platform (aka RubyInstaller x64)
|
|
198
198
|
* `rbx`:
|
|
199
|
-
|
|
199
|
+
Rubinius
|
|
200
200
|
* `jruby`:
|
|
201
201
|
JRuby
|
|
202
|
+
* `truffleruby`:
|
|
203
|
+
TruffleRuby
|
|
202
204
|
* `mswin`:
|
|
203
205
|
Windows
|
|
204
206
|
|
|
205
207
|
You can restrict further by platform and version for all platforms *except* for
|
|
206
|
-
`rbx`, `jruby`, and `mswin`.
|
|
208
|
+
`rbx`, `jruby`, `truffleruby` and `mswin`.
|
|
207
209
|
|
|
208
210
|
To specify a version in addition to a platform, append the version number without
|
|
209
211
|
the delimiter to the platform. For example, to specify that a gem should only be
|
|
@@ -228,7 +230,7 @@ As with groups, you can specify one or more platforms:
|
|
|
228
230
|
gem "ruby-debug", :platforms => :mri_18
|
|
229
231
|
gem "nokogiri", :platforms => [:mri_18, :jruby]
|
|
230
232
|
|
|
231
|
-
All operations involving groups (`bundle install
|
|
233
|
+
All operations involving groups ([`bundle install`](bundle-install.1.html), `Bundler.setup`,
|
|
232
234
|
`Bundler.require`) behave exactly the same as if any groups not
|
|
233
235
|
matching the current platform were explicitly excluded.
|
|
234
236
|
|
|
@@ -251,6 +253,12 @@ Selecting a specific source repository this way also suppresses the ambiguous
|
|
|
251
253
|
gem warning described above in
|
|
252
254
|
[GLOBAL SOURCES (#source)](#GLOBAL-SOURCES).
|
|
253
255
|
|
|
256
|
+
Using the `:source` option for an individual gem will also make that source
|
|
257
|
+
available as a possible global source for any other gems which do not specify
|
|
258
|
+
explicit sources. Thus, when adding gems with explicit sources, it is
|
|
259
|
+
recommended that you also ensure all other gems in the Gemfile are using
|
|
260
|
+
explicit sources.
|
|
261
|
+
|
|
254
262
|
### GIT
|
|
255
263
|
|
|
256
264
|
If necessary, you can specify that a gem is located at a particular
|
|
@@ -453,6 +461,13 @@ In the case of the `git` block form, the `:ref`, `:branch`, `:tag`,
|
|
|
453
461
|
and `:submodules` options may be passed to the `git` method, and
|
|
454
462
|
all gems in the block will inherit those options.
|
|
455
463
|
|
|
464
|
+
The presence of a `source` block in a Gemfile also makes that source
|
|
465
|
+
available as a possible global source for any other gems which do not specify
|
|
466
|
+
explicit sources. Thus, when defining source blocks, it is
|
|
467
|
+
recommended that you also ensure all other gems in the Gemfile are using
|
|
468
|
+
explicit sources, either via source blocks or `:source` directives on
|
|
469
|
+
individual gems.
|
|
470
|
+
|
|
456
471
|
## INSTALL_IF
|
|
457
472
|
|
|
458
473
|
The `install_if` method allows gems to be installed based on a proc or lambda.
|
|
@@ -465,7 +480,7 @@ software is installed or some other conditions are met.
|
|
|
465
480
|
|
|
466
481
|
## GEMSPEC
|
|
467
482
|
|
|
468
|
-
The [
|
|
483
|
+
The [`.gemspec`](http://guides.rubygems.org/specification-reference/) file is where
|
|
469
484
|
you provide metadata about your gem to Rubygems. Some required Gemspec
|
|
470
485
|
attributes include the name, description, and homepage of your gem. This is
|
|
471
486
|
also where you specify the dependencies your gem needs to run.
|
data/lib/rubygems.rb
CHANGED
|
@@ -10,7 +10,7 @@ require 'rbconfig'
|
|
|
10
10
|
require 'thread'
|
|
11
11
|
|
|
12
12
|
module Gem
|
|
13
|
-
VERSION = "2.7.
|
|
13
|
+
VERSION = "2.7.11"
|
|
14
14
|
end
|
|
15
15
|
|
|
16
16
|
# Must be first since it unloads the prelude from 1.9.2
|
|
@@ -247,7 +247,7 @@ module Gem
|
|
|
247
247
|
|
|
248
248
|
##
|
|
249
249
|
# Find the full path to the executable for gem +name+. If the +exec_name+
|
|
250
|
-
# is not given,
|
|
250
|
+
# is not given, an exception will be raised, otherwise the
|
|
251
251
|
# specified executable's path is returned. +requirements+ allows
|
|
252
252
|
# you to specify specific gem versions.
|
|
253
253
|
|
|
@@ -270,12 +270,7 @@ module Gem
|
|
|
270
270
|
|
|
271
271
|
return loaded if loaded && dep.matches_spec?(loaded)
|
|
272
272
|
|
|
273
|
-
|
|
274
|
-
if dep.to_s == "bundler (>= 0.a)"
|
|
275
|
-
specs = Gem::BundlerVersionFinder.without_filtering(&find_specs)
|
|
276
|
-
else
|
|
277
|
-
specs = find_specs.call
|
|
278
|
-
end
|
|
273
|
+
specs = dep.matching_specs(true)
|
|
279
274
|
|
|
280
275
|
specs = specs.find_all { |spec|
|
|
281
276
|
spec.executables.include? exec_name
|
|
@@ -295,7 +290,7 @@ module Gem
|
|
|
295
290
|
|
|
296
291
|
##
|
|
297
292
|
# Find the full path to the executable for gem +name+. If the +exec_name+
|
|
298
|
-
# is not given,
|
|
293
|
+
# is not given, an exception will be raised, otherwise the
|
|
299
294
|
# specified executable's path is returned. +requirements+ allows
|
|
300
295
|
# you to specify specific gem versions.
|
|
301
296
|
#
|
|
@@ -604,7 +599,7 @@ An Array (#{env.inspect}) was passed in from #{caller[3]}
|
|
|
604
599
|
|
|
605
600
|
private_class_method :find_home
|
|
606
601
|
|
|
607
|
-
#
|
|
602
|
+
# TODO: remove in RubyGems 4.0
|
|
608
603
|
|
|
609
604
|
##
|
|
610
605
|
# Zlib::GzipReader wrapper that unzips +data+.
|
|
@@ -613,6 +608,11 @@ An Array (#{env.inspect}) was passed in from #{caller[3]}
|
|
|
613
608
|
Gem::Util.gunzip data
|
|
614
609
|
end
|
|
615
610
|
|
|
611
|
+
class << self
|
|
612
|
+
extend Gem::Deprecate
|
|
613
|
+
deprecate :gunzip, "Gem::Util.gunzip", 2018, 12
|
|
614
|
+
end
|
|
615
|
+
|
|
616
616
|
##
|
|
617
617
|
# Zlib::GzipWriter wrapper that zips +data+.
|
|
618
618
|
|
|
@@ -620,6 +620,11 @@ An Array (#{env.inspect}) was passed in from #{caller[3]}
|
|
|
620
620
|
Gem::Util.gzip data
|
|
621
621
|
end
|
|
622
622
|
|
|
623
|
+
class << self
|
|
624
|
+
extend Gem::Deprecate
|
|
625
|
+
deprecate :gzip, "Gem::Util.gzip", 2018, 12
|
|
626
|
+
end
|
|
627
|
+
|
|
623
628
|
##
|
|
624
629
|
# A Zlib::Inflate#inflate wrapper
|
|
625
630
|
|
|
@@ -627,6 +632,11 @@ An Array (#{env.inspect}) was passed in from #{caller[3]}
|
|
|
627
632
|
Gem::Util.inflate data
|
|
628
633
|
end
|
|
629
634
|
|
|
635
|
+
class << self
|
|
636
|
+
extend Gem::Deprecate
|
|
637
|
+
deprecate :inflate, "Gem::Util.inflate", 2018, 12
|
|
638
|
+
end
|
|
639
|
+
|
|
630
640
|
##
|
|
631
641
|
# Top level install helper method. Allows you to install gems interactively:
|
|
632
642
|
#
|
|
@@ -1225,9 +1235,12 @@ An Array (#{env.inspect}) was passed in from #{caller[3]}
|
|
|
1225
1235
|
|
|
1226
1236
|
class << self
|
|
1227
1237
|
##
|
|
1228
|
-
# TODO remove with RubyGems
|
|
1238
|
+
# TODO remove with RubyGems 4.0
|
|
1229
1239
|
|
|
1230
1240
|
alias detect_gemdeps use_gemdeps # :nodoc:
|
|
1241
|
+
|
|
1242
|
+
extend Gem::Deprecate
|
|
1243
|
+
deprecate :detect_gemdeps, "Gem.use_gemdeps", 2018, 12
|
|
1231
1244
|
end
|
|
1232
1245
|
|
|
1233
1246
|
# FIX: Almost everywhere else we use the `def self.` way of defining class
|