rubygems-update 3.1.0 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (558) hide show
  1. checksums.yaml +4 -4
  2. data/CODE_OF_CONDUCT.md +55 -19
  3. data/CONTRIBUTING.md +25 -11
  4. data/History.txt +435 -179
  5. data/Manifest.txt +44 -77
  6. data/POLICIES.md +2 -9
  7. data/README.md +5 -5
  8. data/Rakefile +50 -83
  9. data/bin/update_rubygems +2 -2
  10. data/bundler/CHANGELOG.md +1590 -1400
  11. data/bundler/README.md +6 -8
  12. data/bundler/UPGRADING.md +18 -32
  13. data/bundler/bundler.gemspec +3 -3
  14. data/bundler/exe/bundle +3 -0
  15. data/bundler/lib/bundler.rb +25 -7
  16. data/bundler/lib/bundler/build_metadata.rb +4 -12
  17. data/bundler/lib/bundler/cli.rb +56 -20
  18. data/bundler/lib/bundler/cli/add.rb +1 -1
  19. data/bundler/lib/bundler/cli/binstubs.rb +6 -2
  20. data/bundler/lib/bundler/cli/cache.rb +1 -7
  21. data/bundler/lib/bundler/cli/clean.rb +1 -1
  22. data/bundler/lib/bundler/cli/common.rb +14 -0
  23. data/bundler/lib/bundler/cli/console.rb +1 -1
  24. data/bundler/lib/bundler/cli/doctor.rb +1 -1
  25. data/bundler/lib/bundler/cli/exec.rb +7 -16
  26. data/bundler/lib/bundler/cli/fund.rb +36 -0
  27. data/bundler/lib/bundler/cli/gem.rb +75 -11
  28. data/bundler/lib/bundler/cli/info.rb +8 -4
  29. data/bundler/lib/bundler/cli/init.rb +2 -2
  30. data/bundler/lib/bundler/cli/inject.rb +1 -1
  31. data/bundler/lib/bundler/cli/install.rb +12 -18
  32. data/bundler/lib/bundler/cli/issue.rb +2 -2
  33. data/bundler/lib/bundler/cli/list.rb +1 -1
  34. data/bundler/lib/bundler/cli/outdated.rb +2 -4
  35. data/bundler/lib/bundler/cli/plugin.rb +10 -0
  36. data/bundler/lib/bundler/cli/pristine.rb +1 -1
  37. data/bundler/lib/bundler/cli/show.rb +1 -1
  38. data/bundler/lib/bundler/cli/update.rb +2 -0
  39. data/bundler/lib/bundler/compact_index_client.rb +1 -1
  40. data/bundler/lib/bundler/compact_index_client/cache.rb +1 -1
  41. data/bundler/lib/bundler/compact_index_client/updater.rb +5 -5
  42. data/bundler/lib/bundler/definition.rb +47 -61
  43. data/bundler/lib/bundler/dep_proxy.rb +1 -1
  44. data/bundler/lib/bundler/dependency.rb +0 -9
  45. data/bundler/lib/bundler/dsl.rb +5 -9
  46. data/bundler/lib/bundler/endpoint_specification.rb +1 -1
  47. data/bundler/lib/bundler/env.rb +1 -1
  48. data/bundler/lib/bundler/environment_preserver.rb +26 -2
  49. data/bundler/lib/bundler/errors.rb +1 -0
  50. data/bundler/lib/bundler/feature_flag.rb +0 -3
  51. data/bundler/lib/bundler/fetcher.rb +4 -3
  52. data/bundler/lib/bundler/fetcher/base.rb +1 -1
  53. data/bundler/lib/bundler/fetcher/compact_index.rb +1 -1
  54. data/bundler/lib/bundler/fetcher/downloader.rb +1 -1
  55. data/bundler/lib/bundler/fetcher/index.rb +3 -4
  56. data/bundler/lib/bundler/friendly_errors.rb +22 -13
  57. data/bundler/lib/bundler/gem_helper.rb +33 -19
  58. data/bundler/lib/bundler/gem_helpers.rb +6 -1
  59. data/bundler/lib/bundler/gem_version_promoter.rb +2 -2
  60. data/bundler/lib/bundler/graph.rb +1 -1
  61. data/bundler/lib/bundler/index.rb +6 -2
  62. data/bundler/lib/bundler/injector.rb +22 -4
  63. data/bundler/lib/bundler/inline.rb +2 -2
  64. data/bundler/lib/bundler/installer.rb +35 -32
  65. data/bundler/lib/bundler/installer/gem_installer.rb +3 -3
  66. data/bundler/lib/bundler/installer/parallel_installer.rb +10 -10
  67. data/bundler/lib/bundler/installer/standalone.rb +2 -2
  68. data/bundler/lib/bundler/lazy_specification.rb +20 -9
  69. data/bundler/lib/bundler/lockfile_generator.rb +1 -1
  70. data/bundler/lib/bundler/lockfile_parser.rb +1 -1
  71. data/bundler/lib/bundler/man/.document +1 -0
  72. data/bundler/{man/bundle-add.ronn → lib/bundler/man/bundle-add.1.ronn} +0 -0
  73. data/bundler/{man/bundle-binstubs.ronn → lib/bundler/man/bundle-binstubs.1.ronn} +2 -4
  74. data/bundler/{man/bundle-cache.ronn → lib/bundler/man/bundle-cache.1.ronn} +0 -0
  75. data/bundler/{man/bundle-check.ronn → lib/bundler/man/bundle-check.1.ronn} +0 -0
  76. data/bundler/{man/bundle-clean.ronn → lib/bundler/man/bundle-clean.1.ronn} +0 -0
  77. data/bundler/{man/bundle-config.ronn → lib/bundler/man/bundle-config.1.ronn} +19 -30
  78. data/bundler/{man/bundle-doctor.ronn → lib/bundler/man/bundle-doctor.1.ronn} +0 -0
  79. data/bundler/{man/bundle-exec.ronn → lib/bundler/man/bundle-exec.1.ronn} +0 -0
  80. data/bundler/{man/bundle-gem.ronn → lib/bundler/man/bundle-gem.1.ronn} +30 -7
  81. data/bundler/{man/bundle-info.ronn → lib/bundler/man/bundle-info.1.ronn} +0 -0
  82. data/bundler/{man/bundle-init.ronn → lib/bundler/man/bundle-init.1.ronn} +0 -0
  83. data/bundler/{man/bundle-inject.ronn → lib/bundler/man/bundle-inject.1.ronn} +0 -0
  84. data/bundler/{man/bundle-install.ronn → lib/bundler/man/bundle-install.1.ronn} +25 -3
  85. data/bundler/{man/bundle-list.ronn → lib/bundler/man/bundle-list.1.ronn} +0 -0
  86. data/bundler/{man/bundle-lock.ronn → lib/bundler/man/bundle-lock.1.ronn} +0 -0
  87. data/bundler/{man/bundle-open.ronn → lib/bundler/man/bundle-open.1.ronn} +0 -0
  88. data/bundler/{man/bundle-outdated.ronn → lib/bundler/man/bundle-outdated.1.ronn} +0 -0
  89. data/bundler/{man/bundle-platform.ronn → lib/bundler/man/bundle-platform.1.ronn} +0 -0
  90. data/bundler/{man/bundle-pristine.ronn → lib/bundler/man/bundle-pristine.1.ronn} +0 -0
  91. data/bundler/{man/bundle-remove.ronn → lib/bundler/man/bundle-remove.1.ronn} +0 -0
  92. data/bundler/{man/bundle-show.ronn → lib/bundler/man/bundle-show.1.ronn} +0 -0
  93. data/bundler/{man/bundle-update.ronn → lib/bundler/man/bundle-update.1.ronn} +0 -0
  94. data/bundler/{man/bundle-viz.ronn → lib/bundler/man/bundle-viz.1.ronn} +0 -0
  95. data/bundler/{man/bundle.ronn → lib/bundler/man/bundle.1.ronn} +0 -0
  96. data/bundler/{man → lib/bundler/man}/gemfile.5.ronn +4 -4
  97. data/bundler/lib/bundler/mirror.rb +2 -2
  98. data/bundler/lib/bundler/plugin.rb +30 -5
  99. data/bundler/lib/bundler/plugin/api/source.rb +1 -1
  100. data/bundler/lib/bundler/plugin/dsl.rb +1 -1
  101. data/bundler/lib/bundler/plugin/index.rb +10 -1
  102. data/bundler/lib/bundler/plugin/installer.rb +1 -1
  103. data/bundler/lib/bundler/plugin/installer/rubygems.rb +1 -1
  104. data/bundler/lib/bundler/plugin/source_list.rb +1 -1
  105. data/bundler/lib/bundler/psyched_yaml.rb +0 -15
  106. data/bundler/lib/bundler/remote_specification.rb +5 -2
  107. data/bundler/lib/bundler/resolver.rb +32 -10
  108. data/bundler/lib/bundler/resolver/spec_group.rb +27 -6
  109. data/bundler/lib/bundler/retry.rb +1 -1
  110. data/bundler/lib/bundler/ruby_version.rb +1 -1
  111. data/bundler/lib/bundler/rubygems_ext.rb +53 -9
  112. data/bundler/lib/bundler/rubygems_gem_installer.rb +3 -9
  113. data/bundler/lib/bundler/rubygems_integration.rb +35 -25
  114. data/bundler/lib/bundler/runtime.rb +4 -14
  115. data/bundler/lib/bundler/settings.rb +49 -46
  116. data/bundler/lib/bundler/setup.rb +5 -0
  117. data/bundler/lib/bundler/shared_helpers.rb +2 -2
  118. data/bundler/lib/bundler/similarity_detector.rb +1 -1
  119. data/bundler/lib/bundler/source.rb +1 -1
  120. data/bundler/lib/bundler/source/git.rb +1 -1
  121. data/bundler/lib/bundler/source/git/git_proxy.rb +57 -60
  122. data/bundler/lib/bundler/source/path.rb +7 -3
  123. data/bundler/lib/bundler/source/path/installer.rb +8 -10
  124. data/bundler/lib/bundler/source/rubygems.rb +13 -16
  125. data/bundler/lib/bundler/source/rubygems/remote.rb +1 -1
  126. data/bundler/lib/bundler/source_list.rb +2 -2
  127. data/bundler/lib/bundler/spec_set.rb +2 -1
  128. data/bundler/lib/bundler/stub_specification.rb +17 -5
  129. data/bundler/lib/bundler/templates/newgem/CODE_OF_CONDUCT.md.tt +57 -47
  130. data/bundler/lib/bundler/templates/newgem/Gemfile.tt +7 -2
  131. data/bundler/lib/bundler/templates/newgem/README.md.tt +1 -2
  132. data/bundler/lib/bundler/templates/newgem/Rakefile.tt +12 -5
  133. data/bundler/lib/bundler/templates/newgem/bin/console.tt +1 -0
  134. data/bundler/lib/bundler/templates/newgem/circleci/config.yml.tt +13 -0
  135. data/bundler/lib/bundler/templates/newgem/ext/newgem/extconf.rb.tt +2 -0
  136. data/bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt +18 -0
  137. data/bundler/lib/bundler/templates/newgem/gitlab-ci.yml.tt +9 -0
  138. data/bundler/lib/bundler/templates/newgem/lib/newgem.rb.tt +4 -2
  139. data/bundler/lib/bundler/templates/newgem/lib/newgem/version.rb.tt +2 -0
  140. data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +13 -5
  141. data/bundler/lib/bundler/templates/newgem/rubocop.yml.tt +10 -0
  142. data/bundler/lib/bundler/templates/newgem/spec/newgem_spec.rb.tt +2 -0
  143. data/bundler/lib/bundler/templates/newgem/spec/spec_helper.rb.tt +2 -1
  144. data/bundler/lib/bundler/templates/newgem/test/{newgem_test.rb.tt → minitest/newgem_test.rb.tt} +2 -0
  145. data/bundler/lib/bundler/templates/newgem/test/{test_helper.rb.tt → minitest/test_helper.rb.tt} +2 -0
  146. data/bundler/lib/bundler/templates/newgem/test/test-unit/newgem_test.rb.tt +15 -0
  147. data/bundler/lib/bundler/templates/newgem/test/test-unit/test_helper.rb.tt +6 -0
  148. data/bundler/lib/bundler/ui/shell.rb +5 -5
  149. data/bundler/lib/bundler/uri_credentials_filter.rb +3 -1
  150. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo.rb +0 -1
  151. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb +34 -1
  152. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb +2 -2
  153. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +1 -1
  154. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb +1 -1
  155. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb +38 -40
  156. data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +72 -208
  157. data/bundler/lib/bundler/vendor/thor/lib/thor.rb +0 -7
  158. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/create_link.rb +2 -1
  159. data/bundler/lib/bundler/vendor/thor/lib/thor/base.rb +9 -0
  160. data/bundler/lib/bundler/vendor/thor/lib/thor/version.rb +1 -1
  161. data/bundler/lib/bundler/vendor/tmpdir/lib/tmpdir.rb +154 -0
  162. data/bundler/lib/bundler/vendored_persistent.rb +0 -7
  163. data/bundler/lib/bundler/vendored_tmpdir.rb +4 -0
  164. data/bundler/lib/bundler/version.rb +1 -1
  165. data/bundler/lib/bundler/worker.rb +1 -1
  166. data/bundler/lib/bundler/yaml_serializer.rb +1 -1
  167. data/bundler/man/bundle-add.1 +1 -1
  168. data/bundler/man/bundle-binstubs.1 +5 -3
  169. data/bundler/man/bundle-cache.1 +1 -1
  170. data/bundler/man/bundle-check.1 +1 -1
  171. data/bundler/man/bundle-clean.1 +1 -1
  172. data/bundler/man/bundle-config.1 +16 -25
  173. data/bundler/man/bundle-doctor.1 +1 -1
  174. data/bundler/man/bundle-exec.1 +1 -1
  175. data/bundler/man/bundle-gem.1 +25 -3
  176. data/bundler/man/bundle-info.1 +1 -1
  177. data/bundler/man/bundle-init.1 +1 -1
  178. data/bundler/man/bundle-inject.1 +1 -1
  179. data/bundler/man/bundle-install.1 +30 -3
  180. data/bundler/man/bundle-list.1 +1 -1
  181. data/bundler/man/bundle-lock.1 +1 -1
  182. data/bundler/man/bundle-open.1 +1 -1
  183. data/bundler/man/bundle-outdated.1 +1 -1
  184. data/bundler/man/bundle-platform.1 +1 -1
  185. data/bundler/man/bundle-pristine.1 +1 -1
  186. data/bundler/man/bundle-remove.1 +1 -1
  187. data/bundler/man/bundle-show.1 +1 -1
  188. data/bundler/man/bundle-update.1 +1 -1
  189. data/bundler/man/bundle-viz.1 +1 -1
  190. data/bundler/man/bundle.1 +1 -1
  191. data/bundler/man/gemfile.5 +4 -4
  192. data/lib/rubygems.rb +138 -187
  193. data/lib/rubygems/available_set.rb +4 -6
  194. data/lib/rubygems/basic_specification.rb +12 -10
  195. data/lib/rubygems/bundler_version_finder.rb +14 -9
  196. data/lib/rubygems/command.rb +17 -17
  197. data/lib/rubygems/command_manager.rb +5 -6
  198. data/lib/rubygems/commands/build_command.rb +40 -20
  199. data/lib/rubygems/commands/cert_command.rb +2 -10
  200. data/lib/rubygems/commands/check_command.rb +0 -2
  201. data/lib/rubygems/commands/cleanup_command.rb +11 -7
  202. data/lib/rubygems/commands/contents_command.rb +4 -6
  203. data/lib/rubygems/commands/dependency_command.rb +6 -8
  204. data/lib/rubygems/commands/environment_command.rb +1 -3
  205. data/lib/rubygems/commands/fetch_command.rb +2 -4
  206. data/lib/rubygems/commands/generate_index_command.rb +0 -2
  207. data/lib/rubygems/commands/help_command.rb +4 -4
  208. data/lib/rubygems/commands/info_command.rb +8 -5
  209. data/lib/rubygems/commands/install_command.rb +3 -5
  210. data/lib/rubygems/commands/list_command.rb +8 -7
  211. data/lib/rubygems/commands/lock_command.rb +1 -3
  212. data/lib/rubygems/commands/mirror_command.rb +0 -2
  213. data/lib/rubygems/commands/open_command.rb +0 -4
  214. data/lib/rubygems/commands/outdated_command.rb +0 -2
  215. data/lib/rubygems/commands/owner_command.rb +9 -3
  216. data/lib/rubygems/commands/pristine_command.rb +11 -5
  217. data/lib/rubygems/commands/push_command.rb +10 -46
  218. data/lib/rubygems/commands/query_command.rb +14 -344
  219. data/lib/rubygems/commands/rdoc_command.rb +0 -2
  220. data/lib/rubygems/commands/search_command.rb +7 -7
  221. data/lib/rubygems/commands/server_command.rb +3 -1
  222. data/lib/rubygems/commands/setup_command.rb +158 -70
  223. data/lib/rubygems/commands/signin_command.rb +0 -2
  224. data/lib/rubygems/commands/signout_command.rb +0 -2
  225. data/lib/rubygems/commands/sources_command.rb +9 -7
  226. data/lib/rubygems/commands/specification_command.rb +8 -4
  227. data/lib/rubygems/commands/stale_command.rb +1 -3
  228. data/lib/rubygems/commands/uninstall_command.rb +2 -4
  229. data/lib/rubygems/commands/unpack_command.rb +1 -3
  230. data/lib/rubygems/commands/update_command.rb +59 -14
  231. data/lib/rubygems/commands/which_command.rb +0 -2
  232. data/lib/rubygems/commands/yank_command.rb +4 -6
  233. data/lib/rubygems/config_file.rb +11 -4
  234. data/lib/rubygems/core_ext/kernel_require.rb +29 -36
  235. data/lib/rubygems/core_ext/kernel_warn.rb +12 -13
  236. data/lib/rubygems/defaults.rb +101 -7
  237. data/lib/rubygems/dependency.rb +3 -8
  238. data/lib/rubygems/dependency_installer.rb +5 -78
  239. data/lib/rubygems/dependency_list.rb +7 -9
  240. data/lib/rubygems/deprecate.rb +46 -1
  241. data/lib/rubygems/doctor.rb +4 -4
  242. data/lib/rubygems/errors.rb +3 -14
  243. data/lib/rubygems/exceptions.rb +2 -33
  244. data/lib/rubygems/ext.rb +6 -6
  245. data/lib/rubygems/ext/build_error.rb +2 -0
  246. data/lib/rubygems/ext/builder.rb +16 -35
  247. data/lib/rubygems/ext/cmake_builder.rb +5 -7
  248. data/lib/rubygems/ext/configure_builder.rb +4 -6
  249. data/lib/rubygems/ext/ext_conf_builder.rb +21 -19
  250. data/lib/rubygems/ext/rake_builder.rb +3 -5
  251. data/lib/rubygems/gem_runner.rb +3 -10
  252. data/lib/rubygems/gemcutter_utilities.rb +91 -15
  253. data/lib/rubygems/indexer.rb +1 -22
  254. data/lib/rubygems/install_update_options.rb +7 -7
  255. data/lib/rubygems/installer.rb +59 -57
  256. data/lib/rubygems/installer_test_case.rb +25 -11
  257. data/lib/rubygems/installer_uninstaller_utils.rb +24 -0
  258. data/lib/rubygems/local_remote_options.rb +1 -1
  259. data/lib/rubygems/mock_gem_ui.rb +0 -6
  260. data/lib/rubygems/name_tuple.rb +3 -7
  261. data/lib/rubygems/openssl.rb +7 -0
  262. data/lib/rubygems/package.rb +14 -25
  263. data/lib/rubygems/package/digest_io.rb +0 -2
  264. data/lib/rubygems/package/file_source.rb +0 -2
  265. data/lib/rubygems/package/io_source.rb +0 -2
  266. data/lib/rubygems/package/old.rb +1 -3
  267. data/lib/rubygems/package/tar_header.rb +4 -6
  268. data/lib/rubygems/package/tar_reader.rb +0 -3
  269. data/lib/rubygems/package/tar_reader/entry.rb +0 -3
  270. data/lib/rubygems/package/tar_test_case.rb +2 -4
  271. data/lib/rubygems/package/tar_writer.rb +2 -12
  272. data/lib/rubygems/package_task.rb +1 -7
  273. data/lib/rubygems/path_support.rb +1 -3
  274. data/lib/rubygems/platform.rb +21 -12
  275. data/lib/rubygems/psych_tree.rb +0 -2
  276. data/lib/rubygems/query_utils.rb +353 -0
  277. data/lib/rubygems/rdoc.rb +0 -12
  278. data/lib/rubygems/remote_fetcher.rb +10 -27
  279. data/lib/rubygems/request.rb +4 -11
  280. data/lib/rubygems/request/connection_pools.rb +1 -5
  281. data/lib/rubygems/request/http_pool.rb +0 -2
  282. data/lib/rubygems/request/https_pool.rb +0 -2
  283. data/lib/rubygems/request_set.rb +5 -7
  284. data/lib/rubygems/request_set/gem_dependency_api.rb +6 -8
  285. data/lib/rubygems/request_set/lockfile.rb +8 -12
  286. data/lib/rubygems/request_set/lockfile/parser.rb +0 -2
  287. data/lib/rubygems/request_set/lockfile/tokenizer.rb +1 -3
  288. data/lib/rubygems/requirement.rb +20 -21
  289. data/lib/rubygems/resolver.rb +8 -11
  290. data/lib/rubygems/resolver/activation_request.rb +9 -3
  291. data/lib/rubygems/resolver/api_set.rb +4 -6
  292. data/lib/rubygems/resolver/api_specification.rb +21 -8
  293. data/lib/rubygems/resolver/best_set.rb +0 -2
  294. data/lib/rubygems/resolver/composed_set.rb +3 -5
  295. data/lib/rubygems/resolver/conflict.rb +2 -4
  296. data/lib/rubygems/resolver/current_set.rb +0 -2
  297. data/lib/rubygems/resolver/dependency_request.rb +1 -3
  298. data/lib/rubygems/resolver/git_set.rb +0 -2
  299. data/lib/rubygems/resolver/git_specification.rb +0 -2
  300. data/lib/rubygems/resolver/index_set.rb +1 -3
  301. data/lib/rubygems/resolver/index_specification.rb +11 -2
  302. data/lib/rubygems/resolver/installed_specification.rb +0 -2
  303. data/lib/rubygems/resolver/installer_set.rb +4 -7
  304. data/lib/rubygems/resolver/local_specification.rb +0 -2
  305. data/lib/rubygems/resolver/lock_set.rb +2 -4
  306. data/lib/rubygems/resolver/lock_specification.rb +0 -2
  307. data/lib/rubygems/resolver/molinillo/lib/molinillo.rb +6 -5
  308. data/lib/rubygems/resolver/molinillo/lib/molinillo/delegates/resolution_state.rb +7 -0
  309. data/lib/rubygems/resolver/molinillo/lib/molinillo/delegates/specification_provider.rb +1 -0
  310. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph.rb +39 -5
  311. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/action.rb +1 -0
  312. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb +2 -1
  313. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/add_vertex.rb +2 -1
  314. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/delete_edge.rb +2 -1
  315. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb +2 -1
  316. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/log.rb +7 -6
  317. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/set_payload.rb +2 -1
  318. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/tag.rb +4 -3
  319. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/vertex.rb +43 -10
  320. data/lib/rubygems/resolver/molinillo/lib/molinillo/errors.rb +75 -7
  321. data/lib/rubygems/resolver/molinillo/lib/molinillo/gem_metadata.rb +2 -1
  322. data/lib/rubygems/resolver/molinillo/lib/molinillo/modules/specification_provider.rb +1 -0
  323. data/lib/rubygems/resolver/molinillo/lib/molinillo/modules/ui.rb +3 -1
  324. data/lib/rubygems/resolver/molinillo/lib/molinillo/resolution.rb +506 -165
  325. data/lib/rubygems/resolver/molinillo/lib/molinillo/resolver.rb +3 -2
  326. data/lib/rubygems/resolver/molinillo/lib/molinillo/state.rb +8 -4
  327. data/lib/rubygems/resolver/requirement_list.rb +0 -2
  328. data/lib/rubygems/resolver/set.rb +0 -2
  329. data/lib/rubygems/resolver/source_set.rb +0 -2
  330. data/lib/rubygems/resolver/spec_specification.rb +0 -2
  331. data/lib/rubygems/resolver/specification.rb +1 -3
  332. data/lib/rubygems/resolver/stats.rb +0 -2
  333. data/lib/rubygems/resolver/vendor_set.rb +0 -2
  334. data/lib/rubygems/resolver/vendor_specification.rb +0 -2
  335. data/lib/rubygems/s3_uri_signer.rb +2 -8
  336. data/lib/rubygems/safe_yaml.rb +4 -4
  337. data/lib/rubygems/security.rb +27 -34
  338. data/lib/rubygems/security/policy.rb +4 -8
  339. data/lib/rubygems/security/signer.rb +5 -7
  340. data/lib/rubygems/security/trust_dir.rb +1 -3
  341. data/lib/rubygems/server.rb +10 -12
  342. data/lib/rubygems/source.rb +13 -7
  343. data/lib/rubygems/source/git.rb +7 -8
  344. data/lib/rubygems/source/installed.rb +0 -2
  345. data/lib/rubygems/source/local.rb +2 -4
  346. data/lib/rubygems/source/lock.rb +0 -2
  347. data/lib/rubygems/source/specific_file.rb +0 -2
  348. data/lib/rubygems/source/vendor.rb +0 -2
  349. data/lib/rubygems/source_list.rb +6 -7
  350. data/lib/rubygems/spec_fetcher.rb +19 -18
  351. data/lib/rubygems/specification.rb +113 -126
  352. data/lib/rubygems/specification_policy.rb +88 -30
  353. data/lib/rubygems/ssl_certs/{index.rubygems.org → rubygems.org}/GlobalSignRootCA.pem +0 -0
  354. data/lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem +21 -0
  355. data/lib/rubygems/stub_specification.rb +1 -5
  356. data/lib/rubygems/syck_hack.rb +0 -2
  357. data/lib/rubygems/test_case.rb +135 -118
  358. data/lib/rubygems/test_utilities.rb +6 -14
  359. data/lib/rubygems/uninstaller.rb +35 -16
  360. data/lib/rubygems/uri_formatter.rb +2 -3
  361. data/lib/rubygems/uri_parser.rb +0 -2
  362. data/lib/rubygems/user_interaction.rb +1 -26
  363. data/lib/rubygems/util.rb +15 -3
  364. data/lib/rubygems/util/licenses.rb +4 -6
  365. data/lib/rubygems/util/list.rb +0 -2
  366. data/lib/rubygems/validator.rb +1 -3
  367. data/lib/rubygems/version.rb +5 -7
  368. data/lib/rubygems/version_option.rb +6 -0
  369. data/rubygems-update.gemspec +2 -2
  370. data/setup.rb +2 -7
  371. data/test/rubygems/plugin/load/rubygems_plugin.rb +0 -2
  372. data/test/rubygems/rubygems/commands/crash_command.rb +0 -2
  373. data/test/rubygems/rubygems_plugin.rb +0 -2
  374. data/test/rubygems/specifications/bar-0.0.2.gemspec +0 -2
  375. data/test/rubygems/specifications/rubyforge-0.0.1.gemspec +12 -0
  376. data/test/rubygems/test_bundled_ca.rb +42 -45
  377. data/test/rubygems/test_config.rb +0 -2
  378. data/test/rubygems/test_deprecate.rb +40 -7
  379. data/test/rubygems/test_gem.rb +153 -106
  380. data/test/rubygems/test_gem_available_set.rb +3 -5
  381. data/test/rubygems/test_gem_bundler_version_finder.rb +19 -3
  382. data/test/rubygems/test_gem_command.rb +24 -7
  383. data/test/rubygems/test_gem_command_manager.rb +36 -5
  384. data/test/rubygems/test_gem_commands_build_command.rb +250 -15
  385. data/test/rubygems/test_gem_commands_cert_command.rb +4 -6
  386. data/test/rubygems/test_gem_commands_check_command.rb +0 -2
  387. data/test/rubygems/test_gem_commands_cleanup_command.rb +14 -5
  388. data/test/rubygems/test_gem_commands_contents_command.rb +50 -19
  389. data/test/rubygems/test_gem_commands_dependency_command.rb +0 -2
  390. data/test/rubygems/test_gem_commands_environment_command.rb +21 -23
  391. data/test/rubygems/test_gem_commands_fetch_command.rb +0 -2
  392. data/test/rubygems/test_gem_commands_generate_index_command.rb +1 -7
  393. data/test/rubygems/test_gem_commands_help_command.rb +15 -4
  394. data/test/rubygems/test_gem_commands_info_command.rb +6 -8
  395. data/test/rubygems/test_gem_commands_install_command.rb +32 -34
  396. data/test/rubygems/test_gem_commands_list_command.rb +0 -2
  397. data/test/rubygems/test_gem_commands_lock_command.rb +0 -2
  398. data/test/rubygems/test_gem_commands_mirror.rb +1 -3
  399. data/test/rubygems/test_gem_commands_open_command.rb +4 -6
  400. data/test/rubygems/test_gem_commands_outdated_command.rb +0 -2
  401. data/test/rubygems/test_gem_commands_owner_command.rb +59 -5
  402. data/test/rubygems/test_gem_commands_pristine_command.rb +43 -12
  403. data/test/rubygems/test_gem_commands_push_command.rb +38 -9
  404. data/test/rubygems/test_gem_commands_query_command.rb +12 -12
  405. data/test/rubygems/test_gem_commands_search_command.rb +0 -2
  406. data/test/rubygems/test_gem_commands_server_command.rb +0 -2
  407. data/test/rubygems/test_gem_commands_setup_command.rb +211 -124
  408. data/test/rubygems/test_gem_commands_signin_command.rb +33 -9
  409. data/test/rubygems/test_gem_commands_signout_command.rb +0 -7
  410. data/test/rubygems/test_gem_commands_sources_command.rb +99 -3
  411. data/test/rubygems/test_gem_commands_specification_command.rb +46 -20
  412. data/test/rubygems/test_gem_commands_stale_command.rb +0 -2
  413. data/test/rubygems/test_gem_commands_uninstall_command.rb +2 -3
  414. data/test/rubygems/test_gem_commands_unpack_command.rb +0 -2
  415. data/test/rubygems/test_gem_commands_update_command.rb +116 -7
  416. data/test/rubygems/test_gem_commands_which_command.rb +3 -5
  417. data/test/rubygems/test_gem_commands_yank_command.rb +44 -8
  418. data/test/rubygems/test_gem_config_file.rb +7 -12
  419. data/test/rubygems/test_gem_dependency.rb +0 -2
  420. data/test/rubygems/test_gem_dependency_installer.rb +90 -193
  421. data/test/rubygems/test_gem_dependency_list.rb +10 -12
  422. data/test/rubygems/test_gem_dependency_resolution_error.rb +1 -3
  423. data/test/rubygems/test_gem_doctor.rb +28 -2
  424. data/test/rubygems/test_gem_ext_builder.rb +26 -47
  425. data/test/rubygems/test_gem_ext_cmake_builder.rb +16 -23
  426. data/test/rubygems/test_gem_ext_configure_builder.rb +4 -20
  427. data/test/rubygems/test_gem_ext_ext_conf_builder.rb +9 -29
  428. data/test/rubygems/test_gem_ext_rake_builder.rb +14 -24
  429. data/test/rubygems/test_gem_gem_runner.rb +44 -1
  430. data/test/rubygems/test_gem_gemcutter_utilities.rb +8 -5
  431. data/test/rubygems/test_gem_impossible_dependencies_error.rb +0 -2
  432. data/test/rubygems/test_gem_indexer.rb +9 -15
  433. data/test/rubygems/test_gem_install_update_options.rb +14 -4
  434. data/test/rubygems/test_gem_installer.rb +265 -81
  435. data/test/rubygems/test_gem_local_remote_options.rb +0 -2
  436. data/test/rubygems/test_gem_name_tuple.rb +0 -2
  437. data/test/rubygems/test_gem_package.rb +41 -39
  438. data/test/rubygems/test_gem_package_old.rb +4 -6
  439. data/test/rubygems/test_gem_package_tar_header.rb +18 -1
  440. data/test/rubygems/test_gem_package_tar_reader.rb +0 -2
  441. data/test/rubygems/test_gem_package_tar_reader_entry.rb +0 -2
  442. data/test/rubygems/test_gem_package_tar_writer.rb +9 -6
  443. data/test/rubygems/test_gem_package_task.rb +46 -13
  444. data/test/rubygems/test_gem_path_support.rb +0 -2
  445. data/test/rubygems/test_gem_platform.rb +63 -6
  446. data/test/rubygems/test_gem_rdoc.rb +0 -2
  447. data/test/rubygems/test_gem_remote_fetcher.rb +168 -211
  448. data/test/rubygems/test_gem_request.rb +13 -17
  449. data/test/rubygems/test_gem_request_connection_pools.rb +0 -4
  450. data/test/rubygems/test_gem_request_set.rb +72 -22
  451. data/test/rubygems/test_gem_request_set_gem_dependency_api.rb +3 -5
  452. data/test/rubygems/test_gem_request_set_lockfile.rb +4 -6
  453. data/test/rubygems/test_gem_request_set_lockfile_parser.rb +9 -11
  454. data/test/rubygems/test_gem_request_set_lockfile_tokenizer.rb +118 -120
  455. data/test/rubygems/test_gem_requirement.rb +10 -4
  456. data/test/rubygems/test_gem_resolver.rb +6 -8
  457. data/test/rubygems/test_gem_resolver_activation_request.rb +0 -2
  458. data/test/rubygems/test_gem_resolver_api_set.rb +11 -13
  459. data/test/rubygems/test_gem_resolver_api_specification.rb +0 -2
  460. data/test/rubygems/test_gem_resolver_best_set.rb +2 -4
  461. data/test/rubygems/test_gem_resolver_composed_set.rb +0 -2
  462. data/test/rubygems/test_gem_resolver_conflict.rb +1 -3
  463. data/test/rubygems/test_gem_resolver_dependency_request.rb +0 -2
  464. data/test/rubygems/test_gem_resolver_git_set.rb +0 -2
  465. data/test/rubygems/test_gem_resolver_git_specification.rb +0 -2
  466. data/test/rubygems/test_gem_resolver_index_set.rb +2 -4
  467. data/test/rubygems/test_gem_resolver_index_specification.rb +0 -2
  468. data/test/rubygems/test_gem_resolver_installed_specification.rb +0 -2
  469. data/test/rubygems/test_gem_resolver_installer_set.rb +7 -9
  470. data/test/rubygems/test_gem_resolver_local_specification.rb +0 -2
  471. data/test/rubygems/test_gem_resolver_lock_set.rb +3 -5
  472. data/test/rubygems/test_gem_resolver_lock_specification.rb +0 -2
  473. data/test/rubygems/test_gem_resolver_requirement_list.rb +0 -2
  474. data/test/rubygems/test_gem_resolver_specification.rb +0 -4
  475. data/test/rubygems/test_gem_resolver_vendor_set.rb +1 -3
  476. data/test/rubygems/test_gem_resolver_vendor_specification.rb +0 -2
  477. data/test/rubygems/test_gem_security.rb +22 -24
  478. data/test/rubygems/test_gem_security_policy.rb +7 -12
  479. data/test/rubygems/test_gem_security_signer.rb +10 -12
  480. data/test/rubygems/test_gem_security_trust_dir.rb +4 -6
  481. data/test/rubygems/test_gem_server.rb +10 -14
  482. data/test/rubygems/test_gem_silent_ui.rb +0 -2
  483. data/test/rubygems/test_gem_source.rb +17 -16
  484. data/test/rubygems/test_gem_source_fetch_problem.rb +0 -2
  485. data/test/rubygems/test_gem_source_git.rb +12 -13
  486. data/test/rubygems/test_gem_source_installed.rb +7 -9
  487. data/test/rubygems/test_gem_source_list.rb +1 -2
  488. data/test/rubygems/test_gem_source_local.rb +8 -10
  489. data/test/rubygems/test_gem_source_lock.rb +10 -12
  490. data/test/rubygems/test_gem_source_specific_file.rb +7 -9
  491. data/test/rubygems/test_gem_source_subpath_problem.rb +49 -0
  492. data/test/rubygems/test_gem_source_vendor.rb +7 -9
  493. data/test/rubygems/test_gem_spec_fetcher.rb +11 -4
  494. data/test/rubygems/test_gem_specification.rb +182 -131
  495. data/test/rubygems/test_gem_stream_ui.rb +3 -3
  496. data/test/rubygems/test_gem_stub_specification.rb +4 -7
  497. data/test/rubygems/test_gem_text.rb +1 -3
  498. data/test/rubygems/test_gem_uninstaller.rb +134 -12
  499. data/test/rubygems/test_gem_unsatisfiable_dependency_error.rb +0 -2
  500. data/test/rubygems/test_gem_uri_formatter.rb +0 -2
  501. data/test/rubygems/test_gem_util.rb +7 -7
  502. data/test/rubygems/test_gem_validator.rb +1 -3
  503. data/test/rubygems/test_gem_version.rb +1 -3
  504. data/test/rubygems/test_gem_version_option.rb +1 -3
  505. data/test/rubygems/test_kernel.rb +25 -10
  506. data/test/rubygems/test_project_sanity.rb +7 -2
  507. data/test/rubygems/test_remote_fetch_error.rb +0 -2
  508. data/test/rubygems/test_require.rb +291 -56
  509. metadata +66 -100
  510. data/.bundle/config +0 -2
  511. data/.rubocop.yml +0 -91
  512. data/Gemfile +0 -8
  513. data/Gemfile.lock +0 -43
  514. data/bundler/CODE_OF_CONDUCT.md +0 -136
  515. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/compatibility.rb +0 -26
  516. data/bundler/man/bundle-add.1.txt +0 -58
  517. data/bundler/man/bundle-binstubs.1.txt +0 -48
  518. data/bundler/man/bundle-cache.1.txt +0 -78
  519. data/bundler/man/bundle-check.1.txt +0 -33
  520. data/bundler/man/bundle-clean.1.txt +0 -26
  521. data/bundler/man/bundle-config.1.txt +0 -528
  522. data/bundler/man/bundle-doctor.1.txt +0 -44
  523. data/bundler/man/bundle-exec.1.txt +0 -178
  524. data/bundler/man/bundle-gem.1.txt +0 -91
  525. data/bundler/man/bundle-info.1.txt +0 -21
  526. data/bundler/man/bundle-init.1.txt +0 -34
  527. data/bundler/man/bundle-inject.1.txt +0 -32
  528. data/bundler/man/bundle-install.1.txt +0 -401
  529. data/bundler/man/bundle-list.1.txt +0 -44
  530. data/bundler/man/bundle-lock.1.txt +0 -93
  531. data/bundler/man/bundle-open.1.txt +0 -29
  532. data/bundler/man/bundle-outdated.1.txt +0 -131
  533. data/bundler/man/bundle-platform.1.txt +0 -57
  534. data/bundler/man/bundle-pristine.1.txt +0 -44
  535. data/bundler/man/bundle-remove.1.txt +0 -34
  536. data/bundler/man/bundle-show.1.txt +0 -27
  537. data/bundler/man/bundle-update.1.txt +0 -390
  538. data/bundler/man/bundle-viz.1.txt +0 -39
  539. data/bundler/man/bundle.1.txt +0 -116
  540. data/bundler/man/gemfile.5.txt +0 -649
  541. data/lib/rubygems/source_local.rb +0 -7
  542. data/lib/rubygems/source_specific_file.rb +0 -6
  543. data/lib/rubygems/ssl_certs/rubygems.global.ssl.fastly.net/DigiCertHighAssuranceEVRootCA.pem +0 -23
  544. data/lib/rubygems/ssl_certs/rubygems.org/AddTrustExternalCARoot.pem +0 -25
  545. data/lib/ubygems.rb +0 -14
  546. data/tmp/.keep +0 -0
  547. data/util/CL2notes +0 -55
  548. data/util/bisect +0 -10
  549. data/util/ci.sh +0 -62
  550. data/util/cops/deprecations.rb +0 -52
  551. data/util/create_certs.rb +0 -171
  552. data/util/create_certs.sh +0 -27
  553. data/util/create_encrypted_key.rb +0 -16
  554. data/util/generate_spdx_license_list.rb +0 -63
  555. data/util/patch_with_prs.rb +0 -77
  556. data/util/rubocop +0 -8
  557. data/util/update_bundled_ca_certificates.rb +0 -139
  558. data/util/update_changelog.rb +0 -67
data/Manifest.txt CHANGED
@@ -1,9 +1,5 @@
1
- .bundle/config
2
- .rubocop.yml
3
1
  CODE_OF_CONDUCT.md
4
2
  CONTRIBUTING.md
5
- Gemfile
6
- Gemfile.lock
7
3
  History.txt
8
4
  LICENSE.txt
9
5
  MAINTAINERS.txt
@@ -16,7 +12,6 @@ UPGRADING.md
16
12
  bin/gem
17
13
  bin/update_rubygems
18
14
  bundler/CHANGELOG.md
19
- bundler/CODE_OF_CONDUCT.md
20
15
  bundler/LICENSE.md
21
16
  bundler/README.md
22
17
  bundler/UPGRADING.md
@@ -37,6 +32,7 @@ bundler/lib/bundler/cli/config.rb
37
32
  bundler/lib/bundler/cli/console.rb
38
33
  bundler/lib/bundler/cli/doctor.rb
39
34
  bundler/lib/bundler/cli/exec.rb
35
+ bundler/lib/bundler/cli/fund.rb
40
36
  bundler/lib/bundler/cli/gem.rb
41
37
  bundler/lib/bundler/cli/info.rb
42
38
  bundler/lib/bundler/cli/init.rb
@@ -93,6 +89,32 @@ bundler/lib/bundler/installer/standalone.rb
93
89
  bundler/lib/bundler/lazy_specification.rb
94
90
  bundler/lib/bundler/lockfile_generator.rb
95
91
  bundler/lib/bundler/lockfile_parser.rb
92
+ bundler/lib/bundler/man/.document
93
+ bundler/lib/bundler/man/bundle-add.1.ronn
94
+ bundler/lib/bundler/man/bundle-binstubs.1.ronn
95
+ bundler/lib/bundler/man/bundle-cache.1.ronn
96
+ bundler/lib/bundler/man/bundle-check.1.ronn
97
+ bundler/lib/bundler/man/bundle-clean.1.ronn
98
+ bundler/lib/bundler/man/bundle-config.1.ronn
99
+ bundler/lib/bundler/man/bundle-doctor.1.ronn
100
+ bundler/lib/bundler/man/bundle-exec.1.ronn
101
+ bundler/lib/bundler/man/bundle-gem.1.ronn
102
+ bundler/lib/bundler/man/bundle-info.1.ronn
103
+ bundler/lib/bundler/man/bundle-init.1.ronn
104
+ bundler/lib/bundler/man/bundle-inject.1.ronn
105
+ bundler/lib/bundler/man/bundle-install.1.ronn
106
+ bundler/lib/bundler/man/bundle-list.1.ronn
107
+ bundler/lib/bundler/man/bundle-lock.1.ronn
108
+ bundler/lib/bundler/man/bundle-open.1.ronn
109
+ bundler/lib/bundler/man/bundle-outdated.1.ronn
110
+ bundler/lib/bundler/man/bundle-platform.1.ronn
111
+ bundler/lib/bundler/man/bundle-pristine.1.ronn
112
+ bundler/lib/bundler/man/bundle-remove.1.ronn
113
+ bundler/lib/bundler/man/bundle-show.1.ronn
114
+ bundler/lib/bundler/man/bundle-update.1.ronn
115
+ bundler/lib/bundler/man/bundle-viz.1.ronn
116
+ bundler/lib/bundler/man/bundle.1.ronn
117
+ bundler/lib/bundler/man/gemfile.5.ronn
96
118
  bundler/lib/bundler/match_platform.rb
97
119
  bundler/lib/bundler/mirror.rb
98
120
  bundler/lib/bundler/plugin.rb
@@ -147,19 +169,25 @@ bundler/lib/bundler/templates/newgem/README.md.tt
147
169
  bundler/lib/bundler/templates/newgem/Rakefile.tt
148
170
  bundler/lib/bundler/templates/newgem/bin/console.tt
149
171
  bundler/lib/bundler/templates/newgem/bin/setup.tt
172
+ bundler/lib/bundler/templates/newgem/circleci/config.yml.tt
150
173
  bundler/lib/bundler/templates/newgem/exe/newgem.tt
151
174
  bundler/lib/bundler/templates/newgem/ext/newgem/extconf.rb.tt
152
175
  bundler/lib/bundler/templates/newgem/ext/newgem/newgem.c.tt
153
176
  bundler/lib/bundler/templates/newgem/ext/newgem/newgem.h.tt
177
+ bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt
154
178
  bundler/lib/bundler/templates/newgem/gitignore.tt
179
+ bundler/lib/bundler/templates/newgem/gitlab-ci.yml.tt
155
180
  bundler/lib/bundler/templates/newgem/lib/newgem.rb.tt
156
181
  bundler/lib/bundler/templates/newgem/lib/newgem/version.rb.tt
157
182
  bundler/lib/bundler/templates/newgem/newgem.gemspec.tt
158
183
  bundler/lib/bundler/templates/newgem/rspec.tt
184
+ bundler/lib/bundler/templates/newgem/rubocop.yml.tt
159
185
  bundler/lib/bundler/templates/newgem/spec/newgem_spec.rb.tt
160
186
  bundler/lib/bundler/templates/newgem/spec/spec_helper.rb.tt
161
- bundler/lib/bundler/templates/newgem/test/newgem_test.rb.tt
162
- bundler/lib/bundler/templates/newgem/test/test_helper.rb.tt
187
+ bundler/lib/bundler/templates/newgem/test/minitest/newgem_test.rb.tt
188
+ bundler/lib/bundler/templates/newgem/test/minitest/test_helper.rb.tt
189
+ bundler/lib/bundler/templates/newgem/test/test-unit/newgem_test.rb.tt
190
+ bundler/lib/bundler/templates/newgem/test/test-unit/test_helper.rb.tt
163
191
  bundler/lib/bundler/templates/newgem/travis.yml.tt
164
192
  bundler/lib/bundler/ui.rb
165
193
  bundler/lib/bundler/ui/rg_proxy.rb
@@ -172,7 +200,6 @@ bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb
172
200
  bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/version.rb
173
201
  bundler/lib/bundler/vendor/fileutils/lib/fileutils.rb
174
202
  bundler/lib/bundler/vendor/molinillo/lib/molinillo.rb
175
- bundler/lib/bundler/vendor/molinillo/lib/molinillo/compatibility.rb
176
203
  bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb
177
204
  bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb
178
205
  bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb
@@ -227,6 +254,7 @@ bundler/lib/bundler/vendor/thor/lib/thor/shell/color.rb
227
254
  bundler/lib/bundler/vendor/thor/lib/thor/shell/html.rb
228
255
  bundler/lib/bundler/vendor/thor/lib/thor/util.rb
229
256
  bundler/lib/bundler/vendor/thor/lib/thor/version.rb
257
+ bundler/lib/bundler/vendor/tmpdir/lib/tmpdir.rb
230
258
  bundler/lib/bundler/vendor/uri/lib/uri.rb
231
259
  bundler/lib/bundler/vendor/uri/lib/uri/common.rb
232
260
  bundler/lib/bundler/vendor/uri/lib/uri/file.rb
@@ -244,6 +272,7 @@ bundler/lib/bundler/vendored_fileutils.rb
244
272
  bundler/lib/bundler/vendored_molinillo.rb
245
273
  bundler/lib/bundler/vendored_persistent.rb
246
274
  bundler/lib/bundler/vendored_thor.rb
275
+ bundler/lib/bundler/vendored_tmpdir.rb
247
276
  bundler/lib/bundler/vendored_uri.rb
248
277
  bundler/lib/bundler/version.rb
249
278
  bundler/lib/bundler/version_ranges.rb
@@ -251,80 +280,30 @@ bundler/lib/bundler/vlad.rb
251
280
  bundler/lib/bundler/worker.rb
252
281
  bundler/lib/bundler/yaml_serializer.rb
253
282
  bundler/man/bundle-add.1
254
- bundler/man/bundle-add.1.txt
255
- bundler/man/bundle-add.ronn
256
283
  bundler/man/bundle-binstubs.1
257
- bundler/man/bundle-binstubs.1.txt
258
- bundler/man/bundle-binstubs.ronn
259
284
  bundler/man/bundle-cache.1
260
- bundler/man/bundle-cache.1.txt
261
- bundler/man/bundle-cache.ronn
262
285
  bundler/man/bundle-check.1
263
- bundler/man/bundle-check.1.txt
264
- bundler/man/bundle-check.ronn
265
286
  bundler/man/bundle-clean.1
266
- bundler/man/bundle-clean.1.txt
267
- bundler/man/bundle-clean.ronn
268
287
  bundler/man/bundle-config.1
269
- bundler/man/bundle-config.1.txt
270
- bundler/man/bundle-config.ronn
271
288
  bundler/man/bundle-doctor.1
272
- bundler/man/bundle-doctor.1.txt
273
- bundler/man/bundle-doctor.ronn
274
289
  bundler/man/bundle-exec.1
275
- bundler/man/bundle-exec.1.txt
276
- bundler/man/bundle-exec.ronn
277
290
  bundler/man/bundle-gem.1
278
- bundler/man/bundle-gem.1.txt
279
- bundler/man/bundle-gem.ronn
280
291
  bundler/man/bundle-info.1
281
- bundler/man/bundle-info.1.txt
282
- bundler/man/bundle-info.ronn
283
292
  bundler/man/bundle-init.1
284
- bundler/man/bundle-init.1.txt
285
- bundler/man/bundle-init.ronn
286
293
  bundler/man/bundle-inject.1
287
- bundler/man/bundle-inject.1.txt
288
- bundler/man/bundle-inject.ronn
289
294
  bundler/man/bundle-install.1
290
- bundler/man/bundle-install.1.txt
291
- bundler/man/bundle-install.ronn
292
295
  bundler/man/bundle-list.1
293
- bundler/man/bundle-list.1.txt
294
- bundler/man/bundle-list.ronn
295
296
  bundler/man/bundle-lock.1
296
- bundler/man/bundle-lock.1.txt
297
- bundler/man/bundle-lock.ronn
298
297
  bundler/man/bundle-open.1
299
- bundler/man/bundle-open.1.txt
300
- bundler/man/bundle-open.ronn
301
298
  bundler/man/bundle-outdated.1
302
- bundler/man/bundle-outdated.1.txt
303
- bundler/man/bundle-outdated.ronn
304
299
  bundler/man/bundle-platform.1
305
- bundler/man/bundle-platform.1.txt
306
- bundler/man/bundle-platform.ronn
307
300
  bundler/man/bundle-pristine.1
308
- bundler/man/bundle-pristine.1.txt
309
- bundler/man/bundle-pristine.ronn
310
301
  bundler/man/bundle-remove.1
311
- bundler/man/bundle-remove.1.txt
312
- bundler/man/bundle-remove.ronn
313
302
  bundler/man/bundle-show.1
314
- bundler/man/bundle-show.1.txt
315
- bundler/man/bundle-show.ronn
316
303
  bundler/man/bundle-update.1
317
- bundler/man/bundle-update.1.txt
318
- bundler/man/bundle-update.ronn
319
304
  bundler/man/bundle-viz.1
320
- bundler/man/bundle-viz.1.txt
321
- bundler/man/bundle-viz.ronn
322
305
  bundler/man/bundle.1
323
- bundler/man/bundle.1.txt
324
- bundler/man/bundle.ronn
325
306
  bundler/man/gemfile.5
326
- bundler/man/gemfile.5.ronn
327
- bundler/man/gemfile.5.txt
328
307
  bundler/man/index.txt
329
308
  hide_lib_for_update/note.txt
330
309
  lib/rubygems.rb
@@ -396,9 +375,11 @@ lib/rubygems/install_message.rb
396
375
  lib/rubygems/install_update_options.rb
397
376
  lib/rubygems/installer.rb
398
377
  lib/rubygems/installer_test_case.rb
378
+ lib/rubygems/installer_uninstaller_utils.rb
399
379
  lib/rubygems/local_remote_options.rb
400
380
  lib/rubygems/mock_gem_ui.rb
401
381
  lib/rubygems/name_tuple.rb
382
+ lib/rubygems/openssl.rb
402
383
  lib/rubygems/package.rb
403
384
  lib/rubygems/package/digest_io.rb
404
385
  lib/rubygems/package/file_source.rb
@@ -415,6 +396,7 @@ lib/rubygems/path_support.rb
415
396
  lib/rubygems/platform.rb
416
397
  lib/rubygems/psych_additions.rb
417
398
  lib/rubygems/psych_tree.rb
399
+ lib/rubygems/query_utils.rb
418
400
  lib/rubygems/rdoc.rb
419
401
  lib/rubygems/remote_fetcher.rb
420
402
  lib/rubygems/request.rb
@@ -491,15 +473,12 @@ lib/rubygems/source/lock.rb
491
473
  lib/rubygems/source/specific_file.rb
492
474
  lib/rubygems/source/vendor.rb
493
475
  lib/rubygems/source_list.rb
494
- lib/rubygems/source_local.rb
495
- lib/rubygems/source_specific_file.rb
496
476
  lib/rubygems/spec_fetcher.rb
497
477
  lib/rubygems/specification.rb
498
478
  lib/rubygems/specification_policy.rb
499
479
  lib/rubygems/ssl_certs/.document
500
- lib/rubygems/ssl_certs/index.rubygems.org/GlobalSignRootCA.pem
501
- lib/rubygems/ssl_certs/rubygems.global.ssl.fastly.net/DigiCertHighAssuranceEVRootCA.pem
502
- lib/rubygems/ssl_certs/rubygems.org/AddTrustExternalCARoot.pem
480
+ lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA.pem
481
+ lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem
503
482
  lib/rubygems/stub_specification.rb
504
483
  lib/rubygems/syck_hack.rb
505
484
  lib/rubygems/test_case.rb
@@ -516,7 +495,6 @@ lib/rubygems/util/list.rb
516
495
  lib/rubygems/validator.rb
517
496
  lib/rubygems/version.rb
518
497
  lib/rubygems/version_option.rb
519
- lib/ubygems.rb
520
498
  rubygems-update.gemspec
521
499
  setup.rb
522
500
  test/rubygems/alternate_cert.pem
@@ -566,6 +544,7 @@ test/rubygems/sff/discover.rb
566
544
  test/rubygems/simple_gem.rb
567
545
  test/rubygems/specifications/bar-0.0.2.gemspec
568
546
  test/rubygems/specifications/foo-0.0.1-x86-mswin32.gemspec
547
+ test/rubygems/specifications/rubyforge-0.0.1.gemspec
569
548
  test/rubygems/ssl_cert.pem
570
549
  test/rubygems/ssl_key.pem
571
550
  test/rubygems/test_bundled_ca.rb
@@ -683,6 +662,7 @@ test/rubygems/test_gem_source_list.rb
683
662
  test/rubygems/test_gem_source_local.rb
684
663
  test/rubygems/test_gem_source_lock.rb
685
664
  test/rubygems/test_gem_source_specific_file.rb
665
+ test/rubygems/test_gem_source_subpath_problem.rb
686
666
  test/rubygems/test_gem_source_vendor.rb
687
667
  test/rubygems/test_gem_spec_fetcher.rb
688
668
  test/rubygems/test_gem_specification.rb
@@ -702,16 +682,3 @@ test/rubygems/test_remote_fetch_error.rb
702
682
  test/rubygems/test_require.rb
703
683
  test/rubygems/wrong_key_cert.pem
704
684
  test/rubygems/wrong_key_cert_32.pem
705
- tmp/.keep
706
- util/CL2notes
707
- util/bisect
708
- util/ci.sh
709
- util/cops/deprecations.rb
710
- util/create_certs.rb
711
- util/create_certs.sh
712
- util/create_encrypted_key.rb
713
- util/generate_spdx_license_list.rb
714
- util/patch_with_prs.rb
715
- util/rubocop
716
- util/update_bundled_ca_certificates.rb
717
- util/update_changelog.rb
data/POLICIES.md CHANGED
@@ -2,15 +2,8 @@
2
2
 
3
3
  Contributions to RubyGems are made via GitHub pull requests, which must be
4
4
  approved by a project committer other than the author. To approve a PR, a
5
- maintainer can leave a comment including the text "@bundlerbot r+", indicating
6
- that they have reviewed the PR and approve it. Bundlerbot will then
7
- automatically create a merge commit, test the merge, and land the PR if the
8
- merge commit passes the tests.
9
-
10
- This process guarantees that our release branches always have passing tests,
11
- and reduces siloing of information to a single contributor. For a full list of
12
- possible commands, see [the Bundlerbot
13
- documentation](https://bors.tech/documentation/).
5
+ maintainer can use GitHubs PR review feature. After that, if the original author
6
+ is happy to merge the PR, she can press the merge button.
14
7
 
15
8
  ## Long-Term Support
16
9
 
data/README.md CHANGED
@@ -6,7 +6,7 @@ A package (also known as a library) contains a set of functionality that can be
6
6
  We call these packages "gems" and RubyGems is a tool to install, create, manage and load these packages in your Ruby environment.
7
7
 
8
8
  RubyGems is also a client for [RubyGems.org](https://rubygems.org), a public repository of Gems that allows you to publish a Gem
9
- that can be shared and used by other developers. See our guide on publishing a Gem at [guides.rubygems.org](http://guides.rubygems.org/publishing/)
9
+ that can be shared and used by other developers. See our guide on publishing a Gem at [guides.rubygems.org](https://guides.rubygems.org/publishing/)
10
10
 
11
11
  ## Getting Started
12
12
 
@@ -23,7 +23,7 @@ Finally, inside your Ruby program, load the Nokogiri gem and start parsing your
23
23
 
24
24
  Nokogiri.XML('<h1>Hello World</h1>')
25
25
 
26
- For more information about how to use RubyGems, see our RubyGems basics guide at [guides.rubygems.org](http://guides.rubygems.org/rubygems-basics/)
26
+ For more information about how to use RubyGems, see our RubyGems basics guide at [guides.rubygems.org](https://guides.rubygems.org/rubygems-basics/)
27
27
 
28
28
  ## Requirements
29
29
 
@@ -40,7 +40,7 @@ with your OS's package manager before installing RubyGems manually.
40
40
  If you would like to manually install RubyGems:
41
41
 
42
42
  * Download from https://rubygems.org/pages/download, unpack, and `cd` into RubyGems' src
43
- * OR clone this repository and `cd` into the repository (make sure to run `git submodule update --init`)
43
+ * OR clone this repository and `cd` into the repository
44
44
 
45
45
  Install RubyGems by running:
46
46
 
@@ -65,10 +65,10 @@ See [UPGRADING](UPGRADING.md) for more details and alternative instructions.
65
65
  ## Documentation
66
66
 
67
67
  RubyGems uses [rdoc](https://github.com/rdoc/rdoc) for documentation. A compiled set of the docs
68
- can be viewed online at [rubydoc](http://www.rubydoc.info/github/rubygems/rubygems).
68
+ can be viewed online at [rubydoc](https://www.rubydoc.info/github/rubygems/rubygems).
69
69
 
70
70
  RubyGems also provides a comprehensive set of guides which covers numerous topics such as
71
- creating a new gem, security practices and other resources at http://guides.rubygems.org
71
+ creating a new gem, security practices and other resources at https://guides.rubygems.org
72
72
 
73
73
  ## Getting Help
74
74
 
data/Rakefile CHANGED
@@ -1,4 +1,4 @@
1
- # -*- ruby -*-
1
+ RakeFileUtils.verbose_flag = false
2
2
 
3
3
  require 'rubygems'
4
4
  require 'rubygems/package_task'
@@ -6,9 +6,10 @@ require "rake/testtask"
6
6
  require 'psych'
7
7
 
8
8
  desc "Setup Rubygems dev environment"
9
- task :setup => ["bundler:checkout"] do
10
- sh "gem install bundler:2.0.2"
11
- sh "bundle install"
9
+ task :setup do
10
+ version = File.read("dev_gems.rb.lock").split(/BUNDLED WITH\n /).last
11
+ sh "gem install bundler:#{version}"
12
+ sh "bundle install --gemfile=dev_gems.rb"
12
13
  end
13
14
 
14
15
  desc "Setup git hooks"
@@ -18,7 +19,7 @@ end
18
19
 
19
20
  Rake::TestTask.new do |t|
20
21
  t.ruby_opts = %w[-w]
21
- t.ruby_opts << '-rdevkit' if Gem.win_platform?
22
+ t.ruby_opts << '-rdevkit' if RbConfig::CONFIG['host_os'].include?('mingw')
22
23
 
23
24
  t.libs << "test"
24
25
  t.libs << "bundler/lib"
@@ -38,9 +39,9 @@ RDoc::Task.new :rdoc => 'docs', :clobber_rdoc => 'clobber_docs' do |doc|
38
39
  doc.title = "RubyGems #{v} API Documentation"
39
40
 
40
41
  rdoc_files = Rake::FileList.new %w[lib bundler/lib]
41
- rdoc_files.add %w[History.txt LICENSE.txt MIT.txt CODE_OF_CONDUCT.md CONTRIBUTING.rdoc
42
- MAINTAINERS.txt Manifest.txt POLICIES.rdoc README.md UPGRADING.rdoc bundler/CHANGELOG.md
43
- bundler/CODE_OF_CONDUCT.md bundler/CONTRIBUTING.md bundler/LICENSE.md bundler/README.md
42
+ rdoc_files.add %w[History.txt LICENSE.txt MIT.txt CODE_OF_CONDUCT.md CONTRIBUTING.md
43
+ MAINTAINERS.txt Manifest.txt POLICIES.md README.md UPGRADING.md bundler/CHANGELOG.md
44
+ bundler/doc/contributing/README.md bundler/LICENSE.md bundler/README.md
44
45
  hide_lib_for_update/note.txt].map(&:freeze)
45
46
 
46
47
  doc.rdoc_files = rdoc_files
@@ -52,6 +53,7 @@ begin
52
53
  require "automatiek"
53
54
 
54
55
  Automatiek::RakeTask.new("molinillo") do |lib|
56
+ lib.version = "0.7.0"
55
57
  lib.download = { :github => "https://github.com/CocoaPods/Molinillo" }
56
58
  lib.namespace = "Molinillo"
57
59
  lib.prefix = "Gem::Resolver"
@@ -63,21 +65,23 @@ rescue LoadError
63
65
  end
64
66
  end
65
67
 
66
- desc "Run rubocop"
67
- task(:rubocop) do
68
- sh "util/rubocop"
68
+ namespace :rubocop do
69
+ desc "Run rubocop for RubyGems. Pass positional arguments, e.g. -a, as Rake arguments."
70
+ task(:rubygems) do |_, args|
71
+ sh "util/rubocop", *args
72
+ end
73
+
74
+ desc "Run rubocop for Bundler. Pass positional arguments, e.g. -a, as Rake arguments."
75
+ task(:bundler) do |_, args|
76
+ sh "bundler/bin/rubocop", *args
77
+ end
69
78
  end
70
79
 
80
+ task rubocop: %w[rubocop:rubygems rubocop:bundler]
81
+
71
82
  desc "Run a test suite bisection"
72
83
  task(:bisect) do
73
- seed = begin
74
- Integer(ENV["SEED"])
75
- rescue
76
- abort "Specify the failing seed as the SEED environment variable"
77
- end
78
-
79
- gemdir = `gem env gemdir`.chomp
80
- sh "SEED=#{seed} MTB_VERBOSE=2 util/bisect -Ilib:bundler/lib:test:#{gemdir}/gems/minitest-server-1.0.5/lib test"
84
+ sh "util/bisect"
81
85
  end
82
86
 
83
87
  # --------------------------------------------------------------------
@@ -96,8 +100,20 @@ task :check_deprecations do
96
100
  end
97
101
 
98
102
  desc "Install rubygems to local system"
99
- task :install => :package do
100
- sh "gem install pkg/rubygems-update-#{v}.gem && update_rubygems"
103
+ task :install => [:clear_package, :package] do
104
+ sh "ruby -Ilib bin/gem install --no-document pkg/rubygems-update-#{v}.gem && update_rubygems --no-document"
105
+ end
106
+
107
+ desc "Clears previously built package"
108
+ task :clear_package do
109
+ rm_rf "pkg"
110
+ end
111
+
112
+ desc "Generates the changelog for a specific target version"
113
+ task :generate_changelog, [:version] do |_t, opts|
114
+ require_relative "util/changelog"
115
+
116
+ Changelog.for_rubygems(opts[:version]).cut!
101
117
  end
102
118
 
103
119
  desc "Release rubygems-#{v}"
@@ -146,7 +162,7 @@ file "pkg/rubygems-#{v}.tgz" => "pkg/rubygems-#{v}" do
146
162
  sh "7z a -ttar rubygems-#{v}.tar rubygems-#{v}"
147
163
  sh "7z a -tgzip rubygems-#{v}.tgz rubygems-#{v}.tar"
148
164
  else
149
- sh "tar -czf rubygems-#{v}.tgz rubygems-#{v}"
165
+ sh "tar -czf rubygems-#{v}.tgz --owner=rubygems:0 --group=rubygems:0 rubygems-#{v}"
150
166
  end
151
167
  end
152
168
  end
@@ -162,7 +178,7 @@ task :upload_to_s3 do
162
178
  s3 = Aws::S3::Resource.new(region:'us-west-2')
163
179
  %w[zip tgz].each do |ext|
164
180
  obj = s3.bucket('oregon.production.s3.rubygems.org').object("rubygems/rubygems-#{v}.#{ext}")
165
- obj.upload_file("pkg/rubygems-#{v}.#{ext}")
181
+ obj.upload_file("pkg/rubygems-#{v}.#{ext}", acl: 'public-read')
166
182
  end
167
183
  end
168
184
 
@@ -263,50 +279,8 @@ namespace 'blog' do
263
279
  name = `git config --get user.name`.strip
264
280
  email = `git config --get user.email`.strip
265
281
 
266
- history = File.read 'History.txt'
267
-
268
- history.force_encoding Encoding::UTF_8
269
-
270
- _, change_log, = history.split %r%^===\s*\d.*%, 3
271
-
272
- change_types = []
273
-
274
- lines = change_log.strip.lines
275
- change_log = []
276
-
277
- while line = lines.shift do
278
- case line
279
- when /(^[A-Z].*)/ then
280
- change_types << $1
281
- change_log << "_#{$1}_\n"
282
- when /^\*/ then
283
- entry = [line.strip]
284
-
285
- while /^ \S/ =~ lines.first do
286
- entry << lines.shift.strip
287
- end
288
-
289
- change_log << "#{entry.join ' '}\n"
290
- else
291
- change_log << line
292
- end
293
- end
294
-
295
- change_log = change_log.join
296
-
297
- change_types = change_types.map do |change_type|
298
- change_type.downcase.tr '^a-z ', ''
299
- end
300
-
301
- last_change_type = change_types.pop
302
-
303
- if change_types.empty?
304
- change_types = ''
305
- else
306
- change_types = change_types.join(', ') << ' and '
307
- end
308
-
309
- change_types << last_change_type
282
+ require_relative "util/changelog"
283
+ history = Changelog.for_rubygems(v.to_s)
310
284
 
311
285
  require 'tempfile'
312
286
 
@@ -319,7 +293,7 @@ author: #{name}
319
293
  author_email: #{email}
320
294
  ---
321
295
 
322
- RubyGems #{v} includes #{change_types}.
296
+ RubyGems #{v} includes #{history.change_types_for_blog}.
323
297
 
324
298
  To update to the latest RubyGems you can run:
325
299
 
@@ -329,13 +303,13 @@ If you need to upgrade or downgrade please follow the [how to upgrade/downgrade
329
303
  RubyGems][upgrading] instructions. To install RubyGems by hand see the
330
304
  [Download RubyGems][download] page.
331
305
 
332
- #{change_log}
306
+ #{history.release_notes_for_blog.join("\n")}
333
307
 
334
308
  SHA256 Checksums:
335
309
 
336
310
  #{checksums}
337
311
 
338
- [download]: http://rubygems.org/pages/download
312
+ [download]: https://rubygems.org/pages/download
339
313
  [upgrading]: http://docs.seattlerb.org/rubygems/UPGRADING_rdoc.html
340
314
 
341
315
  ANNOUNCEMENT
@@ -375,42 +349,35 @@ end
375
349
 
376
350
  module Rubygems
377
351
  class ProjectFiles
378
-
379
352
  def self.all
380
353
  files = []
381
- exclude = %r[\.git|\./bundler/(?!lib|man|exe|[^/]+\.md|bundler.gemspec)]ox
382
- tracked_files = `git ls-files --recurse-submodules`.split("\n").map {|f| "./#{f}" }
354
+ exclude = %r{\A(?:\.|dev_gems|bundler/(?!lib|man|exe|[^/]+\.md|bundler.gemspec)|util/)}
355
+ tracked_files = `git ls-files`.split("\n")
383
356
 
384
357
  tracked_files.each do |path|
385
358
  next unless File.file?(path)
386
359
  next if path =~ exclude
387
- files << path[2..-1]
360
+ files << path
388
361
  end
389
362
 
390
- files
363
+ files.sort
391
364
  end
392
-
393
365
  end
394
366
  end
395
367
 
396
368
  desc "Update the manifest to reflect what's on disk"
397
369
  task :update_manifest do
398
- File.open('Manifest.txt', 'w') {|f| f.puts(Rubygems::ProjectFiles.all.sort) }
370
+ File.open('Manifest.txt', 'w') {|f| f.puts(Rubygems::ProjectFiles.all) }
399
371
  end
400
372
 
401
373
  desc "Check the manifest is up to date"
402
374
  task :check_manifest do
403
- if File.read("Manifest.txt").split.sort != Rubygems::ProjectFiles.all.sort
375
+ if File.read("Manifest.txt").split != Rubygems::ProjectFiles.all
404
376
  abort "Manifest is out of date. Run `rake update_manifest` to sync it"
405
377
  end
406
378
  end
407
379
 
408
380
  namespace :bundler do
409
- desc "Initialize bundler submodule"
410
- task :checkout do
411
- sh "git submodule update --init"
412
- end
413
-
414
381
  task :build_metadata do
415
382
  chdir('bundler') { sh "rake build_metadata" }
416
383
  end