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.
Files changed (190) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +2212 -1879
  3. data/README.md +11 -11
  4. data/bundler.gemspec +5 -5
  5. data/lib/bundler/build_metadata.rb +10 -11
  6. data/lib/bundler/capistrano.rb +1 -19
  7. data/lib/bundler/checksum.rb +6 -0
  8. data/lib/bundler/cli/add.rb +10 -0
  9. data/lib/bundler/cli/cache.rb +1 -12
  10. data/lib/bundler/cli/common.rb +21 -4
  11. data/lib/bundler/cli/config.rb +1 -2
  12. data/lib/bundler/cli/console.rb +5 -0
  13. data/lib/bundler/cli/exec.rb +29 -4
  14. data/lib/bundler/cli/gem.rb +89 -63
  15. data/lib/bundler/cli/install.rb +15 -90
  16. data/lib/bundler/cli/issue.rb +2 -2
  17. data/lib/bundler/cli/list.rb +33 -2
  18. data/lib/bundler/cli/lock.rb +5 -5
  19. data/lib/bundler/cli/outdated.rb +1 -1
  20. data/lib/bundler/cli/plugin.rb +5 -1
  21. data/lib/bundler/cli/pristine.rb +5 -1
  22. data/lib/bundler/cli/show.rb +3 -7
  23. data/lib/bundler/cli/update.rb +5 -5
  24. data/lib/bundler/cli.rb +162 -127
  25. data/lib/bundler/compact_index_client.rb +1 -6
  26. data/lib/bundler/current_ruby.rb +17 -5
  27. data/lib/bundler/definition.rb +199 -117
  28. data/lib/bundler/dependency.rb +1 -1
  29. data/lib/bundler/deployment.rb +1 -64
  30. data/lib/bundler/digest.rb +1 -1
  31. data/lib/bundler/dsl.rb +48 -48
  32. data/lib/bundler/environment_preserver.rb +1 -0
  33. data/lib/bundler/errors.rb +1 -5
  34. data/lib/bundler/feature_flag.rb +5 -35
  35. data/lib/bundler/fetcher/compact_index.rb +1 -1
  36. data/lib/bundler/fetcher/dependency.rb +9 -2
  37. data/lib/bundler/fetcher/downloader.rb +33 -8
  38. data/lib/bundler/fetcher/gem_remote_fetcher.rb +6 -0
  39. data/lib/bundler/fetcher.rb +49 -19
  40. data/lib/bundler/friendly_errors.rb +4 -3
  41. data/lib/bundler/index.rb +7 -9
  42. data/lib/bundler/injector.rb +1 -2
  43. data/lib/bundler/inline.rb +9 -1
  44. data/lib/bundler/installer/gem_installer.rb +14 -11
  45. data/lib/bundler/installer/parallel_installer.rb +63 -17
  46. data/lib/bundler/installer.rb +6 -19
  47. data/lib/bundler/lazy_specification.rb +47 -20
  48. data/lib/bundler/lockfile_generator.rb +1 -1
  49. data/lib/bundler/lockfile_parser.rb +11 -5
  50. data/lib/bundler/man/bundle-add.1 +1 -1
  51. data/lib/bundler/man/bundle-binstubs.1 +3 -6
  52. data/lib/bundler/man/bundle-binstubs.1.ronn +4 -6
  53. data/lib/bundler/man/bundle-cache.1 +2 -14
  54. data/lib/bundler/man/bundle-cache.1.ronn +1 -14
  55. data/lib/bundler/man/bundle-check.1 +2 -5
  56. data/lib/bundler/man/bundle-check.1.ronn +0 -5
  57. data/lib/bundler/man/bundle-clean.1 +1 -1
  58. data/lib/bundler/man/bundle-config.1 +206 -148
  59. data/lib/bundler/man/bundle-config.1.ronn +135 -118
  60. data/lib/bundler/man/bundle-console.1 +1 -1
  61. data/lib/bundler/man/bundle-doctor.1 +43 -4
  62. data/lib/bundler/man/bundle-doctor.1.ronn +48 -4
  63. data/lib/bundler/man/bundle-env.1 +1 -1
  64. data/lib/bundler/man/bundle-exec.1 +2 -5
  65. data/lib/bundler/man/bundle-exec.1.ronn +1 -5
  66. data/lib/bundler/man/bundle-fund.1 +1 -1
  67. data/lib/bundler/man/bundle-gem.1 +64 -44
  68. data/lib/bundler/man/bundle-gem.1.ronn +10 -9
  69. data/lib/bundler/man/bundle-help.1 +1 -1
  70. data/lib/bundler/man/bundle-info.1 +1 -1
  71. data/lib/bundler/man/bundle-init.1 +1 -1
  72. data/lib/bundler/man/bundle-install.1 +16 -59
  73. data/lib/bundler/man/bundle-install.1.ronn +27 -108
  74. data/lib/bundler/man/bundle-issue.1 +1 -1
  75. data/lib/bundler/man/bundle-licenses.1 +1 -1
  76. data/lib/bundler/man/bundle-list.1 +6 -1
  77. data/lib/bundler/man/bundle-list.1.ronn +5 -0
  78. data/lib/bundler/man/bundle-lock.1 +1 -1
  79. data/lib/bundler/man/bundle-open.1 +1 -1
  80. data/lib/bundler/man/bundle-outdated.1 +1 -1
  81. data/lib/bundler/man/bundle-platform.1 +1 -1
  82. data/lib/bundler/man/bundle-plugin.1 +33 -15
  83. data/lib/bundler/man/bundle-plugin.1.ronn +36 -15
  84. data/lib/bundler/man/bundle-pristine.1 +1 -1
  85. data/lib/bundler/man/bundle-remove.1 +2 -8
  86. data/lib/bundler/man/bundle-remove.1.ronn +1 -8
  87. data/lib/bundler/man/bundle-show.1 +2 -5
  88. data/lib/bundler/man/bundle-show.1.ronn +0 -4
  89. data/lib/bundler/man/bundle-update.1 +5 -5
  90. data/lib/bundler/man/bundle-update.1.ronn +4 -4
  91. data/lib/bundler/man/bundle-version.1 +1 -1
  92. data/lib/bundler/man/bundle.1 +1 -10
  93. data/lib/bundler/man/bundle.1.ronn +0 -9
  94. data/lib/bundler/man/gemfile.5 +32 -1
  95. data/lib/bundler/man/gemfile.5.ronn +28 -0
  96. data/lib/bundler/man/index.txt +0 -2
  97. data/lib/bundler/match_platform.rb +31 -12
  98. data/lib/bundler/materialization.rb +3 -3
  99. data/lib/bundler/plugin/api/source.rb +8 -0
  100. data/lib/bundler/plugin/index.rb +6 -0
  101. data/lib/bundler/plugin/installer.rb +2 -11
  102. data/lib/bundler/plugin/source_list.rb +1 -1
  103. data/lib/bundler/plugin.rb +7 -4
  104. data/lib/bundler/resolver/package.rb +2 -1
  105. data/lib/bundler/resolver/strategy.rb +6 -3
  106. data/lib/bundler/resolver.rb +20 -4
  107. data/lib/bundler/retry.rb +30 -4
  108. data/lib/bundler/ruby_dsl.rb +17 -12
  109. data/lib/bundler/ruby_version.rb +1 -3
  110. data/lib/bundler/rubygems_ext.rb +117 -121
  111. data/lib/bundler/rubygems_gem_installer.rb +5 -4
  112. data/lib/bundler/rubygems_integration.rb +13 -12
  113. data/lib/bundler/runtime.rb +14 -3
  114. data/lib/bundler/self_manager.rb +34 -43
  115. data/lib/bundler/settings/validator.rb +5 -21
  116. data/lib/bundler/settings.rb +17 -32
  117. data/lib/bundler/shared_helpers.rb +12 -18
  118. data/lib/bundler/source/gemspec.rb +4 -0
  119. data/lib/bundler/source/git/git_proxy.rb +55 -29
  120. data/lib/bundler/source/git.rb +2 -3
  121. data/lib/bundler/source/path.rb +12 -7
  122. data/lib/bundler/source/rubygems.rb +59 -43
  123. data/lib/bundler/source/rubygems_aggregate.rb +4 -1
  124. data/lib/bundler/source.rb +3 -1
  125. data/lib/bundler/source_list.rb +5 -50
  126. data/lib/bundler/source_map.rb +8 -7
  127. data/lib/bundler/spec_set.rb +9 -14
  128. data/lib/bundler/stub_specification.rb +1 -0
  129. data/lib/bundler/templates/Executable +0 -11
  130. data/lib/bundler/templates/newgem/CODE_OF_CONDUCT.md.tt +7 -129
  131. data/lib/bundler/templates/newgem/Cargo.toml.tt +6 -0
  132. data/lib/bundler/templates/newgem/Rakefile.tt +5 -0
  133. data/lib/bundler/templates/newgem/circleci/config.yml.tt +12 -0
  134. data/lib/bundler/templates/newgem/ext/newgem/Cargo.toml.tt +8 -1
  135. data/lib/bundler/templates/newgem/ext/newgem/build.rs.tt +5 -0
  136. data/lib/bundler/templates/newgem/ext/newgem/extconf-go.rb.tt +11 -0
  137. data/lib/bundler/templates/newgem/ext/newgem/go.mod.tt +5 -0
  138. data/lib/bundler/templates/newgem/ext/newgem/newgem-go.c.tt +2 -0
  139. data/lib/bundler/templates/newgem/ext/newgem/newgem.go.tt +31 -0
  140. data/lib/bundler/templates/newgem/ext/newgem/src/lib.rs.tt +13 -2
  141. data/lib/bundler/templates/newgem/github/workflows/build-gems.yml.tt +69 -0
  142. data/lib/bundler/templates/newgem/github/workflows/main.yml.tt +12 -1
  143. data/lib/bundler/templates/newgem/gitlab-ci.yml.tt +9 -0
  144. data/lib/bundler/templates/newgem/lib/newgem.rb.tt +1 -1
  145. data/lib/bundler/templates/newgem/newgem.gemspec.tt +10 -10
  146. data/lib/bundler/templates/newgem/spec/newgem_spec.rb.tt +8 -0
  147. data/lib/bundler/templates/newgem/test/minitest/test_newgem.rb.tt +6 -0
  148. data/lib/bundler/ui/shell.rb +12 -8
  149. data/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb +26 -23
  150. data/lib/bundler/vendor/connection_pool/lib/connection_pool/version.rb +1 -1
  151. data/lib/bundler/vendor/connection_pool/lib/connection_pool.rb +50 -6
  152. data/lib/bundler/vendor/fileutils/lib/fileutils.rb +57 -52
  153. data/lib/bundler/vendor/net-http-persistent/README.rdoc +1 -1
  154. data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/timed_stack_multi.rb +2 -1
  155. data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +84 -42
  156. data/lib/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +42 -6
  157. data/lib/bundler/vendor/thor/lib/thor/parser/options.rb +1 -1
  158. data/lib/bundler/vendor/thor/lib/thor/runner.rb +2 -2
  159. data/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +3 -7
  160. data/lib/bundler/vendor/thor/lib/thor/version.rb +1 -1
  161. data/lib/bundler/vendor/thor/lib/thor.rb +1 -1
  162. data/lib/bundler/vendor/uri/lib/uri/common.rb +57 -15
  163. data/lib/bundler/vendor/uri/lib/uri/file.rb +1 -1
  164. data/lib/bundler/vendor/uri/lib/uri/generic.rb +34 -21
  165. data/lib/bundler/vendor/uri/lib/uri/http.rb +12 -0
  166. data/lib/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +9 -8
  167. data/lib/bundler/vendor/uri/lib/uri/version.rb +2 -2
  168. data/lib/bundler/version.rb +10 -2
  169. data/lib/bundler/vlad.rb +1 -14
  170. data/lib/bundler/worker.rb +12 -4
  171. data/lib/bundler.rb +20 -40
  172. metadata +13 -25
  173. data/lib/bundler/cli/inject.rb +0 -60
  174. data/lib/bundler/cli/viz.rb +0 -31
  175. data/lib/bundler/gem_helpers.rb +0 -144
  176. data/lib/bundler/graph.rb +0 -152
  177. data/lib/bundler/man/bundle-inject.1 +0 -31
  178. data/lib/bundler/man/bundle-inject.1.ronn +0 -32
  179. data/lib/bundler/man/bundle-viz.1 +0 -30
  180. data/lib/bundler/man/bundle-viz.1.ronn +0 -36
  181. data/lib/bundler/similarity_detector.rb +0 -63
  182. data/lib/bundler/templates/Executable.bundler +0 -109
  183. data/lib/bundler/vendor/connection_pool/.document +0 -1
  184. data/lib/bundler/vendor/fileutils/.document +0 -1
  185. data/lib/bundler/vendor/net-http-persistent/.document +0 -1
  186. data/lib/bundler/vendor/pub_grub/.document +0 -1
  187. data/lib/bundler/vendor/securerandom/.document +0 -1
  188. data/lib/bundler/vendor/thor/.document +0 -1
  189. data/lib/bundler/vendor/tsort/.document +0 -1
  190. 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\-GEM" "1" "March 2025" ""
3
+ .TH "BUNDLE\-GEM" "1" "March 2026" ""
4
4
  .SH "NAME"
5
5
  \fBbundle\-gem\fR \- Generate a project skeleton for creating a rubygem
6
6
  .SH "SYNOPSIS"
@@ -19,67 +19,87 @@ The generated project skeleton can be customized with OPTIONS, as explained belo
19
19
  \fBgem\.test\fR
20
20
  .IP "" 0
21
21
  .SH "OPTIONS"
22
- .IP "\(bu" 4
23
- \fB\-\-exe\fR, \fB\-\-bin\fR, \fB\-b\fR: Specify that Bundler should create a binary executable (as \fBexe/GEM_NAME\fR) in the generated rubygem project\. This binary will also be added to the \fBGEM_NAME\.gemspec\fR manifest\. This behavior is disabled by default\.
24
- .IP "\(bu" 4
25
- \fB\-\-no\-exe\fR: Do not create a binary (overrides \fB\-\-exe\fR specified in the global config)\.
26
- .IP "\(bu" 4
27
- \fB\-\-coc\fR: Add a \fBCODE_OF_CONDUCT\.md\fR file to the root of the generated project\. If this option is unspecified, an interactive prompt will be displayed and the answer will be saved in Bundler's global config for future \fBbundle gem\fR use\.
28
- .IP "\(bu" 4
29
- \fB\-\-no\-coc\fR: Do not create a \fBCODE_OF_CONDUCT\.md\fR (overrides \fB\-\-coc\fR specified in the global config)\.
30
- .IP "\(bu" 4
31
- \fB\-\-changelog\fR Add a \fBCHANGELOG\.md\fR file to the root of the generated project\. If this option is unspecified, an interactive prompt will be displayed and the answer will be saved in Bundler's global config for future \fBbundle gem\fR use\.
32
- .IP "\(bu" 4
33
- \fB\-\-no\-changelog\fR: Do not create a \fBCHANGELOG\.md\fR (overrides \fB\-\-changelog\fR specified in the global config)\.
34
- .IP "\(bu" 4
35
- \fB\-\-ext=c\fR, \fB\-\-ext=rust\fR: Add boilerplate for C or Rust (currently magnus \fIhttps://docs\.rs/magnus\fR based) extension code to the generated project\. This behavior is disabled by default\.
36
- .IP "\(bu" 4
37
- \fB\-\-no\-ext\fR: Do not add extension code (overrides \fB\-\-ext\fR specified in the global config)\.
38
- .IP "\(bu" 4
39
- \fB\-\-git\fR: Initialize a git repo inside your library\.
40
- .IP "\(bu" 4
41
- \fB\-\-github\-username=GITHUB_USERNAME\fR: Fill in GitHub username on README so that you don't have to do it manually\. Set a default with \fBbundle config set \-\-global gem\.github_username <your_username>\fR\.
42
- .IP "\(bu" 4
43
- \fB\-\-mit\fR: Add an MIT license to a \fBLICENSE\.txt\fR file in the root of the generated project\. Your name from the global git config is used for the copyright statement\. If this option is unspecified, an interactive prompt will be displayed and the answer will be saved in Bundler's global config for future \fBbundle gem\fR use\.
44
- .IP "\(bu" 4
45
- \fB\-\-no\-mit\fR: Do not create a \fBLICENSE\.txt\fR (overrides \fB\-\-mit\fR specified in the global config)\.
46
- .IP "\(bu" 4
47
- \fB\-t\fR, \fB\-\-test=minitest\fR, \fB\-\-test=rspec\fR, \fB\-\-test=test\-unit\fR: Specify the test framework that Bundler should use when generating the project\. Acceptable values are \fBminitest\fR, \fBrspec\fR and \fBtest\-unit\fR\. The \fBGEM_NAME\.gemspec\fR will be configured and a skeleton test/spec directory will be created based on this option\. Given no option is specified:
22
+ .TP
23
+ \fB\-\-exe\fR, \fB\-\-bin\fR, \fB\-b\fR
24
+ Specify that Bundler should create a binary executable (as \fBexe/GEM_NAME\fR) in the generated rubygem project\. This binary will also be added to the \fBGEM_NAME\.gemspec\fR manifest\. This behavior is disabled by default\.
25
+ .TP
26
+ \fB\-\-no\-exe\fR
27
+ Do not create a binary (overrides \fB\-\-exe\fR specified in the global config)\.
28
+ .TP
29
+ \fB\-\-coc\fR
30
+ Add a \fBCODE_OF_CONDUCT\.md\fR file to the root of the generated project\. If this option is unspecified, an interactive prompt will be displayed and the answer will be saved in Bundler's global config for future \fBbundle gem\fR use\.
31
+ .TP
32
+ \fB\-\-no\-coc\fR
33
+ Do not create a \fBCODE_OF_CONDUCT\.md\fR (overrides \fB\-\-coc\fR specified in the global config)\.
34
+ .TP
35
+ \fB\-\-changelog\fR
36
+ Add a \fBCHANGELOG\.md\fR file to the root of the generated project\. If this option is unspecified, an interactive prompt will be displayed and the answer will be saved in Bundler's global config for future \fBbundle gem\fR use\. Update the default with \fBbundle config set \-\-global gem\.changelog <true|false>\fR\.
37
+ .TP
38
+ \fB\-\-no\-changelog\fR
39
+ Do not create a \fBCHANGELOG\.md\fR (overrides \fB\-\-changelog\fR specified in the global config)\.
40
+ .TP
41
+ \fB\-\-ext=c\fR, \fB\-\-ext=go\fR, \fB\-\-ext=rust\fR
42
+ Add boilerplate for C, Go (currently go\-gem\-wrapper \fIhttps://github\.com/ruby\-go\-gem/go\-gem\-wrapper\fR based) or Rust (currently magnus \fIhttps://docs\.rs/magnus\fR based) extension code to the generated project\. This behavior is disabled by default\.
43
+ .TP
44
+ \fB\-\-no\-ext\fR
45
+ Do not add extension code (overrides \fB\-\-ext\fR specified in the global config)\.
46
+ .TP
47
+ \fB\-\-git\fR
48
+ Initialize a git repo inside your library\.
49
+ .TP
50
+ \fB\-\-github\-username=GITHUB_USERNAME\fR
51
+ Fill in GitHub username on README so that you don't have to do it manually\. Set a default with \fBbundle config set \-\-global gem\.github_username <your_username>\fR\.
52
+ .TP
53
+ \fB\-\-mit\fR
54
+ Add an MIT license to a \fBLICENSE\.txt\fR file in the root of the generated project\. Your name from the global git config is used for the copyright statement\. If this option is unspecified, an interactive prompt will be displayed and the answer will be saved in Bundler's global config for future \fBbundle gem\fR use\.
55
+ .TP
56
+ \fB\-\-no\-mit\fR
57
+ Do not create a \fBLICENSE\.txt\fR (overrides \fB\-\-mit\fR specified in the global config)\.
58
+ .TP
59
+ \fB\-t\fR, \fB\-\-test=minitest\fR, \fB\-\-test=rspec\fR, \fB\-\-test=test\-unit\fR
60
+ Specify the test framework that Bundler should use when generating the project\. Acceptable values are \fBminitest\fR, \fBrspec\fR and \fBtest\-unit\fR\. The \fBGEM_NAME\.gemspec\fR will be configured and a skeleton test/spec directory will be created based on this option\. Given no option is specified:
48
61
  .IP
49
62
  When Bundler is configured to generate tests, this defaults to Bundler's global config setting \fBgem\.test\fR\.
50
63
  .IP
51
64
  When Bundler is configured to not generate tests, an interactive prompt will be displayed and the answer will be used for the current rubygem project\.
52
65
  .IP
53
66
  When Bundler is unconfigured, an interactive prompt will be displayed and the answer will be saved in Bundler's global config for future \fBbundle gem\fR use\.
54
- .IP "\(bu" 4
55
- \fB\-\-no\-test\fR: Do not use a test framework (overrides \fB\-\-test\fR specified in the global config)\.
56
- .IP "\(bu" 4
57
- \fB\-\-changelog\fR: Generate changelog file\. Set a default with \fBbundle config set \-\-global gem\.changelog true\fR\.
58
- .IP "\(bu" 4
59
- \fB\-\-ci\fR, \fB\-\-ci=circle\fR, \fB\-\-ci=github\fR, \fB\-\-ci=gitlab\fR: Specify the continuous integration service that Bundler should use when generating the project\. Acceptable values are \fBgithub\fR, \fBgitlab\fR and \fBcircle\fR\. A configuration file will be generated in the project directory\. Given no option is specified:
67
+ .TP
68
+ \fB\-\-no\-test\fR
69
+ Do not use a test framework (overrides \fB\-\-test\fR specified in the global config)\.
70
+ .TP
71
+ \fB\-\-ci\fR, \fB\-\-ci=circle\fR, \fB\-\-ci=github\fR, \fB\-\-ci=gitlab\fR
72
+ Specify the continuous integration service that Bundler should use when generating the project\. Acceptable values are \fBgithub\fR, \fBgitlab\fR and \fBcircle\fR\. A configuration file will be generated in the project directory\. Given no option is specified:
60
73
  .IP
61
74
  When Bundler is configured to generate CI files, this defaults to Bundler's global config setting \fBgem\.ci\fR\.
62
75
  .IP
63
76
  When Bundler is configured to not generate CI files, an interactive prompt will be displayed and the answer will be used for the current rubygem project\.
64
77
  .IP
65
78
  When Bundler is unconfigured, an interactive prompt will be displayed and the answer will be saved in Bundler's global config for future \fBbundle gem\fR use\.
66
- .IP "\(bu" 4
67
- \fB\-\-no\-ci\fR: Do not use a continuous integration service (overrides \fB\-\-ci\fR specified in the global config)\.
68
- .IP "\(bu" 4
69
- \fB\-\-linter\fR, \fB\-\-linter=rubocop\fR, \fB\-\-linter=standard\fR: Specify the linter and code formatter that Bundler should add to the project's development dependencies\. Acceptable values are \fBrubocop\fR and \fBstandard\fR\. A configuration file will be generated in the project directory\. Given no option is specified:
79
+ .TP
80
+ \fB\-\-no\-ci\fR
81
+ Do not use a continuous integration service (overrides \fB\-\-ci\fR specified in the global config)\.
82
+ .TP
83
+ \fB\-\-linter\fR, \fB\-\-linter=rubocop\fR, \fB\-\-linter=standard\fR
84
+ Specify the linter and code formatter that Bundler should add to the project's development dependencies\. Acceptable values are \fBrubocop\fR and \fBstandard\fR\. A configuration file will be generated in the project directory\. Given no option is specified:
70
85
  .IP
71
86
  When Bundler is configured to add a linter, this defaults to Bundler's global config setting \fBgem\.linter\fR\.
72
87
  .IP
73
88
  When Bundler is configured not to add a linter, an interactive prompt will be displayed and the answer will be used for the current rubygem project\.
74
89
  .IP
75
90
  When Bundler is unconfigured, an interactive prompt will be displayed and the answer will be saved in Bundler's global config for future \fBbundle gem\fR use\.
76
- .IP "\(bu" 4
77
- \fB\-\-no\-linter\fR: Do not add a linter (overrides \fB\-\-linter\fR specified in the global config)\.
78
- .IP "\(bu" 4
79
- \fB\-\-rubocop\fR: Add rubocop to the generated Rakefile and gemspec\. Set a default with \fBbundle config set \-\-global gem\.rubocop true\fR\.
80
- .IP "\(bu" 4
81
- \fB\-\-edit=EDIT\fR, \fB\-e=EDIT\fR: Open the resulting GEM_NAME\.gemspec in EDIT, or the default editor if not specified\. The default is \fB$BUNDLER_EDITOR\fR, \fB$VISUAL\fR, or \fB$EDITOR\fR\.
82
- .IP "" 0
91
+ .TP
92
+ \fB\-\-no\-linter\fR
93
+ Do not add a linter (overrides \fB\-\-linter\fR specified in the global config)\.
94
+ .TP
95
+ \fB\-\-edit=EDIT\fR, \fB\-e=EDIT\fR
96
+ Open the resulting GEM_NAME\.gemspec in EDIT, or the default editor if not specified\. The default is \fB$BUNDLER_EDITOR\fR, \fB$VISUAL\fR, or \fB$EDITOR\fR\.
97
+ .TP
98
+ \fB\-\-bundle\fR
99
+ Run \fBbundle install\fR after creating the gem\.
100
+ .TP
101
+ \fB\-\-no\-bundle\fR
102
+ Do not run \fBbundle install\fR after creating the gem\.
83
103
  .SH "SEE ALSO"
84
104
  .IP "\(bu" 4
85
105
  bundle config(1) \fIbundle\-config\.1\.html\fR
@@ -41,17 +41,18 @@ configuration file using the following names:
41
41
  Do not create a `CODE_OF_CONDUCT.md` (overrides `--coc` specified in the
42
42
  global config).
43
43
 
44
- * `--changelog`
44
+ * `--changelog`:
45
45
  Add a `CHANGELOG.md` file to the root of the generated project. If
46
46
  this option is unspecified, an interactive prompt will be displayed and the
47
47
  answer will be saved in Bundler's global config for future `bundle gem` use.
48
+ Update the default with `bundle config set --global gem.changelog <true|false>`.
48
49
 
49
50
  * `--no-changelog`:
50
51
  Do not create a `CHANGELOG.md` (overrides `--changelog` specified in the
51
52
  global config).
52
53
 
53
- * `--ext=c`, `--ext=rust`:
54
- Add boilerplate for C or Rust (currently [magnus](https://docs.rs/magnus) based) extension code to the generated project. This behavior
54
+ * `--ext=c`, `--ext=go`, `--ext=rust`:
55
+ Add boilerplate for C, Go (currently [go-gem-wrapper](https://github.com/ruby-go-gem/go-gem-wrapper) based) or Rust (currently [magnus](https://docs.rs/magnus) based) extension code to the generated project. This behavior
55
56
  is disabled by default.
56
57
 
57
58
  * `--no-ext`:
@@ -95,9 +96,6 @@ configuration file using the following names:
95
96
  Do not use a test framework (overrides `--test` specified in the global
96
97
  config).
97
98
 
98
- * `--changelog`:
99
- Generate changelog file. Set a default with `bundle config set --global gem.changelog true`.
100
-
101
99
  * `--ci`, `--ci=circle`, `--ci=github`, `--ci=gitlab`:
102
100
  Specify the continuous integration service that Bundler should use when
103
101
  generating the project. Acceptable values are `github`, `gitlab`
@@ -137,13 +135,16 @@ configuration file using the following names:
137
135
  * `--no-linter`:
138
136
  Do not add a linter (overrides `--linter` specified in the global config).
139
137
 
140
- * `--rubocop`:
141
- Add rubocop to the generated Rakefile and gemspec. Set a default with `bundle config set --global gem.rubocop true`.
142
-
143
138
  * `--edit=EDIT`, `-e=EDIT`:
144
139
  Open the resulting GEM_NAME.gemspec in EDIT, or the default editor if not
145
140
  specified. The default is `$BUNDLER_EDITOR`, `$VISUAL`, or `$EDITOR`.
146
141
 
142
+ * `--bundle`:
143
+ Run `bundle install` after creating the gem.
144
+
145
+ * `--no-bundle`:
146
+ Do not run `bundle install` after creating the gem.
147
+
147
148
  ## SEE ALSO
148
149
 
149
150
  * [bundle config(1)](bundle-config.1.html)
@@ -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\-HELP" "1" "March 2025" ""
3
+ .TH "BUNDLE\-HELP" "1" "March 2026" ""
4
4
  .SH "NAME"
5
5
  \fBbundle\-help\fR \- Displays detailed help for each subcommand
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\-INFO" "1" "March 2025" ""
3
+ .TH "BUNDLE\-INFO" "1" "March 2026" ""
4
4
  .SH "NAME"
5
5
  \fBbundle\-info\fR \- Show information for the given 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\-INIT" "1" "March 2025" ""
3
+ .TH "BUNDLE\-INIT" "1" "March 2026" ""
4
4
  .SH "NAME"
5
5
  \fBbundle\-init\fR \- Generates a Gemfile into the current working directory
6
6
  .SH "SYNOPSIS"
@@ -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\-INSTALL" "1" "March 2025" ""
3
+ .TH "BUNDLE\-INSTALL" "1" "March 2026" ""
4
4
  .SH "NAME"
5
5
  \fBbundle\-install\fR \- Install the dependencies specified in your Gemfile
6
6
  .SH "SYNOPSIS"
7
- \fBbundle install\fR [\-\-binstubs[=DIRECTORY]] [\-\-clean] [\-\-deployment] [\-\-frozen] [\-\-full\-index] [\-\-gemfile=GEMFILE] [\-\-jobs=NUMBER] [\-\-local] [\-\-no\-cache] [\-\-no\-prune] [\-\-path PATH] [\-\-prefer\-local] [\-\-quiet] [\-\-redownload] [\-\-retry=NUMBER] [\-\-shebang=SHEBANG] [\-\-standalone[=GROUP[ GROUP\|\.\|\.\|\.]]] [\-\-system] [\-\-trust\-policy=TRUST\-POLICY] [\-\-target\-rbconfig=TARGET\-RBCONFIG] [\-\-with=GROUP[ GROUP\|\.\|\.\|\.]] [\-\-without=GROUP[ GROUP\|\.\|\.\|\.]]
7
+ \fBbundle install\fR [\-\-force] [\-\-full\-index] [\-\-gemfile=GEMFILE] [\-\-jobs=NUMBER] [\-\-local] [\-\-lockfile=LOCKFILE] [\-\-no\-cache] [\-\-no\-lock] [\-\-prefer\-local] [\-\-quiet] [\-\-retry=NUMBER] [\-\-standalone[=GROUP[ GROUP\|\.\|\.\|\.]]] [\-\-trust\-policy=TRUST\-POLICY] [\-\-target\-rbconfig=TARGET\-RBCONFIG]
8
8
  .SH "DESCRIPTION"
9
9
  Install the gems specified in your Gemfile(5)\. If this is the first time you run bundle install (and a \fBGemfile\.lock\fR does not exist), Bundler will fetch all remote sources, resolve dependencies and install all needed gems\.
10
10
  .P
@@ -12,30 +12,9 @@ If a \fBGemfile\.lock\fR does exist, and you have not updated your Gemfile(5), B
12
12
  .P
13
13
  If a \fBGemfile\.lock\fR does exist, and you have updated your Gemfile(5), Bundler will use the dependencies in the \fBGemfile\.lock\fR for all gems that you did not update, but will re\-resolve the dependencies of gems that you did update\. You can find more information about this update process below under \fICONSERVATIVE UPDATING\fR\.
14
14
  .SH "OPTIONS"
15
- The \fB\-\-clean\fR, \fB\-\-deployment\fR, \fB\-\-frozen\fR, \fB\-\-no\-prune\fR, \fB\-\-path\fR, \fB\-\-shebang\fR, \fB\-\-system\fR, \fB\-\-without\fR and \fB\-\-with\fR options are deprecated because they only make sense if they are applied to every subsequent \fBbundle install\fR run automatically and that requires \fBbundler\fR to silently remember them\. Since \fBbundler\fR will no longer remember CLI flags in future versions, \fBbundle config\fR (see bundle\-config(1)) should be used to apply them permanently\.
16
15
  .TP
17
- \fB\-\-binstubs[=BINSTUBS]\fR
18
- Binstubs are scripts that wrap around executables\. Bundler creates a small Ruby file (a binstub) that loads Bundler, runs the command, and puts it in \fBbin/\fR\. This lets you link the binstub inside of an application to the exact gem version the application needs\.
19
- .IP
20
- Creates a directory (defaults to \fB~/bin\fR when the option is used without a value, or to the given \fB<BINSTUBS>\fR directory otherwise) and places any executables from the gem there\. These executables run in Bundler's context\. If used, you might add this directory to your environment's \fBPATH\fR variable\. For instance, if the \fBrails\fR gem comes with a \fBrails\fR executable, this flag will create a \fBbin/rails\fR executable that ensures that all referred dependencies will be resolved using the bundled gems\.
21
- .TP
22
- \fB\-\-clean\fR
23
- On finishing the installation Bundler is going to remove any gems not present in the current Gemfile(5)\. Don't worry, gems currently in use will not be removed\.
24
- .IP
25
- This option is deprecated in favor of the \fBclean\fR setting\.
26
- .TP
27
- \fB\-\-deployment\fR
28
- In \fIdeployment mode\fR, Bundler will 'roll\-out' the bundle for production or CI use\. Please check carefully if you want to have this option enabled in your development environment\.
29
- .IP
30
- This option is deprecated in favor of the \fBdeployment\fR setting\.
31
- .TP
32
- \fB\-\-redownload\fR, \fB\-\-force\fR
33
- Force download every gem, even if the required versions are already available locally\.
34
- .TP
35
- \fB\-\-frozen\fR
36
- Do not allow the Gemfile\.lock to be updated after this install\. Exits non\-zero if there are going to be changes to the Gemfile\.lock\.
37
- .IP
38
- This option is deprecated in favor of the \fBfrozen\fR setting\.
16
+ \fB\-\-force\fR, \fB\-\-redownload\fR
17
+ Force reinstalling every gem, even if already installed\.
39
18
  .TP
40
19
  \fB\-\-full\-index\fR
41
20
  Bundler will not call Rubygems' API endpoint (default) but download and cache a (currently big) index file of all gems\. Performance can be improved for large bundles that seldom change by enabling this option\.
@@ -49,21 +28,19 @@ The maximum number of parallel download and install jobs\. The default is the nu
49
28
  \fB\-\-local\fR
50
29
  Do not attempt to connect to \fBrubygems\.org\fR\. Instead, Bundler will use the gems already present in Rubygems' cache or in \fBvendor/cache\fR\. Note that if an appropriate platform\-specific gem exists on \fBrubygems\.org\fR it will not be found\.
51
30
  .TP
31
+ \fB\-\-lockfile=LOCKFILE\fR
32
+ The location of the lockfile which Bundler should use\. This defaults to the Gemfile location with \fB\.lock\fR appended\.
33
+ .TP
52
34
  \fB\-\-prefer\-local\fR
53
35
  Force using locally installed gems, or gems already present in Rubygems' cache or in \fBvendor/cache\fR, when resolving, even if newer versions are available remotely\. Only attempt to connect to \fBrubygems\.org\fR for gems that are not present locally\.
54
36
  .TP
55
37
  \fB\-\-no\-cache\fR
56
38
  Do not update the cache in \fBvendor/cache\fR with the newly bundled gems\. This does not remove any gems in the cache but keeps the newly bundled gems from being cached during the install\.
57
39
  .TP
58
- \fB\-\-no\-prune\fR
59
- Don't remove stale gems from the cache when the installation finishes\.
40
+ \fB\-\-no\-lock\fR
41
+ Do not create a lockfile\. Useful if you want to install dependencies but not lock versions of gems\. Recommended for library development, and other situations where the code is expected to work with a range of dependency versions\.
60
42
  .IP
61
- This option is deprecated in favor of the \fBno_prune\fR setting\.
62
- .TP
63
- \fB\-\-path=PATH\fR
64
- The location to install the specified gems to\. This defaults to Rubygems' setting\. Bundler shares this location with Rubygems, \fBgem install \|\.\|\.\|\.\fR will have gem installed there, too\. Therefore, gems installed without a \fB\-\-path \|\.\|\.\|\.\fR setting will show up by calling \fBgem list\fR\. Accordingly, gems installed to other locations will not get listed\.
65
- .IP
66
- This option is deprecated in favor of the \fBpath\fR setting\.
43
+ This has the same effect as using \fBlockfile false\fR in the Gemfile\. See gemfile(5) for more information\.
67
44
  .TP
68
45
  \fB\-\-quiet\fR
69
46
  Do not print progress information to the standard output\.
@@ -71,36 +48,16 @@ Do not print progress information to the standard output\.
71
48
  \fB\-\-retry=[<number>]\fR
72
49
  Retry failed network or git requests for \fInumber\fR times\.
73
50
  .TP
74
- \fB\-\-shebang=SHEBANG\fR
75
- Uses the specified ruby executable (usually \fBruby\fR) to execute the scripts created with \fB\-\-binstubs\fR\. In addition, if you use \fB\-\-binstubs\fR together with \fB\-\-shebang jruby\fR these executables will be changed to execute \fBjruby\fR instead\.
76
- .IP
77
- This option is deprecated in favor of the \fBshebang\fR setting\.
78
- .TP
79
51
  \fB\-\-standalone[=<list>]\fR
80
- Makes a bundle that can work without depending on Rubygems or Bundler at runtime\. A space separated list of groups to install can be specified\. Bundler creates a directory named \fBbundle\fR and installs the bundle there\. It also generates a \fBbundle/bundler/setup\.rb\fR file to replace Bundler's own setup in the manner required\. Using this option implicitly sets \fBpath\fR, which is a [remembered option][REMEMBERED OPTIONS]\.
81
- .TP
82
- \fB\-\-system\fR
83
- Installs the gems specified in the bundle to the system's Rubygems location\. This overrides any previous configuration of \fB\-\-path\fR\.
84
- .IP
85
- This option is deprecated in favor of the \fBsystem\fR setting\.
52
+ Makes a bundle that can work without depending on Rubygems or Bundler at runtime\. A space separated list of groups to install can be specified\. Bundler creates a directory named \fBbundle\fR and installs the bundle there\. It also generates a \fBbundle/bundler/setup\.rb\fR file to replace Bundler's own setup in the manner required\.
86
53
  .TP
87
54
  \fB\-\-trust\-policy=TRUST\-POLICY\fR
88
55
  Apply the Rubygems security policy \fIpolicy\fR, where policy is one of \fBHighSecurity\fR, \fBMediumSecurity\fR, \fBLowSecurity\fR, \fBAlmostNoSecurity\fR, or \fBNoSecurity\fR\. For more details, please see the Rubygems signing documentation linked below in \fISEE ALSO\fR\.
89
56
  .TP
90
57
  \fB\-\-target\-rbconfig=TARGET\-RBCONFIG\fR
91
58
  Path to rbconfig\.rb for the deployment target platform\.
92
- .TP
93
- \fB\-\-with=<list>\fR
94
- A space\-separated list of groups referencing gems to install\. If an optional group is given it is installed\. If a group is given that is in the remembered list of groups given to \-\-without, it is removed from that list\.
95
- .IP
96
- This option is deprecated in favor of the \fBwith\fR setting\.
97
- .TP
98
- \fB\-\-without=<list>\fR
99
- A space\-separated list of groups referencing gems to skip during installation\. If a group is given that is in the remembered list of groups given to \-\-with, it is removed from that list\.
100
- .IP
101
- This option is deprecated in favor of the \fBwithout\fR setting\.
102
59
  .SH "DEPLOYMENT MODE"
103
- Bundler's defaults are optimized for development\. To switch to defaults optimized for deployment and for CI, use the \fB\-\-deployment\fR flag\. Do not activate deployment mode on development machines, as it will cause an error when the Gemfile(5) is modified\.
60
+ Bundler's defaults are optimized for development\. To switch to defaults optimized for deployment and for CI, use the \fBdeployment\fR setting\. Do not activate deployment mode on development machines, as it will cause an error when the Gemfile(5) is modified\.
104
61
  .IP "1." 4
105
62
  A \fBGemfile\.lock\fR is required\.
106
63
  .IP
@@ -120,14 +77,14 @@ In development, it's convenient to share the gems used in your application with
120
77
  .IP
121
78
  In deployment, isolation is a more important default\. In addition, the user deploying the application may not have permission to install gems to the system, or the web server may not have permission to read them\.
122
79
  .IP
123
- As a result, \fBbundle install \-\-deployment\fR installs gems to the \fBvendor/bundle\fR directory in the application\. This may be overridden using the \fB\-\-path\fR option\.
80
+ As a result, when \fBdeployment\fR is configured, \fBbundle install\fR installs gems to the \fBvendor/bundle\fR directory in the application\. This may be overridden using the \fBpath\fR setting\.
124
81
  .IP "" 0
125
82
  .SH "INSTALLING GROUPS"
126
83
  By default, \fBbundle install\fR will install all gems in all groups in your Gemfile(5), except those declared for a different platform\.
127
84
  .P
128
- However, you can explicitly tell Bundler to skip installing certain groups with the \fB\-\-without\fR option\. This option takes a space\-separated list of groups\.
85
+ However, you can explicitly tell Bundler to skip installing certain groups with the \fBwithout\fR setting\. This setting takes a space\-separated list of groups\.
129
86
  .P
130
- While the \fB\-\-without\fR option will skip \fIinstalling\fR the gems in the specified groups, it will still \fIdownload\fR those gems and use them to resolve the dependencies of every gem in your Gemfile(5)\.
87
+ While the \fBwithout\fR setting will skip \fIinstalling\fR the gems in the specified groups, \fBbundle install\fR will still \fIdownload\fR those gems and use them to resolve the dependencies of every gem in your Gemfile(5)\.
131
88
  .P
132
89
  This is so that installing a different set of groups on another machine (such as a production server) will not change the gems and versions that you have already developed and tested against\.
133
90
  .P
@@ -148,7 +105,7 @@ end
148
105
  .P
149
106
  In this case, \fBsinatra\fR depends on any version of Rack (\fB>= 1\.0\fR), while \fBrack\-perftools\-profiler\fR depends on 1\.x (\fB~> 1\.0\fR)\.
150
107
  .P
151
- When you run \fBbundle install \-\-without production\fR in development, we look at the dependencies of \fBrack\-perftools\-profiler\fR as well\. That way, you do not spend all your time developing against Rack 2\.0, using new APIs unavailable in Rack 1\.x, only to have Bundler switch to Rack 1\.2 when the \fBproduction\fR group \fIis\fR used\.
108
+ When you configure \fBbundle config without production\fR in development, we look at the dependencies of \fBrack\-perftools\-profiler\fR as well\. That way, you do not spend all your time developing against Rack 2\.0, using new APIs unavailable in Rack 1\.x, only to have Bundler switch to Rack 1\.2 when the \fBproduction\fR group \fIis\fR used\.
152
109
  .P
153
110
  This should not cause any problems in practice, because we do not attempt to \fBinstall\fR the gems in the excluded groups, and only evaluate as part of the dependency resolution process\.
154
111
  .P
@@ -3,28 +3,20 @@ bundle-install(1) -- Install the dependencies specified in your Gemfile
3
3
 
4
4
  ## SYNOPSIS
5
5
 
6
- `bundle install` [--binstubs[=DIRECTORY]]
7
- [--clean]
8
- [--deployment]
9
- [--frozen]
6
+ `bundle install` [--force]
10
7
  [--full-index]
11
8
  [--gemfile=GEMFILE]
12
9
  [--jobs=NUMBER]
13
10
  [--local]
11
+ [--lockfile=LOCKFILE]
14
12
  [--no-cache]
15
- [--no-prune]
16
- [--path PATH]
13
+ [--no-lock]
17
14
  [--prefer-local]
18
15
  [--quiet]
19
- [--redownload]
20
16
  [--retry=NUMBER]
21
- [--shebang=SHEBANG]
22
17
  [--standalone[=GROUP[ GROUP...]]]
23
- [--system]
24
18
  [--trust-policy=TRUST-POLICY]
25
19
  [--target-rbconfig=TARGET-RBCONFIG]
26
- [--with=GROUP[ GROUP...]]
27
- [--without=GROUP[ GROUP...]]
28
20
 
29
21
  ## DESCRIPTION
30
22
 
@@ -45,50 +37,8 @@ update process below under [CONSERVATIVE UPDATING][].
45
37
 
46
38
  ## OPTIONS
47
39
 
48
- The `--clean`, `--deployment`, `--frozen`, `--no-prune`, `--path`, `--shebang`,
49
- `--system`, `--without` and `--with` options are deprecated because they only
50
- make sense if they are applied to every subsequent `bundle install` run
51
- automatically and that requires `bundler` to silently remember them. Since
52
- `bundler` will no longer remember CLI flags in future versions, `bundle config`
53
- (see bundle-config(1)) should be used to apply them permanently.
54
-
55
- * `--binstubs[=BINSTUBS]`:
56
- Binstubs are scripts that wrap around executables. Bundler creates a small Ruby
57
- file (a binstub) that loads Bundler, runs the command, and puts it in `bin/`.
58
- This lets you link the binstub inside of an application to the exact gem
59
- version the application needs.
60
-
61
- Creates a directory (defaults to `~/bin` when the option is used without a
62
- value, or to the given `<BINSTUBS>` directory otherwise) and places any
63
- executables from the gem there. These executables run in Bundler's context. If
64
- used, you might add this directory to your environment's `PATH` variable. For
65
- instance, if the `rails` gem comes with a `rails` executable, this flag will
66
- create a `bin/rails` executable that ensures that all referred dependencies
67
- will be resolved using the bundled gems.
68
-
69
- * `--clean`:
70
- On finishing the installation Bundler is going to remove any gems not present
71
- in the current Gemfile(5). Don't worry, gems currently in use will not be
72
- removed.
73
-
74
- This option is deprecated in favor of the `clean` setting.
75
-
76
- * `--deployment`:
77
- In [deployment mode][DEPLOYMENT MODE], Bundler will 'roll-out' the bundle for
78
- production or CI use. Please check carefully if you want to have this option
79
- enabled in your development environment.
80
-
81
- This option is deprecated in favor of the `deployment` setting.
82
-
83
- * `--redownload`, `--force`:
84
- Force download every gem, even if the required versions are already available
85
- locally.
86
-
87
- * `--frozen`:
88
- Do not allow the Gemfile.lock to be updated after this install. Exits
89
- non-zero if there are going to be changes to the Gemfile.lock.
90
-
91
- This option is deprecated in favor of the `frozen` setting.
40
+ * `--force`, `--redownload`:
41
+ Force reinstalling every gem, even if already installed.
92
42
 
93
43
  * `--full-index`:
94
44
  Bundler will not call Rubygems' API endpoint (default) but download and cache
@@ -112,6 +62,10 @@ automatically and that requires `bundler` to silently remember them. Since
112
62
  appropriate platform-specific gem exists on `rubygems.org` it will not be
113
63
  found.
114
64
 
65
+ * `--lockfile=LOCKFILE`:
66
+ The location of the lockfile which Bundler should use. This defaults
67
+ to the Gemfile location with `.lock` appended.
68
+
115
69
  * `--prefer-local`:
116
70
  Force using locally installed gems, or gems already present in Rubygems' cache
117
71
  or in `vendor/cache`, when resolving, even if newer versions are available
@@ -123,19 +77,14 @@ automatically and that requires `bundler` to silently remember them. Since
123
77
  does not remove any gems in the cache but keeps the newly bundled gems from
124
78
  being cached during the install.
125
79
 
126
- * `--no-prune`:
127
- Don't remove stale gems from the cache when the installation finishes.
80
+ * `--no-lock`:
81
+ Do not create a lockfile. Useful if you want to install dependencies but not
82
+ lock versions of gems. Recommended for library development, and other
83
+ situations where the code is expected to work with a range of dependency
84
+ versions.
128
85
 
129
- This option is deprecated in favor of the `no_prune` setting.
130
-
131
- * `--path=PATH`:
132
- The location to install the specified gems to. This defaults to Rubygems'
133
- setting. Bundler shares this location with Rubygems, `gem install ...` will
134
- have gem installed there, too. Therefore, gems installed without a
135
- `--path ...` setting will show up by calling `gem list`. Accordingly, gems
136
- installed to other locations will not get listed.
137
-
138
- This option is deprecated in favor of the `path` setting.
86
+ This has the same effect as using `lockfile false` in the Gemfile.
87
+ See gemfile(5) for more information.
139
88
 
140
89
  * `--quiet`:
141
90
  Do not print progress information to the standard output.
@@ -143,27 +92,12 @@ automatically and that requires `bundler` to silently remember them. Since
143
92
  * `--retry=[<number>]`:
144
93
  Retry failed network or git requests for <number> times.
145
94
 
146
- * `--shebang=SHEBANG`:
147
- Uses the specified ruby executable (usually `ruby`) to execute the scripts
148
- created with `--binstubs`. In addition, if you use `--binstubs` together with
149
- `--shebang jruby` these executables will be changed to execute `jruby`
150
- instead.
151
-
152
- This option is deprecated in favor of the `shebang` setting.
153
-
154
95
  * `--standalone[=<list>]`:
155
96
  Makes a bundle that can work without depending on Rubygems or Bundler at
156
97
  runtime. A space separated list of groups to install can be specified.
157
98
  Bundler creates a directory named `bundle` and installs the bundle there. It
158
99
  also generates a `bundle/bundler/setup.rb` file to replace Bundler's own setup
159
- in the manner required. Using this option implicitly sets `path`, which is a
160
- [remembered option][REMEMBERED OPTIONS].
161
-
162
- * `--system`:
163
- Installs the gems specified in the bundle to the system's Rubygems location.
164
- This overrides any previous configuration of `--path`.
165
-
166
- This option is deprecated in favor of the `system` setting.
100
+ in the manner required.
167
101
 
168
102
  * `--trust-policy=TRUST-POLICY`:
169
103
  Apply the Rubygems security policy <policy>, where policy is one of
@@ -174,26 +108,11 @@ automatically and that requires `bundler` to silently remember them. Since
174
108
  * `--target-rbconfig=TARGET-RBCONFIG`:
175
109
  Path to rbconfig.rb for the deployment target platform.
176
110
 
177
- * `--with=<list>`:
178
- A space-separated list of groups referencing gems to install. If an
179
- optional group is given it is installed. If a group is given that is
180
- in the remembered list of groups given to --without, it is removed
181
- from that list.
182
-
183
- This option is deprecated in favor of the `with` setting.
184
-
185
- * `--without=<list>`:
186
- A space-separated list of groups referencing gems to skip during installation.
187
- If a group is given that is in the remembered list of groups given
188
- to --with, it is removed from that list.
189
-
190
- This option is deprecated in favor of the `without` setting.
191
-
192
111
  ## DEPLOYMENT MODE
193
112
 
194
113
  Bundler's defaults are optimized for development. To switch to
195
- defaults optimized for deployment and for CI, use the `--deployment`
196
- flag. Do not activate deployment mode on development machines, as it
114
+ defaults optimized for deployment and for CI, use the `deployment`
115
+ setting. Do not activate deployment mode on development machines, as it
197
116
  will cause an error when the Gemfile(5) is modified.
198
117
 
199
118
  1. A `Gemfile.lock` is required.
@@ -225,9 +144,9 @@ will cause an error when the Gemfile(5) is modified.
225
144
  gems to the system, or the web server may not have permission to
226
145
  read them.
227
146
 
228
- As a result, `bundle install --deployment` installs gems to
229
- the `vendor/bundle` directory in the application. This may be
230
- overridden using the `--path` option.
147
+ As a result, when `deployment` is configured, `bundle install` installs gems
148
+ to the `vendor/bundle` directory in the application. This may be
149
+ overridden using the `path` setting.
231
150
 
232
151
  ## INSTALLING GROUPS
233
152
 
@@ -235,12 +154,12 @@ By default, `bundle install` will install all gems in all groups
235
154
  in your Gemfile(5), except those declared for a different platform.
236
155
 
237
156
  However, you can explicitly tell Bundler to skip installing
238
- certain groups with the `--without` option. This option takes
157
+ certain groups with the `without` setting. This setting takes
239
158
  a space-separated list of groups.
240
159
 
241
- While the `--without` option will skip _installing_ the gems in the
242
- specified groups, it will still _download_ those gems and use them to
243
- resolve the dependencies of every gem in your Gemfile(5).
160
+ While the `without` setting will skip _installing_ the gems in the
161
+ specified groups, `bundle install` will still _download_ those gems and use them
162
+ to resolve the dependencies of every gem in your Gemfile(5).
244
163
 
245
164
  This is so that installing a different set of groups on another
246
165
  machine (such as a production server) will not change the
@@ -266,7 +185,7 @@ For a simple illustration, consider the following Gemfile(5):
266
185
  In this case, `sinatra` depends on any version of Rack (`>= 1.0`), while
267
186
  `rack-perftools-profiler` depends on 1.x (`~> 1.0`).
268
187
 
269
- When you run `bundle install --without production` in development, we
188
+ When you configure `bundle config without production` in development, we
270
189
  look at the dependencies of `rack-perftools-profiler` as well. That way,
271
190
  you do not spend all your time developing against Rack 2.0, using new
272
191
  APIs unavailable in Rack 1.x, only to have Bundler switch to Rack 1.2
@@ -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\-ISSUE" "1" "March 2025" ""
3
+ .TH "BUNDLE\-ISSUE" "1" "March 2026" ""
4
4
  .SH "NAME"
5
5
  \fBbundle\-issue\fR \- Get help reporting Bundler issues
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\-LICENSES" "1" "March 2025" ""
3
+ .TH "BUNDLE\-LICENSES" "1" "March 2026" ""
4
4
  .SH "NAME"
5
5
  \fBbundle\-licenses\fR \- Print the license of all gems in the 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\-LIST" "1" "March 2025" ""
3
+ .TH "BUNDLE\-LIST" "1" "March 2026" ""
4
4
  .SH "NAME"
5
5
  \fBbundle\-list\fR \- List all the gems in the bundle
6
6
  .SH "SYNOPSIS"
@@ -19,6 +19,8 @@ bundle list \-\-without\-group test
19
19
  bundle list \-\-only\-group dev
20
20
  .P
21
21
  bundle list \-\-only\-group dev test \-\-paths
22
+ .P
23
+ bundle list \-\-format json
22
24
  .SH "OPTIONS"
23
25
  .TP
24
26
  \fB\-\-name\-only\fR
@@ -32,4 +34,7 @@ A space\-separated list of groups of gems to skip during printing\.
32
34
  .TP
33
35
  \fB\-\-only\-group=<list>\fR
34
36
  A space\-separated list of groups of gems to print\.
37
+ .TP
38
+ \fB\-\-format=FORMAT\fR
39
+ Format output ('json' is the only supported format)
35
40
 
@@ -21,6 +21,8 @@ bundle list --only-group dev
21
21
 
22
22
  bundle list --only-group dev test --paths
23
23
 
24
+ bundle list --format json
25
+
24
26
  ## OPTIONS
25
27
 
26
28
  * `--name-only`:
@@ -34,3 +36,6 @@ bundle list --only-group dev test --paths
34
36
 
35
37
  * `--only-group=<list>`:
36
38
  A space-separated list of groups of gems to print.
39
+
40
+ * `--format=FORMAT`:
41
+ Format output ('json' is the only supported format)