rubygems-update 3.5.22 → 3.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (242) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +91 -0
  3. data/Manifest.txt +23 -16
  4. data/README.md +14 -9
  5. data/bundler/CHANGELOG.md +83 -0
  6. data/bundler/bundler.gemspec +2 -2
  7. data/bundler/lib/bundler/build_metadata.rb +2 -2
  8. data/bundler/lib/bundler/cli/add.rb +2 -0
  9. data/bundler/lib/bundler/cli/check.rb +2 -2
  10. data/bundler/lib/bundler/cli/console.rb +0 -4
  11. data/bundler/lib/bundler/cli/doctor.rb +4 -4
  12. data/bundler/lib/bundler/cli/exec.rb +1 -0
  13. data/bundler/lib/bundler/cli/gem.rb +1 -1
  14. data/bundler/lib/bundler/cli/info.rb +2 -2
  15. data/bundler/lib/bundler/cli/inject.rb +1 -1
  16. data/bundler/lib/bundler/cli/install.rb +4 -0
  17. data/bundler/lib/bundler/cli/lock.rb +20 -1
  18. data/bundler/lib/bundler/cli/pristine.rb +1 -1
  19. data/bundler/lib/bundler/cli/show.rb +2 -2
  20. data/bundler/lib/bundler/cli.rb +23 -53
  21. data/bundler/lib/bundler/compact_index_client/cache_file.rb +0 -5
  22. data/bundler/lib/bundler/compact_index_client/updater.rb +0 -11
  23. data/bundler/lib/bundler/definition.rb +143 -76
  24. data/bundler/lib/bundler/dependency.rb +1 -1
  25. data/bundler/lib/bundler/dsl.rb +33 -28
  26. data/bundler/lib/bundler/endpoint_specification.rb +10 -1
  27. data/bundler/lib/bundler/errors.rb +10 -0
  28. data/bundler/lib/bundler/feature_flag.rb +1 -0
  29. data/bundler/lib/bundler/fetcher/compact_index.rb +1 -1
  30. data/bundler/lib/bundler/fetcher.rb +10 -3
  31. data/bundler/lib/bundler/gem_helpers.rb +21 -5
  32. data/bundler/lib/bundler/injector.rb +2 -2
  33. data/bundler/lib/bundler/inline.rb +12 -8
  34. data/bundler/lib/bundler/installer/standalone.rb +2 -2
  35. data/bundler/lib/bundler/installer.rb +4 -38
  36. data/bundler/lib/bundler/lazy_specification.rb +74 -26
  37. data/bundler/lib/bundler/lockfile_generator.rb +1 -1
  38. data/bundler/lib/bundler/lockfile_parser.rb +9 -1
  39. data/bundler/lib/bundler/man/bundle-add.1 +17 -11
  40. data/bundler/lib/bundler/man/bundle-add.1.ronn +16 -10
  41. data/bundler/lib/bundler/man/bundle-binstubs.1 +7 -4
  42. data/bundler/lib/bundler/man/bundle-binstubs.1.ronn +6 -3
  43. data/bundler/lib/bundler/man/bundle-cache.1 +30 -2
  44. data/bundler/lib/bundler/man/bundle-cache.1.ronn +31 -2
  45. data/bundler/lib/bundler/man/bundle-check.1 +3 -3
  46. data/bundler/lib/bundler/man/bundle-check.1.ronn +4 -2
  47. data/bundler/lib/bundler/man/bundle-clean.1 +1 -1
  48. data/bundler/lib/bundler/man/bundle-config.1 +3 -5
  49. data/bundler/lib/bundler/man/bundle-config.1.ronn +2 -7
  50. data/bundler/lib/bundler/man/bundle-console.1 +2 -4
  51. data/bundler/lib/bundler/man/bundle-console.1.ronn +2 -7
  52. data/bundler/lib/bundler/man/bundle-doctor.1 +2 -2
  53. data/bundler/lib/bundler/man/bundle-doctor.1.ronn +1 -1
  54. data/bundler/lib/bundler/man/bundle-env.1 +9 -0
  55. data/bundler/lib/bundler/man/bundle-env.1.ronn +10 -0
  56. data/bundler/lib/bundler/man/bundle-exec.1 +5 -2
  57. data/bundler/lib/bundler/man/bundle-exec.1.ronn +4 -1
  58. data/bundler/lib/bundler/man/bundle-fund.1 +22 -0
  59. data/bundler/lib/bundler/man/bundle-fund.1.ronn +25 -0
  60. data/bundler/lib/bundler/man/bundle-gem.1 +17 -5
  61. data/bundler/lib/bundler/man/bundle-gem.1.ronn +27 -6
  62. data/bundler/lib/bundler/man/bundle-help.1 +1 -1
  63. data/bundler/lib/bundler/man/bundle-info.1 +5 -2
  64. data/bundler/lib/bundler/man/bundle-info.1.ronn +6 -2
  65. data/bundler/lib/bundler/man/bundle-init.1 +3 -3
  66. data/bundler/lib/bundler/man/bundle-init.1.ronn +3 -2
  67. data/bundler/lib/bundler/man/bundle-inject.1 +10 -2
  68. data/bundler/lib/bundler/man/bundle-inject.1.ronn +9 -1
  69. data/bundler/lib/bundler/man/bundle-install.1 +15 -12
  70. data/bundler/lib/bundler/man/bundle-install.1.ronn +22 -18
  71. data/bundler/lib/bundler/man/bundle-issue.1 +45 -0
  72. data/bundler/lib/bundler/man/bundle-issue.1.ronn +37 -0
  73. data/bundler/lib/bundler/man/bundle-licenses.1 +9 -0
  74. data/bundler/lib/bundler/man/bundle-licenses.1.ronn +10 -0
  75. data/bundler/lib/bundler/man/bundle-list.1 +1 -1
  76. data/bundler/lib/bundler/man/bundle-list.1.ronn +4 -1
  77. data/bundler/lib/bundler/man/bundle-lock.1 +21 -6
  78. data/bundler/lib/bundler/man/bundle-lock.1.ronn +25 -4
  79. data/bundler/lib/bundler/man/bundle-open.1 +2 -2
  80. data/bundler/lib/bundler/man/bundle-open.1.ronn +2 -1
  81. data/bundler/lib/bundler/man/bundle-outdated.1 +8 -5
  82. data/bundler/lib/bundler/man/bundle-outdated.1.ronn +8 -4
  83. data/bundler/lib/bundler/man/bundle-platform.1 +1 -1
  84. data/bundler/lib/bundler/man/bundle-plugin.1 +1 -1
  85. data/bundler/lib/bundler/man/bundle-pristine.1 +1 -1
  86. data/bundler/lib/bundler/man/bundle-pristine.1.ronn +1 -1
  87. data/bundler/lib/bundler/man/bundle-remove.1 +1 -1
  88. data/bundler/lib/bundler/man/bundle-remove.1.ronn +1 -1
  89. data/bundler/lib/bundler/man/bundle-show.1 +5 -2
  90. data/bundler/lib/bundler/man/bundle-show.1.ronn +4 -0
  91. data/bundler/lib/bundler/man/bundle-update.1 +13 -7
  92. data/bundler/lib/bundler/man/bundle-update.1.ronn +14 -6
  93. data/bundler/lib/bundler/man/bundle-version.1 +1 -1
  94. data/bundler/lib/bundler/man/bundle-viz.1 +4 -4
  95. data/bundler/lib/bundler/man/bundle-viz.1.ronn +7 -3
  96. data/bundler/lib/bundler/man/bundle.1 +1 -1
  97. data/bundler/lib/bundler/man/gemfile.5 +1 -1
  98. data/bundler/lib/bundler/man/index.txt +4 -0
  99. data/bundler/lib/bundler/materialization.rb +59 -0
  100. data/bundler/lib/bundler/plugin/events.rb +24 -0
  101. data/bundler/lib/bundler/plugin/installer.rb +1 -1
  102. data/bundler/lib/bundler/plugin.rb +20 -1
  103. data/bundler/lib/bundler/process_lock.rb +10 -14
  104. data/bundler/lib/bundler/remote_specification.rb +6 -1
  105. data/bundler/lib/bundler/resolver/base.rb +6 -6
  106. data/bundler/lib/bundler/resolver/candidate.rb +2 -2
  107. data/bundler/lib/bundler/resolver/spec_group.rb +4 -3
  108. data/bundler/lib/bundler/resolver.rb +5 -5
  109. data/bundler/lib/bundler/rubygems_ext.rb +30 -27
  110. data/bundler/lib/bundler/rubygems_gem_installer.rb +3 -2
  111. data/bundler/lib/bundler/rubygems_integration.rb +23 -40
  112. data/bundler/lib/bundler/runtime.rb +27 -7
  113. data/bundler/lib/bundler/self_manager.rb +2 -3
  114. data/bundler/lib/bundler/settings.rb +6 -1
  115. data/bundler/lib/bundler/shared_helpers.rb +29 -17
  116. data/bundler/lib/bundler/source/git/git_proxy.rb +0 -6
  117. data/bundler/lib/bundler/source/git.rb +56 -31
  118. data/bundler/lib/bundler/source/metadata.rb +2 -3
  119. data/bundler/lib/bundler/source/path.rb +2 -2
  120. data/bundler/lib/bundler/source_list.rb +1 -1
  121. data/bundler/lib/bundler/spec_set.rb +81 -56
  122. data/bundler/lib/bundler/stub_specification.rb +8 -0
  123. data/bundler/lib/bundler/templates/newgem/Gemfile.tt +0 -3
  124. data/bundler/lib/bundler/templates/newgem/README.md.tt +1 -1
  125. data/bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt +15 -15
  126. data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +4 -4
  127. data/bundler/lib/bundler/uri_credentials_filter.rb +1 -1
  128. data/bundler/lib/bundler/vendor/fileutils/COPYING +56 -0
  129. data/bundler/lib/bundler/vendor/fileutils/lib/fileutils.rb +15 -13
  130. data/bundler/lib/bundler/vendor/securerandom/COPYING +56 -0
  131. data/bundler/lib/bundler/vendor/securerandom/lib/securerandom.rb +5 -5
  132. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +3 -5
  133. data/bundler/lib/bundler/vendor/thor/lib/thor/group.rb +11 -0
  134. data/bundler/lib/bundler/vendor/thor/lib/thor/parser/argument.rb +1 -4
  135. data/bundler/lib/bundler/vendor/thor/lib/thor/parser/option.rb +2 -2
  136. data/bundler/lib/bundler/vendor/thor/lib/thor/parser/options.rb +2 -1
  137. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +9 -9
  138. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/html.rb +1 -1
  139. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/table_printer.rb +5 -21
  140. data/bundler/lib/bundler/vendor/thor/lib/thor/util.rb +1 -1
  141. data/bundler/lib/bundler/vendor/thor/lib/thor/version.rb +1 -1
  142. data/bundler/lib/bundler/vendor/thor/lib/thor.rb +11 -0
  143. data/bundler/lib/bundler/vendor/uri/COPYING +56 -0
  144. data/bundler/lib/bundler/vendor/uri/lib/uri/common.rb +37 -16
  145. data/bundler/lib/bundler/vendor/uri/lib/uri/file.rb +3 -3
  146. data/bundler/lib/bundler/vendor/uri/lib/uri/ftp.rb +1 -1
  147. data/bundler/lib/bundler/vendor/uri/lib/uri/generic.rb +16 -26
  148. data/bundler/lib/bundler/vendor/uri/lib/uri/http.rb +2 -2
  149. data/bundler/lib/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +10 -3
  150. data/bundler/lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +26 -3
  151. data/bundler/lib/bundler/vendor/uri/lib/uri/version.rb +1 -1
  152. data/bundler/lib/bundler/vendor/uri/lib/uri.rb +9 -9
  153. data/bundler/lib/bundler/vendored_securerandom.rb +0 -2
  154. data/bundler/lib/bundler/version.rb +1 -1
  155. data/bundler/lib/bundler.rb +38 -14
  156. data/{CONTRIBUTING.md → doc/rubygems/CONTRIBUTING.md} +9 -9
  157. data/{POLICIES.md → doc/rubygems/POLICIES.md} +11 -11
  158. data/lib/rubygems/basic_specification.rb +5 -4
  159. data/lib/rubygems/commands/cleanup_command.rb +2 -2
  160. data/lib/rubygems/commands/contents_command.rb +4 -4
  161. data/lib/rubygems/commands/exec_command.rb +3 -0
  162. data/lib/rubygems/commands/pristine_command.rb +2 -2
  163. data/lib/rubygems/commands/push_command.rb +29 -5
  164. data/lib/rubygems/commands/rdoc_command.rb +2 -2
  165. data/lib/rubygems/commands/rebuild_command.rb +0 -2
  166. data/lib/rubygems/commands/setup_command.rb +7 -16
  167. data/lib/rubygems/commands/unpack_command.rb +0 -6
  168. data/lib/rubygems/commands/update_command.rb +2 -8
  169. data/lib/rubygems/config_file.rb +12 -0
  170. data/lib/rubygems/core_ext/kernel_warn.rb +2 -6
  171. data/lib/rubygems/defaults.rb +1 -1
  172. data/lib/rubygems/exceptions.rb +0 -6
  173. data/lib/rubygems/ext/builder.rb +6 -4
  174. data/lib/rubygems/ext/cargo_builder.rb +7 -4
  175. data/lib/rubygems/ext/cmake_builder.rb +7 -2
  176. data/lib/rubygems/ext/configure_builder.rb +7 -2
  177. data/lib/rubygems/ext/ext_conf_builder.rb +9 -5
  178. data/lib/rubygems/ext/rake_builder.rb +6 -1
  179. data/lib/rubygems/gem_runner.rb +9 -0
  180. data/lib/rubygems/gemcutter_utilities.rb +8 -2
  181. data/lib/rubygems/install_update_options.rb +5 -0
  182. data/lib/rubygems/installer.rb +8 -9
  183. data/lib/rubygems/package/tar_header.rb +11 -0
  184. data/lib/rubygems/package/tar_reader/entry.rb +1 -5
  185. data/lib/rubygems/platform.rb +4 -3
  186. data/lib/rubygems/psych_tree.rb +4 -0
  187. data/lib/rubygems/request_set/gem_dependency_api.rb +1 -1
  188. data/lib/rubygems/requirement.rb +0 -4
  189. data/lib/rubygems/resolver/composed_set.rb +3 -3
  190. data/lib/rubygems/resolver/git_set.rb +0 -1
  191. data/lib/rubygems/resolver/index_set.rb +2 -2
  192. data/lib/rubygems/resolver.rb +3 -3
  193. data/lib/rubygems/source/git.rb +13 -10
  194. data/lib/rubygems/spec_fetcher.rb +46 -7
  195. data/lib/rubygems/specification.rb +38 -32
  196. data/lib/rubygems/target_rbconfig.rb +50 -0
  197. data/lib/rubygems/uri.rb +1 -1
  198. data/lib/rubygems/util/licenses.rb +10 -1
  199. data/lib/rubygems/vendor/net-http/COPYING +56 -0
  200. data/lib/rubygems/vendor/net-http/lib/net/http/header.rb +1 -1
  201. data/lib/rubygems/vendor/net-http/lib/net/http/requests.rb +5 -0
  202. data/lib/rubygems/vendor/net-http/lib/net/http.rb +120 -36
  203. data/lib/rubygems/vendor/optparse/lib/optparse/ac.rb +16 -0
  204. data/lib/rubygems/vendor/optparse/lib/optparse/kwargs.rb +8 -3
  205. data/lib/rubygems/vendor/optparse/lib/optparse/version.rb +9 -0
  206. data/lib/rubygems/vendor/optparse/lib/optparse.rb +147 -51
  207. data/lib/rubygems/vendor/resolv/COPYING +56 -0
  208. data/lib/rubygems/vendor/resolv/lib/resolv.rb +50 -37
  209. data/lib/rubygems/vendor/securerandom/COPYING +56 -0
  210. data/lib/rubygems/vendor/securerandom/lib/securerandom.rb +5 -5
  211. data/lib/rubygems/vendor/timeout/COPYING +56 -0
  212. data/lib/rubygems/vendor/timeout/lib/timeout.rb +5 -8
  213. data/lib/rubygems/vendor/uri/COPYING +56 -0
  214. data/lib/rubygems/vendor/uri/lib/uri/common.rb +37 -16
  215. data/lib/rubygems/vendor/uri/lib/uri/file.rb +3 -3
  216. data/lib/rubygems/vendor/uri/lib/uri/ftp.rb +1 -1
  217. data/lib/rubygems/vendor/uri/lib/uri/generic.rb +16 -26
  218. data/lib/rubygems/vendor/uri/lib/uri/http.rb +2 -2
  219. data/lib/rubygems/vendor/uri/lib/uri/rfc2396_parser.rb +10 -3
  220. data/lib/rubygems/vendor/uri/lib/uri/rfc3986_parser.rb +26 -3
  221. data/lib/rubygems/vendor/uri/lib/uri/version.rb +1 -1
  222. data/lib/rubygems/vendor/uri/lib/uri.rb +9 -9
  223. data/lib/rubygems/vendored_securerandom.rb +0 -1
  224. data/lib/rubygems/version.rb +0 -4
  225. data/lib/rubygems.rb +30 -20
  226. data/rubygems-update.gemspec +5 -5
  227. data/setup.rb +1 -1
  228. metadata +36 -27
  229. data/bundler/lib/bundler/vendor/fileutils/LICENSE.txt +0 -22
  230. data/bundler/lib/bundler/vendor/securerandom/LICENSE.txt +0 -22
  231. data/bundler/lib/bundler/vendor/securerandom/lib/random/formatter.rb +0 -373
  232. data/bundler/lib/bundler/vendor/uri/LICENSE.txt +0 -22
  233. data/lib/rubygems/vendor/net-http/LICENSE.txt +0 -22
  234. data/lib/rubygems/vendor/net-http/lib/net/http/backward.rb +0 -40
  235. data/lib/rubygems/vendor/resolv/LICENSE.txt +0 -22
  236. data/lib/rubygems/vendor/securerandom/LICENSE.txt +0 -22
  237. data/lib/rubygems/vendor/securerandom/lib/random/formatter.rb +0 -373
  238. data/lib/rubygems/vendor/timeout/LICENSE.txt +0 -22
  239. data/lib/rubygems/vendor/uri/LICENSE.txt +0 -22
  240. /data/{MAINTAINERS.txt → doc/MAINTAINERS.txt} +0 -0
  241. /data/{bundler → doc/bundler}/UPGRADING.md +0 -0
  242. /data/{UPGRADING.md → doc/rubygems/UPGRADING.md} +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 276b006ba43b78677b3ab572a3c2fe93f5d2dba491ca7e52fe1383b045348149
4
- data.tar.gz: c3e120a1d2e201666f9ae43967fbb6633096c79dccfb4b81dcb70239ea92966f
3
+ metadata.gz: 7f521001b4f34f19f317f07b42950e58b035e043d94b5f54351e57d532305979
4
+ data.tar.gz: d8b46a7c8997cfdea34e40a35efa42058811239cf00c2a453449bc521e2c9824
5
5
  SHA512:
6
- metadata.gz: 0dd508e5b57121a6bdb08df3f984dcdc39ce14cc5b1725fd857f3f4e67e3334053fa2f2a93d0d2bb92f3050f1a4f85acfb86ea3064113d0388652265a31ed56d
7
- data.tar.gz: c0cae4cac2bc5af2c91a3adcf7bbaad26ff5a8662bfbe20913cfe14b2b509f16cc169654451ed58e628d5a53fb88e30b3303d7bf85e266caf76d87324f2b1ddc
6
+ metadata.gz: ece343f1a9bbf1b18332ffe7364ad3dc5627f48adf5536e2237068f87aa23dfe11346bdbd7be4a36dd4b321e07780b06d4aaf54611b0f277143900eaa6abd752
7
+ data.tar.gz: 656940016a33146c23481a8272e11f31bfca1515493cf103fe45f2b5235ab91e670605dfab3fe8bb614536b3bd4e640502e4ce123fb25c1cbda98845eb5fbb6f
data/CHANGELOG.md CHANGED
@@ -1,3 +1,94 @@
1
+ # 3.6.0 / 2024-12-16
2
+
3
+ ## Security:
4
+
5
+ * Stop storing executable names in ivars. Pull request
6
+ [#8307](https://github.com/rubygems/rubygems/pull/8307) by segiddins
7
+
8
+ ## Breaking changes:
9
+
10
+ * Drop ruby 3.0 support. Pull request
11
+ [#8091](https://github.com/rubygems/rubygems/pull/8091) by segiddins
12
+
13
+ ## Features:
14
+
15
+ * Add --attestation option to gem push. Pull request
16
+ [#8239](https://github.com/rubygems/rubygems/pull/8239) by segiddins
17
+
18
+ ## Enhancements:
19
+
20
+ * Skip unresolved deps warning on `Gem::Specification.reset` on benign
21
+ cases. Pull request
22
+ [#8309](https://github.com/rubygems/rubygems/pull/8309) by
23
+ deivid-rodriguez
24
+ * Let `gem install <name>` suggest `<name>-ruby` and `ruby-<name>` when
25
+ providing "did you mean" suggestions. Pull request
26
+ [#8197](https://github.com/rubygems/rubygems/pull/8197) by duckinator
27
+ * Update SPDX license list as of 2024-08-19. Pull request
28
+ [#8233](https://github.com/rubygems/rubygems/pull/8233) by
29
+ github-actions[bot]
30
+ * Add `--target-rbconfig` option to `gem install` and `gem update`
31
+ commands. Pull request
32
+ [#7628](https://github.com/rubygems/rubygems/pull/7628) by kateinoigakukun
33
+ * Skip nil-value keys to make metadata reproducible. Pull request
34
+ [#7129](https://github.com/rubygems/rubygems/pull/7129) by nobu
35
+ * Allow disabling installation of compiled extensions into lib through
36
+ `Gem.configuration.install_extension_in_lib`. Pull request
37
+ [#6463](https://github.com/rubygems/rubygems/pull/6463) by hsbt
38
+ * Installs bundler 2.6.0 as a default gem.
39
+
40
+ ## Bug fixes:
41
+
42
+ * Set $0 to exe when running `gem exec` to fix name in CLI output. Pull
43
+ request [#8267](https://github.com/rubygems/rubygems/pull/8267) by adam12
44
+ * Fix manifest in gem package using incorrect platform sometimes. Pull
45
+ request [#8202](https://github.com/rubygems/rubygems/pull/8202) by
46
+ deivid-rodriguez
47
+
48
+ ## Documentation:
49
+
50
+ * Fix missing single quote in git source example. Pull request
51
+ [#8303](https://github.com/rubygems/rubygems/pull/8303) by nobu
52
+ * Update the `gem install` demo in REAME to use a gem that just works on
53
+ Windows. Pull request
54
+ [#8262](https://github.com/rubygems/rubygems/pull/8262) by soda92
55
+ * Unify rubygems and bundler docs directory. Pull request
56
+ [#8159](https://github.com/rubygems/rubygems/pull/8159) by hsbt
57
+
58
+ # 3.5.23 / 2024-11-05
59
+
60
+ ## Enhancements:
61
+
62
+ * Validate user input encoding of `gem` CLI arguments. Pull request
63
+ [#6471](https://github.com/rubygems/rubygems/pull/6471) by
64
+ deivid-rodriguez
65
+ * Fix `gem update --system` leaving old default bundler executables
66
+ around. Pull request
67
+ [#8172](https://github.com/rubygems/rubygems/pull/8172) by
68
+ deivid-rodriguez
69
+ * Installs bundler 2.5.23 as a default gem.
70
+
71
+ ## Bug fixes:
72
+
73
+ * Fix commands with 2 MFA requests when webauthn is enabled. Pull request
74
+ [#8174](https://github.com/rubygems/rubygems/pull/8174) by
75
+ deivid-rodriguez
76
+ * Make `--enable-load-relative` binstubs prolog work when Ruby is not
77
+ installed in the same directory as the binstub. Pull request
78
+ [#7872](https://github.com/rubygems/rubygems/pull/7872) by
79
+ deivid-rodriguez
80
+
81
+ ## Performance:
82
+
83
+ * Speed up `gem install <nonexistent-gem>` by finding alternative name
84
+ suggestions faster. Pull request
85
+ [#8084](https://github.com/rubygems/rubygems/pull/8084) by duckinator
86
+
87
+ ## Documentation:
88
+
89
+ * Add missing comma in documentation. Pull request
90
+ [#8152](https://github.com/rubygems/rubygems/pull/8152) by leoarnold
91
+
1
92
  # 3.5.22 / 2024-10-16
2
93
 
3
94
  ## Enhancements:
data/Manifest.txt CHANGED
@@ -1,17 +1,12 @@
1
1
  CHANGELOG.md
2
2
  CODE_OF_CONDUCT.md
3
- CONTRIBUTING.md
4
3
  LICENSE.txt
5
- MAINTAINERS.txt
6
4
  MIT.txt
7
5
  Manifest.txt
8
- POLICIES.md
9
6
  README.md
10
- UPGRADING.md
11
7
  bundler/CHANGELOG.md
12
8
  bundler/LICENSE.md
13
9
  bundler/README.md
14
- bundler/UPGRADING.md
15
10
  bundler/bundler.gemspec
16
11
  bundler/exe/bundle
17
12
  bundler/exe/bundler
@@ -110,8 +105,12 @@ bundler/lib/bundler/man/bundle-console.1
110
105
  bundler/lib/bundler/man/bundle-console.1.ronn
111
106
  bundler/lib/bundler/man/bundle-doctor.1
112
107
  bundler/lib/bundler/man/bundle-doctor.1.ronn
108
+ bundler/lib/bundler/man/bundle-env.1
109
+ bundler/lib/bundler/man/bundle-env.1.ronn
113
110
  bundler/lib/bundler/man/bundle-exec.1
114
111
  bundler/lib/bundler/man/bundle-exec.1.ronn
112
+ bundler/lib/bundler/man/bundle-fund.1
113
+ bundler/lib/bundler/man/bundle-fund.1.ronn
115
114
  bundler/lib/bundler/man/bundle-gem.1
116
115
  bundler/lib/bundler/man/bundle-gem.1.ronn
117
116
  bundler/lib/bundler/man/bundle-help.1
@@ -124,6 +123,10 @@ bundler/lib/bundler/man/bundle-inject.1
124
123
  bundler/lib/bundler/man/bundle-inject.1.ronn
125
124
  bundler/lib/bundler/man/bundle-install.1
126
125
  bundler/lib/bundler/man/bundle-install.1.ronn
126
+ bundler/lib/bundler/man/bundle-issue.1
127
+ bundler/lib/bundler/man/bundle-issue.1.ronn
128
+ bundler/lib/bundler/man/bundle-licenses.1
129
+ bundler/lib/bundler/man/bundle-licenses.1.ronn
127
130
  bundler/lib/bundler/man/bundle-list.1
128
131
  bundler/lib/bundler/man/bundle-list.1.ronn
129
132
  bundler/lib/bundler/man/bundle-lock.1
@@ -156,6 +159,7 @@ bundler/lib/bundler/man/index.txt
156
159
  bundler/lib/bundler/match_metadata.rb
157
160
  bundler/lib/bundler/match_platform.rb
158
161
  bundler/lib/bundler/match_remote_metadata.rb
162
+ bundler/lib/bundler/materialization.rb
159
163
  bundler/lib/bundler/mirror.rb
160
164
  bundler/lib/bundler/plugin.rb
161
165
  bundler/lib/bundler/plugin/api.rb
@@ -257,7 +261,7 @@ bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb
257
261
  bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/version.rb
258
262
  bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/wrapper.rb
259
263
  bundler/lib/bundler/vendor/fileutils/.document
260
- bundler/lib/bundler/vendor/fileutils/LICENSE.txt
264
+ bundler/lib/bundler/vendor/fileutils/COPYING
261
265
  bundler/lib/bundler/vendor/fileutils/lib/fileutils.rb
262
266
  bundler/lib/bundler/vendor/net-http-persistent/.document
263
267
  bundler/lib/bundler/vendor/net-http-persistent/README.rdoc
@@ -284,8 +288,7 @@ bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_range.rb
284
288
  bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_solver.rb
285
289
  bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_union.rb
286
290
  bundler/lib/bundler/vendor/securerandom/.document
287
- bundler/lib/bundler/vendor/securerandom/LICENSE.txt
288
- bundler/lib/bundler/vendor/securerandom/lib/random/formatter.rb
291
+ bundler/lib/bundler/vendor/securerandom/COPYING
289
292
  bundler/lib/bundler/vendor/securerandom/lib/securerandom.rb
290
293
  bundler/lib/bundler/vendor/thor/.document
291
294
  bundler/lib/bundler/vendor/thor/LICENSE.md
@@ -328,7 +331,7 @@ bundler/lib/bundler/vendor/tsort/.document
328
331
  bundler/lib/bundler/vendor/tsort/LICENSE.txt
329
332
  bundler/lib/bundler/vendor/tsort/lib/tsort.rb
330
333
  bundler/lib/bundler/vendor/uri/.document
331
- bundler/lib/bundler/vendor/uri/LICENSE.txt
334
+ bundler/lib/bundler/vendor/uri/COPYING
332
335
  bundler/lib/bundler/vendor/uri/lib/uri.rb
333
336
  bundler/lib/bundler/vendor/uri/lib/uri/common.rb
334
337
  bundler/lib/bundler/vendor/uri/lib/uri/file.rb
@@ -357,6 +360,11 @@ bundler/lib/bundler/version.rb
357
360
  bundler/lib/bundler/vlad.rb
358
361
  bundler/lib/bundler/worker.rb
359
362
  bundler/lib/bundler/yaml_serializer.rb
363
+ doc/MAINTAINERS.txt
364
+ doc/bundler/UPGRADING.md
365
+ doc/rubygems/CONTRIBUTING.md
366
+ doc/rubygems/POLICIES.md
367
+ doc/rubygems/UPGRADING.md
360
368
  exe/gem
361
369
  exe/update_rubygems
362
370
  hide_lib_for_update/note.txt
@@ -526,6 +534,7 @@ lib/rubygems/ssl_certs/.document
526
534
  lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA.pem
527
535
  lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem
528
536
  lib/rubygems/stub_specification.rb
537
+ lib/rubygems/target_rbconfig.rb
529
538
  lib/rubygems/text.rb
530
539
  lib/rubygems/uninstaller.rb
531
540
  lib/rubygems/unknown_command_spell_checker.rb
@@ -560,9 +569,8 @@ lib/rubygems/vendor/molinillo/lib/molinillo/resolution.rb
560
569
  lib/rubygems/vendor/molinillo/lib/molinillo/resolver.rb
561
570
  lib/rubygems/vendor/molinillo/lib/molinillo/state.rb
562
571
  lib/rubygems/vendor/net-http/.document
563
- lib/rubygems/vendor/net-http/LICENSE.txt
572
+ lib/rubygems/vendor/net-http/COPYING
564
573
  lib/rubygems/vendor/net-http/lib/net/http.rb
565
- lib/rubygems/vendor/net-http/lib/net/http/backward.rb
566
574
  lib/rubygems/vendor/net-http/lib/net/http/exceptions.rb
567
575
  lib/rubygems/vendor/net-http/lib/net/http/generic_request.rb
568
576
  lib/rubygems/vendor/net-http/lib/net/http/header.rb
@@ -588,20 +596,19 @@ lib/rubygems/vendor/optparse/lib/optparse/time.rb
588
596
  lib/rubygems/vendor/optparse/lib/optparse/uri.rb
589
597
  lib/rubygems/vendor/optparse/lib/optparse/version.rb
590
598
  lib/rubygems/vendor/resolv/.document
591
- lib/rubygems/vendor/resolv/LICENSE.txt
599
+ lib/rubygems/vendor/resolv/COPYING
592
600
  lib/rubygems/vendor/resolv/lib/resolv.rb
593
601
  lib/rubygems/vendor/securerandom/.document
594
- lib/rubygems/vendor/securerandom/LICENSE.txt
595
- lib/rubygems/vendor/securerandom/lib/random/formatter.rb
602
+ lib/rubygems/vendor/securerandom/COPYING
596
603
  lib/rubygems/vendor/securerandom/lib/securerandom.rb
597
604
  lib/rubygems/vendor/timeout/.document
598
- lib/rubygems/vendor/timeout/LICENSE.txt
605
+ lib/rubygems/vendor/timeout/COPYING
599
606
  lib/rubygems/vendor/timeout/lib/timeout.rb
600
607
  lib/rubygems/vendor/tsort/.document
601
608
  lib/rubygems/vendor/tsort/LICENSE.txt
602
609
  lib/rubygems/vendor/tsort/lib/tsort.rb
603
610
  lib/rubygems/vendor/uri/.document
604
- lib/rubygems/vendor/uri/LICENSE.txt
611
+ lib/rubygems/vendor/uri/COPYING
605
612
  lib/rubygems/vendor/uri/lib/uri.rb
606
613
  lib/rubygems/vendor/uri/lib/uri/common.rb
607
614
  lib/rubygems/vendor/uri/lib/uri/file.rb
data/README.md CHANGED
@@ -10,18 +10,23 @@ that can be shared and used by other developers. See our guide on publishing a G
10
10
 
11
11
  ## Getting Started
12
12
 
13
- Installing and managing a Gem is done through the `gem` command. To install a Gem such as [Nokogiri](https://github.com/sparklemotion/nokogiri) which lets
14
- you read and parse XML in Ruby:
13
+ Installing and managing a Gem is done through the `gem` command. To install a Gem such as [Faraday][faraday]:
15
14
 
16
- $ gem install nokogiri
15
+ ```bash
16
+ gem install faraday
17
+ ```
17
18
 
18
- RubyGems will download the Nokogiri Gem from RubyGems.org and install it into your Ruby environment.
19
+ [faraday]: https://github.com/lostisland/faraday?tab=readme-ov-file
19
20
 
20
- Finally, inside your Ruby program, load the Nokogiri gem and start parsing your XML:
21
+ RubyGems will download the Faraday Gem from RubyGems.org and install it into your Ruby environment.
21
22
 
22
- require 'nokogiri'
23
+ Finally, inside your Ruby program, load the Faraday gem and start hacking:
23
24
 
24
- Nokogiri.XML('<h1>Hello World</h1>')
25
+ ```ruby
26
+ require 'faraday'
27
+ response = Faraday.get('https://rubygems.org')
28
+ # do something with `response`...
29
+ ```
25
30
 
26
31
  For more information about how to use RubyGems, see our RubyGems basics guide at [guides.rubygems.org](https://guides.rubygems.org/rubygems-basics/)
27
32
 
@@ -60,7 +65,7 @@ To upgrade to the latest RubyGems, run:
60
65
 
61
66
  $ gem update --system
62
67
 
63
- See [UPGRADING](UPGRADING.md) for more details and alternative instructions.
68
+ See [UPGRADING](doc/bundler/UPGRADING.md) for more details and alternative instructions.
64
69
 
65
70
  ## Release policy
66
71
 
@@ -105,7 +110,7 @@ RubyGems is managed by [Ruby Central](https://rubycentral.org), a non-profit org
105
110
 
106
111
  ### Contributing
107
112
 
108
- If you'd like to contribute to RubyGems, that's awesome, and we <3 you. Check out our [guide to contributing](CONTRIBUTING.md) for more information.
113
+ If you'd like to contribute to RubyGems, that's awesome, and we <3 you. Check out our [guide to contributing](doc/rubygems/CONTRIBUTING.md) for more information.
109
114
 
110
115
  ### Code of Conduct
111
116
 
data/bundler/CHANGELOG.md CHANGED
@@ -1,3 +1,86 @@
1
+ # 2.6.0 (December 16, 2024)
2
+
3
+ ## Security:
4
+
5
+ - Fix gemfury credentials written to logs in verbose mode [#8283](https://github.com/rubygems/rubygems/pull/8283)
6
+ - Fix private registry credentials being written to logs [#8222](https://github.com/rubygems/rubygems/pull/8222)
7
+
8
+ ## Breaking changes:
9
+
10
+ - Drop ruby 3.0 support [#8091](https://github.com/rubygems/rubygems/pull/8091)
11
+ - Remove client-side MD5 ETag transition from compact index client [#7677](https://github.com/rubygems/rubygems/pull/7677)
12
+
13
+ ## Deprecations:
14
+
15
+ - Cancel `bundle console` deprecation [#8218](https://github.com/rubygems/rubygems/pull/8218)
16
+ - Warn when platform of installed gem differs from platform in the lockfile [#8029](https://github.com/rubygems/rubygems/pull/8029)
17
+ - Cancel deprecation of Gemfiles without a global source [#8213](https://github.com/rubygems/rubygems/pull/8213)
18
+
19
+ ## Features:
20
+
21
+ - Add a `lockfile_checksums` configuration to include checksums in fresh lockfiles [#8219](https://github.com/rubygems/rubygems/pull/8219)
22
+ - Add `bundle lock --add-checksums` to add checksums to an existing lockfile [#8214](https://github.com/rubygems/rubygems/pull/8214)
23
+
24
+ ## Performance:
25
+
26
+ - Enable a couple of performance cops [#8261](https://github.com/rubygems/rubygems/pull/8261)
27
+ - Remove override of worker jobs for `bundle install --local` [#8248](https://github.com/rubygems/rubygems/pull/8248)
28
+
29
+ ## Enhancements:
30
+
31
+ - Support `bundle exec <relative-path-to-script>` when `Kernel.exec` is used under the hood [#8294](https://github.com/rubygems/rubygems/pull/8294)
32
+ - Improve working with different rubies using the same lockfile [#8251](https://github.com/rubygems/rubygems/pull/8251)
33
+ - Define a few `inspect` methods to help debugging [#8266](https://github.com/rubygems/rubygems/pull/8266)
34
+ - Include original error when openssl fails to load [#8232](https://github.com/rubygems/rubygems/pull/8232)
35
+ - Automatically fix lockfile when it's missing dependencies [#8103](https://github.com/rubygems/rubygems/pull/8103)
36
+ - Fix some JRuby warnings when using `bundler/setup` with Ruby's -w flag [#8205](https://github.com/rubygems/rubygems/pull/8205)
37
+ - Add a `--normalize-platforms` flag to `bundle lock` [#7896](https://github.com/rubygems/rubygems/pull/7896)
38
+ - Add plugin hooks for Bundler.require [#3439](https://github.com/rubygems/rubygems/pull/3439)
39
+
40
+ ## Bug fixes:
41
+
42
+ - Fix restarting with locked version when `$PROGRAM_NAME` has been changed [#8320](https://github.com/rubygems/rubygems/pull/8320)
43
+ - Restore the previous cache format for git sources [#8296](https://github.com/rubygems/rubygems/pull/8296)
44
+ - Fix installs of subdependencies of unlocked dependencies to be conservative [#8281](https://github.com/rubygems/rubygems/pull/8281)
45
+ - Fix test task name on generated readme when using test-unit [#8291](https://github.com/rubygems/rubygems/pull/8291)
46
+ - Fix `bundle exec` executable detection on windows [#8276](https://github.com/rubygems/rubygems/pull/8276)
47
+ - Fix `bundle remove` sometimes not removing gems [#8278](https://github.com/rubygems/rubygems/pull/8278)
48
+ - Fix issue with git gems locking incorrect specs sometimes [#8269](https://github.com/rubygems/rubygems/pull/8269)
49
+
50
+ ## Documentation:
51
+
52
+ - Normalize command flag documentation and make sure all flags are documented [#8313](https://github.com/rubygems/rubygems/pull/8313)
53
+ - Add missing man pages for `bundle env` and `bundle licenses` [#8315](https://github.com/rubygems/rubygems/pull/8315)
54
+ - Add man page for 'bundle issue' command [#8271](https://github.com/rubygems/rubygems/pull/8271)
55
+ - Add man page for 'bundle fund' command [#8258](https://github.com/rubygems/rubygems/pull/8258)
56
+ - Move pry-related contents to `debugging.md` [#8263](https://github.com/rubygems/rubygems/pull/8263)
57
+ - Add debugging instruction on Windows [#8236](https://github.com/rubygems/rubygems/pull/8236)
58
+ - Unify rubygems and bundler docs directory [#8159](https://github.com/rubygems/rubygems/pull/8159)
59
+
60
+ # 2.5.23 (November 5, 2024)
61
+
62
+ ## Enhancements:
63
+
64
+ - Add useful error message for plugin load [#7639](https://github.com/rubygems/rubygems/pull/7639)
65
+ - Indent github workflow steps for generated gems [#8193](https://github.com/rubygems/rubygems/pull/8193)
66
+ - Improve several permission errors [#8168](https://github.com/rubygems/rubygems/pull/8168)
67
+ - Add `bundle add` `--quiet` option [#8157](https://github.com/rubygems/rubygems/pull/8157)
68
+
69
+ ## Bug fixes:
70
+
71
+ - Fix incompatible encodings error when paths with UTF-8 characters are involved [#8196](https://github.com/rubygems/rubygems/pull/8196)
72
+ - Update `--ext=rust` to support compiling the native extension from source [#7610](https://github.com/rubygems/rubygems/pull/7610)
73
+ - Print a proper error when there's a previous empty installation path with bad permissions [#8169](https://github.com/rubygems/rubygems/pull/8169)
74
+ - Fix running `bundler` (with a final `r`) in a `bundle exec` context [#8165](https://github.com/rubygems/rubygems/pull/8165)
75
+ - Handle two `gemspec` usages in same Gemfile with same dep and compatible requirements [#7999](https://github.com/rubygems/rubygems/pull/7999)
76
+ - Fix `bundle check` sometimes locking gems under the wrong source [#8148](https://github.com/rubygems/rubygems/pull/8148)
77
+
78
+ ## Documentation:
79
+
80
+ - Remove confusing `bundle config` documentation [#8177](https://github.com/rubygems/rubygems/pull/8177)
81
+ - Rename bundler inline's `install` parameter and clarify docs [#8170](https://github.com/rubygems/rubygems/pull/8170)
82
+ - Clarify `bundle install --quiet` documentation [#8163](https://github.com/rubygems/rubygems/pull/8163)
83
+
1
84
  # 2.5.22 (October 16, 2024)
2
85
 
3
86
  ## Enhancements:
@@ -29,10 +29,10 @@ Gem::Specification.new do |s|
29
29
  "source_code_uri" => "https://github.com/rubygems/rubygems/tree/master/bundler",
30
30
  }
31
31
 
32
- s.required_ruby_version = ">= 3.0.0"
32
+ s.required_ruby_version = ">= 3.1.0"
33
33
 
34
34
  # It should match the RubyGems version shipped with `required_ruby_version` above
35
- s.required_rubygems_version = ">= 3.2.3"
35
+ s.required_rubygems_version = ">= 3.3.3"
36
36
 
37
37
  s.files = Dir.glob("lib/bundler{.rb,/**/*}", File::FNM_DOTMATCH).reject {|f| File.directory?(f) }
38
38
 
@@ -4,8 +4,8 @@ module Bundler
4
4
  # Represents metadata from when the Bundler gem was built.
5
5
  module BuildMetadata
6
6
  # begin ivars
7
- @built_at = "2024-10-16".freeze
8
- @git_commit_sha = "342d4542fda".freeze
7
+ @built_at = "2024-12-16".freeze
8
+ @git_commit_sha = "d6be0319aaf".freeze
9
9
  @release = true
10
10
  # end ivars
11
11
 
@@ -12,6 +12,8 @@ module Bundler
12
12
  end
13
13
 
14
14
  def run
15
+ Bundler.ui.level = "warn" if options[:quiet]
16
+
15
17
  validate_options!
16
18
  inject_dependencies
17
19
  perform_bundle_install unless options["skip-install"]
@@ -15,7 +15,7 @@ module Bundler
15
15
  definition.validate_runtime!
16
16
 
17
17
  begin
18
- definition.resolve_only_locally!
18
+ definition.check!
19
19
  not_installed = definition.missing_specs
20
20
  rescue GemNotFound, GitError, SolveFailure
21
21
  Bundler.ui.error "Bundler can't satisfy your Gemfile's dependencies."
@@ -32,7 +32,7 @@ module Bundler
32
32
  Bundler.ui.error "This bundle has been frozen, but there is no #{SharedHelpers.relative_lockfile_path} present"
33
33
  exit 1
34
34
  else
35
- Bundler.load.lock(preserve_unknown_sections: true) unless options[:"dry-run"]
35
+ definition.lock(true) unless options[:"dry-run"]
36
36
  Bundler.ui.info "The Gemfile's dependencies are satisfied"
37
37
  end
38
38
  end
@@ -9,10 +9,6 @@ module Bundler
9
9
  end
10
10
 
11
11
  def run
12
- message = "bundle console will be replaced by `bin/console` generated by `bundle gem <name>`"
13
- removed_message = "bundle console has been replaced by `bin/console` generated by `bundle gem <name>`"
14
- Bundler::SharedHelpers.major_deprecation 2, message, removed_message: removed_message
15
-
16
12
  group ? Bundler.require(:default, *group.split(" ").map!(&:to_sym)) : Bundler.require
17
13
  ARGV.clear
18
14
 
@@ -32,11 +32,11 @@ module Bundler
32
32
 
33
33
  def dylibs_ldd(path)
34
34
  output = `/usr/bin/ldd #{path.shellescape}`.chomp
35
- output.split("\n").map do |l|
35
+ output.split("\n").filter_map do |l|
36
36
  match = l.match(LDD_REGEX)
37
37
  next if match.nil?
38
38
  match.captures[0]
39
- end.compact
39
+ end
40
40
  end
41
41
 
42
42
  def dylibs(path)
@@ -89,11 +89,11 @@ module Bundler
89
89
 
90
90
  if broken_links.any?
91
91
  message = "The following gems are missing OS dependencies:"
92
- broken_links.map do |spec, paths|
92
+ broken_links.flat_map do |spec, paths|
93
93
  paths.uniq.map do |path|
94
94
  "\n * #{spec.name}: #{path}"
95
95
  end
96
- end.flatten.sort.each {|m| message += m }
96
+ end.sort.each {|m| message += m }
97
97
  raise ProductionError, message
98
98
  elsif !permissions_valid
99
99
  Bundler.ui.info "No issues found with the installed bundle"
@@ -22,6 +22,7 @@ module Bundler
22
22
  if !Bundler.settings[:disable_exec_load] && ruby_shebang?(bin_path)
23
23
  return kernel_load(bin_path, *args)
24
24
  end
25
+ bin_path = "./" + bin_path unless File.absolute_path?(bin_path)
25
26
  kernel_exec(bin_path, *args)
26
27
  else
27
28
  # exec using the given command
@@ -446,7 +446,7 @@ module Bundler
446
446
  end
447
447
 
448
448
  def required_ruby_version
449
- "3.0.0"
449
+ "3.1.0"
450
450
  end
451
451
 
452
452
  def rubocop_version
@@ -73,11 +73,11 @@ module Bundler
73
73
  end
74
74
 
75
75
  def gem_dependencies
76
- @gem_dependencies ||= Bundler.definition.specs.map do |spec|
76
+ @gem_dependencies ||= Bundler.definition.specs.filter_map do |spec|
77
77
  dependency = spec.dependencies.find {|dep| dep.name == gem_name }
78
78
  next unless dependency
79
79
  "#{spec.name} (#{spec.version}) depends on #{gem_name} (#{dependency.requirements_list.join(", ")})"
80
- end.compact.sort
80
+ end.sort
81
81
  end
82
82
  end
83
83
  end
@@ -48,7 +48,7 @@ module Bundler
48
48
 
49
49
  def last_version_number
50
50
  definition = Bundler.definition(true)
51
- definition.resolve_remotely!
51
+ definition.remotely!
52
52
  specs = definition.index[name].sort_by(&:version)
53
53
  unless options[:pre]
54
54
  specs.delete_if {|b| b.respond_to?(:version) && b.version.prerelease? }
@@ -23,6 +23,10 @@ module Bundler
23
23
  # Disable color in deployment mode
24
24
  Bundler.ui.shell = Thor::Shell::Basic.new if options[:deployment]
25
25
 
26
+ if target_rbconfig_path = options[:"target-rbconfig"]
27
+ Bundler.rubygems.set_target_rbconfig(target_rbconfig_path)
28
+ end
29
+
26
30
  check_for_options_conflicts
27
31
 
28
32
  check_trust_policy
@@ -14,6 +14,8 @@ module Bundler
14
14
  exit 1
15
15
  end
16
16
 
17
+ check_for_conflicting_options
18
+
17
19
  print = options[:print]
18
20
  previous_output_stream = Bundler.ui.output_stream
19
21
  Bundler.ui.output_stream = :stderr if print
@@ -38,6 +40,7 @@ module Bundler
38
40
 
39
41
  Bundler.settings.temporary(frozen: false) do
40
42
  definition = Bundler.definition(update, file)
43
+ definition.add_checksums if options["add-checksums"]
41
44
 
42
45
  Bundler::CLI::Common.configure_gem_version_promoter(definition, options) if options[:update]
43
46
 
@@ -58,7 +61,11 @@ module Bundler
58
61
  raise InvalidOption, "Removing all platforms from the bundle is not allowed"
59
62
  end
60
63
 
61
- definition.resolve_remotely! unless options[:local]
64
+ definition.remotely! unless options[:local]
65
+
66
+ if options["normalize-platforms"]
67
+ definition.normalize_platforms
68
+ end
62
69
 
63
70
  if print
64
71
  puts definition.to_lock
@@ -70,5 +77,17 @@ module Bundler
70
77
 
71
78
  Bundler.ui.output_stream = previous_output_stream
72
79
  end
80
+
81
+ private
82
+
83
+ def check_for_conflicting_options
84
+ if options["normalize-platforms"] && options["add-platform"].any?
85
+ raise InvalidOption, "--normalize-platforms can't be used with --add-platform"
86
+ end
87
+
88
+ if options["normalize-platforms"] && options["remove-platform"].any?
89
+ raise InvalidOption, "--normalize-platforms can't be used with --remove-platform"
90
+ end
91
+ end
73
92
  end
74
93
  end
@@ -49,7 +49,7 @@ module Bundler
49
49
  true
50
50
  end.map(&:name)
51
51
 
52
- jobs = installer.send(:installation_parallelization, {})
52
+ jobs = installer.send(:installation_parallelization)
53
53
  pristine_count = definition.specs.count - installed_specs.count
54
54
  # allow a pristining a single gem to skip the parallel worker
55
55
  jobs = [jobs, pristine_count].min
@@ -59,9 +59,9 @@ module Bundler
59
59
  definition = Bundler.definition(true)
60
60
  if options[:outdated]
61
61
  Bundler.ui.info "Fetching remote specs for outdated check...\n\n"
62
- Bundler.ui.silence { definition.resolve_remotely! }
62
+ Bundler.ui.silence { definition.remotely! }
63
63
  else
64
- definition.resolve_with_cache!
64
+ definition.with_cache!
65
65
  end
66
66
  Bundler.reset!
67
67
  definition.specs