bundler 2.4.12 → 2.4.19

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +88 -0
  3. data/exe/bundle +5 -13
  4. data/lib/bundler/build_metadata.rb +2 -2
  5. data/lib/bundler/cli/binstubs.rb +1 -1
  6. data/lib/bundler/cli/info.rb +1 -1
  7. data/lib/bundler/cli/install.rb +1 -1
  8. data/lib/bundler/cli/outdated.rb +1 -1
  9. data/lib/bundler/cli/platform.rb +7 -5
  10. data/lib/bundler/definition.rb +97 -59
  11. data/lib/bundler/dsl.rb +1 -1
  12. data/lib/bundler/env.rb +1 -1
  13. data/lib/bundler/feature_flag.rb +0 -1
  14. data/lib/bundler/fetcher/compact_index.rb +3 -3
  15. data/lib/bundler/fetcher/downloader.rb +2 -0
  16. data/lib/bundler/fetcher/index.rb +1 -2
  17. data/lib/bundler/fetcher.rb +11 -1
  18. data/lib/bundler/friendly_errors.rb +1 -1
  19. data/lib/bundler/gem_helper.rb +3 -4
  20. data/lib/bundler/installer/parallel_installer.rb +1 -1
  21. data/lib/bundler/installer.rb +1 -1
  22. data/lib/bundler/lockfile_generator.rb +1 -1
  23. data/lib/bundler/lockfile_parser.rb +1 -0
  24. data/lib/bundler/man/bundle-add.1 +1 -1
  25. data/lib/bundler/man/bundle-binstubs.1 +1 -1
  26. data/lib/bundler/man/bundle-cache.1 +3 -3
  27. data/lib/bundler/man/bundle-cache.1.ronn +2 -2
  28. data/lib/bundler/man/bundle-check.1 +1 -1
  29. data/lib/bundler/man/bundle-clean.1 +1 -1
  30. data/lib/bundler/man/bundle-config.1 +1 -4
  31. data/lib/bundler/man/bundle-config.1.ronn +0 -3
  32. data/lib/bundler/man/bundle-console.1 +1 -1
  33. data/lib/bundler/man/bundle-doctor.1 +1 -1
  34. data/lib/bundler/man/bundle-exec.1 +1 -1
  35. data/lib/bundler/man/bundle-gem.1 +1 -1
  36. data/lib/bundler/man/bundle-help.1 +1 -1
  37. data/lib/bundler/man/bundle-info.1 +3 -3
  38. data/lib/bundler/man/bundle-info.1.ronn +3 -3
  39. data/lib/bundler/man/bundle-init.1 +1 -1
  40. data/lib/bundler/man/bundle-inject.1 +1 -1
  41. data/lib/bundler/man/bundle-install.1 +1 -1
  42. data/lib/bundler/man/bundle-list.1 +1 -1
  43. data/lib/bundler/man/bundle-lock.1 +1 -1
  44. data/lib/bundler/man/bundle-open.1 +1 -1
  45. data/lib/bundler/man/bundle-outdated.1 +13 -9
  46. data/lib/bundler/man/bundle-outdated.1.ronn +12 -9
  47. data/lib/bundler/man/bundle-platform.1 +1 -1
  48. data/lib/bundler/man/bundle-plugin.1 +1 -1
  49. data/lib/bundler/man/bundle-pristine.1 +1 -1
  50. data/lib/bundler/man/bundle-remove.1 +1 -1
  51. data/lib/bundler/man/bundle-show.1 +1 -1
  52. data/lib/bundler/man/bundle-update.1 +1 -1
  53. data/lib/bundler/man/bundle-version.1 +1 -1
  54. data/lib/bundler/man/bundle-viz.1 +1 -1
  55. data/lib/bundler/man/bundle.1 +1 -1
  56. data/lib/bundler/man/gemfile.5 +15 -2
  57. data/lib/bundler/man/gemfile.5.ronn +6 -1
  58. data/lib/bundler/plugin/index.rb +1 -1
  59. data/lib/bundler/resolver.rb +16 -2
  60. data/lib/bundler/ruby_dsl.rb +6 -0
  61. data/lib/bundler/ruby_version.rb +2 -2
  62. data/lib/bundler/rubygems_integration.rb +1 -1
  63. data/lib/bundler/runtime.rb +1 -1
  64. data/lib/bundler/safe_marshal.rb +31 -0
  65. data/lib/bundler/settings.rb +3 -3
  66. data/lib/bundler/source/git/git_proxy.rb +31 -13
  67. data/lib/bundler/source/git.rb +40 -14
  68. data/lib/bundler/source/rubygems.rb +8 -5
  69. data/lib/bundler/source.rb +1 -1
  70. data/lib/bundler/source_list.rb +0 -4
  71. data/lib/bundler/templates/newgem/ext/newgem/Cargo.toml.tt +1 -1
  72. data/lib/bundler/templates/newgem/ext/newgem/src/lib.rs.tt +4 -4
  73. data/lib/bundler/templates/newgem/newgem.gemspec.tt +2 -1
  74. data/lib/bundler/ui/rg_proxy.rb +1 -1
  75. data/lib/bundler/vendor/fileutils/lib/fileutils.rb +1 -1
  76. data/lib/bundler/vendor/pub_grub/lib/pub_grub/version_solver.rb +9 -4
  77. data/lib/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +2 -2
  78. data/lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +1 -1
  79. data/lib/bundler/vendor/uri/lib/uri/version.rb +1 -1
  80. data/lib/bundler/version.rb +1 -1
  81. data/lib/bundler.rb +7 -15
  82. metadata +4 -3
@@ -95,7 +95,7 @@ module Bundler
95
95
  def serialized_exception_for(e)
96
96
  <<-EOS.gsub(/^ {8}/, "")
97
97
  #{e.class}: #{e.message}
98
- #{e.backtrace && e.backtrace.join("\n ").chomp}
98
+ #{e.backtrace&.join("\n ")&.chomp}
99
99
  EOS
100
100
  end
101
101
 
@@ -21,7 +21,7 @@ module Bundler
21
21
 
22
22
  def gemspec(&block)
23
23
  gemspec = instance.gemspec
24
- block.call(gemspec) if block
24
+ block&.call(gemspec)
25
25
  gemspec
26
26
  end
27
27
  end
@@ -152,8 +152,7 @@ module Bundler
152
152
 
153
153
  def gem_push_host
154
154
  env_rubygems_host = ENV["RUBYGEMS_HOST"]
155
- env_rubygems_host = nil if
156
- env_rubygems_host && env_rubygems_host.empty?
155
+ env_rubygems_host = nil if env_rubygems_host&.empty?
157
156
 
158
157
  allowed_push_host || env_rubygems_host || "rubygems.org"
159
158
  end
@@ -218,7 +217,7 @@ module Bundler
218
217
  SharedHelpers.chdir(base) do
219
218
  outbuf = IO.popen(cmd, :err => [:child, :out], &:read)
220
219
  status = $?
221
- block.call(outbuf) if status.success? && block
220
+ block&.call(outbuf) if status.success?
222
221
  [outbuf, status]
223
222
  end
224
223
  end
@@ -96,7 +96,7 @@ module Bundler
96
96
  handle_error if failed_specs.any?
97
97
  @specs
98
98
  ensure
99
- worker_pool && worker_pool.stop
99
+ worker_pool&.stop
100
100
  end
101
101
 
102
102
  def check_for_unmet_dependencies
@@ -90,7 +90,7 @@ module Bundler
90
90
 
91
91
  Gem::Specification.reset # invalidate gem specification cache so that installed gems are immediately available
92
92
 
93
- lock unless Bundler.frozen_bundle?
93
+ lock
94
94
  Standalone.new(options[:standalone], @definition).generate if options[:standalone]
95
95
  end
96
96
  end
@@ -71,7 +71,7 @@ module Bundler
71
71
  end
72
72
 
73
73
  def add_bundled_with
74
- add_section("BUNDLED WITH", Bundler::VERSION)
74
+ add_section("BUNDLED WITH", definition.bundler_version_to_lock.to_s)
75
75
  end
76
76
 
77
77
  def add_section(name, value)
@@ -26,6 +26,7 @@ module Bundler
26
26
  KNOWN_SECTIONS = SECTIONS_BY_VERSION_INTRODUCED.values.flatten.freeze
27
27
 
28
28
  ENVIRONMENT_VERSION_SECTIONS = [BUNDLED, RUBY].freeze
29
+ deprecate_constant(:ENVIRONMENT_VERSION_SECTIONS)
29
30
 
30
31
  def self.sections_in_lockfile(lockfile_contents)
31
32
  lockfile_contents.scan(/^\w[\w ]*$/).uniq
@@ -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\-ADD" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-ADD" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-add\fR \- Add gem to the Gemfile and run bundle install
@@ -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" "February 2023" "" ""
4
+ .TH "BUNDLE\-BINSTUBS" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-binstubs\fR \- Install the binstubs of the listed gems
@@ -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" "February 2023" "" ""
4
+ .TH "BUNDLE\-CACHE" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-cache\fR \- Package your needed \fB\.gem\fR files into your application
@@ -13,7 +13,7 @@
13
13
  alias: \fBpackage\fR, \fBpack\fR
14
14
  .
15
15
  .SH "DESCRIPTION"
16
- Copy all of the \fB\.gem\fR files needed to run the application into the \fBvendor/cache\fR directory\. In the future, when running [bundle install(1)][bundle\-install], use the gems in the cache in preference to the ones on \fBrubygems\.org\fR\.
16
+ Copy all of the \fB\.gem\fR files needed to run the application into the \fBvendor/cache\fR directory\. In the future, when running \fBbundle install(1)\fR \fIbundle\-install\.1\.html\fR, use the gems in the cache in preference to the ones on \fBrubygems\.org\fR\.
17
17
  .
18
18
  .SH "GIT AND PATH GEMS"
19
19
  The \fBbundle cache\fR command can also package \fB:git\fR and \fB:path\fR dependencies besides \.gem files\. This needs to be explicitly enabled via the \fB\-\-all\fR option\. Once used, the \fB\-\-all\fR option will be remembered\.
@@ -22,7 +22,7 @@ The \fBbundle cache\fR command can also package \fB:git\fR and \fB:path\fR depen
22
22
  When using gems that have different packages for different platforms, Bundler supports caching of gems for other platforms where the Gemfile has been resolved (i\.e\. present in the lockfile) in \fBvendor/cache\fR\. This needs to be enabled via the \fB\-\-all\-platforms\fR option\. This setting will be remembered in your local bundler configuration\.
23
23
  .
24
24
  .SH "REMOTE FETCHING"
25
- By default, if you run \fBbundle install(1)\fR](bundle\-install\.1\.html) after running bundle cache(1) \fIbundle\-cache\.1\.html\fR, bundler will still connect to \fBrubygems\.org\fR to check whether a platform\-specific gem exists for any of the gems in \fBvendor/cache\fR\.
25
+ By default, if you run \fBbundle install(1)\fR \fIbundle\-install\.1\.html\fR after running bundle cache(1) \fIbundle\-cache\.1\.html\fR, bundler will still connect to \fBrubygems\.org\fR to check whether a platform\-specific gem exists for any of the gems in \fBvendor/cache\fR\.
26
26
  .
27
27
  .P
28
28
  For instance, consider this Gemfile(5):
@@ -10,7 +10,7 @@ alias: `package`, `pack`
10
10
  ## DESCRIPTION
11
11
 
12
12
  Copy all of the `.gem` files needed to run the application into the
13
- `vendor/cache` directory. In the future, when running [bundle install(1)][bundle-install],
13
+ `vendor/cache` directory. In the future, when running [`bundle install(1)`](bundle-install.1.html),
14
14
  use the gems in the cache in preference to the ones on `rubygems.org`.
15
15
 
16
16
  ## GIT AND PATH GEMS
@@ -29,7 +29,7 @@ bundler configuration.
29
29
 
30
30
  ## REMOTE FETCHING
31
31
 
32
- By default, if you run `bundle install(1)`](bundle-install.1.html) after running
32
+ By default, if you run [`bundle install(1)`](bundle-install.1.html) after running
33
33
  [bundle cache(1)](bundle-cache.1.html), bundler will still connect to `rubygems.org`
34
34
  to check whether a platform-specific gem exists for any of the gems
35
35
  in `vendor/cache`.
@@ -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" "February 2023" "" ""
4
+ .TH "BUNDLE\-CHECK" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-check\fR \- Verifies if dependencies are satisfied by installed gems
@@ -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\-CLEAN" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-CLEAN" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-clean\fR \- Cleans up unused gems in your bundler directory
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-CONFIG" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-CONFIG" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-config\fR \- Set bundler configuration options
@@ -284,9 +284,6 @@ The following is a list of all configuration keys and their purpose\. You can le
284
284
  \fBssl_verify_mode\fR (\fBBUNDLE_SSL_VERIFY_MODE\fR): The SSL verification mode Bundler uses when making HTTPS requests\. Defaults to verify peer\.
285
285
  .
286
286
  .IP "\(bu" 4
287
- \fBsuppress_install_using_messages\fR (\fBBUNDLE_SUPPRESS_INSTALL_USING_MESSAGES\fR): Avoid printing \fBUsing \.\.\.\fR messages during installation when the version of a gem has not changed\.
288
- .
289
- .IP "\(bu" 4
290
287
  \fBsystem_bindir\fR (\fBBUNDLE_SYSTEM_BINDIR\fR): The location where RubyGems installs binstubs\. Defaults to \fBGem\.bindir\fR\.
291
288
  .
292
289
  .IP "\(bu" 4
@@ -265,9 +265,6 @@ learn more about their operation in [bundle install(1)](bundle-install.1.html).
265
265
  * `ssl_verify_mode` (`BUNDLE_SSL_VERIFY_MODE`):
266
266
  The SSL verification mode Bundler uses when making HTTPS requests.
267
267
  Defaults to verify peer.
268
- * `suppress_install_using_messages` (`BUNDLE_SUPPRESS_INSTALL_USING_MESSAGES`):
269
- Avoid printing `Using ...` messages during installation when the version of
270
- a gem has not changed.
271
268
  * `system_bindir` (`BUNDLE_SYSTEM_BINDIR`):
272
269
  The location where RubyGems installs binstubs. Defaults to `Gem.bindir`.
273
270
  * `timeout` (`BUNDLE_TIMEOUT`):
@@ -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\-CONSOLE" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-CONSOLE" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-console\fR \- Deprecated way to open an IRB session with the bundle pre\-loaded
@@ -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\-DOCTOR" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-DOCTOR" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-doctor\fR \- Checks the bundle for common problems
@@ -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\-EXEC" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-EXEC" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-exec\fR \- Execute a command in the context of 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\-GEM" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-GEM" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-gem\fR \- Generate a project skeleton for creating a rubygem
@@ -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\-HELP" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-HELP" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-help\fR \- Displays detailed help for each subcommand
@@ -1,16 +1,16 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-INFO" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-INFO" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-info\fR \- Show information for the given gem in your bundle
8
8
  .
9
9
  .SH "SYNOPSIS"
10
- \fBbundle info\fR [GEM] [\-\-path]
10
+ \fBbundle info\fR [GEM_NAME] [\-\-path]
11
11
  .
12
12
  .SH "DESCRIPTION"
13
- Print the basic information about the provided GEM such as homepage, version, path and summary\.
13
+ Given a gem name present in your bundle, print the basic information about it such as homepage, version, path and summary\.
14
14
  .
15
15
  .SH "OPTIONS"
16
16
  .
@@ -3,13 +3,13 @@ bundle-info(1) -- Show information for the given gem in your bundle
3
3
 
4
4
  ## SYNOPSIS
5
5
 
6
- `bundle info` [GEM]
6
+ `bundle info` [GEM_NAME]
7
7
  [--path]
8
8
 
9
9
  ## DESCRIPTION
10
10
 
11
- Print the basic information about the provided GEM such as homepage, version,
12
- path and summary.
11
+ Given a gem name present in your bundle, print the basic information about it
12
+ such as homepage, version, path and summary.
13
13
 
14
14
  ## OPTIONS
15
15
 
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-INIT" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-INIT" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-init\fR \- Generates a Gemfile into the current working directory
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-INJECT" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-INJECT" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-inject\fR \- Add named gem(s) with version requirements to Gemfile
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-INSTALL" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-INSTALL" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-install\fR \- Install the dependencies specified in your Gemfile
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-LIST" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-LIST" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-list\fR \- List all the 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\-LOCK" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-LOCK" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-lock\fR \- Creates / Updates a lockfile without installing
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-OPEN" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-OPEN" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-open\fR \- Opens the source directory for a gem in your bundle
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-OUTDATED" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-OUTDATED" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-outdated\fR \- List installed gems with newer versions available
@@ -83,9 +83,10 @@ If the regular output shows the following:
83
83
  .
84
84
  .nf
85
85
 
86
- * faker (newest 1\.6\.6, installed 1\.6\.5, requested ~> 1\.4) in groups "development, test"
87
- * hashie (newest 3\.4\.6, installed 1\.2\.0, requested = 1\.2\.0) in groups "default"
88
- * headless (newest 2\.3\.1, installed 2\.2\.3) in groups "test"
86
+ * Gem Current Latest Requested Groups
87
+ * faker 1\.6\.5 1\.6\.6 ~> 1\.4 development, test
88
+ * hashie 1\.2\.0 3\.4\.6 = 1\.2\.0 default
89
+ * headless 2\.2\.3 2\.3\.1 = 2\.2\.3 test
89
90
  .
90
91
  .fi
91
92
  .
@@ -98,7 +99,8 @@ If the regular output shows the following:
98
99
  .
99
100
  .nf
100
101
 
101
- * hashie (newest 3\.4\.6, installed 1\.2\.0, requested = 1\.2\.0) in groups "default"
102
+ * Gem Current Latest Requested Groups
103
+ * hashie 1\.2\.0 3\.4\.6 = 1\.2\.0 default
102
104
  .
103
105
  .fi
104
106
  .
@@ -111,7 +113,8 @@ If the regular output shows the following:
111
113
  .
112
114
  .nf
113
115
 
114
- * headless (newest 2\.3\.1, installed 2\.2\.3) in groups "test"
116
+ * Gem Current Latest Requested Groups
117
+ * headless 2\.2\.3 2\.3\.1 = 2\.2\.3 test
115
118
  .
116
119
  .fi
117
120
  .
@@ -124,7 +127,8 @@ If the regular output shows the following:
124
127
  .
125
128
  .nf
126
129
 
127
- * faker (newest 1\.6\.6, installed 1\.6\.5, requested ~> 1\.4) in groups "development, test"
130
+ * Gem Current Latest Requested Groups
131
+ * faker 1\.6\.5 1\.6\.6 ~> 1\.4 development, test
128
132
  .
129
133
  .fi
130
134
  .
@@ -137,8 +141,8 @@ Filter options can be combined\. \fB\-\-filter\-minor\fR and \fB\-\-filter\-patc
137
141
  .
138
142
  .nf
139
143
 
140
- * faker (newest 1\.6\.6, installed 1\.6\.5, requested ~> 1\.4) in groups "development, test"
141
- * headless (newest 2\.3\.1, installed 2\.2\.3) in groups "test"
144
+ * Gem Current Latest Requested Groups
145
+ * faker 1\.6\.5 1\.6\.6 ~> 1\.4 development, test
142
146
  .
143
147
  .fi
144
148
  .
@@ -78,25 +78,28 @@ in the output.
78
78
 
79
79
  If the regular output shows the following:
80
80
 
81
- * faker (newest 1.6.6, installed 1.6.5, requested ~> 1.4) in groups "development, test"
82
- * hashie (newest 3.4.6, installed 1.2.0, requested = 1.2.0) in groups "default"
83
- * headless (newest 2.3.1, installed 2.2.3) in groups "test"
81
+ * Gem Current Latest Requested Groups
82
+ * faker 1.6.5 1.6.6 ~> 1.4 development, test
83
+ * hashie 1.2.0 3.4.6 = 1.2.0 default
84
+ * headless 2.2.3 2.3.1 = 2.2.3 test
84
85
 
85
86
  `--filter-major` would only show:
86
87
 
87
- * hashie (newest 3.4.6, installed 1.2.0, requested = 1.2.0) in groups "default"
88
+ * Gem Current Latest Requested Groups
89
+ * hashie 1.2.0 3.4.6 = 1.2.0 default
88
90
 
89
91
  `--filter-minor` would only show:
90
92
 
91
- * headless (newest 2.3.1, installed 2.2.3) in groups "test"
93
+ * Gem Current Latest Requested Groups
94
+ * headless 2.2.3 2.3.1 = 2.2.3 test
92
95
 
93
96
  `--filter-patch` would only show:
94
97
 
95
- * faker (newest 1.6.6, installed 1.6.5, requested ~> 1.4) in groups "development, test"
98
+ * Gem Current Latest Requested Groups
99
+ * faker 1.6.5 1.6.6 ~> 1.4 development, test
96
100
 
97
101
  Filter options can be combined. `--filter-minor` and `--filter-patch` would show:
98
102
 
99
- * faker (newest 1.6.6, installed 1.6.5, requested ~> 1.4) in groups "development, test"
100
- * headless (newest 2.3.1, installed 2.2.3) in groups "test"
101
-
103
+ * Gem Current Latest Requested Groups
104
+ * faker 1.6.5 1.6.6 ~> 1.4 development, test
102
105
  Combining all three `filter` options would be the same result as providing none of them.
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-PLATFORM" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-PLATFORM" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-platform\fR \- Displays platform compatibility information
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-PLUGIN" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-PLUGIN" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-plugin\fR \- Manage Bundler plugins
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-PRISTINE" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-PRISTINE" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-pristine\fR \- Restores installed gems to their pristine condition
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-REMOVE" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-REMOVE" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-remove\fR \- Removes gems from the Gemfile
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-SHOW" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-SHOW" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-show\fR \- Shows all the gems in your bundle, or the path to a gem
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-UPDATE" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-UPDATE" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-update\fR \- Update your gems to the latest available versions
@@ -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\-VERSION" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-VERSION" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-version\fR \- Prints Bundler version information
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE\-VIZ" "1" "February 2023" "" ""
4
+ .TH "BUNDLE\-VIZ" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\-viz\fR \- Generates a visual dependency graph for your Gemfile
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "BUNDLE" "1" "February 2023" "" ""
4
+ .TH "BUNDLE" "1" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBbundle\fR \- Ruby Dependency Management
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "GEMFILE" "5" "February 2023" "" ""
4
+ .TH "GEMFILE" "5" "August 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBGemfile\fR \- A format for describing gem dependencies for Ruby programs
@@ -85,6 +85,19 @@ ruby "3\.1\.2"
85
85
  .
86
86
  .IP "" 0
87
87
  .
88
+ .P
89
+ If you wish to derive your Ruby version from a version file (ie \.ruby\-version), you can use the \fBfile\fR option instead\.
90
+ .
91
+ .IP "" 4
92
+ .
93
+ .nf
94
+
95
+ ruby file: "\.ruby\-version"
96
+ .
97
+ .fi
98
+ .
99
+ .IP "" 0
100
+ .
88
101
  .SS "ENGINE"
89
102
  Each application \fImay\fR specify a Ruby engine\. If an engine is specified, an engine version \fImust\fR also be specified\.
90
103
  .
@@ -702,7 +715,7 @@ If you wish to use Bundler to help install dependencies for a gem while it is be
702
715
  The \fBgemspec\fR method adds any runtime dependencies as gem requirements in the default group\. It also adds development dependencies as gem requirements in the \fBdevelopment\fR group\. Finally, it adds a gem requirement on your project (\fBpath: \'\.\'\fR)\. In conjunction with \fBBundler\.setup\fR, this allows you to require project files in your test code as you would if the project were installed as a gem; you need not manipulate the load path manually or require project files via relative paths\.
703
716
  .
704
717
  .P
705
- The \fBgemspec\fR method supports optional \fB:path\fR, \fB:glob\fR, \fB:name\fR, and \fB:development_group\fR options, which control where bundler looks for the \fB\.gemspec\fR, the glob it uses to look for the gemspec (defaults to: "{,\fI,\fR/*}\.gemspec"), what named \fB\.gemspec\fR it uses (if more than one is present), and which group development dependencies are included in\.
718
+ The \fBgemspec\fR method supports optional \fB:path\fR, \fB:glob\fR, \fB:name\fR, and \fB:development_group\fR options, which control where bundler looks for the \fB\.gemspec\fR, the glob it uses to look for the gemspec (defaults to: \fB{,*,*/*}\.gemspec\fR), what named \fB\.gemspec\fR it uses (if more than one is present), and which group development dependencies are included in\.
706
719
  .
707
720
  .P
708
721
  When a \fBgemspec\fR dependency encounters version conflicts during resolution, the local version under development will always be selected \-\- even if there are remote versions that better match other requirements for the \fBgemspec\fR gem\.
@@ -69,6 +69,11 @@ should be the Ruby version that the engine is compatible with.
69
69
 
70
70
  ruby "3.1.2"
71
71
 
72
+ If you wish to derive your Ruby version from a version file (ie .ruby-version),
73
+ you can use the `file` option instead.
74
+
75
+ ruby file: ".ruby-version"
76
+
72
77
  ### ENGINE
73
78
 
74
79
  Each application _may_ specify a Ruby engine. If an engine is specified, an
@@ -514,7 +519,7 @@ paths.
514
519
 
515
520
  The `gemspec` method supports optional `:path`, `:glob`, `:name`, and `:development_group`
516
521
  options, which control where bundler looks for the `.gemspec`, the glob it uses to look
517
- for the gemspec (defaults to: "{,*,*/*}.gemspec"), what named `.gemspec` it uses
522
+ for the gemspec (defaults to: `{,*,*/*}.gemspec`), what named `.gemspec` it uses
518
523
  (if more than one is present), and which group development dependencies are included in.
519
524
 
520
525
  When a `gemspec` dependency encounters version conflicts during resolution, the
@@ -146,7 +146,7 @@ module Bundler
146
146
  # @param [Boolean] is the index file global index
147
147
  def load_index(index_file, global = false)
148
148
  SharedHelpers.filesystem_access(index_file, :read) do |index_f|
149
- valid_file = index_f && index_f.exist? && !index_f.size.zero?
149
+ valid_file = index_f&.exist? && !index_f.size.zero?
150
150
  break unless valid_file
151
151
 
152
152
  data = index_f.read