rubygems-update 3.4.21 → 3.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (564) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +132 -2
  3. data/Manifest.txt +39 -221
  4. data/README.md +1 -3
  5. data/bundler/CHANGELOG.md +74 -0
  6. data/bundler/README.md +1 -2
  7. data/bundler/bundler.gemspec +4 -2
  8. data/bundler/exe/bundle +1 -10
  9. data/bundler/lib/bundler/build_metadata.rb +3 -3
  10. data/bundler/lib/bundler/capistrano.rb +1 -1
  11. data/bundler/lib/bundler/checksum.rb +245 -0
  12. data/bundler/lib/bundler/ci_detector.rb +75 -0
  13. data/bundler/lib/bundler/cli/add.rb +3 -3
  14. data/bundler/lib/bundler/cli/binstubs.rb +4 -4
  15. data/bundler/lib/bundler/cli/cache.rb +1 -1
  16. data/bundler/lib/bundler/cli/check.rb +1 -1
  17. data/bundler/lib/bundler/cli/common.rb +9 -1
  18. data/bundler/lib/bundler/cli/config.rb +8 -7
  19. data/bundler/lib/bundler/cli/console.rb +3 -2
  20. data/bundler/lib/bundler/cli/doctor.rb +2 -2
  21. data/bundler/lib/bundler/cli/exec.rb +1 -1
  22. data/bundler/lib/bundler/cli/gem.rb +31 -23
  23. data/bundler/lib/bundler/cli/info.rb +2 -13
  24. data/bundler/lib/bundler/cli/install.rb +5 -4
  25. data/bundler/lib/bundler/cli/issue.rb +1 -1
  26. data/bundler/lib/bundler/cli/lock.rb +4 -4
  27. data/bundler/lib/bundler/cli/open.rb +1 -1
  28. data/bundler/lib/bundler/cli/outdated.rb +6 -6
  29. data/bundler/lib/bundler/cli/plugin.rb +7 -14
  30. data/bundler/lib/bundler/cli/pristine.rb +38 -30
  31. data/bundler/lib/bundler/cli/show.rb +2 -2
  32. data/bundler/lib/bundler/cli/update.rb +5 -5
  33. data/bundler/lib/bundler/cli.rb +215 -263
  34. data/bundler/lib/bundler/compact_index_client/cache.rb +29 -9
  35. data/bundler/lib/bundler/compact_index_client/cache_file.rb +153 -0
  36. data/bundler/lib/bundler/compact_index_client/gem_parser.rb +7 -3
  37. data/bundler/lib/bundler/compact_index_client/updater.rb +79 -81
  38. data/bundler/lib/bundler/compact_index_client.rb +14 -7
  39. data/bundler/lib/bundler/constants.rb +1 -1
  40. data/bundler/lib/bundler/current_ruby.rb +5 -21
  41. data/bundler/lib/bundler/definition.rb +43 -16
  42. data/bundler/lib/bundler/dependency.rb +16 -12
  43. data/bundler/lib/bundler/digest.rb +2 -2
  44. data/bundler/lib/bundler/dsl.rb +43 -25
  45. data/bundler/lib/bundler/endpoint_specification.rb +6 -2
  46. data/bundler/lib/bundler/env.rb +1 -3
  47. data/bundler/lib/bundler/errors.rb +58 -0
  48. data/bundler/lib/bundler/fetcher/base.rb +3 -1
  49. data/bundler/lib/bundler/fetcher/compact_index.rb +4 -4
  50. data/bundler/lib/bundler/fetcher/downloader.rb +13 -11
  51. data/bundler/lib/bundler/fetcher/gem_remote_fetcher.rb +16 -0
  52. data/bundler/lib/bundler/fetcher/index.rb +1 -1
  53. data/bundler/lib/bundler/fetcher.rb +28 -25
  54. data/bundler/lib/bundler/friendly_errors.rb +5 -5
  55. data/bundler/lib/bundler/gem_helper.rb +1 -1
  56. data/bundler/lib/bundler/gem_helpers.rb +12 -2
  57. data/bundler/lib/bundler/graph.rb +9 -9
  58. data/bundler/lib/bundler/index.rb +1 -2
  59. data/bundler/lib/bundler/injector.rb +1 -1
  60. data/bundler/lib/bundler/inline.rb +3 -3
  61. data/bundler/lib/bundler/installer/gem_installer.rb +10 -10
  62. data/bundler/lib/bundler/installer/parallel_installer.rb +16 -8
  63. data/bundler/lib/bundler/installer/standalone.rb +2 -3
  64. data/bundler/lib/bundler/installer.rb +9 -9
  65. data/bundler/lib/bundler/lazy_specification.rb +28 -17
  66. data/bundler/lib/bundler/lockfile_generator.rb +9 -0
  67. data/bundler/lib/bundler/lockfile_parser.rb +81 -10
  68. data/bundler/lib/bundler/man/bundle-add.1 +3 -26
  69. data/bundler/lib/bundler/man/bundle-binstubs.1 +4 -16
  70. data/bundler/lib/bundler/man/bundle-cache.1 +3 -24
  71. data/bundler/lib/bundler/man/bundle-check.1 +3 -12
  72. data/bundler/lib/bundler/man/bundle-clean.1 +3 -10
  73. data/bundler/lib/bundler/man/bundle-config.1 +20 -211
  74. data/bundler/lib/bundler/man/bundle-config.1.ronn +6 -0
  75. data/bundler/lib/bundler/man/bundle-console.1 +4 -22
  76. data/bundler/lib/bundler/man/bundle-doctor.1 +4 -18
  77. data/bundler/lib/bundler/man/bundle-exec.1 +12 -73
  78. data/bundler/lib/bundler/man/bundle-gem.1 +13 -49
  79. data/bundler/lib/bundler/man/bundle-help.1 +3 -7
  80. data/bundler/lib/bundler/man/bundle-info.1 +3 -9
  81. data/bundler/lib/bundler/man/bundle-init.1 +3 -12
  82. data/bundler/lib/bundler/man/bundle-inject.1 +6 -19
  83. data/bundler/lib/bundler/man/bundle-install.1 +27 -125
  84. data/bundler/lib/bundler/man/bundle-install.1.ronn +1 -0
  85. data/bundler/lib/bundler/man/bundle-list.1 +4 -19
  86. data/bundler/lib/bundler/man/bundle-lock.1 +5 -29
  87. data/bundler/lib/bundler/man/bundle-open.1 +7 -27
  88. data/bundler/lib/bundler/man/bundle-outdated.1 +3 -55
  89. data/bundler/lib/bundler/man/bundle-outdated.1.ronn +1 -0
  90. data/bundler/lib/bundler/man/bundle-platform.1 +5 -27
  91. data/bundler/lib/bundler/man/bundle-plugin.1 +3 -29
  92. data/bundler/lib/bundler/man/bundle-pristine.1 +5 -16
  93. data/bundler/lib/bundler/man/bundle-remove.1 +4 -14
  94. data/bundler/lib/bundler/man/bundle-show.1 +3 -10
  95. data/bundler/lib/bundler/man/bundle-update.1 +18 -137
  96. data/bundler/lib/bundler/man/bundle-version.1 +3 -16
  97. data/bundler/lib/bundler/man/bundle-viz.1 +4 -16
  98. data/bundler/lib/bundler/man/bundle.1 +5 -44
  99. data/bundler/lib/bundler/man/gemfile.5 +24 -301
  100. data/bundler/lib/bundler/man/gemfile.5.ronn +4 -0
  101. data/bundler/lib/bundler/match_metadata.rb +4 -0
  102. data/bundler/lib/bundler/match_platform.rb +1 -1
  103. data/bundler/lib/bundler/plugin/api/source.rb +3 -2
  104. data/bundler/lib/bundler/plugin/index.rb +8 -0
  105. data/bundler/lib/bundler/plugin/installer.rb +1 -1
  106. data/bundler/lib/bundler/plugin.rb +12 -5
  107. data/bundler/lib/bundler/resolver/base.rb +1 -1
  108. data/bundler/lib/bundler/resolver/incompatibility.rb +1 -1
  109. data/bundler/lib/bundler/resolver/spec_group.rb +1 -4
  110. data/bundler/lib/bundler/resolver.rb +16 -16
  111. data/bundler/lib/bundler/ruby_dsl.rb +20 -12
  112. data/bundler/lib/bundler/ruby_version.rb +1 -1
  113. data/bundler/lib/bundler/rubygems_ext.rb +27 -54
  114. data/bundler/lib/bundler/rubygems_gem_installer.rb +23 -58
  115. data/bundler/lib/bundler/rubygems_integration.rb +25 -94
  116. data/bundler/lib/bundler/runtime.rb +2 -2
  117. data/bundler/lib/bundler/self_manager.rb +23 -7
  118. data/bundler/lib/bundler/settings.rb +27 -7
  119. data/bundler/lib/bundler/setup.rb +4 -1
  120. data/bundler/lib/bundler/shared_helpers.rb +35 -13
  121. data/bundler/lib/bundler/source/git/git_proxy.rb +22 -14
  122. data/bundler/lib/bundler/source/git.rb +4 -3
  123. data/bundler/lib/bundler/source/metadata.rb +16 -16
  124. data/bundler/lib/bundler/source/path.rb +7 -6
  125. data/bundler/lib/bundler/source/rubygems.rb +21 -14
  126. data/bundler/lib/bundler/source.rb +2 -0
  127. data/bundler/lib/bundler/spec_set.rb +43 -12
  128. data/bundler/lib/bundler/stub_specification.rb +1 -0
  129. data/bundler/lib/bundler/templates/Executable.bundler +1 -1
  130. data/bundler/lib/bundler/templates/newgem/README.md.tt +3 -3
  131. data/bundler/lib/bundler/templates/newgem/Rakefile.tt +2 -6
  132. data/bundler/lib/bundler/templates/newgem/ext/newgem/Cargo.toml.tt +1 -1
  133. data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +1 -1
  134. data/bundler/lib/bundler/templates/newgem/standard.yml.tt +1 -1
  135. data/bundler/lib/bundler/ui/shell.rb +2 -2
  136. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/version.rb +1 -1
  137. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool.rb +53 -6
  138. data/bundler/lib/bundler/vendor/fileutils/lib/fileutils.rb +8 -20
  139. data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/connection.rb +4 -3
  140. data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/pool.rb +23 -11
  141. data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/timed_stack_multi.rb +1 -1
  142. data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +36 -36
  143. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/create_file.rb +3 -2
  144. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/directory.rb +1 -1
  145. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/empty_directory.rb +1 -1
  146. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +8 -10
  147. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/inject_into_file.rb +15 -4
  148. data/bundler/lib/bundler/vendor/thor/lib/thor/actions.rb +15 -15
  149. data/bundler/lib/bundler/vendor/thor/lib/thor/base.rb +140 -14
  150. data/bundler/lib/bundler/vendor/thor/lib/thor/command.rb +13 -4
  151. data/bundler/lib/bundler/vendor/thor/lib/thor/core_ext/hash_with_indifferent_access.rb +4 -0
  152. data/bundler/lib/bundler/vendor/thor/lib/thor/error.rb +16 -25
  153. data/bundler/lib/bundler/vendor/thor/lib/thor/group.rb +1 -1
  154. data/bundler/lib/bundler/vendor/thor/lib/thor/invocation.rb +1 -1
  155. data/bundler/lib/bundler/vendor/thor/lib/thor/nested_context.rb +2 -2
  156. data/bundler/lib/bundler/vendor/thor/lib/thor/parser/argument.rb +20 -1
  157. data/bundler/lib/bundler/vendor/thor/lib/thor/parser/arguments.rb +33 -17
  158. data/bundler/lib/bundler/vendor/thor/lib/thor/parser/option.rb +27 -8
  159. data/bundler/lib/bundler/vendor/thor/lib/thor/parser/options.rb +44 -6
  160. data/bundler/lib/bundler/vendor/thor/lib/thor/rake_compat.rb +2 -2
  161. data/bundler/lib/bundler/vendor/thor/lib/thor/runner.rb +40 -30
  162. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +26 -150
  163. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/color.rb +4 -46
  164. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/column_printer.rb +29 -0
  165. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/html.rb +3 -45
  166. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/lcs_diff.rb +49 -0
  167. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/table_printer.rb +134 -0
  168. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/terminal.rb +42 -0
  169. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/wrapped_printer.rb +38 -0
  170. data/bundler/lib/bundler/vendor/thor/lib/thor/shell.rb +1 -1
  171. data/bundler/lib/bundler/vendor/thor/lib/thor/util.rb +8 -7
  172. data/bundler/lib/bundler/vendor/thor/lib/thor/version.rb +1 -1
  173. data/bundler/lib/bundler/vendor/thor/lib/thor.rb +155 -8
  174. data/bundler/lib/bundler/vendor/tsort/lib/tsort.rb +3 -0
  175. data/bundler/lib/bundler/vendor/uri/lib/uri/common.rb +256 -132
  176. data/bundler/lib/bundler/vendor/uri/lib/uri/generic.rb +1 -0
  177. data/bundler/lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +95 -31
  178. data/bundler/lib/bundler/vendor/uri/lib/uri/version.rb +1 -1
  179. data/bundler/lib/bundler/vendored_net_http.rb +8 -0
  180. data/bundler/lib/bundler/vendored_persistent.rb +0 -4
  181. data/bundler/lib/bundler/vendored_timeout.rb +8 -0
  182. data/bundler/lib/bundler/version.rb +1 -1
  183. data/bundler/lib/bundler/vlad.rb +1 -1
  184. data/bundler/lib/bundler/yaml_serializer.rb +9 -4
  185. data/bundler/lib/bundler.rb +38 -35
  186. data/lib/rubygems/available_set.rb +4 -4
  187. data/lib/rubygems/basic_specification.rb +35 -37
  188. data/lib/rubygems/bundler_version_finder.rb +4 -4
  189. data/lib/rubygems/ci_detector.rb +75 -0
  190. data/lib/rubygems/command.rb +15 -17
  191. data/lib/rubygems/command_manager.rb +5 -4
  192. data/lib/rubygems/commands/build_command.rb +2 -2
  193. data/lib/rubygems/commands/cert_command.rb +2 -3
  194. data/lib/rubygems/commands/check_command.rb +4 -4
  195. data/lib/rubygems/commands/cleanup_command.rb +12 -14
  196. data/lib/rubygems/commands/contents_command.rb +5 -5
  197. data/lib/rubygems/commands/dependency_command.rb +4 -5
  198. data/lib/rubygems/commands/environment_command.rb +3 -5
  199. data/lib/rubygems/commands/exec_command.rb +1 -1
  200. data/lib/rubygems/commands/fetch_command.rb +2 -2
  201. data/lib/rubygems/commands/generate_index_command.rb +39 -74
  202. data/lib/rubygems/commands/help_command.rb +4 -4
  203. data/lib/rubygems/commands/info_command.rb +2 -2
  204. data/lib/rubygems/commands/install_command.rb +8 -16
  205. data/lib/rubygems/commands/list_command.rb +2 -2
  206. data/lib/rubygems/commands/lock_command.rb +1 -1
  207. data/lib/rubygems/commands/open_command.rb +1 -1
  208. data/lib/rubygems/commands/owner_command.rb +1 -1
  209. data/lib/rubygems/commands/pristine_command.rb +13 -15
  210. data/lib/rubygems/commands/push_command.rb +2 -2
  211. data/lib/rubygems/commands/query_command.rb +4 -5
  212. data/lib/rubygems/commands/rdoc_command.rb +2 -2
  213. data/lib/rubygems/commands/search_command.rb +2 -2
  214. data/lib/rubygems/commands/setup_command.rb +33 -36
  215. data/lib/rubygems/commands/sources_command.rb +12 -12
  216. data/lib/rubygems/commands/specification_command.rb +10 -10
  217. data/lib/rubygems/commands/stale_command.rb +1 -1
  218. data/lib/rubygems/commands/uninstall_command.rb +13 -14
  219. data/lib/rubygems/commands/unpack_command.rb +7 -7
  220. data/lib/rubygems/commands/update_command.rb +11 -13
  221. data/lib/rubygems/commands/which_command.rb +1 -1
  222. data/lib/rubygems/commands/yank_command.rb +1 -1
  223. data/lib/rubygems/compatibility.rb +5 -6
  224. data/lib/rubygems/config_file.rb +7 -7
  225. data/lib/rubygems/core_ext/kernel_gem.rb +0 -2
  226. data/lib/rubygems/core_ext/kernel_require.rb +20 -49
  227. data/lib/rubygems/core_ext/kernel_warn.rb +1 -1
  228. data/lib/rubygems/core_ext/tcpsocket_init.rb +1 -1
  229. data/lib/rubygems/defaults.rb +15 -3
  230. data/lib/rubygems/dependency.rb +12 -14
  231. data/lib/rubygems/dependency_installer.rb +30 -31
  232. data/lib/rubygems/dependency_list.rb +1 -1
  233. data/lib/rubygems/deprecate.rb +16 -15
  234. data/lib/rubygems/doctor.rb +6 -6
  235. data/lib/rubygems/errors.rb +2 -6
  236. data/lib/rubygems/exceptions.rb +2 -1
  237. data/lib/rubygems/ext/builder.rb +15 -10
  238. data/lib/rubygems/ext/cargo_builder.rb +5 -5
  239. data/lib/rubygems/ext/ext_conf_builder.rb +2 -4
  240. data/lib/rubygems/ext/rake_builder.rb +1 -1
  241. data/lib/rubygems/gem_runner.rb +4 -4
  242. data/lib/rubygems/gemcutter_utilities/webauthn_listener/response.rb +3 -3
  243. data/lib/rubygems/gemcutter_utilities/webauthn_poller.rb +3 -3
  244. data/lib/rubygems/gemcutter_utilities.rb +18 -19
  245. data/lib/rubygems/install_update_options.rb +18 -19
  246. data/lib/rubygems/installer.rb +66 -45
  247. data/lib/rubygems/installer_uninstaller_utils.rb +0 -2
  248. data/lib/rubygems/local_remote_options.rb +8 -11
  249. data/lib/rubygems/name_tuple.rb +7 -9
  250. data/lib/rubygems/net/http.rb +3 -0
  251. data/lib/rubygems/net-http/LICENSE.txt +22 -0
  252. data/lib/rubygems/net-http/lib/net/http/backward.rb +40 -0
  253. data/lib/rubygems/net-http/lib/net/http/exceptions.rb +34 -0
  254. data/lib/rubygems/net-http/lib/net/http/generic_request.rb +414 -0
  255. data/lib/rubygems/net-http/lib/net/http/header.rb +981 -0
  256. data/lib/rubygems/net-http/lib/net/http/proxy_delta.rb +17 -0
  257. data/lib/rubygems/net-http/lib/net/http/request.rb +88 -0
  258. data/lib/rubygems/net-http/lib/net/http/requests.rb +425 -0
  259. data/lib/rubygems/net-http/lib/net/http/response.rb +738 -0
  260. data/lib/rubygems/net-http/lib/net/http/responses.rb +1174 -0
  261. data/lib/rubygems/net-http/lib/net/http/status.rb +84 -0
  262. data/lib/rubygems/net-http/lib/net/http.rb +2496 -0
  263. data/lib/rubygems/net-http/lib/net/https.rb +23 -0
  264. data/lib/rubygems/net-protocol/LICENSE.txt +22 -0
  265. data/lib/rubygems/net-protocol/lib/net/protocol.rb +544 -0
  266. data/lib/rubygems/optparse/lib/optparse.rb +39 -17
  267. data/lib/rubygems/package/digest_io.rb +1 -1
  268. data/lib/rubygems/package/old.rb +2 -2
  269. data/lib/rubygems/package/tar_header.rb +45 -39
  270. data/lib/rubygems/package/tar_reader/entry.rb +5 -4
  271. data/lib/rubygems/package/tar_reader.rb +14 -5
  272. data/lib/rubygems/package/tar_writer.rb +20 -18
  273. data/lib/rubygems/package.rb +28 -27
  274. data/lib/rubygems/package_task.rb +2 -2
  275. data/lib/rubygems/path_support.rb +10 -11
  276. data/lib/rubygems/platform.rb +65 -48
  277. data/lib/rubygems/query_utils.rb +7 -9
  278. data/lib/rubygems/remote_fetcher.rb +17 -17
  279. data/lib/rubygems/request/connection_pools.rb +3 -3
  280. data/lib/rubygems/request.rb +20 -17
  281. data/lib/rubygems/request_set/gem_dependency_api.rb +120 -123
  282. data/lib/rubygems/request_set/lockfile/parser.rb +9 -9
  283. data/lib/rubygems/request_set/lockfile/tokenizer.rb +20 -12
  284. data/lib/rubygems/request_set/lockfile.rb +6 -11
  285. data/lib/rubygems/request_set.rb +5 -5
  286. data/lib/rubygems/requirement.rb +7 -7
  287. data/lib/rubygems/resolv/LICENSE.txt +22 -0
  288. data/lib/rubygems/resolv/lib/resolv.rb +3387 -0
  289. data/lib/rubygems/resolver/activation_request.rb +1 -3
  290. data/lib/rubygems/resolver/api_set/gem_parser.rb +7 -3
  291. data/lib/rubygems/resolver/best_set.rb +1 -1
  292. data/lib/rubygems/resolver/composed_set.rb +1 -1
  293. data/lib/rubygems/resolver/conflict.rb +4 -12
  294. data/lib/rubygems/resolver/index_set.rb +4 -4
  295. data/lib/rubygems/resolver/index_specification.rb +2 -2
  296. data/lib/rubygems/resolver/installer_set.rb +5 -6
  297. data/lib/rubygems/resolver/lock_set.rb +1 -1
  298. data/lib/rubygems/resolver.rb +6 -13
  299. data/lib/rubygems/s3_uri_signer.rb +6 -6
  300. data/lib/rubygems/safe_marshal/elements.rb +138 -0
  301. data/lib/rubygems/safe_marshal/reader.rb +306 -0
  302. data/lib/rubygems/safe_marshal/visitors/stream_printer.rb +31 -0
  303. data/lib/rubygems/safe_marshal/visitors/to_ruby.rb +385 -0
  304. data/lib/rubygems/safe_marshal/visitors/visitor.rb +74 -0
  305. data/lib/rubygems/safe_marshal.rb +74 -0
  306. data/lib/rubygems/safe_yaml.rb +5 -28
  307. data/lib/rubygems/security/policies.rb +36 -38
  308. data/lib/rubygems/security/policy.rb +7 -11
  309. data/lib/rubygems/security/signer.rb +1 -1
  310. data/lib/rubygems/security/trust_dir.rb +4 -4
  311. data/lib/rubygems/security.rb +8 -22
  312. data/lib/rubygems/source/git.rb +1 -3
  313. data/lib/rubygems/source/installed.rb +0 -2
  314. data/lib/rubygems/source/local.rb +7 -9
  315. data/lib/rubygems/source/lock.rb +1 -3
  316. data/lib/rubygems/source/specific_file.rb +0 -1
  317. data/lib/rubygems/source/vendor.rb +0 -2
  318. data/lib/rubygems/source.rb +12 -12
  319. data/lib/rubygems/source_list.rb +5 -5
  320. data/lib/rubygems/spec_fetcher.rb +31 -31
  321. data/lib/rubygems/specification.rb +145 -150
  322. data/lib/rubygems/specification_policy.rb +61 -31
  323. data/lib/rubygems/stub_specification.rb +4 -5
  324. data/lib/rubygems/text.rb +1 -2
  325. data/lib/rubygems/timeout/LICENSE.txt +22 -0
  326. data/lib/rubygems/timeout/lib/timeout.rb +199 -0
  327. data/lib/rubygems/timeout.rb +3 -0
  328. data/lib/rubygems/tsort/lib/tsort.rb +3 -0
  329. data/lib/rubygems/uninstaller.rb +9 -11
  330. data/lib/rubygems/update_suggestion.rb +5 -18
  331. data/lib/rubygems/uri_formatter.rb +1 -1
  332. data/lib/rubygems/user_interaction.rb +17 -23
  333. data/lib/rubygems/util/licenses.rb +113 -35
  334. data/lib/rubygems/util/list.rb +3 -1
  335. data/lib/rubygems/util.rb +2 -4
  336. data/lib/rubygems/validator.rb +6 -4
  337. data/lib/rubygems/version.rb +35 -29
  338. data/lib/rubygems/version_option.rb +2 -5
  339. data/lib/rubygems/yaml_serializer.rb +9 -4
  340. data/lib/rubygems.rb +42 -42
  341. data/rubygems-update.gemspec +4 -4
  342. data/setup.rb +2 -2
  343. metadata +43 -225
  344. data/lib/rubygems/indexer.rb +0 -428
  345. data/lib/rubygems/mock_gem_ui.rb +0 -86
  346. data/test/rubygems/alternate_cert.pem +0 -19
  347. data/test/rubygems/alternate_cert_32.pem +0 -19
  348. data/test/rubygems/alternate_key.pem +0 -27
  349. data/test/rubygems/bad_rake.rb +0 -3
  350. data/test/rubygems/bundler_test_gem.rb +0 -424
  351. data/test/rubygems/ca_cert.pem +0 -77
  352. data/test/rubygems/child_cert.pem +0 -19
  353. data/test/rubygems/child_cert_32.pem +0 -19
  354. data/test/rubygems/child_key.pem +0 -27
  355. data/test/rubygems/client.pem +0 -107
  356. data/test/rubygems/data/excon-0.7.7.gemspec.rz +0 -0
  357. data/test/rubygems/data/gem-private_key.pem +0 -27
  358. data/test/rubygems/data/gem-public_cert.pem +0 -20
  359. data/test/rubygems/data/null-required-ruby-version.gemspec.rz +0 -0
  360. data/test/rubygems/data/null-required-rubygems-version.gemspec.rz +0 -0
  361. data/test/rubygems/data/pry-0.4.7.gemspec.rz +0 -0
  362. data/test/rubygems/encrypted_private_key.pem +0 -30
  363. data/test/rubygems/expired_cert.pem +0 -19
  364. data/test/rubygems/fake_certlib/openssl.rb +0 -9
  365. data/test/rubygems/foo/discover.rb +0 -1
  366. data/test/rubygems/future_cert.pem +0 -19
  367. data/test/rubygems/future_cert_32.pem +0 -19
  368. data/test/rubygems/good_rake.rb +0 -3
  369. data/test/rubygems/grandchild_cert.pem +0 -19
  370. data/test/rubygems/grandchild_cert_32.pem +0 -19
  371. data/test/rubygems/grandchild_key.pem +0 -27
  372. data/test/rubygems/helper.rb +0 -1649
  373. data/test/rubygems/installer_test_case.rb +0 -248
  374. data/test/rubygems/invalid_client.pem +0 -49
  375. data/test/rubygems/invalid_issuer_cert.pem +0 -20
  376. data/test/rubygems/invalid_issuer_cert_32.pem +0 -20
  377. data/test/rubygems/invalid_key.pem +0 -27
  378. data/test/rubygems/invalid_signer_cert.pem +0 -19
  379. data/test/rubygems/invalid_signer_cert_32.pem +0 -19
  380. data/test/rubygems/invalidchild_cert.pem +0 -19
  381. data/test/rubygems/invalidchild_cert_32.pem +0 -19
  382. data/test/rubygems/invalidchild_key.pem +0 -27
  383. data/test/rubygems/multifactor_auth_utilities.rb +0 -111
  384. data/test/rubygems/package/tar_test_case.rb +0 -175
  385. data/test/rubygems/packages/Bluebie-legs-0.6.2.gem +0 -0
  386. data/test/rubygems/packages/ascii_binder-0.1.10.1.gem +0 -0
  387. data/test/rubygems/packages/ill-formatted-platform-1.0.0.10.gem +0 -0
  388. data/test/rubygems/plugin/exception/rubygems_plugin.rb +0 -4
  389. data/test/rubygems/plugin/load/rubygems_plugin.rb +0 -5
  390. data/test/rubygems/plugin/standarderror/rubygems_plugin.rb +0 -4
  391. data/test/rubygems/private3072_key.pem +0 -40
  392. data/test/rubygems/private_ec_key.pem +0 -9
  393. data/test/rubygems/private_key.pem +0 -27
  394. data/test/rubygems/public3072_cert.pem +0 -25
  395. data/test/rubygems/public_cert.pem +0 -20
  396. data/test/rubygems/public_cert_32.pem +0 -19
  397. data/test/rubygems/public_key.pem +0 -9
  398. data/test/rubygems/rubygems/commands/crash_command.rb +0 -5
  399. data/test/rubygems/rubygems_plugin.rb +0 -24
  400. data/test/rubygems/sff/discover.rb +0 -1
  401. data/test/rubygems/simple_gem.rb +0 -68
  402. data/test/rubygems/specifications/bar-0.0.2.gemspec +0 -9
  403. data/test/rubygems/specifications/foo-0.0.1-x86-mswin32.gemspec +0 -0
  404. data/test/rubygems/specifications/rubyforge-0.0.1.gemspec +0 -14
  405. data/test/rubygems/ssl_cert.pem +0 -80
  406. data/test/rubygems/ssl_key.pem +0 -27
  407. data/test/rubygems/test_bundled_ca.rb +0 -61
  408. data/test/rubygems/test_config.rb +0 -28
  409. data/test/rubygems/test_deprecate.rb +0 -158
  410. data/test/rubygems/test_exit.rb +0 -17
  411. data/test/rubygems/test_gem.rb +0 -1799
  412. data/test/rubygems/test_gem_available_set.rb +0 -130
  413. data/test/rubygems/test_gem_bundler_version_finder.rb +0 -127
  414. data/test/rubygems/test_gem_command.rb +0 -403
  415. data/test/rubygems/test_gem_command_manager.rb +0 -400
  416. data/test/rubygems/test_gem_commands_build_command.rb +0 -739
  417. data/test/rubygems/test_gem_commands_cert_command.rb +0 -866
  418. data/test/rubygems/test_gem_commands_check_command.rb +0 -68
  419. data/test/rubygems/test_gem_commands_cleanup_command.rb +0 -292
  420. data/test/rubygems/test_gem_commands_contents_command.rb +0 -271
  421. data/test/rubygems/test_gem_commands_dependency_command.rb +0 -228
  422. data/test/rubygems/test_gem_commands_environment_command.rb +0 -169
  423. data/test/rubygems/test_gem_commands_exec_command.rb +0 -857
  424. data/test/rubygems/test_gem_commands_fetch_command.rb +0 -258
  425. data/test/rubygems/test_gem_commands_generate_index_command.rb +0 -81
  426. data/test/rubygems/test_gem_commands_help_command.rb +0 -94
  427. data/test/rubygems/test_gem_commands_info_command.rb +0 -70
  428. data/test/rubygems/test_gem_commands_install_command.rb +0 -1573
  429. data/test/rubygems/test_gem_commands_list_command.rb +0 -33
  430. data/test/rubygems/test_gem_commands_lock_command.rb +0 -67
  431. data/test/rubygems/test_gem_commands_mirror.rb +0 -20
  432. data/test/rubygems/test_gem_commands_open_command.rb +0 -101
  433. data/test/rubygems/test_gem_commands_outdated_command.rb +0 -50
  434. data/test/rubygems/test_gem_commands_owner_command.rb +0 -503
  435. data/test/rubygems/test_gem_commands_pristine_command.rb +0 -708
  436. data/test/rubygems/test_gem_commands_push_command.rb +0 -603
  437. data/test/rubygems/test_gem_commands_query_command.rb +0 -858
  438. data/test/rubygems/test_gem_commands_search_command.rb +0 -16
  439. data/test/rubygems/test_gem_commands_server_command.rb +0 -20
  440. data/test/rubygems/test_gem_commands_setup_command.rb +0 -474
  441. data/test/rubygems/test_gem_commands_signin_command.rb +0 -259
  442. data/test/rubygems/test_gem_commands_signout_command.rb +0 -30
  443. data/test/rubygems/test_gem_commands_sources_command.rb +0 -534
  444. data/test/rubygems/test_gem_commands_specification_command.rb +0 -277
  445. data/test/rubygems/test_gem_commands_stale_command.rb +0 -43
  446. data/test/rubygems/test_gem_commands_uninstall_command.rb +0 -522
  447. data/test/rubygems/test_gem_commands_unpack_command.rb +0 -224
  448. data/test/rubygems/test_gem_commands_update_command.rb +0 -836
  449. data/test/rubygems/test_gem_commands_which_command.rb +0 -85
  450. data/test/rubygems/test_gem_commands_yank_command.rb +0 -299
  451. data/test/rubygems/test_gem_config_file.rb +0 -551
  452. data/test/rubygems/test_gem_dependency.rb +0 -398
  453. data/test/rubygems/test_gem_dependency_installer.rb +0 -1190
  454. data/test/rubygems/test_gem_dependency_list.rb +0 -265
  455. data/test/rubygems/test_gem_dependency_resolution_error.rb +0 -27
  456. data/test/rubygems/test_gem_doctor.rb +0 -195
  457. data/test/rubygems/test_gem_ext_builder.rb +0 -337
  458. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/.gitignore +0 -1
  459. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/custom_name.gemspec +0 -10
  460. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/ext/custom_name_lib/Cargo.lock +0 -249
  461. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/ext/custom_name_lib/Cargo.toml +0 -10
  462. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/ext/custom_name_lib/src/lib.rs +0 -27
  463. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/lib/custom_name.rb +0 -3
  464. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/.gitignore +0 -1
  465. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.lock +0 -249
  466. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.toml +0 -10
  467. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/rust_ruby_example.gemspec +0 -10
  468. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/src/lib.rs +0 -51
  469. data/test/rubygems/test_gem_ext_cargo_builder.rb +0 -167
  470. data/test/rubygems/test_gem_ext_cargo_builder_link_flag_converter.rb +0 -34
  471. data/test/rubygems/test_gem_ext_cargo_builder_unit.rb +0 -60
  472. data/test/rubygems/test_gem_ext_cmake_builder.rb +0 -84
  473. data/test/rubygems/test_gem_ext_configure_builder.rb +0 -80
  474. data/test/rubygems/test_gem_ext_ext_conf_builder.rb +0 -229
  475. data/test/rubygems/test_gem_ext_rake_builder.rb +0 -113
  476. data/test/rubygems/test_gem_gem_runner.rb +0 -119
  477. data/test/rubygems/test_gem_gemcutter_utilities.rb +0 -361
  478. data/test/rubygems/test_gem_impossible_dependencies_error.rb +0 -60
  479. data/test/rubygems/test_gem_indexer.rb +0 -381
  480. data/test/rubygems/test_gem_install_update_options.rb +0 -208
  481. data/test/rubygems/test_gem_installer.rb +0 -2512
  482. data/test/rubygems/test_gem_local_remote_options.rb +0 -133
  483. data/test/rubygems/test_gem_name_tuple.rb +0 -43
  484. data/test/rubygems/test_gem_package.rb +0 -1306
  485. data/test/rubygems/test_gem_package_old.rb +0 -91
  486. data/test/rubygems/test_gem_package_tar_header.rb +0 -226
  487. data/test/rubygems/test_gem_package_tar_reader.rb +0 -135
  488. data/test/rubygems/test_gem_package_tar_reader_entry.rb +0 -350
  489. data/test/rubygems/test_gem_package_tar_writer.rb +0 -331
  490. data/test/rubygems/test_gem_package_task.rb +0 -118
  491. data/test/rubygems/test_gem_path_support.rb +0 -139
  492. data/test/rubygems/test_gem_platform.rb +0 -497
  493. data/test/rubygems/test_gem_rdoc.rb +0 -137
  494. data/test/rubygems/test_gem_remote_fetcher.rb +0 -1227
  495. data/test/rubygems/test_gem_request.rb +0 -547
  496. data/test/rubygems/test_gem_request_connection_pools.rb +0 -152
  497. data/test/rubygems/test_gem_request_set.rb +0 -672
  498. data/test/rubygems/test_gem_request_set_gem_dependency_api.rb +0 -853
  499. data/test/rubygems/test_gem_request_set_lockfile.rb +0 -469
  500. data/test/rubygems/test_gem_request_set_lockfile_parser.rb +0 -544
  501. data/test/rubygems/test_gem_request_set_lockfile_tokenizer.rb +0 -307
  502. data/test/rubygems/test_gem_requirement.rb +0 -505
  503. data/test/rubygems/test_gem_resolver.rb +0 -859
  504. data/test/rubygems/test_gem_resolver_activation_request.rb +0 -43
  505. data/test/rubygems/test_gem_resolver_api_set.rb +0 -210
  506. data/test/rubygems/test_gem_resolver_api_specification.rb +0 -167
  507. data/test/rubygems/test_gem_resolver_best_set.rb +0 -159
  508. data/test/rubygems/test_gem_resolver_composed_set.rb +0 -44
  509. data/test/rubygems/test_gem_resolver_conflict.rb +0 -82
  510. data/test/rubygems/test_gem_resolver_dependency_request.rb +0 -83
  511. data/test/rubygems/test_gem_resolver_git_set.rb +0 -188
  512. data/test/rubygems/test_gem_resolver_git_specification.rb +0 -114
  513. data/test/rubygems/test_gem_resolver_index_set.rb +0 -88
  514. data/test/rubygems/test_gem_resolver_index_specification.rb +0 -93
  515. data/test/rubygems/test_gem_resolver_installed_specification.rb +0 -47
  516. data/test/rubygems/test_gem_resolver_installer_set.rb +0 -320
  517. data/test/rubygems/test_gem_resolver_local_specification.rb +0 -44
  518. data/test/rubygems/test_gem_resolver_lock_set.rb +0 -62
  519. data/test/rubygems/test_gem_resolver_lock_specification.rb +0 -98
  520. data/test/rubygems/test_gem_resolver_requirement_list.rb +0 -19
  521. data/test/rubygems/test_gem_resolver_specification.rb +0 -63
  522. data/test/rubygems/test_gem_resolver_vendor_set.rb +0 -82
  523. data/test/rubygems/test_gem_resolver_vendor_specification.rb +0 -82
  524. data/test/rubygems/test_gem_security.rb +0 -341
  525. data/test/rubygems/test_gem_security_policy.rb +0 -535
  526. data/test/rubygems/test_gem_security_signer.rb +0 -218
  527. data/test/rubygems/test_gem_security_trust_dir.rb +0 -99
  528. data/test/rubygems/test_gem_silent_ui.rb +0 -123
  529. data/test/rubygems/test_gem_source.rb +0 -254
  530. data/test/rubygems/test_gem_source_fetch_problem.rb +0 -37
  531. data/test/rubygems/test_gem_source_git.rb +0 -310
  532. data/test/rubygems/test_gem_source_installed.rb +0 -35
  533. data/test/rubygems/test_gem_source_list.rb +0 -119
  534. data/test/rubygems/test_gem_source_local.rb +0 -107
  535. data/test/rubygems/test_gem_source_lock.rb +0 -113
  536. data/test/rubygems/test_gem_source_specific_file.rb +0 -76
  537. data/test/rubygems/test_gem_source_subpath_problem.rb +0 -50
  538. data/test/rubygems/test_gem_source_vendor.rb +0 -30
  539. data/test/rubygems/test_gem_spec_fetcher.rb +0 -338
  540. data/test/rubygems/test_gem_specification.rb +0 -3856
  541. data/test/rubygems/test_gem_stream_ui.rb +0 -255
  542. data/test/rubygems/test_gem_stub_specification.rb +0 -278
  543. data/test/rubygems/test_gem_text.rb +0 -103
  544. data/test/rubygems/test_gem_uninstaller.rb +0 -675
  545. data/test/rubygems/test_gem_unsatisfiable_dependency_error.rb +0 -31
  546. data/test/rubygems/test_gem_update_suggestion.rb +0 -209
  547. data/test/rubygems/test_gem_uri.rb +0 -41
  548. data/test/rubygems/test_gem_uri_formatter.rb +0 -27
  549. data/test/rubygems/test_gem_util.rb +0 -91
  550. data/test/rubygems/test_gem_validator.rb +0 -42
  551. data/test/rubygems/test_gem_version.rb +0 -305
  552. data/test/rubygems/test_gem_version_option.rb +0 -165
  553. data/test/rubygems/test_kernel.rb +0 -124
  554. data/test/rubygems/test_project_sanity.rb +0 -49
  555. data/test/rubygems/test_remote_fetch_error.rb +0 -20
  556. data/test/rubygems/test_require.rb +0 -732
  557. data/test/rubygems/test_rubygems.rb +0 -76
  558. data/test/rubygems/test_webauthn_listener.rb +0 -143
  559. data/test/rubygems/test_webauthn_listener_response.rb +0 -93
  560. data/test/rubygems/test_webauthn_poller.rb +0 -124
  561. data/test/rubygems/utilities.rb +0 -436
  562. data/test/rubygems/wrong_key_cert.pem +0 -19
  563. data/test/rubygems/wrong_key_cert_32.pem +0 -19
  564. data/test/test_changelog_generator.rb +0 -17
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1f05a0cda4ceecb0e1a71c9956e3e8597fcf627c352f6ee567790df40fddccac
4
- data.tar.gz: fa139ca2d60133ee401e1b10a4ec477bd38264c49507b55b319299e26b77ab8d
3
+ metadata.gz: 9fce6526c315ddb27b7225aa753bc8ed4989c4b3e0f21475a6d89f056621244f
4
+ data.tar.gz: abbf90a8a960cbf76fa0535675235fff405899bf536030904ca3558b86d90834
5
5
  SHA512:
6
- metadata.gz: 69e38f7e11e4c39a32bfa5fc0f921c004128a2c283affa2dfe52b3fc12c326d4d32af6310aa9b364e4c6d0568f9c3cb71cf9162c5923738447250ff40dd6ad17
7
- data.tar.gz: 1a4bf79c31e726474c4066e9b166562c81a84a02560f70f647e03f1bb41c988147837d65fac7238737493521643a75e9c75494932446faa16325ca923fb1b646
6
+ metadata.gz: 94e46fe63d6d1be72ef7284b3a74a947564ab3c1bad56005d3093de37cd17c2113ed250b28989b868b1529d4577b2255a789995dda7426cbe58b540c9dadae0b
7
+ data.tar.gz: 8210df7d8682222d674c84ed34d06df6deb86be7982d98d5f7df6fd54ba41f37a95dc5366754d42c39d96fa21a0cfc1b4d3712a93deded075f36bf0fbd64f321
data/CHANGELOG.md CHANGED
@@ -1,3 +1,133 @@
1
+ # 3.5.0 / 2023-12-15
2
+
3
+ ## Security:
4
+
5
+ * Replace `Marshal.load` with a fully-checked safe gemspec loader. Pull
6
+ request [#6896](https://github.com/rubygems/rubygems/pull/6896) by
7
+ segiddins
8
+
9
+ ## Breaking changes:
10
+
11
+ * Drop ruby 2.6 and 2.7 support. Pull request
12
+ [#7116](https://github.com/rubygems/rubygems/pull/7116) by
13
+ deivid-rodriguez
14
+ * Release package no longer includes test files. Pull request
15
+ [#6781](https://github.com/rubygems/rubygems/pull/6781) by hsbt
16
+ * Hide `Gem::MockGemUi` from users. Pull request
17
+ [#6623](https://github.com/rubygems/rubygems/pull/6623) by hsbt
18
+ * Deprecated `Gem.datadir` has been removed. Pull request
19
+ [#6469](https://github.com/rubygems/rubygems/pull/6469) by hsbt
20
+
21
+ ## Deprecations:
22
+
23
+ * Deprecate `Gem::Platform.match?`. Pull request
24
+ [#6783](https://github.com/rubygems/rubygems/pull/6783) by hsbt
25
+ * Deprecate `Gem::List`. Pull request
26
+ [#6311](https://github.com/rubygems/rubygems/pull/6311) by segiddins
27
+
28
+ ## Features:
29
+
30
+ * The `generate_index` command can now generate compact index files and
31
+ lives as an external `rubygems-generate_index` gem. Pull request
32
+ [#7085](https://github.com/rubygems/rubygems/pull/7085) by segiddins
33
+ * Make `gem install` fallback to user installation directory if default
34
+ gem home is not writable. Pull request
35
+ [#5327](https://github.com/rubygems/rubygems/pull/5327) by duckinator
36
+ * Leverage ruby feature to warn when requiring default gems from stdlib
37
+ that will be turned into bundled gems in the future. Pull request
38
+ [#6840](https://github.com/rubygems/rubygems/pull/6840) by hsbt
39
+
40
+ ## Performance:
41
+
42
+ * Use match? when regexp match data is unused. Pull request
43
+ [#7263](https://github.com/rubygems/rubygems/pull/7263) by segiddins
44
+ * Fewer allocations in gem installation. Pull request
45
+ [#6975](https://github.com/rubygems/rubygems/pull/6975) by segiddins
46
+ * Optimize allocations in `Gem::Version`. Pull request
47
+ [#6970](https://github.com/rubygems/rubygems/pull/6970) by segiddins
48
+
49
+ ## Enhancements:
50
+
51
+ * Warn for duplicate meta data links when building gems. Pull request
52
+ [#7213](https://github.com/rubygems/rubygems/pull/7213) by etherbob
53
+ * Vendor `net-http`, `net-protocol`, `resolv`, and `timeout` to reduce
54
+ conflicts between Gemfile gems and internal dependencies. Pull request
55
+ [#6793](https://github.com/rubygems/rubygems/pull/6793) by
56
+ deivid-rodriguez
57
+ * Remove non-transparent requirement added to prerelease gems. Pull
58
+ request [#7226](https://github.com/rubygems/rubygems/pull/7226) by
59
+ deivid-rodriguez
60
+ * Stream output from ext builds when --verbose. Pull request
61
+ [#7240](https://github.com/rubygems/rubygems/pull/7240) by osyoyu
62
+ * Add missing services to CI detection and make it consistent between
63
+ RubyGems and Bundler. Pull request
64
+ [#7205](https://github.com/rubygems/rubygems/pull/7205) by nevinera
65
+ * Update generate licenses template to not freeze regexps. Pull request
66
+ [#7154](https://github.com/rubygems/rubygems/pull/7154) by
67
+ github-actions[bot]
68
+ * Don't check `LIBRUBY_RELATIVE` in truffleruby to signal a bash prelude
69
+ in rubygems binstubs. Pull request
70
+ [#7156](https://github.com/rubygems/rubygems/pull/7156) by
71
+ deivid-rodriguez
72
+ * Update SPDX list and warn on deprecated identifiers. Pull request
73
+ [#6926](https://github.com/rubygems/rubygems/pull/6926) by simi
74
+ * Simplify extended `require` to potentially fix some deadlocks. Pull
75
+ request [#6827](https://github.com/rubygems/rubygems/pull/6827) by nobu
76
+ * Small refactors for `Gem::Resolver`. Pull request
77
+ [#6766](https://github.com/rubygems/rubygems/pull/6766) by hsbt
78
+ * Use double-quotes instead of single-quotes consistently in warnings.
79
+ Pull request [#6550](https://github.com/rubygems/rubygems/pull/6550) by
80
+ hsbt
81
+ * Add debug message for `nil` version gemspec. Pull request
82
+ [#6436](https://github.com/rubygems/rubygems/pull/6436) by hsbt
83
+ * Installs bundler 2.5.0 as a default gem.
84
+
85
+ ## Bug fixes:
86
+
87
+ * Fix installing from source with same default bundler version already
88
+ installed. Pull request
89
+ [#7244](https://github.com/rubygems/rubygems/pull/7244) by
90
+ deivid-rodriguez
91
+
92
+ ## Documentation:
93
+
94
+ * Improve comment explaining the necessity of `write_default_spec` method.
95
+ Pull request [#6563](https://github.com/rubygems/rubygems/pull/6563) by
96
+ voxik
97
+
98
+ # 3.4.22 / 2023-11-09
99
+
100
+ ## Enhancements:
101
+
102
+ * Update SPDX license list as of 2023-10-05. Pull request
103
+ [#7040](https://github.com/rubygems/rubygems/pull/7040) by
104
+ github-actions[bot]
105
+ * Remove unnecessary rescue. Pull request
106
+ [#7109](https://github.com/rubygems/rubygems/pull/7109) by
107
+ deivid-rodriguez
108
+ * Installs bundler 2.4.22 as a default gem.
109
+
110
+ ## Bug fixes:
111
+
112
+ * Handle empty array at built-in YAML serializer. Pull request
113
+ [#7099](https://github.com/rubygems/rubygems/pull/7099) by hsbt
114
+ * Ignore non-tar format `.gem` files during search. Pull request
115
+ [#7095](https://github.com/rubygems/rubygems/pull/7095) by dearblue
116
+ * Allow explicitly uninstalling multiple versions of same gem. Pull
117
+ request [#7063](https://github.com/rubygems/rubygems/pull/7063) by
118
+ kstevens715
119
+
120
+ ## Performance:
121
+
122
+ * Avoid regexp match on every call to `Gem::Platform.local`. Pull request
123
+ [#7104](https://github.com/rubygems/rubygems/pull/7104) by segiddins
124
+
125
+ ## Documentation:
126
+
127
+ * Get `Gem::Specification#extensions_dir` documented. Pull request
128
+ [#6218](https://github.com/rubygems/rubygems/pull/6218) by
129
+ deivid-rodriguez
130
+
1
131
  # 3.4.21 / 2023-10-17
2
132
 
3
133
  ## Enhancements:
@@ -5633,11 +5763,11 @@ annoying issues involving other libraries that RubyGems depends upon.
5633
5763
  0.8.3 contains some workarounds for these issues. In particular:
5634
5764
 
5635
5765
  * Added workaround for the null byte in Dir string issue. (see
5636
- http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/121702).
5766
+ https://blade.ruby-lang.org/ruby-talk/121702).
5637
5767
  (Thanks to Mauricio Fernández for the quick response on this one).
5638
5768
  * Added workaround for old version of Zlib on windows that caused
5639
5769
  Ruwiki to fail to install. (see
5640
- http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/121770)
5770
+ https://blade.ruby-lang.org/ruby-talk/121770)
5641
5771
  * Added workaround for large YAML file issues. (We dynamically cut
5642
5772
  down the size of the source index YAML file and seem to have worked
5643
5773
  around immediate issues.
data/Manifest.txt CHANGED
@@ -19,6 +19,8 @@ bundler/lib/bundler.rb
19
19
  bundler/lib/bundler/.document
20
20
  bundler/lib/bundler/build_metadata.rb
21
21
  bundler/lib/bundler/capistrano.rb
22
+ bundler/lib/bundler/checksum.rb
23
+ bundler/lib/bundler/ci_detector.rb
22
24
  bundler/lib/bundler/cli.rb
23
25
  bundler/lib/bundler/cli/add.rb
24
26
  bundler/lib/bundler/cli/binstubs.rb
@@ -50,6 +52,7 @@ bundler/lib/bundler/cli/update.rb
50
52
  bundler/lib/bundler/cli/viz.rb
51
53
  bundler/lib/bundler/compact_index_client.rb
52
54
  bundler/lib/bundler/compact_index_client/cache.rb
55
+ bundler/lib/bundler/compact_index_client/cache_file.rb
53
56
  bundler/lib/bundler/compact_index_client/gem_parser.rb
54
57
  bundler/lib/bundler/compact_index_client/updater.rb
55
58
  bundler/lib/bundler/constants.rb
@@ -70,6 +73,7 @@ bundler/lib/bundler/fetcher/base.rb
70
73
  bundler/lib/bundler/fetcher/compact_index.rb
71
74
  bundler/lib/bundler/fetcher/dependency.rb
72
75
  bundler/lib/bundler/fetcher/downloader.rb
76
+ bundler/lib/bundler/fetcher/gem_remote_fetcher.rb
73
77
  bundler/lib/bundler/fetcher/index.rb
74
78
  bundler/lib/bundler/force_platform.rb
75
79
  bundler/lib/bundler/friendly_errors.rb
@@ -302,7 +306,12 @@ bundler/lib/bundler/vendor/thor/lib/thor/runner.rb
302
306
  bundler/lib/bundler/vendor/thor/lib/thor/shell.rb
303
307
  bundler/lib/bundler/vendor/thor/lib/thor/shell/basic.rb
304
308
  bundler/lib/bundler/vendor/thor/lib/thor/shell/color.rb
309
+ bundler/lib/bundler/vendor/thor/lib/thor/shell/column_printer.rb
305
310
  bundler/lib/bundler/vendor/thor/lib/thor/shell/html.rb
311
+ bundler/lib/bundler/vendor/thor/lib/thor/shell/lcs_diff.rb
312
+ bundler/lib/bundler/vendor/thor/lib/thor/shell/table_printer.rb
313
+ bundler/lib/bundler/vendor/thor/lib/thor/shell/terminal.rb
314
+ bundler/lib/bundler/vendor/thor/lib/thor/shell/wrapped_printer.rb
306
315
  bundler/lib/bundler/vendor/thor/lib/thor/util.rb
307
316
  bundler/lib/bundler/vendor/thor/lib/thor/version.rb
308
317
  bundler/lib/bundler/vendor/tsort/LICENSE.txt
@@ -324,9 +333,11 @@ bundler/lib/bundler/vendor/uri/lib/uri/version.rb
324
333
  bundler/lib/bundler/vendor/uri/lib/uri/ws.rb
325
334
  bundler/lib/bundler/vendor/uri/lib/uri/wss.rb
326
335
  bundler/lib/bundler/vendored_fileutils.rb
336
+ bundler/lib/bundler/vendored_net_http.rb
327
337
  bundler/lib/bundler/vendored_persistent.rb
328
338
  bundler/lib/bundler/vendored_pub_grub.rb
329
339
  bundler/lib/bundler/vendored_thor.rb
340
+ bundler/lib/bundler/vendored_timeout.rb
330
341
  bundler/lib/bundler/vendored_tsort.rb
331
342
  bundler/lib/bundler/vendored_uri.rb
332
343
  bundler/lib/bundler/version.rb
@@ -340,6 +351,7 @@ lib/rubygems.rb
340
351
  lib/rubygems/available_set.rb
341
352
  lib/rubygems/basic_specification.rb
342
353
  lib/rubygems/bundler_version_finder.rb
354
+ lib/rubygems/ci_detector.rb
343
355
  lib/rubygems/command.rb
344
356
  lib/rubygems/command_manager.rb
345
357
  lib/rubygems/commands/build_command.rb
@@ -406,15 +418,29 @@ lib/rubygems/gemcutter_utilities.rb
406
418
  lib/rubygems/gemcutter_utilities/webauthn_listener.rb
407
419
  lib/rubygems/gemcutter_utilities/webauthn_listener/response.rb
408
420
  lib/rubygems/gemcutter_utilities/webauthn_poller.rb
409
- lib/rubygems/indexer.rb
410
421
  lib/rubygems/install_default_message.rb
411
422
  lib/rubygems/install_message.rb
412
423
  lib/rubygems/install_update_options.rb
413
424
  lib/rubygems/installer.rb
414
425
  lib/rubygems/installer_uninstaller_utils.rb
415
426
  lib/rubygems/local_remote_options.rb
416
- lib/rubygems/mock_gem_ui.rb
417
427
  lib/rubygems/name_tuple.rb
428
+ lib/rubygems/net-http/LICENSE.txt
429
+ lib/rubygems/net-http/lib/net/http.rb
430
+ lib/rubygems/net-http/lib/net/http/backward.rb
431
+ lib/rubygems/net-http/lib/net/http/exceptions.rb
432
+ lib/rubygems/net-http/lib/net/http/generic_request.rb
433
+ lib/rubygems/net-http/lib/net/http/header.rb
434
+ lib/rubygems/net-http/lib/net/http/proxy_delta.rb
435
+ lib/rubygems/net-http/lib/net/http/request.rb
436
+ lib/rubygems/net-http/lib/net/http/requests.rb
437
+ lib/rubygems/net-http/lib/net/http/response.rb
438
+ lib/rubygems/net-http/lib/net/http/responses.rb
439
+ lib/rubygems/net-http/lib/net/http/status.rb
440
+ lib/rubygems/net-http/lib/net/https.rb
441
+ lib/rubygems/net-protocol/LICENSE.txt
442
+ lib/rubygems/net-protocol/lib/net/protocol.rb
443
+ lib/rubygems/net/http.rb
418
444
  lib/rubygems/openssl.rb
419
445
  lib/rubygems/optparse.rb
420
446
  lib/rubygems/optparse/.document
@@ -455,6 +481,8 @@ lib/rubygems/request_set/lockfile.rb
455
481
  lib/rubygems/request_set/lockfile/parser.rb
456
482
  lib/rubygems/request_set/lockfile/tokenizer.rb
457
483
  lib/rubygems/requirement.rb
484
+ lib/rubygems/resolv/LICENSE.txt
485
+ lib/rubygems/resolv/lib/resolv.rb
458
486
  lib/rubygems/resolver.rb
459
487
  lib/rubygems/resolver/activation_request.rb
460
488
  lib/rubygems/resolver/api_set.rb
@@ -505,6 +533,12 @@ lib/rubygems/resolver/stats.rb
505
533
  lib/rubygems/resolver/vendor_set.rb
506
534
  lib/rubygems/resolver/vendor_specification.rb
507
535
  lib/rubygems/s3_uri_signer.rb
536
+ lib/rubygems/safe_marshal.rb
537
+ lib/rubygems/safe_marshal/elements.rb
538
+ lib/rubygems/safe_marshal/reader.rb
539
+ lib/rubygems/safe_marshal/visitors/stream_printer.rb
540
+ lib/rubygems/safe_marshal/visitors/to_ruby.rb
541
+ lib/rubygems/safe_marshal/visitors/visitor.rb
508
542
  lib/rubygems/safe_yaml.rb
509
543
  lib/rubygems/security.rb
510
544
  lib/rubygems/security/policies.rb
@@ -529,6 +563,9 @@ lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA.pem
529
563
  lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem
530
564
  lib/rubygems/stub_specification.rb
531
565
  lib/rubygems/text.rb
566
+ lib/rubygems/timeout.rb
567
+ lib/rubygems/timeout/LICENSE.txt
568
+ lib/rubygems/timeout/lib/timeout.rb
532
569
  lib/rubygems/tsort.rb
533
570
  lib/rubygems/tsort/.document
534
571
  lib/rubygems/tsort/LICENSE.txt
@@ -548,222 +585,3 @@ lib/rubygems/version_option.rb
548
585
  lib/rubygems/yaml_serializer.rb
549
586
  rubygems-update.gemspec
550
587
  setup.rb
551
- test/rubygems/alternate_cert.pem
552
- test/rubygems/alternate_cert_32.pem
553
- test/rubygems/alternate_key.pem
554
- test/rubygems/bad_rake.rb
555
- test/rubygems/bundler_test_gem.rb
556
- test/rubygems/ca_cert.pem
557
- test/rubygems/child_cert.pem
558
- test/rubygems/child_cert_32.pem
559
- test/rubygems/child_key.pem
560
- test/rubygems/client.pem
561
- test/rubygems/data/excon-0.7.7.gemspec.rz
562
- test/rubygems/data/gem-private_key.pem
563
- test/rubygems/data/gem-public_cert.pem
564
- test/rubygems/data/null-required-ruby-version.gemspec.rz
565
- test/rubygems/data/null-required-rubygems-version.gemspec.rz
566
- test/rubygems/data/pry-0.4.7.gemspec.rz
567
- test/rubygems/encrypted_private_key.pem
568
- test/rubygems/expired_cert.pem
569
- test/rubygems/fake_certlib/openssl.rb
570
- test/rubygems/foo/discover.rb
571
- test/rubygems/future_cert.pem
572
- test/rubygems/future_cert_32.pem
573
- test/rubygems/good_rake.rb
574
- test/rubygems/grandchild_cert.pem
575
- test/rubygems/grandchild_cert_32.pem
576
- test/rubygems/grandchild_key.pem
577
- test/rubygems/helper.rb
578
- test/rubygems/installer_test_case.rb
579
- test/rubygems/invalid_client.pem
580
- test/rubygems/invalid_issuer_cert.pem
581
- test/rubygems/invalid_issuer_cert_32.pem
582
- test/rubygems/invalid_key.pem
583
- test/rubygems/invalid_signer_cert.pem
584
- test/rubygems/invalid_signer_cert_32.pem
585
- test/rubygems/invalidchild_cert.pem
586
- test/rubygems/invalidchild_cert_32.pem
587
- test/rubygems/invalidchild_key.pem
588
- test/rubygems/multifactor_auth_utilities.rb
589
- test/rubygems/package/tar_test_case.rb
590
- test/rubygems/packages/Bluebie-legs-0.6.2.gem
591
- test/rubygems/packages/ascii_binder-0.1.10.1.gem
592
- test/rubygems/packages/ill-formatted-platform-1.0.0.10.gem
593
- test/rubygems/plugin/exception/rubygems_plugin.rb
594
- test/rubygems/plugin/load/rubygems_plugin.rb
595
- test/rubygems/plugin/standarderror/rubygems_plugin.rb
596
- test/rubygems/private3072_key.pem
597
- test/rubygems/private_ec_key.pem
598
- test/rubygems/private_key.pem
599
- test/rubygems/public3072_cert.pem
600
- test/rubygems/public_cert.pem
601
- test/rubygems/public_cert_32.pem
602
- test/rubygems/public_key.pem
603
- test/rubygems/rubygems/commands/crash_command.rb
604
- test/rubygems/rubygems_plugin.rb
605
- test/rubygems/sff/discover.rb
606
- test/rubygems/simple_gem.rb
607
- test/rubygems/specifications/bar-0.0.2.gemspec
608
- test/rubygems/specifications/foo-0.0.1-x86-mswin32.gemspec
609
- test/rubygems/specifications/rubyforge-0.0.1.gemspec
610
- test/rubygems/ssl_cert.pem
611
- test/rubygems/ssl_key.pem
612
- test/rubygems/test_bundled_ca.rb
613
- test/rubygems/test_config.rb
614
- test/rubygems/test_deprecate.rb
615
- test/rubygems/test_exit.rb
616
- test/rubygems/test_gem.rb
617
- test/rubygems/test_gem_available_set.rb
618
- test/rubygems/test_gem_bundler_version_finder.rb
619
- test/rubygems/test_gem_command.rb
620
- test/rubygems/test_gem_command_manager.rb
621
- test/rubygems/test_gem_commands_build_command.rb
622
- test/rubygems/test_gem_commands_cert_command.rb
623
- test/rubygems/test_gem_commands_check_command.rb
624
- test/rubygems/test_gem_commands_cleanup_command.rb
625
- test/rubygems/test_gem_commands_contents_command.rb
626
- test/rubygems/test_gem_commands_dependency_command.rb
627
- test/rubygems/test_gem_commands_environment_command.rb
628
- test/rubygems/test_gem_commands_exec_command.rb
629
- test/rubygems/test_gem_commands_fetch_command.rb
630
- test/rubygems/test_gem_commands_generate_index_command.rb
631
- test/rubygems/test_gem_commands_help_command.rb
632
- test/rubygems/test_gem_commands_info_command.rb
633
- test/rubygems/test_gem_commands_install_command.rb
634
- test/rubygems/test_gem_commands_list_command.rb
635
- test/rubygems/test_gem_commands_lock_command.rb
636
- test/rubygems/test_gem_commands_mirror.rb
637
- test/rubygems/test_gem_commands_open_command.rb
638
- test/rubygems/test_gem_commands_outdated_command.rb
639
- test/rubygems/test_gem_commands_owner_command.rb
640
- test/rubygems/test_gem_commands_pristine_command.rb
641
- test/rubygems/test_gem_commands_push_command.rb
642
- test/rubygems/test_gem_commands_query_command.rb
643
- test/rubygems/test_gem_commands_search_command.rb
644
- test/rubygems/test_gem_commands_server_command.rb
645
- test/rubygems/test_gem_commands_setup_command.rb
646
- test/rubygems/test_gem_commands_signin_command.rb
647
- test/rubygems/test_gem_commands_signout_command.rb
648
- test/rubygems/test_gem_commands_sources_command.rb
649
- test/rubygems/test_gem_commands_specification_command.rb
650
- test/rubygems/test_gem_commands_stale_command.rb
651
- test/rubygems/test_gem_commands_uninstall_command.rb
652
- test/rubygems/test_gem_commands_unpack_command.rb
653
- test/rubygems/test_gem_commands_update_command.rb
654
- test/rubygems/test_gem_commands_which_command.rb
655
- test/rubygems/test_gem_commands_yank_command.rb
656
- test/rubygems/test_gem_config_file.rb
657
- test/rubygems/test_gem_dependency.rb
658
- test/rubygems/test_gem_dependency_installer.rb
659
- test/rubygems/test_gem_dependency_list.rb
660
- test/rubygems/test_gem_dependency_resolution_error.rb
661
- test/rubygems/test_gem_doctor.rb
662
- test/rubygems/test_gem_ext_builder.rb
663
- test/rubygems/test_gem_ext_cargo_builder.rb
664
- test/rubygems/test_gem_ext_cargo_builder/custom_name/.gitignore
665
- test/rubygems/test_gem_ext_cargo_builder/custom_name/custom_name.gemspec
666
- test/rubygems/test_gem_ext_cargo_builder/custom_name/ext/custom_name_lib/Cargo.lock
667
- test/rubygems/test_gem_ext_cargo_builder/custom_name/ext/custom_name_lib/Cargo.toml
668
- test/rubygems/test_gem_ext_cargo_builder/custom_name/ext/custom_name_lib/src/lib.rs
669
- test/rubygems/test_gem_ext_cargo_builder/custom_name/lib/custom_name.rb
670
- test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/.gitignore
671
- test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.lock
672
- test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.toml
673
- test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/rust_ruby_example.gemspec
674
- test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/src/lib.rs
675
- test/rubygems/test_gem_ext_cargo_builder_link_flag_converter.rb
676
- test/rubygems/test_gem_ext_cargo_builder_unit.rb
677
- test/rubygems/test_gem_ext_cmake_builder.rb
678
- test/rubygems/test_gem_ext_configure_builder.rb
679
- test/rubygems/test_gem_ext_ext_conf_builder.rb
680
- test/rubygems/test_gem_ext_rake_builder.rb
681
- test/rubygems/test_gem_gem_runner.rb
682
- test/rubygems/test_gem_gemcutter_utilities.rb
683
- test/rubygems/test_gem_impossible_dependencies_error.rb
684
- test/rubygems/test_gem_indexer.rb
685
- test/rubygems/test_gem_install_update_options.rb
686
- test/rubygems/test_gem_installer.rb
687
- test/rubygems/test_gem_local_remote_options.rb
688
- test/rubygems/test_gem_name_tuple.rb
689
- test/rubygems/test_gem_package.rb
690
- test/rubygems/test_gem_package_old.rb
691
- test/rubygems/test_gem_package_tar_header.rb
692
- test/rubygems/test_gem_package_tar_reader.rb
693
- test/rubygems/test_gem_package_tar_reader_entry.rb
694
- test/rubygems/test_gem_package_tar_writer.rb
695
- test/rubygems/test_gem_package_task.rb
696
- test/rubygems/test_gem_path_support.rb
697
- test/rubygems/test_gem_platform.rb
698
- test/rubygems/test_gem_rdoc.rb
699
- test/rubygems/test_gem_remote_fetcher.rb
700
- test/rubygems/test_gem_request.rb
701
- test/rubygems/test_gem_request_connection_pools.rb
702
- test/rubygems/test_gem_request_set.rb
703
- test/rubygems/test_gem_request_set_gem_dependency_api.rb
704
- test/rubygems/test_gem_request_set_lockfile.rb
705
- test/rubygems/test_gem_request_set_lockfile_parser.rb
706
- test/rubygems/test_gem_request_set_lockfile_tokenizer.rb
707
- test/rubygems/test_gem_requirement.rb
708
- test/rubygems/test_gem_resolver.rb
709
- test/rubygems/test_gem_resolver_activation_request.rb
710
- test/rubygems/test_gem_resolver_api_set.rb
711
- test/rubygems/test_gem_resolver_api_specification.rb
712
- test/rubygems/test_gem_resolver_best_set.rb
713
- test/rubygems/test_gem_resolver_composed_set.rb
714
- test/rubygems/test_gem_resolver_conflict.rb
715
- test/rubygems/test_gem_resolver_dependency_request.rb
716
- test/rubygems/test_gem_resolver_git_set.rb
717
- test/rubygems/test_gem_resolver_git_specification.rb
718
- test/rubygems/test_gem_resolver_index_set.rb
719
- test/rubygems/test_gem_resolver_index_specification.rb
720
- test/rubygems/test_gem_resolver_installed_specification.rb
721
- test/rubygems/test_gem_resolver_installer_set.rb
722
- test/rubygems/test_gem_resolver_local_specification.rb
723
- test/rubygems/test_gem_resolver_lock_set.rb
724
- test/rubygems/test_gem_resolver_lock_specification.rb
725
- test/rubygems/test_gem_resolver_requirement_list.rb
726
- test/rubygems/test_gem_resolver_specification.rb
727
- test/rubygems/test_gem_resolver_vendor_set.rb
728
- test/rubygems/test_gem_resolver_vendor_specification.rb
729
- test/rubygems/test_gem_security.rb
730
- test/rubygems/test_gem_security_policy.rb
731
- test/rubygems/test_gem_security_signer.rb
732
- test/rubygems/test_gem_security_trust_dir.rb
733
- test/rubygems/test_gem_silent_ui.rb
734
- test/rubygems/test_gem_source.rb
735
- test/rubygems/test_gem_source_fetch_problem.rb
736
- test/rubygems/test_gem_source_git.rb
737
- test/rubygems/test_gem_source_installed.rb
738
- test/rubygems/test_gem_source_list.rb
739
- test/rubygems/test_gem_source_local.rb
740
- test/rubygems/test_gem_source_lock.rb
741
- test/rubygems/test_gem_source_specific_file.rb
742
- test/rubygems/test_gem_source_subpath_problem.rb
743
- test/rubygems/test_gem_source_vendor.rb
744
- test/rubygems/test_gem_spec_fetcher.rb
745
- test/rubygems/test_gem_specification.rb
746
- test/rubygems/test_gem_stream_ui.rb
747
- test/rubygems/test_gem_stub_specification.rb
748
- test/rubygems/test_gem_text.rb
749
- test/rubygems/test_gem_uninstaller.rb
750
- test/rubygems/test_gem_unsatisfiable_dependency_error.rb
751
- test/rubygems/test_gem_update_suggestion.rb
752
- test/rubygems/test_gem_uri.rb
753
- test/rubygems/test_gem_uri_formatter.rb
754
- test/rubygems/test_gem_util.rb
755
- test/rubygems/test_gem_validator.rb
756
- test/rubygems/test_gem_version.rb
757
- test/rubygems/test_gem_version_option.rb
758
- test/rubygems/test_kernel.rb
759
- test/rubygems/test_project_sanity.rb
760
- test/rubygems/test_remote_fetch_error.rb
761
- test/rubygems/test_require.rb
762
- test/rubygems/test_rubygems.rb
763
- test/rubygems/test_webauthn_listener.rb
764
- test/rubygems/test_webauthn_listener_response.rb
765
- test/rubygems/test_webauthn_poller.rb
766
- test/rubygems/utilities.rb
767
- test/rubygems/wrong_key_cert.pem
768
- test/rubygems/wrong_key_cert_32.pem
769
- test/test_changelog_generator.rb
data/README.md CHANGED
@@ -27,9 +27,7 @@ For more information about how to use RubyGems, see our RubyGems basics guide at
27
27
 
28
28
  ## Requirements
29
29
 
30
- * RubyGems 2.6 supports Ruby 2.4 or lower.
31
- * RubyGems 2.7 supports Ruby 2.5 or lower.
32
- * RubyGems 3.0 supports Ruby 2.3 or later.
30
+ * RubyGems supports Ruby 3.0 or later.
33
31
 
34
32
  ## Installation
35
33
 
data/bundler/CHANGELOG.md CHANGED
@@ -1,3 +1,76 @@
1
+ # 2.5.0 (December 15, 2023)
2
+
3
+ ## Breaking changes:
4
+
5
+ - Drop ruby 2.6 and 2.7 support [#7116](https://github.com/rubygems/rubygems/pull/7116)
6
+ - The `:mswin`, `:mswin64`, `:mingw`, and `:x64_mingw` Gemfile `platform` values are soft-deprecated and aliased to `:windows` [#6391](https://github.com/rubygems/rubygems/pull/6391)
7
+
8
+ ## Features:
9
+
10
+ - Leverage ruby feature to warn when requiring default gems not included in the bundle that will be turned into bundled gems in the future [#6831](https://github.com/rubygems/rubygems/pull/6831)
11
+ - Introduce `bundle config set version` feature to choose the version of Bundler that should be used and potentially disable using the `lockfile` version by setting it to `system` [#6817](https://github.com/rubygems/rubygems/pull/6817)
12
+
13
+ ## Performance:
14
+
15
+ - Use match? when regexp match data is unused [#7263](https://github.com/rubygems/rubygems/pull/7263)
16
+ - Avoid some allocations when evaluating `ruby` Gemfile DSL [#7251](https://github.com/rubygems/rubygems/pull/7251)
17
+ - Reduce array allocations when loading definition [#7199](https://github.com/rubygems/rubygems/pull/7199)
18
+ - Avoid re-compiling static regexp in a loop [#7198](https://github.com/rubygems/rubygems/pull/7198)
19
+ - Reduce allocations when installing gems with bundler [#6977](https://github.com/rubygems/rubygems/pull/6977)
20
+ - Use a shared connection pool for fetching gems [#7079](https://github.com/rubygems/rubygems/pull/7079)
21
+ - Reduce allocations when parsing compact index [#6971](https://github.com/rubygems/rubygems/pull/6971)
22
+
23
+ ## Enhancements:
24
+
25
+ - Add 3.4 as a supported ruby version in Gemfile DSL [#7264](https://github.com/rubygems/rubygems/pull/7264)
26
+ - Improve install advice when some gems are not found [#7265](https://github.com/rubygems/rubygems/pull/7265)
27
+ - Vendor `net-http`, `net-protocol`, `resolv`, and `timeout` to reduce conflicts between Gemfile gems and internal dependencies [#6793](https://github.com/rubygems/rubygems/pull/6793)
28
+ - Allow `bundle pristine` to run in parallel [#6927](https://github.com/rubygems/rubygems/pull/6927)
29
+ - Make `bundle lock` always touch the lockfile in non-frozen mode [#7220](https://github.com/rubygems/rubygems/pull/7220)
30
+ - Use `Minitest::TestTask` in a template file for `minitest` [#7234](https://github.com/rubygems/rubygems/pull/7234)
31
+ - Add missing services to CI detection and make it consistent between RubyGems and Bundler [#7205](https://github.com/rubygems/rubygems/pull/7205)
32
+ - Allow auto-install to install missing git gems [#7197](https://github.com/rubygems/rubygems/pull/7197)
33
+ - Stop remembering cli flags like `--jobs` or `--retry` in configuration [#7191](https://github.com/rubygems/rubygems/pull/7191)
34
+ - Simplify remembered flags deprecation message [#7189](https://github.com/rubygems/rubygems/pull/7189)
35
+ - Make sure to `require "rubygems"` explicitly [#7139](https://github.com/rubygems/rubygems/pull/7139)
36
+ - Handle development dependencies duplicated in gemspec vs Gemfile [#6014](https://github.com/rubygems/rubygems/pull/6014)
37
+ - Make lockfiles generated on macOS include a lock for Linux by default [#5700](https://github.com/rubygems/rubygems/pull/5700)
38
+ - Only add a dummy bundler spec to the metadata source when necessary [#4443](https://github.com/rubygems/rubygems/pull/4443)
39
+
40
+ ## Bug fixes:
41
+
42
+ - Resolve `ruby file: ".ruby-version"` relative to containing Gemfile [#7250](https://github.com/rubygems/rubygems/pull/7250)
43
+ - Implement opaque ETag in Compact Index to avoid falling back to old index in servers with different etag implementations [#7122](https://github.com/rubygems/rubygems/pull/7122)
44
+ - Fix `bundle install --system` deprecation advice [#7190](https://github.com/rubygems/rubygems/pull/7190)
45
+ - Fix invalid platform removal missing adjacent platforms [#7170](https://github.com/rubygems/rubygems/pull/7170)
46
+
47
+ ## Documentation:
48
+
49
+ - Add missing --prefer-local to Synopsis in bundle-install.1.ronn [#7194](https://github.com/rubygems/rubygems/pull/7194)
50
+ - Update GitHub organization of Standard Ruby in `bundle gem` output and generated configuration [#6818](https://github.com/rubygems/rubygems/pull/6818)
51
+ - Replace "prior to" with "immediately after" in `bundle gem` generated README file [#6338](https://github.com/rubygems/rubygems/pull/6338)
52
+
53
+ # 2.4.22 (November 9, 2023)
54
+
55
+ ## Enhancements:
56
+
57
+ - Add Bundler::Plugin.loaded? helper [#6964](https://github.com/rubygems/rubygems/pull/6964)
58
+ - Give better error when previous installation folder is insecure to remove [#7030](https://github.com/rubygems/rubygems/pull/7030)
59
+ - Set file path when eval-ing local specification in EndpointSpecification [#7106](https://github.com/rubygems/rubygems/pull/7106)
60
+ - Git ignore the proper files for the CI service selected for `bundle gem` [#7101](https://github.com/rubygems/rubygems/pull/7101)
61
+ - Update vendored thor to v1.3.0 [#7078](https://github.com/rubygems/rubygems/pull/7078)
62
+ - Restore using old way of passing Ruby version to resolver [#7066](https://github.com/rubygems/rubygems/pull/7066)
63
+ - Bump vendored net-http-persistent to 4.0.2 [#6787](https://github.com/rubygems/rubygems/pull/6787)
64
+
65
+ ## Bug fixes:
66
+
67
+ - Fix regression when installing native extensions on universal rubies [#7077](https://github.com/rubygems/rubygems/pull/7077)
68
+ - Only remove bundler plugin gem when it's inside the cache [#7001](https://github.com/rubygems/rubygems/pull/7001)
69
+ - Don't show bug report template when GEM_HOME has no writable bit [#7113](https://github.com/rubygems/rubygems/pull/7113)
70
+ - Fix regression in old git versions [#7114](https://github.com/rubygems/rubygems/pull/7114)
71
+ - Handle empty array at built-in YAML serializer [#7099](https://github.com/rubygems/rubygems/pull/7099)
72
+ - Fix force_ruby_platform: when the lockfile only locks the ruby platform [#6936](https://github.com/rubygems/rubygems/pull/6936)
73
+
1
74
  # 2.4.21 (October 17, 2023)
2
75
 
3
76
  ## Enhancements:
@@ -736,6 +809,7 @@
736
809
 
737
810
  ## Enhancements:
738
811
 
812
+ - Cancel deprecation of custom git sources [#5147](https://github.com/rubygems/rubygems/pull/5147)
739
813
  - Print warning when running Bundler on potentially problematic RubyGems & Ruby combinations [#5177](https://github.com/rubygems/rubygems/pull/5177)
740
814
  - Error tracing should be printed to stderr [#5179](https://github.com/rubygems/rubygems/pull/5179)
741
815
  - Add `github` and `ref` options to `bundle add` [#5159](https://github.com/rubygems/rubygems/pull/5159)
data/bundler/README.md CHANGED
@@ -1,5 +1,4 @@
1
1
  [![Version ](https://img.shields.io/gem/v/bundler.svg?style=flat)](https://rubygems.org/gems/bundler)
2
- [![Slack ](https://bundler-slackin.herokuapp.com/badge.svg)](https://bundler-slackin.herokuapp.com)
3
2
 
4
3
  # Bundler: a gem to bundle gems
5
4
 
@@ -38,7 +37,7 @@ Still stuck? Try [filing an issue](https://github.com/rubygems/rubygems/issues/n
38
37
 
39
38
  To see what has changed in recent versions of Bundler, see the [CHANGELOG](CHANGELOG.md).
40
39
 
41
- To get in touch with the Bundler core team and other Bundler users, please join [the Bundler slack](https://slack.bundler.io).
40
+ To get in touch with the Bundler core team and other Bundler users, please join [the Bundler slack](https://join.slack.com/t/bundler/shared_invite/zt-1rrsuuv3m-OmXKWQf8K6iSla4~F1DBjQ).
42
41
 
43
42
  ### Contributing
44
43
 
@@ -29,8 +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 = ">= 2.6.0"
33
- s.required_rubygems_version = ">= 3.0.1"
32
+ s.required_ruby_version = ">= 3.0.0"
33
+
34
+ # It should match the RubyGems version shipped with `required_ruby_version` above
35
+ s.required_rubygems_version = ">= 3.2.3"
34
36
 
35
37
  s.files = Dir.glob("lib/bundler{.rb,/**/*}", File::FNM_DOTMATCH).reject {|f| File.directory?(f) }
36
38
 
data/bundler/exe/bundle CHANGED
@@ -15,15 +15,6 @@ end
15
15
 
16
16
  require "bundler"
17
17
 
18
- if Gem.rubygems_version < Gem::Version.new("3.2.3") && Gem.ruby_version < Gem::Version.new("2.7.a") && !ENV["BUNDLER_NO_OLD_RUBYGEMS_WARNING"]
19
- Bundler.ui.warn \
20
- "Your RubyGems version (#{Gem::VERSION}) has a bug that prevents " \
21
- "`required_ruby_version` from working for Bundler. Any scripts that use " \
22
- "`gem install bundler` will break as soon as Bundler drops support for " \
23
- "your Ruby version. Please upgrade RubyGems to avoid future breakage " \
24
- "and silence this warning by running `gem update --system 3.2.3`"
25
- end
26
-
27
18
  require "bundler/friendly_errors"
28
19
 
29
20
  Bundler.with_friendly_errors do
@@ -34,5 +25,5 @@ Bundler.with_friendly_errors do
34
25
  help_flag_used = ARGV.any? {|a| help_flags.include? a }
35
26
  args = help_flag_used ? Bundler::CLI.reformatted_help_args(ARGV) : ARGV
36
27
 
37
- Bundler::CLI.start(args, :debug => true)
28
+ Bundler::CLI.start(args, debug: true)
38
29
  end