rubygems-update 3.0.6 → 3.2.14

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 (628) hide show
  1. checksums.yaml +4 -4
  2. data/{History.txt → CHANGELOG.md} +1100 -436
  3. data/CODE_OF_CONDUCT.md +55 -19
  4. data/CONTRIBUTING.md +37 -10
  5. data/MAINTAINERS.txt +1 -6
  6. data/Manifest.txt +104 -64
  7. data/POLICIES.md +6 -12
  8. data/README.md +6 -6
  9. data/Rakefile +121 -111
  10. data/bin/gem +0 -6
  11. data/bin/update_rubygems +2 -2
  12. data/bundler/CHANGELOG.md +1788 -1251
  13. data/bundler/LICENSE.md +18 -19
  14. data/bundler/README.md +9 -10
  15. data/bundler/UPGRADING.md +215 -0
  16. data/bundler/bundler.gemspec +9 -26
  17. data/bundler/exe/bundle +22 -3
  18. data/bundler/lib/bundler.rb +233 -94
  19. data/bundler/lib/bundler/build_metadata.rb +5 -13
  20. data/bundler/lib/bundler/capistrano.rb +4 -4
  21. data/bundler/lib/bundler/cli.rb +221 -148
  22. data/bundler/lib/bundler/cli/add.rb +28 -16
  23. data/bundler/lib/bundler/cli/binstubs.rb +6 -2
  24. data/bundler/lib/bundler/cli/cache.rb +24 -17
  25. data/bundler/lib/bundler/cli/clean.rb +1 -1
  26. data/bundler/lib/bundler/cli/common.rb +25 -12
  27. data/bundler/lib/bundler/cli/config.rb +161 -86
  28. data/bundler/lib/bundler/cli/console.rb +1 -1
  29. data/bundler/lib/bundler/cli/doctor.rb +5 -5
  30. data/bundler/lib/bundler/cli/exec.rb +8 -20
  31. data/bundler/lib/bundler/cli/fund.rb +36 -0
  32. data/bundler/lib/bundler/cli/gem.rb +125 -32
  33. data/bundler/lib/bundler/cli/info.rb +29 -6
  34. data/bundler/lib/bundler/cli/init.rb +2 -2
  35. data/bundler/lib/bundler/cli/inject.rb +1 -1
  36. data/bundler/lib/bundler/cli/install.rb +27 -23
  37. data/bundler/lib/bundler/cli/issue.rb +5 -5
  38. data/bundler/lib/bundler/cli/list.rb +12 -10
  39. data/bundler/lib/bundler/cli/open.rb +10 -6
  40. data/bundler/lib/bundler/cli/outdated.rb +134 -109
  41. data/bundler/lib/bundler/cli/plugin.rb +19 -2
  42. data/bundler/lib/bundler/cli/pristine.rb +6 -1
  43. data/bundler/lib/bundler/cli/show.rb +2 -2
  44. data/bundler/lib/bundler/cli/update.rb +34 -12
  45. data/bundler/lib/bundler/compact_index_client.rb +26 -10
  46. data/bundler/lib/bundler/compact_index_client/cache.rb +6 -14
  47. data/bundler/lib/bundler/compact_index_client/gem_parser.rb +28 -0
  48. data/bundler/lib/bundler/compact_index_client/updater.rb +8 -20
  49. data/bundler/lib/bundler/current_ruby.rb +9 -7
  50. data/bundler/lib/bundler/definition.rb +133 -132
  51. data/bundler/lib/bundler/dep_proxy.rb +16 -9
  52. data/bundler/lib/bundler/dependency.rb +19 -14
  53. data/bundler/lib/bundler/deployment.rb +1 -1
  54. data/bundler/lib/bundler/dsl.rb +54 -71
  55. data/bundler/lib/bundler/endpoint_specification.rb +1 -1
  56. data/bundler/lib/bundler/env.rb +9 -14
  57. data/bundler/lib/bundler/environment_preserver.rb +26 -3
  58. data/bundler/lib/bundler/errors.rb +1 -0
  59. data/bundler/lib/bundler/feature_flag.rb +19 -34
  60. data/bundler/lib/bundler/fetcher.rb +19 -16
  61. data/bundler/lib/bundler/fetcher/base.rb +1 -1
  62. data/bundler/lib/bundler/fetcher/compact_index.rb +27 -13
  63. data/bundler/lib/bundler/fetcher/dependency.rb +1 -1
  64. data/bundler/lib/bundler/fetcher/downloader.rb +6 -3
  65. data/bundler/lib/bundler/fetcher/index.rb +8 -7
  66. data/bundler/lib/bundler/friendly_errors.rb +27 -19
  67. data/bundler/lib/bundler/gem_helper.rb +68 -37
  68. data/bundler/lib/bundler/gem_helpers.rb +38 -29
  69. data/bundler/lib/bundler/gem_tasks.rb +1 -1
  70. data/bundler/lib/bundler/gem_version_promoter.rb +5 -5
  71. data/bundler/lib/bundler/graph.rb +3 -3
  72. data/bundler/lib/bundler/index.rb +12 -7
  73. data/bundler/lib/bundler/injector.rb +32 -12
  74. data/bundler/lib/bundler/inline.rb +41 -30
  75. data/bundler/lib/bundler/installer.rb +41 -60
  76. data/bundler/lib/bundler/installer/gem_installer.rb +8 -4
  77. data/bundler/lib/bundler/installer/parallel_installer.rb +20 -26
  78. data/bundler/lib/bundler/installer/standalone.rb +18 -4
  79. data/bundler/lib/bundler/lazy_specification.rb +41 -27
  80. data/bundler/lib/bundler/lockfile_generator.rb +1 -1
  81. data/bundler/lib/bundler/lockfile_parser.rb +16 -33
  82. data/bundler/lib/bundler/{ssl_certs → man}/.document +0 -0
  83. data/bundler/lib/bundler/man/bundle-add.1 +66 -0
  84. data/bundler/{man/bundle-add.ronn → lib/bundler/man/bundle-add.1.ronn} +7 -1
  85. data/bundler/lib/bundler/man/bundle-binstubs.1 +42 -0
  86. data/bundler/{man/bundle-binstubs.ronn → lib/bundler/man/bundle-binstubs.1.ronn} +3 -5
  87. data/bundler/lib/bundler/man/bundle-cache.1 +55 -0
  88. data/bundler/{man/bundle-package.ronn → lib/bundler/man/bundle-cache.1.ronn} +15 -15
  89. data/bundler/lib/bundler/man/bundle-check.1 +31 -0
  90. data/bundler/{man/bundle-check.ronn → lib/bundler/man/bundle-check.1.ronn} +0 -0
  91. data/bundler/lib/bundler/man/bundle-clean.1 +24 -0
  92. data/bundler/{man/bundle-clean.ronn → lib/bundler/man/bundle-clean.1.ronn} +0 -0
  93. data/bundler/lib/bundler/man/bundle-config.1 +488 -0
  94. data/bundler/{man/bundle-config.ronn → lib/bundler/man/bundle-config.1.ronn} +59 -67
  95. data/bundler/lib/bundler/man/bundle-doctor.1 +44 -0
  96. data/bundler/{man/bundle-doctor.ronn → lib/bundler/man/bundle-doctor.1.ronn} +0 -0
  97. data/bundler/lib/bundler/man/bundle-exec.1 +165 -0
  98. data/bundler/{man/bundle-exec.ronn → lib/bundler/man/bundle-exec.1.ronn} +1 -1
  99. data/bundler/lib/bundler/man/bundle-gem.1 +102 -0
  100. data/bundler/{man/bundle-gem.ronn → lib/bundler/man/bundle-gem.1.ronn} +30 -7
  101. data/bundler/lib/bundler/man/bundle-info.1 +20 -0
  102. data/bundler/{man/bundle-info.ronn → lib/bundler/man/bundle-info.1.ronn} +0 -0
  103. data/bundler/lib/bundler/man/bundle-init.1 +25 -0
  104. data/bundler/{man/bundle-init.ronn → lib/bundler/man/bundle-init.1.ronn} +1 -1
  105. data/bundler/lib/bundler/man/bundle-inject.1 +33 -0
  106. data/bundler/{man/bundle-inject.ronn → lib/bundler/man/bundle-inject.1.ronn} +0 -0
  107. data/bundler/lib/bundler/man/bundle-install.1 +338 -0
  108. data/bundler/{man/bundle-install.ronn → lib/bundler/man/bundle-install.1.ronn} +34 -7
  109. data/bundler/lib/bundler/man/bundle-list.1 +50 -0
  110. data/bundler/{man/bundle-list.ronn → lib/bundler/man/bundle-list.1.ronn} +6 -6
  111. data/bundler/lib/bundler/man/bundle-lock.1 +84 -0
  112. data/bundler/{man/bundle-lock.ronn → lib/bundler/man/bundle-lock.1.ronn} +0 -0
  113. data/bundler/lib/bundler/man/bundle-open.1 +32 -0
  114. data/bundler/{man/bundle-open.ronn → lib/bundler/man/bundle-open.1.ronn} +0 -0
  115. data/bundler/lib/bundler/man/bundle-outdated.1 +155 -0
  116. data/bundler/{man/bundle-outdated.ronn → lib/bundler/man/bundle-outdated.1.ronn} +0 -0
  117. data/bundler/lib/bundler/man/bundle-platform.1 +61 -0
  118. data/bundler/{man/bundle-platform.ronn → lib/bundler/man/bundle-platform.1.ronn} +0 -0
  119. data/bundler/lib/bundler/man/bundle-pristine.1 +34 -0
  120. data/bundler/{man/bundle-pristine.ronn → lib/bundler/man/bundle-pristine.1.ronn} +0 -0
  121. data/bundler/lib/bundler/man/bundle-remove.1 +31 -0
  122. data/bundler/{man/bundle-remove.ronn → lib/bundler/man/bundle-remove.1.ronn} +0 -0
  123. data/bundler/lib/bundler/man/bundle-show.1 +23 -0
  124. data/bundler/{man/bundle-show.ronn → lib/bundler/man/bundle-show.1.ronn} +0 -0
  125. data/bundler/lib/bundler/man/bundle-update.1 +394 -0
  126. data/bundler/{man/bundle-update.ronn → lib/bundler/man/bundle-update.1.ronn} +3 -3
  127. data/bundler/lib/bundler/man/bundle-viz.1 +39 -0
  128. data/bundler/{man/bundle-viz.ronn → lib/bundler/man/bundle-viz.1.ronn} +0 -0
  129. data/bundler/lib/bundler/man/bundle.1 +136 -0
  130. data/bundler/{man/bundle.ronn → lib/bundler/man/bundle.1.ronn} +2 -2
  131. data/bundler/lib/bundler/man/gemfile.5 +686 -0
  132. data/bundler/{man → lib/bundler/man}/gemfile.5.ronn +16 -20
  133. data/bundler/lib/bundler/man/index.txt +25 -0
  134. data/bundler/lib/bundler/match_platform.rb +1 -1
  135. data/bundler/lib/bundler/mirror.rb +5 -5
  136. data/bundler/lib/bundler/plugin.rb +75 -36
  137. data/bundler/lib/bundler/plugin/api.rb +1 -1
  138. data/bundler/lib/bundler/plugin/api/source.rb +12 -7
  139. data/bundler/lib/bundler/plugin/dsl.rb +1 -1
  140. data/bundler/lib/bundler/plugin/index.rb +24 -4
  141. data/bundler/lib/bundler/plugin/installer.rb +33 -22
  142. data/bundler/lib/bundler/plugin/installer/rubygems.rb +1 -1
  143. data/bundler/lib/bundler/plugin/source_list.rb +5 -1
  144. data/bundler/lib/bundler/psyched_yaml.rb +0 -15
  145. data/bundler/lib/bundler/remote_specification.rb +5 -4
  146. data/bundler/lib/bundler/resolver.rb +191 -87
  147. data/bundler/lib/bundler/resolver/spec_group.rb +76 -48
  148. data/bundler/lib/bundler/retry.rb +3 -3
  149. data/bundler/lib/bundler/ruby_version.rb +5 -20
  150. data/bundler/lib/bundler/rubygems_ext.rb +76 -72
  151. data/bundler/lib/bundler/rubygems_gem_installer.rb +47 -13
  152. data/bundler/lib/bundler/rubygems_integration.rb +159 -444
  153. data/bundler/lib/bundler/runtime.rb +6 -23
  154. data/bundler/lib/bundler/settings.rb +67 -93
  155. data/bundler/lib/bundler/setup.rb +11 -12
  156. data/bundler/lib/bundler/shared_helpers.rb +54 -80
  157. data/bundler/lib/bundler/similarity_detector.rb +3 -3
  158. data/bundler/lib/bundler/source.rb +12 -6
  159. data/bundler/lib/bundler/source/git.rb +47 -38
  160. data/bundler/lib/bundler/source/git/git_proxy.rb +101 -102
  161. data/bundler/lib/bundler/source/metadata.rb +7 -6
  162. data/bundler/lib/bundler/source/path.rb +20 -11
  163. data/bundler/lib/bundler/source/path/installer.rb +10 -10
  164. data/bundler/lib/bundler/source/rubygems.rb +56 -29
  165. data/bundler/lib/bundler/source/rubygems/remote.rb +3 -4
  166. data/bundler/lib/bundler/source_list.rb +32 -30
  167. data/bundler/lib/bundler/spec_set.rb +37 -25
  168. data/bundler/lib/bundler/stub_specification.rb +40 -34
  169. data/bundler/lib/bundler/templates/Executable.bundler +23 -14
  170. data/bundler/lib/bundler/templates/newgem/CHANGELOG.md.tt +5 -0
  171. data/bundler/lib/bundler/templates/newgem/CODE_OF_CONDUCT.md.tt +57 -47
  172. data/bundler/lib/bundler/templates/newgem/Gemfile.tt +16 -2
  173. data/bundler/lib/bundler/templates/newgem/README.md.tt +7 -5
  174. data/bundler/lib/bundler/templates/newgem/Rakefile.tt +19 -5
  175. data/bundler/lib/bundler/templates/newgem/bin/console.tt +1 -0
  176. data/bundler/lib/bundler/templates/newgem/circleci/config.yml.tt +13 -0
  177. data/bundler/lib/bundler/templates/newgem/ext/newgem/extconf.rb.tt +2 -0
  178. data/bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt +18 -0
  179. data/bundler/lib/bundler/templates/newgem/gitlab-ci.yml.tt +9 -0
  180. data/bundler/lib/bundler/templates/newgem/lib/newgem.rb.tt +4 -2
  181. data/bundler/lib/bundler/templates/newgem/lib/newgem/version.rb.tt +2 -0
  182. data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +18 -31
  183. data/bundler/lib/bundler/templates/newgem/rubocop.yml.tt +13 -0
  184. data/bundler/lib/bundler/templates/newgem/spec/newgem_spec.rb.tt +2 -0
  185. data/bundler/lib/bundler/templates/newgem/spec/spec_helper.rb.tt +2 -1
  186. data/bundler/lib/bundler/templates/newgem/test/{newgem_test.rb.tt → minitest/newgem_test.rb.tt} +2 -0
  187. data/bundler/lib/bundler/templates/newgem/test/minitest/test_helper.rb.tt +6 -0
  188. data/bundler/lib/bundler/templates/newgem/test/test-unit/newgem_test.rb.tt +15 -0
  189. data/bundler/lib/bundler/templates/newgem/test/test-unit/test_helper.rb.tt +6 -0
  190. data/bundler/lib/bundler/templates/newgem/travis.yml.tt +0 -1
  191. data/bundler/lib/bundler/ui.rb +3 -3
  192. data/bundler/lib/bundler/ui/rg_proxy.rb +1 -1
  193. data/bundler/lib/bundler/ui/shell.rb +7 -11
  194. data/bundler/lib/bundler/uri_credentials_filter.rb +10 -4
  195. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool.rb +161 -0
  196. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/monotonic_time.rb +66 -0
  197. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb +176 -0
  198. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/version.rb +3 -0
  199. data/bundler/lib/bundler/vendor/fileutils/lib/fileutils.rb +273 -147
  200. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo.rb +5 -6
  201. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb +7 -0
  202. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb +36 -4
  203. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb +1 -1
  204. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_vertex.rb +1 -1
  205. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/delete_edge.rb +1 -1
  206. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb +1 -1
  207. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb +6 -6
  208. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/set_payload.rb +1 -1
  209. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb +3 -3
  210. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb +39 -11
  211. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +4 -4
  212. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb +1 -1
  213. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb +11 -0
  214. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb +53 -51
  215. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/resolver.rb +2 -2
  216. data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +302 -462
  217. data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/connection.rb +40 -0
  218. data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/pool.rb +53 -0
  219. data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/timed_stack_multi.rb +79 -0
  220. data/bundler/lib/bundler/vendor/thor/lib/thor.rb +16 -9
  221. data/bundler/lib/bundler/vendor/thor/lib/thor/actions.rb +28 -13
  222. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/create_file.rb +1 -1
  223. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/create_link.rb +3 -2
  224. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/directory.rb +7 -17
  225. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +20 -9
  226. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/inject_into_file.rb +19 -8
  227. data/bundler/lib/bundler/vendor/thor/lib/thor/base.rb +63 -43
  228. data/bundler/lib/bundler/vendor/thor/lib/thor/command.rb +21 -14
  229. data/bundler/lib/bundler/vendor/thor/lib/thor/error.rb +78 -0
  230. data/bundler/lib/bundler/vendor/thor/lib/thor/group.rb +3 -3
  231. data/bundler/lib/bundler/vendor/thor/lib/thor/invocation.rb +1 -0
  232. data/bundler/lib/bundler/vendor/thor/lib/thor/line_editor.rb +2 -2
  233. data/bundler/lib/bundler/vendor/thor/lib/thor/line_editor/basic.rb +1 -1
  234. data/bundler/lib/bundler/vendor/thor/lib/thor/line_editor/readline.rb +6 -6
  235. data/bundler/lib/bundler/vendor/thor/lib/thor/nested_context.rb +29 -0
  236. data/bundler/lib/bundler/vendor/thor/lib/thor/parser.rb +4 -4
  237. data/bundler/lib/bundler/vendor/thor/lib/thor/parser/arguments.rb +7 -3
  238. data/bundler/lib/bundler/vendor/thor/lib/thor/parser/option.rb +20 -7
  239. data/bundler/lib/bundler/vendor/thor/lib/thor/parser/options.rb +21 -5
  240. data/bundler/lib/bundler/vendor/thor/lib/thor/rake_compat.rb +1 -0
  241. data/bundler/lib/bundler/vendor/thor/lib/thor/runner.rb +15 -14
  242. data/bundler/lib/bundler/vendor/thor/lib/thor/shell.rb +4 -4
  243. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +65 -8
  244. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/color.rb +10 -2
  245. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/html.rb +3 -3
  246. data/bundler/lib/bundler/vendor/thor/lib/thor/util.rb +18 -2
  247. data/bundler/lib/bundler/vendor/thor/lib/thor/version.rb +1 -1
  248. data/bundler/lib/bundler/vendor/tmpdir/lib/tmpdir.rb +154 -0
  249. data/bundler/lib/bundler/vendor/uri/lib/uri.rb +104 -0
  250. data/bundler/lib/bundler/vendor/uri/lib/uri/common.rb +744 -0
  251. data/bundler/lib/bundler/vendor/uri/lib/uri/file.rb +94 -0
  252. data/bundler/lib/bundler/vendor/uri/lib/uri/ftp.rb +267 -0
  253. data/bundler/lib/bundler/vendor/uri/lib/uri/generic.rb +1568 -0
  254. data/bundler/lib/bundler/vendor/uri/lib/uri/http.rb +88 -0
  255. data/bundler/lib/bundler/vendor/uri/lib/uri/https.rb +23 -0
  256. data/bundler/lib/bundler/vendor/uri/lib/uri/ldap.rb +261 -0
  257. data/bundler/lib/bundler/vendor/uri/lib/uri/ldaps.rb +21 -0
  258. data/bundler/lib/bundler/vendor/uri/lib/uri/mailto.rb +294 -0
  259. data/bundler/lib/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +546 -0
  260. data/bundler/lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +125 -0
  261. data/bundler/lib/bundler/vendor/uri/lib/uri/version.rb +6 -0
  262. data/bundler/lib/bundler/vendored_fileutils.rb +1 -6
  263. data/bundler/lib/bundler/vendored_molinillo.rb +1 -1
  264. data/bundler/lib/bundler/vendored_persistent.rb +7 -12
  265. data/bundler/lib/bundler/vendored_thor.rb +2 -2
  266. data/bundler/lib/bundler/vendored_tmpdir.rb +4 -0
  267. data/bundler/lib/bundler/vendored_uri.rb +4 -0
  268. data/bundler/lib/bundler/version.rb +1 -20
  269. data/bundler/lib/bundler/version_ranges.rb +51 -5
  270. data/bundler/lib/bundler/vlad.rb +2 -2
  271. data/bundler/lib/bundler/worker.rb +2 -4
  272. data/bundler/lib/bundler/yaml_serializer.rb +3 -4
  273. data/lib/rubygems.rb +198 -222
  274. data/lib/rubygems/available_set.rb +4 -5
  275. data/lib/rubygems/basic_specification.rb +32 -19
  276. data/lib/rubygems/bundler_version_finder.rb +19 -9
  277. data/lib/rubygems/command.rb +73 -21
  278. data/lib/rubygems/command_manager.rb +5 -12
  279. data/lib/rubygems/commands/build_command.rb +51 -18
  280. data/lib/rubygems/commands/cert_command.rb +2 -11
  281. data/lib/rubygems/commands/check_command.rb +0 -2
  282. data/lib/rubygems/commands/cleanup_command.rb +17 -13
  283. data/lib/rubygems/commands/contents_command.rb +7 -9
  284. data/lib/rubygems/commands/dependency_command.rb +9 -10
  285. data/lib/rubygems/commands/environment_command.rb +1 -6
  286. data/lib/rubygems/commands/fetch_command.rb +2 -4
  287. data/lib/rubygems/commands/generate_index_command.rb +3 -2
  288. data/lib/rubygems/commands/help_command.rb +4 -4
  289. data/lib/rubygems/commands/info_command.rb +9 -4
  290. data/lib/rubygems/commands/install_command.rb +12 -54
  291. data/lib/rubygems/commands/list_command.rb +8 -7
  292. data/lib/rubygems/commands/lock_command.rb +3 -5
  293. data/lib/rubygems/commands/mirror_command.rb +0 -1
  294. data/lib/rubygems/commands/open_command.rb +1 -4
  295. data/lib/rubygems/commands/outdated_command.rb +0 -1
  296. data/lib/rubygems/commands/owner_command.rb +10 -10
  297. data/lib/rubygems/commands/pristine_command.rb +13 -9
  298. data/lib/rubygems/commands/push_command.rb +12 -51
  299. data/lib/rubygems/commands/query_command.rb +14 -330
  300. data/lib/rubygems/commands/rdoc_command.rb +0 -1
  301. data/lib/rubygems/commands/search_command.rb +7 -7
  302. data/lib/rubygems/commands/server_command.rb +3 -1
  303. data/lib/rubygems/commands/setup_command.rb +143 -101
  304. data/lib/rubygems/commands/signin_command.rb +0 -1
  305. data/lib/rubygems/commands/signout_command.rb +0 -2
  306. data/lib/rubygems/commands/sources_command.rb +22 -6
  307. data/lib/rubygems/commands/specification_command.rb +8 -3
  308. data/lib/rubygems/commands/stale_command.rb +1 -1
  309. data/lib/rubygems/commands/uninstall_command.rb +2 -3
  310. data/lib/rubygems/commands/unpack_command.rb +3 -32
  311. data/lib/rubygems/commands/update_command.rb +73 -28
  312. data/lib/rubygems/commands/which_command.rb +0 -1
  313. data/lib/rubygems/commands/yank_command.rb +10 -7
  314. data/lib/rubygems/compatibility.rb +4 -4
  315. data/lib/rubygems/config_file.rb +48 -27
  316. data/lib/rubygems/core_ext/kernel_gem.rb +7 -6
  317. data/lib/rubygems/core_ext/kernel_require.rb +44 -6
  318. data/lib/rubygems/core_ext/kernel_warn.rb +22 -13
  319. data/lib/rubygems/core_ext/tcpsocket_init.rb +52 -0
  320. data/lib/rubygems/defaults.rb +110 -23
  321. data/lib/rubygems/dependency.rb +28 -14
  322. data/lib/rubygems/dependency_installer.rb +11 -166
  323. data/lib/rubygems/dependency_list.rb +17 -18
  324. data/lib/rubygems/deprecate.rb +51 -6
  325. data/lib/rubygems/doctor.rb +4 -4
  326. data/lib/rubygems/errors.rb +5 -7
  327. data/lib/rubygems/exceptions.rb +2 -24
  328. data/lib/rubygems/ext.rb +6 -6
  329. data/lib/rubygems/ext/build_error.rb +2 -0
  330. data/lib/rubygems/ext/builder.rb +45 -82
  331. data/lib/rubygems/ext/cmake_builder.rb +6 -7
  332. data/lib/rubygems/ext/configure_builder.rb +5 -8
  333. data/lib/rubygems/ext/ext_conf_builder.rb +27 -23
  334. data/lib/rubygems/ext/rake_builder.rb +4 -6
  335. data/lib/rubygems/gem_runner.rb +3 -10
  336. data/lib/rubygems/gemcutter_utilities.rb +111 -37
  337. data/lib/rubygems/indexer.rb +9 -26
  338. data/lib/rubygems/install_update_options.rb +7 -7
  339. data/lib/rubygems/installer.rb +91 -98
  340. data/lib/rubygems/installer_test_case.rb +104 -42
  341. data/lib/rubygems/installer_uninstaller_utils.rb +29 -0
  342. data/lib/rubygems/local_remote_options.rb +1 -1
  343. data/lib/rubygems/mock_gem_ui.rb +1 -4
  344. data/lib/rubygems/name_tuple.rb +4 -7
  345. data/lib/rubygems/openssl.rb +7 -0
  346. data/lib/rubygems/package.rb +49 -32
  347. data/lib/rubygems/package/digest_io.rb +0 -2
  348. data/lib/rubygems/package/file_source.rb +0 -2
  349. data/lib/rubygems/package/io_source.rb +0 -2
  350. data/lib/rubygems/package/old.rb +1 -3
  351. data/lib/rubygems/package/tar_header.rb +4 -6
  352. data/lib/rubygems/package/tar_reader.rb +15 -12
  353. data/lib/rubygems/package/tar_reader/entry.rb +0 -3
  354. data/lib/rubygems/package/tar_test_case.rb +2 -4
  355. data/lib/rubygems/package/tar_writer.rb +6 -16
  356. data/lib/rubygems/package_task.rb +1 -7
  357. data/lib/rubygems/path_support.rb +2 -2
  358. data/lib/rubygems/platform.rb +22 -16
  359. data/lib/rubygems/query_utils.rb +353 -0
  360. data/lib/rubygems/rdoc.rb +0 -12
  361. data/lib/rubygems/remote_fetcher.rb +33 -59
  362. data/lib/rubygems/request.rb +11 -14
  363. data/lib/rubygems/request/connection_pools.rb +3 -7
  364. data/lib/rubygems/request/http_pool.rb +0 -1
  365. data/lib/rubygems/request_set.rb +10 -23
  366. data/lib/rubygems/request_set/gem_dependency_api.rb +9 -11
  367. data/lib/rubygems/request_set/lockfile.rb +13 -12
  368. data/lib/rubygems/request_set/lockfile/parser.rb +2 -2
  369. data/lib/rubygems/request_set/lockfile/tokenizer.rb +1 -1
  370. data/lib/rubygems/requirement.rb +36 -35
  371. data/lib/rubygems/resolver.rb +20 -16
  372. data/lib/rubygems/resolver/activation_request.rb +27 -51
  373. data/lib/rubygems/resolver/api_set.rb +31 -24
  374. data/lib/rubygems/resolver/api_set/gem_parser.rb +20 -0
  375. data/lib/rubygems/resolver/api_specification.rb +24 -10
  376. data/lib/rubygems/resolver/best_set.rb +4 -6
  377. data/lib/rubygems/resolver/composed_set.rb +3 -5
  378. data/lib/rubygems/resolver/conflict.rb +2 -9
  379. data/lib/rubygems/resolver/current_set.rb +0 -2
  380. data/lib/rubygems/resolver/dependency_request.rb +1 -3
  381. data/lib/rubygems/resolver/git_set.rb +0 -2
  382. data/lib/rubygems/resolver/git_specification.rb +0 -2
  383. data/lib/rubygems/resolver/index_set.rb +1 -3
  384. data/lib/rubygems/resolver/index_specification.rb +32 -2
  385. data/lib/rubygems/resolver/installed_specification.rb +0 -2
  386. data/lib/rubygems/resolver/installer_set.rb +63 -16
  387. data/lib/rubygems/resolver/local_specification.rb +0 -2
  388. data/lib/rubygems/resolver/lock_set.rb +3 -5
  389. data/lib/rubygems/resolver/lock_specification.rb +2 -4
  390. data/lib/rubygems/resolver/molinillo/lib/molinillo.rb +6 -5
  391. data/lib/rubygems/resolver/molinillo/lib/molinillo/delegates/resolution_state.rb +7 -0
  392. data/lib/rubygems/resolver/molinillo/lib/molinillo/delegates/specification_provider.rb +8 -0
  393. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph.rb +39 -6
  394. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/action.rb +1 -0
  395. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb +2 -1
  396. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/add_vertex.rb +2 -1
  397. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/delete_edge.rb +2 -1
  398. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb +2 -1
  399. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/log.rb +7 -6
  400. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/set_payload.rb +2 -1
  401. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/tag.rb +4 -3
  402. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/vertex.rb +51 -12
  403. data/lib/rubygems/resolver/molinillo/lib/molinillo/errors.rb +76 -8
  404. data/lib/rubygems/resolver/molinillo/lib/molinillo/gem_metadata.rb +2 -1
  405. data/lib/rubygems/resolver/molinillo/lib/molinillo/modules/specification_provider.rb +12 -0
  406. data/lib/rubygems/resolver/molinillo/lib/molinillo/modules/ui.rb +3 -1
  407. data/lib/rubygems/resolver/molinillo/lib/molinillo/resolution.rb +510 -165
  408. data/lib/rubygems/resolver/molinillo/lib/molinillo/resolver.rb +3 -2
  409. data/lib/rubygems/resolver/molinillo/lib/molinillo/state.rb +8 -4
  410. data/lib/rubygems/resolver/requirement_list.rb +0 -1
  411. data/lib/rubygems/resolver/set.rb +0 -2
  412. data/lib/rubygems/resolver/source_set.rb +0 -2
  413. data/lib/rubygems/resolver/spec_specification.rb +14 -2
  414. data/lib/rubygems/resolver/specification.rb +13 -2
  415. data/lib/rubygems/resolver/vendor_set.rb +0 -2
  416. data/lib/rubygems/resolver/vendor_specification.rb +0 -2
  417. data/lib/rubygems/s3_uri_signer.rb +15 -13
  418. data/lib/rubygems/safe_yaml.rb +4 -4
  419. data/lib/rubygems/security.rb +27 -34
  420. data/lib/rubygems/security/policy.rb +4 -8
  421. data/lib/rubygems/security/signer.rb +8 -9
  422. data/lib/rubygems/security/trust_dir.rb +1 -3
  423. data/lib/rubygems/server.rb +20 -16
  424. data/lib/rubygems/source.rb +30 -13
  425. data/lib/rubygems/source/git.rb +7 -8
  426. data/lib/rubygems/source/installed.rb +0 -2
  427. data/lib/rubygems/source/local.rb +2 -4
  428. data/lib/rubygems/source/lock.rb +0 -2
  429. data/lib/rubygems/source/specific_file.rb +0 -2
  430. data/lib/rubygems/source/vendor.rb +0 -2
  431. data/lib/rubygems/source_list.rb +6 -6
  432. data/lib/rubygems/spec_fetcher.rb +22 -34
  433. data/lib/rubygems/specification.rb +207 -278
  434. data/lib/rubygems/specification_policy.rb +135 -57
  435. data/{bundler/lib/bundler/ssl_certs/index.rubygems.org → lib/rubygems/ssl_certs/rubygems.org}/GlobalSignRootCA.pem +0 -0
  436. data/lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem +21 -0
  437. data/lib/rubygems/stub_specification.rb +4 -5
  438. data/lib/rubygems/test_case.rb +221 -341
  439. data/lib/rubygems/test_utilities.rb +22 -18
  440. data/lib/rubygems/text.rb +2 -3
  441. data/lib/rubygems/uninstaller.rb +49 -30
  442. data/lib/rubygems/uri_formatter.rb +2 -4
  443. data/lib/rubygems/uri_parser.rb +34 -0
  444. data/lib/rubygems/uri_parsing.rb +23 -0
  445. data/lib/rubygems/user_interaction.rb +3 -20
  446. data/lib/rubygems/util.rb +20 -44
  447. data/lib/rubygems/util/licenses.rb +400 -400
  448. data/lib/rubygems/validator.rb +9 -31
  449. data/lib/rubygems/version.rb +29 -21
  450. data/lib/rubygems/version_option.rb +6 -0
  451. data/rubygems-update.gemspec +4 -11
  452. data/setup.rb +2 -7
  453. data/test/rubygems/data/null-required-ruby-version.gemspec.rz +0 -0
  454. data/test/rubygems/data/null-required-rubygems-version.gemspec.rz +0 -0
  455. data/test/rubygems/rubygems/commands/crash_command.rb +0 -2
  456. data/test/rubygems/rubygems_plugin.rb +0 -2
  457. data/test/rubygems/specifications/bar-0.0.2.gemspec +0 -2
  458. data/test/rubygems/specifications/rubyforge-0.0.1.gemspec +12 -0
  459. data/test/rubygems/test_bundled_ca.rb +42 -45
  460. data/test/rubygems/test_config.rb +0 -2
  461. data/test/rubygems/test_deprecate.rb +41 -5
  462. data/test/rubygems/test_gem.rb +405 -236
  463. data/test/rubygems/test_gem_available_set.rb +5 -6
  464. data/test/rubygems/test_gem_bundler_version_finder.rb +20 -2
  465. data/test/rubygems/test_gem_command.rb +144 -9
  466. data/test/rubygems/test_gem_command_manager.rb +40 -17
  467. data/test/rubygems/test_gem_commands_build_command.rb +386 -13
  468. data/test/rubygems/test_gem_commands_cert_command.rb +18 -6
  469. data/test/rubygems/test_gem_commands_check_command.rb +0 -2
  470. data/test/rubygems/test_gem_commands_cleanup_command.rb +35 -10
  471. data/test/rubygems/test_gem_commands_contents_command.rb +50 -19
  472. data/test/rubygems/test_gem_commands_dependency_command.rb +1 -3
  473. data/test/rubygems/test_gem_commands_environment_command.rb +21 -33
  474. data/test/rubygems/test_gem_commands_fetch_command.rb +0 -2
  475. data/test/rubygems/test_gem_commands_generate_index_command.rb +32 -2
  476. data/test/rubygems/test_gem_commands_help_command.rb +16 -8
  477. data/test/rubygems/test_gem_commands_info_command.rb +6 -7
  478. data/test/rubygems/test_gem_commands_install_command.rb +368 -34
  479. data/test/rubygems/test_gem_commands_list_command.rb +0 -2
  480. data/test/rubygems/test_gem_commands_lock_command.rb +0 -2
  481. data/test/rubygems/test_gem_commands_mirror.rb +1 -2
  482. data/test/rubygems/test_gem_commands_open_command.rb +4 -6
  483. data/test/rubygems/test_gem_commands_outdated_command.rb +18 -1
  484. data/test/rubygems/test_gem_commands_owner_command.rb +62 -9
  485. data/test/rubygems/test_gem_commands_pristine_command.rb +148 -16
  486. data/test/rubygems/test_gem_commands_push_command.rb +94 -21
  487. data/test/rubygems/test_gem_commands_query_command.rb +35 -10
  488. data/test/rubygems/test_gem_commands_search_command.rb +0 -2
  489. data/test/rubygems/test_gem_commands_server_command.rb +6 -4
  490. data/test/rubygems/test_gem_commands_setup_command.rb +228 -128
  491. data/test/rubygems/test_gem_commands_signin_command.rb +36 -11
  492. data/test/rubygems/test_gem_commands_signout_command.rb +0 -7
  493. data/test/rubygems/test_gem_commands_sources_command.rb +193 -9
  494. data/test/rubygems/test_gem_commands_specification_command.rb +46 -20
  495. data/test/rubygems/test_gem_commands_stale_command.rb +0 -2
  496. data/test/rubygems/test_gem_commands_uninstall_command.rb +108 -52
  497. data/test/rubygems/test_gem_commands_unpack_command.rb +0 -2
  498. data/test/rubygems/test_gem_commands_update_command.rb +201 -29
  499. data/test/rubygems/test_gem_commands_which_command.rb +3 -5
  500. data/test/rubygems/test_gem_commands_yank_command.rb +86 -5
  501. data/test/rubygems/test_gem_config_file.rb +25 -13
  502. data/test/rubygems/test_gem_dependency.rb +6 -2
  503. data/test/rubygems/test_gem_dependency_installer.rb +169 -252
  504. data/test/rubygems/test_gem_dependency_list.rb +31 -26
  505. data/test/rubygems/test_gem_dependency_resolution_error.rb +1 -3
  506. data/test/rubygems/test_gem_doctor.rb +28 -2
  507. data/test/rubygems/test_gem_ext_builder.rb +51 -44
  508. data/test/rubygems/test_gem_ext_cmake_builder.rb +16 -23
  509. data/test/rubygems/test_gem_ext_configure_builder.rb +6 -14
  510. data/test/rubygems/test_gem_ext_ext_conf_builder.rb +21 -29
  511. data/test/rubygems/test_gem_ext_rake_builder.rb +39 -22
  512. data/test/rubygems/test_gem_gem_runner.rb +47 -2
  513. data/test/rubygems/test_gem_gemcutter_utilities.rb +16 -13
  514. data/test/rubygems/test_gem_impossible_dependencies_error.rb +0 -2
  515. data/test/rubygems/test_gem_indexer.rb +40 -55
  516. data/test/rubygems/test_gem_install_update_options.rb +45 -21
  517. data/test/rubygems/test_gem_installer.rb +661 -338
  518. data/test/rubygems/test_gem_local_remote_options.rb +0 -2
  519. data/test/rubygems/test_gem_name_tuple.rb +0 -2
  520. data/test/rubygems/test_gem_package.rb +132 -45
  521. data/test/rubygems/test_gem_package_old.rb +56 -55
  522. data/test/rubygems/test_gem_package_tar_header.rb +18 -1
  523. data/test/rubygems/test_gem_package_tar_reader.rb +0 -2
  524. data/test/rubygems/test_gem_package_tar_reader_entry.rb +6 -7
  525. data/test/rubygems/test_gem_package_tar_writer.rb +20 -12
  526. data/test/rubygems/test_gem_package_task.rb +46 -13
  527. data/test/rubygems/test_gem_path_support.rb +17 -13
  528. data/test/rubygems/test_gem_platform.rb +74 -7
  529. data/test/rubygems/test_gem_rdoc.rb +0 -1
  530. data/test/rubygems/test_gem_remote_fetcher.rb +223 -209
  531. data/test/rubygems/test_gem_request.rb +30 -19
  532. data/test/rubygems/test_gem_request_connection_pools.rb +2 -2
  533. data/test/rubygems/test_gem_request_set.rb +104 -29
  534. data/test/rubygems/test_gem_request_set_gem_dependency_api.rb +4 -6
  535. data/test/rubygems/test_gem_request_set_lockfile.rb +4 -5
  536. data/test/rubygems/test_gem_request_set_lockfile_parser.rb +9 -10
  537. data/test/rubygems/test_gem_request_set_lockfile_tokenizer.rb +118 -118
  538. data/test/rubygems/test_gem_requirement.rb +50 -4
  539. data/test/rubygems/test_gem_resolver.rb +73 -31
  540. data/test/rubygems/test_gem_resolver_activation_request.rb +3 -34
  541. data/test/rubygems/test_gem_resolver_api_set.rb +60 -59
  542. data/test/rubygems/test_gem_resolver_api_specification.rb +3 -5
  543. data/test/rubygems/test_gem_resolver_best_set.rb +27 -6
  544. data/test/rubygems/test_gem_resolver_composed_set.rb +0 -2
  545. data/test/rubygems/test_gem_resolver_conflict.rb +1 -7
  546. data/test/rubygems/test_gem_resolver_dependency_request.rb +0 -2
  547. data/test/rubygems/test_gem_resolver_git_set.rb +0 -2
  548. data/test/rubygems/test_gem_resolver_git_specification.rb +1 -2
  549. data/test/rubygems/test_gem_resolver_index_set.rb +2 -4
  550. data/test/rubygems/test_gem_resolver_index_specification.rb +7 -4
  551. data/test/rubygems/test_gem_resolver_installed_specification.rb +0 -3
  552. data/test/rubygems/test_gem_resolver_installer_set.rb +10 -10
  553. data/test/rubygems/test_gem_resolver_local_specification.rb +0 -2
  554. data/test/rubygems/test_gem_resolver_lock_set.rb +3 -5
  555. data/test/rubygems/test_gem_resolver_lock_specification.rb +0 -2
  556. data/test/rubygems/test_gem_resolver_requirement_list.rb +0 -2
  557. data/test/rubygems/test_gem_resolver_specification.rb +0 -2
  558. data/test/rubygems/test_gem_resolver_vendor_set.rb +1 -3
  559. data/test/rubygems/test_gem_resolver_vendor_specification.rb +0 -2
  560. data/test/rubygems/test_gem_security.rb +27 -25
  561. data/test/rubygems/test_gem_security_policy.rb +7 -12
  562. data/test/rubygems/test_gem_security_signer.rb +11 -12
  563. data/test/rubygems/test_gem_security_trust_dir.rb +4 -6
  564. data/test/rubygems/test_gem_server.rb +13 -12
  565. data/test/rubygems/test_gem_silent_ui.rb +0 -1
  566. data/test/rubygems/test_gem_source.rb +32 -17
  567. data/test/rubygems/test_gem_source_fetch_problem.rb +0 -1
  568. data/test/rubygems/test_gem_source_git.rb +12 -18
  569. data/test/rubygems/test_gem_source_installed.rb +11 -13
  570. data/test/rubygems/test_gem_source_list.rb +1 -1
  571. data/test/rubygems/test_gem_source_local.rb +8 -9
  572. data/test/rubygems/test_gem_source_lock.rb +17 -19
  573. data/test/rubygems/test_gem_source_specific_file.rb +9 -10
  574. data/test/rubygems/test_gem_source_subpath_problem.rb +49 -0
  575. data/test/rubygems/test_gem_source_vendor.rb +7 -9
  576. data/test/rubygems/test_gem_spec_fetcher.rb +11 -4
  577. data/test/rubygems/test_gem_specification.rb +363 -245
  578. data/test/rubygems/test_gem_stream_ui.rb +3 -1
  579. data/test/rubygems/test_gem_stub_specification.rb +6 -7
  580. data/test/rubygems/test_gem_text.rb +1 -2
  581. data/test/rubygems/test_gem_uninstaller.rb +165 -22
  582. data/test/rubygems/test_gem_unsatisfiable_dependency_error.rb +0 -2
  583. data/test/rubygems/test_gem_uri_formatter.rb +0 -2
  584. data/test/rubygems/test_gem_util.rb +17 -15
  585. data/test/rubygems/test_gem_validator.rb +4 -7
  586. data/test/rubygems/test_gem_version.rb +23 -10
  587. data/test/rubygems/test_gem_version_option.rb +1 -3
  588. data/test/rubygems/test_kernel.rb +25 -9
  589. data/test/rubygems/test_project_sanity.rb +20 -0
  590. data/test/rubygems/test_remote_fetch_error.rb +1 -2
  591. data/test/rubygems/test_require.rb +394 -56
  592. data/test/test_changelog_generator.rb +17 -0
  593. metadata +109 -155
  594. data/.rubocop.yml +0 -67
  595. data/.travis.yml +0 -38
  596. data/appveyor.yml +0 -43
  597. data/bundler/CODE_OF_CONDUCT.md +0 -42
  598. data/bundler/CONTRIBUTING.md +0 -17
  599. data/bundler/exe/bundle_ruby +0 -60
  600. data/bundler/lib/bundler/cli/package.rb +0 -49
  601. data/bundler/lib/bundler/compatibility_guard.rb +0 -14
  602. data/bundler/lib/bundler/gem_remote_fetcher.rb +0 -43
  603. data/bundler/lib/bundler/ssl_certs/certificate_manager.rb +0 -66
  604. data/bundler/lib/bundler/ssl_certs/rubygems.global.ssl.fastly.net/DigiCertHighAssuranceEVRootCA.pem +0 -23
  605. data/bundler/lib/bundler/ssl_certs/rubygems.org/AddTrustExternalCARoot.pem +0 -25
  606. data/bundler/lib/bundler/templates/newgem/test/test_helper.rb.tt +0 -4
  607. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/compatibility.rb +0 -26
  608. data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/faster.rb +0 -27
  609. data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/ssl_reuse.rb +0 -129
  610. data/bundler/lib/bundler/vendor/thor/lib/thor/core_ext/io_binary_read.rb +0 -12
  611. data/bundler/lib/bundler/vendor/thor/lib/thor/core_ext/ordered_hash.rb +0 -129
  612. data/lib/rubygems/source_local.rb +0 -7
  613. data/lib/rubygems/source_specific_file.rb +0 -6
  614. data/lib/rubygems/ssl_certs/index.rubygems.org/GlobalSignRootCA.pem +0 -21
  615. data/lib/rubygems/ssl_certs/rubygems.global.ssl.fastly.net/DigiCertHighAssuranceEVRootCA.pem +0 -23
  616. data/lib/rubygems/ssl_certs/rubygems.org/AddTrustExternalCARoot.pem +0 -25
  617. data/lib/ubygems.rb +0 -14
  618. data/util/CL2notes +0 -55
  619. data/util/ci +0 -82
  620. data/util/cops/deprecations.rb +0 -52
  621. data/util/create_certs.rb +0 -171
  622. data/util/create_certs.sh +0 -27
  623. data/util/create_encrypted_key.rb +0 -16
  624. data/util/generate_spdx_license_list.rb +0 -61
  625. data/util/patch_with_prs.rb +0 -77
  626. data/util/rubocop +0 -8
  627. data/util/update_bundled_ca_certificates.rb +0 -139
  628. data/util/update_changelog.rb +0 -67
@@ -2,7 +2,6 @@
2
2
  require 'rubygems/test_case'
3
3
 
4
4
  class TestGemResolver < Gem::TestCase
5
-
6
5
  def setup
7
6
  super
8
7
 
@@ -26,10 +25,10 @@ class TestGemResolver < Gem::TestCase
26
25
  def assert_resolves_to(expected, resolver)
27
26
  actual = resolver.resolve
28
27
 
29
- exp = expected.sort_by { |s| s.full_name }
30
- act = actual.map { |a| a.spec.spec }.sort_by { |s| s.full_name }
28
+ exp = expected.sort_by {|s| s.full_name }
29
+ act = actual.map {|a| a.spec.spec }.sort_by {|s| s.full_name }
31
30
 
32
- msg = "Set of gems was not the same: #{exp.map { |x| x.full_name}.inspect} != #{act.map { |x| x.full_name}.inspect}"
31
+ msg = "Set of gems was not the same: #{exp.map {|x| x.full_name }.inspect} != #{act.map {|x| x.full_name }.inspect}"
33
32
 
34
33
  assert_equal exp, act, msg
35
34
  rescue Gem::DependencyResolutionError => e
@@ -71,7 +70,7 @@ class TestGemResolver < Gem::TestCase
71
70
  end
72
71
 
73
72
  def test_self_compose_sets_nil
74
- index_set = @DR::IndexSet.new
73
+ index_set = @DR::IndexSet.new
75
74
 
76
75
  composed = @DR.compose_sets index_set, nil
77
76
 
@@ -85,7 +84,7 @@ class TestGemResolver < Gem::TestCase
85
84
  end
86
85
 
87
86
  def test_self_compose_sets_single
88
- index_set = @DR::IndexSet.new
87
+ index_set = @DR::IndexSet.new
89
88
 
90
89
  composed = @DR.compose_sets index_set
91
90
 
@@ -97,7 +96,7 @@ class TestGemResolver < Gem::TestCase
97
96
 
98
97
  r1 = Gem::Resolver::DependencyRequest.new dep('a', '= 1'), nil
99
98
 
100
- act = Gem::Resolver::ActivationRequest.new a1, r1, false
99
+ act = Gem::Resolver::ActivationRequest.new a1, r1
101
100
 
102
101
  res = Gem::Resolver.new [a1]
103
102
 
@@ -105,7 +104,7 @@ class TestGemResolver < Gem::TestCase
105
104
 
106
105
  res.requests a1, act, reqs
107
106
 
108
- assert_equal ['b (= 2)'], reqs.map { |req| req.to_s }
107
+ assert_equal ['b (= 2)'], reqs.map {|req| req.to_s }
109
108
  end
110
109
 
111
110
  def test_requests_development
@@ -118,7 +117,7 @@ class TestGemResolver < Gem::TestCase
118
117
 
119
118
  r1 = Gem::Resolver::DependencyRequest.new dep('a', '= 1'), nil
120
119
 
121
- act = Gem::Resolver::ActivationRequest.new spec, r1, false
120
+ act = Gem::Resolver::ActivationRequest.new spec, r1
122
121
 
123
122
  res = Gem::Resolver.new [act]
124
123
  res.development = true
@@ -127,7 +126,7 @@ class TestGemResolver < Gem::TestCase
127
126
 
128
127
  res.requests spec, act, reqs
129
128
 
130
- assert_equal ['b (= 2)'], reqs.map { |req| req.to_s }
129
+ assert_equal ['b (= 2)'], reqs.map {|req| req.to_s }
131
130
 
132
131
  assert spec.instance_variable_defined? :@called
133
132
  end
@@ -137,7 +136,7 @@ class TestGemResolver < Gem::TestCase
137
136
 
138
137
  r1 = Gem::Resolver::DependencyRequest.new dep('a', '= 1'), nil
139
138
 
140
- act = Gem::Resolver::ActivationRequest.new a1, r1, false
139
+ act = Gem::Resolver::ActivationRequest.new a1, r1
141
140
 
142
141
  res = Gem::Resolver.new [a1]
143
142
  res.ignore_dependencies = true
@@ -151,16 +150,31 @@ class TestGemResolver < Gem::TestCase
151
150
 
152
151
  def test_resolve_conservative
153
152
  a1_spec = util_spec 'a', 1
153
+
154
154
  a2_spec = util_spec 'a', 2 do |s|
155
155
  s.add_dependency 'b', 2
156
156
  s.add_dependency 'c'
157
157
  end
158
+
158
159
  b1_spec = util_spec 'b', 1
159
160
  b2_spec = util_spec 'b', 2
160
- c1_spec = util_spec 'c', 1 do |s| s.add_dependency 'd', 2 end
161
- c2_spec = util_spec 'c', 2 do |s| s.add_dependency 'd', 2 end
162
- d1_spec = util_spec 'd', 1 do |s| s.add_dependency 'e' end
163
- d2_spec = util_spec 'd', 2 do |s| s.add_dependency 'e' end
161
+
162
+ c1_spec = util_spec 'c', 1 do |s|
163
+ s.add_dependency 'd', 2
164
+ end
165
+
166
+ c2_spec = util_spec 'c', 2 do |s|
167
+ s.add_dependency 'd', 2
168
+ end
169
+
170
+ d1_spec = util_spec 'd', 1 do |s|
171
+ s.add_dependency 'e'
172
+ end
173
+
174
+ d2_spec = util_spec 'd', 2 do |s|
175
+ s.add_dependency 'e'
176
+ end
177
+
164
178
  e1_spec = util_spec 'e', 1
165
179
  e2_spec = util_spec 'e', 2
166
180
 
@@ -177,7 +191,7 @@ class TestGemResolver < Gem::TestCase
177
191
 
178
192
  # With the following gems already installed:
179
193
  # a-1, b-1, c-1, e-1
180
- res.skip_gems = {'a'=>[a1_spec], 'b'=>[b1_spec], 'c'=>[c1_spec], 'e'=>[e1_spec]}
194
+ res.skip_gems = {'a' => [a1_spec], 'b' => [b1_spec], 'c' => [c1_spec], 'e' => [e1_spec]}
181
195
 
182
196
  # Make sure the following gems end up getting used/installed/upgraded:
183
197
  # a-2 (upgraded)
@@ -189,8 +203,14 @@ class TestGemResolver < Gem::TestCase
189
203
  end
190
204
 
191
205
  def test_resolve_development
192
- a_spec = util_spec 'a', 1 do |s| s.add_development_dependency 'b' end
193
- b_spec = util_spec 'b', 1 do |s| s.add_development_dependency 'c' end
206
+ a_spec = util_spec 'a', 1 do |s|
207
+ s.add_development_dependency 'b'
208
+ end
209
+
210
+ b_spec = util_spec 'b', 1 do
211
+ |s| s.add_development_dependency 'c'
212
+ end
213
+
194
214
  c_spec = util_spec 'c', 1
195
215
 
196
216
  a_dep = make_dep 'a', '= 1'
@@ -212,10 +232,16 @@ class TestGemResolver < Gem::TestCase
212
232
  s.add_runtime_dependency 'd'
213
233
  end
214
234
 
215
- b_spec = util_spec 'b', 1 do |s| s.add_development_dependency 'c' end
235
+ b_spec = util_spec 'b', 1 do |s|
236
+ s.add_development_dependency 'c'
237
+ end
238
+
216
239
  c_spec = util_spec 'c', 1
217
240
 
218
- d_spec = util_spec 'd', 1 do |s| s.add_development_dependency 'e' end
241
+ d_spec = util_spec 'd', 1 do |s|
242
+ s.add_development_dependency 'e'
243
+ end
244
+
219
245
  e_spec = util_spec 'e', 1
220
246
 
221
247
  a_dep = make_dep 'a', '= 1'
@@ -300,8 +326,14 @@ class TestGemResolver < Gem::TestCase
300
326
 
301
327
  spec_fetcher do |fetcher|
302
328
  fetcher.spec 'a', 2
303
- a2_p1 = fetcher.spec 'a', 2 do |s| s.platform = Gem::Platform.local end
304
- a3_p2 = fetcher.spec 'a', 3 do |s| s.platform = unknown end
329
+
330
+ a2_p1 = fetcher.spec 'a', 2 do |s|
331
+ s.platform = Gem::Platform.local
332
+ end
333
+
334
+ a3_p2 = fetcher.spec 'a', 3 do |s|
335
+ s.platform = unknown
336
+ end
305
337
  end
306
338
 
307
339
  v2 = v(2)
@@ -513,7 +545,7 @@ class TestGemResolver < Gem::TestCase
513
545
 
514
546
  dependency = e.conflict.dependency
515
547
 
516
- assert_includes %w(a b), dependency.name
548
+ assert_includes %w[a b], dependency.name
517
549
  assert_equal req('>= 0'), dependency.requirement
518
550
 
519
551
  activated = e.conflict.activated
@@ -643,7 +675,6 @@ class TestGemResolver < Gem::TestCase
643
675
  # activesupport 2.3.5, 2.3.4
644
676
  # Activemerchant needs activesupport >= 2.3.2. When you require activemerchant, it will activate the latest version that meets that requirement which is 2.3.5. Actionmailer on the other hand needs activesupport = 2.3.4. When rubygems tries to activate activesupport 2.3.4, it will raise an error.
645
677
 
646
-
647
678
  def test_simple_activesupport_problem
648
679
  sup1 = util_spec "activesupport", "2.3.4"
649
680
  sup2 = util_spec "activesupport", "2.3.5"
@@ -708,9 +739,15 @@ class TestGemResolver < Gem::TestCase
708
739
  def test_select_local_platforms
709
740
  r = Gem::Resolver.new nil, nil
710
741
 
711
- a1 = util_spec 'a', 1
712
- a1_p1 = util_spec 'a', 1 do |s| s.platform = Gem::Platform.local end
713
- a1_p2 = util_spec 'a', 1 do |s| s.platform = 'unknown' end
742
+ a1 = util_spec 'a', 1
743
+
744
+ a1_p1 = util_spec 'a', 1 do |s|
745
+ s.platform = Gem::Platform.local
746
+ end
747
+
748
+ a1_p2 = util_spec 'a', 1 do |s|
749
+ s.platform = 'unknown'
750
+ end
714
751
 
715
752
  selected = r.select_local_platforms [a1, a1_p1, a1_p2]
716
753
 
@@ -718,9 +755,15 @@ class TestGemResolver < Gem::TestCase
718
755
  end
719
756
 
720
757
  def test_search_for_local_platform_partial_string_match
721
- a1 = util_spec 'a', 1
722
- a1_p1 = util_spec 'a', 1 do |s| s.platform = Gem::Platform.local.os end
723
- a1_p2 = util_spec 'a', 1 do |s| s.platform = 'unknown' end
758
+ a1 = util_spec 'a', 1
759
+
760
+ a1_p1 = util_spec 'a', 1 do |s|
761
+ s.platform = Gem::Platform.local.os
762
+ end
763
+
764
+ a1_p2 = util_spec 'a', 1 do |s|
765
+ s.platform = 'unknown'
766
+ end
724
767
 
725
768
  s = set(a1_p1, a1_p2, a1)
726
769
  d = [make_dep('a')]
@@ -745,5 +788,4 @@ class TestGemResolver < Gem::TestCase
745
788
  assert_match "No match for 'a (= 1)' on this platform. Found: c-p-1",
746
789
  e.message
747
790
  end
748
-
749
791
  end
@@ -2,7 +2,6 @@
2
2
  require 'rubygems/test_case'
3
3
 
4
4
  class TestGemResolverActivationRequest < Gem::TestCase
5
-
6
5
  def setup
7
6
  super
8
7
 
@@ -13,11 +12,9 @@ class TestGemResolverActivationRequest < Gem::TestCase
13
12
  source = Gem::Source::Local.new
14
13
  platform = Gem::Platform::RUBY
15
14
 
16
- @a1 = @DR::IndexSpecification.new nil, 'a', v(1), source, platform
17
- @a2 = @DR::IndexSpecification.new nil, 'a', v(2), source, platform
18
15
  @a3 = @DR::IndexSpecification.new nil, 'a', v(3), source, platform
19
16
 
20
- @req = @DR::ActivationRequest.new @a3, @dep, [@a1, @a2]
17
+ @req = @DR::ActivationRequest.new @a3, @dep
21
18
  end
22
19
 
23
20
  def test_development_eh
@@ -25,7 +22,7 @@ class TestGemResolverActivationRequest < Gem::TestCase
25
22
 
26
23
  dep_req = @DR::DependencyRequest.new dep('a', '>= 0', :development), nil
27
24
 
28
- act_req = @DR::ActivationRequest.new @a3, dep_req, [@a1, @a2]
25
+ act_req = @DR::ActivationRequest.new @a3, dep_req
29
26
 
30
27
  assert act_req.development?
31
28
  end
@@ -33,41 +30,13 @@ class TestGemResolverActivationRequest < Gem::TestCase
33
30
  def test_inspect
34
31
  assert_match 'a-3', @req.inspect
35
32
  assert_match 'from a (>= 0)', @req.inspect
36
- assert_match '(others possible: a-1, a-2)', @req.inspect
37
- end
38
-
39
- def test_inspect_legacy
40
- req = @DR::ActivationRequest.new @a3, @dep, true
41
-
42
- assert_match '(others possible)', req.inspect
43
-
44
- req = @DR::ActivationRequest.new @a3, @dep, false
45
-
46
- refute_match '(others possible)', req.inspect
47
33
  end
48
34
 
49
35
  def test_installed_eh
50
36
  v_spec = Gem::Resolver::VendorSpecification.new nil, @a3
51
37
 
52
- @req = @DR::ActivationRequest.new v_spec, @dep, [@a1, @a2]
38
+ @req = @DR::ActivationRequest.new v_spec, @dep
53
39
 
54
40
  assert @req.installed?
55
41
  end
56
-
57
- def test_others_possible_eh
58
- assert @req.others_possible?
59
-
60
- req = @DR::ActivationRequest.new @a3, @dep, []
61
-
62
- refute req.others_possible?
63
-
64
- req = @DR::ActivationRequest.new @a3, @dep, true
65
-
66
- assert req.others_possible?
67
-
68
- req = @DR::ActivationRequest.new @a3, @dep, false
69
-
70
- refute req.others_possible?
71
- end
72
-
73
42
  end
@@ -2,35 +2,34 @@
2
2
  require 'rubygems/test_case'
3
3
 
4
4
  class TestGemResolverAPISet < Gem::TestCase
5
-
6
5
  def setup
7
6
  super
8
7
 
9
8
  @DR = Gem::Resolver
10
- @dep_uri = URI "#{@gem_repo}api/v1/dependencies"
9
+ @dep_uri = URI "#{@gem_repo}info/"
11
10
  end
12
11
 
13
12
  def test_initialize
14
13
  set = @DR::APISet.new
15
14
 
16
- assert_equal URI('https://rubygems.org/api/v1/dependencies'), set.dep_uri
17
- assert_equal URI('https://rubygems.org'), set.uri
18
- assert_equal Gem::Source.new(URI('https://rubygems.org')), set.source
15
+ assert_equal URI('https://index.rubygems.org/info/'), set.dep_uri
16
+ assert_equal URI('https://index.rubygems.org/'), set.uri
17
+ assert_equal Gem::Source.new(URI('https://index.rubygems.org')), set.source
19
18
  end
20
19
 
21
20
  def test_initialize_deeper_uri
22
- set = @DR::APISet.new 'https://rubygemsserver.com/mygems/api/v1/dependencies'
21
+ set = @DR::APISet.new 'https://rubygemsserver.com/mygems/info'
23
22
 
24
- assert_equal URI('https://rubygemsserver.com/mygems/api/v1/dependencies'), set.dep_uri
25
- assert_equal URI('https://rubygemsserver.com/mygems/'), set.uri
26
- assert_equal Gem::Source.new(URI('https://rubygemsserver.com/mygems/')), set.source
23
+ assert_equal URI('https://rubygemsserver.com/mygems/info'), set.dep_uri
24
+ assert_equal URI('https://rubygemsserver.com/'), set.uri
25
+ assert_equal Gem::Source.new(URI('https://rubygemsserver.com/')), set.source
27
26
  end
28
27
 
29
28
  def test_initialize_uri
30
29
  set = @DR::APISet.new @dep_uri
31
30
 
32
- assert_equal URI("#{@gem_repo}api/v1/dependencies"), set.dep_uri
33
- assert_equal URI("#{@gem_repo}"), set.uri
31
+ assert_equal URI("#{@gem_repo}info/"), set.dep_uri
32
+ assert_equal URI("#{@gem_repo}"), set.uri
34
33
  end
35
34
 
36
35
  def test_find_all
@@ -40,17 +39,46 @@ class TestGemResolverAPISet < Gem::TestCase
40
39
  { :name => 'a',
41
40
  :number => '1',
42
41
  :platform => 'ruby',
43
- :dependencies => [], },
42
+ :dependencies => [] },
43
+ ]
44
+
45
+ @fetcher.data["#{@dep_uri}a"] = "---\n1 "
46
+
47
+ set = @DR::APISet.new @dep_uri
48
+
49
+ a_dep = @DR::DependencyRequest.new dep('a'), nil
50
+
51
+ expected = [
52
+ @DR::APISpecification.new(set, data.first),
53
+ ]
54
+
55
+ assert_equal expected, set.find_all(a_dep)
56
+ end
57
+
58
+ def test_find_all_prereleases
59
+ spec_fetcher
60
+
61
+ data = [
62
+ { :name => 'a',
63
+ :number => '1',
64
+ :platform => 'ruby',
65
+ :dependencies => [] },
66
+ { :name => 'a',
67
+ :number => '2.a',
68
+ :platform => 'ruby',
69
+ :dependencies => [] },
44
70
  ]
45
71
 
46
- @fetcher.data["#{@dep_uri}?gems=a"] = Marshal.dump data
72
+ @fetcher.data["#{@dep_uri}a"] = "---\n1\n2.a"
47
73
 
48
74
  set = @DR::APISet.new @dep_uri
75
+ set.prerelease = true
49
76
 
50
77
  a_dep = @DR::DependencyRequest.new dep('a'), nil
51
78
 
52
79
  expected = [
53
- @DR::APISpecification.new(set, data.first)
80
+ @DR::APISpecification.new(set, data.first),
81
+ @DR::APISpecification.new(set, data.last),
54
82
  ]
55
83
 
56
84
  assert_equal expected, set.find_all(a_dep)
@@ -63,10 +91,10 @@ class TestGemResolverAPISet < Gem::TestCase
63
91
  { :name => 'a',
64
92
  :number => '1',
65
93
  :platform => 'ruby',
66
- :dependencies => [], },
94
+ :dependencies => [] },
67
95
  ]
68
96
 
69
- @fetcher.data["#{@dep_uri}?gems=a"] = Marshal.dump data
97
+ @fetcher.data["#{@dep_uri}a"] = "---\n1 "
70
98
 
71
99
  set = @DR::APISet.new @dep_uri
72
100
 
@@ -75,12 +103,12 @@ class TestGemResolverAPISet < Gem::TestCase
75
103
  set.prefetch [a_dep]
76
104
 
77
105
  expected = [
78
- @DR::APISpecification.new(set, data.first)
106
+ @DR::APISpecification.new(set, data.first),
79
107
  ]
80
108
 
81
109
  assert_equal expected, set.find_all(a_dep)
82
110
 
83
- @fetcher.data.delete "#{@dep_uri}?gems=a"
111
+ @fetcher.data.delete "#{@dep_uri}a"
84
112
  end
85
113
 
86
114
  def test_find_all_local
@@ -95,7 +123,7 @@ class TestGemResolverAPISet < Gem::TestCase
95
123
  def test_find_all_missing
96
124
  spec_fetcher
97
125
 
98
- @fetcher.data["#{@dep_uri}?gems=a"] = Marshal.dump []
126
+ @fetcher.data["#{@dep_uri}a"] = "---"
99
127
 
100
128
  set = @DR::APISet.new @dep_uri
101
129
 
@@ -103,7 +131,7 @@ class TestGemResolverAPISet < Gem::TestCase
103
131
 
104
132
  assert_empty set.find_all(a_dep)
105
133
 
106
- @fetcher.data.delete "#{@dep_uri}?gems=a"
134
+ @fetcher.data.delete "#{@dep_uri}a"
107
135
 
108
136
  assert_empty set.find_all(a_dep)
109
137
  end
@@ -111,15 +139,8 @@ class TestGemResolverAPISet < Gem::TestCase
111
139
  def test_prefetch
112
140
  spec_fetcher
113
141
 
114
- data = [
115
- { :name => 'a',
116
- :number => '1',
117
- :platform => 'ruby',
118
- :dependencies => [], },
119
- ]
120
-
121
- @fetcher.data["#{@dep_uri}?gems=a,b"] = Marshal.dump data
122
- @fetcher.data["#{@dep_uri}?gems=b"] = Marshal.dump []
142
+ @fetcher.data["#{@dep_uri}a"] = "---\n1 \n"
143
+ @fetcher.data["#{@dep_uri}b"] = "---"
123
144
 
124
145
  set = @DR::APISet.new @dep_uri
125
146
 
@@ -128,21 +149,14 @@ class TestGemResolverAPISet < Gem::TestCase
128
149
 
129
150
  set.prefetch [a_dep, b_dep]
130
151
 
131
- assert_equal %w[a-1], set.find_all(a_dep).map { |s| s.full_name }
152
+ assert_equal %w[a-1], set.find_all(a_dep).map {|s| s.full_name }
132
153
  assert_empty set.find_all(b_dep)
133
154
  end
134
155
 
135
156
  def test_prefetch_cache
136
157
  spec_fetcher
137
158
 
138
- data = [
139
- { :name => 'a',
140
- :number => '1',
141
- :platform => 'ruby',
142
- :dependencies => [], },
143
- ]
144
-
145
- @fetcher.data["#{@dep_uri}?gems=a"] = Marshal.dump data
159
+ @fetcher.data["#{@dep_uri}a"] = "---\n1 \n"
146
160
 
147
161
  set = @DR::APISet.new @dep_uri
148
162
 
@@ -151,8 +165,8 @@ class TestGemResolverAPISet < Gem::TestCase
151
165
 
152
166
  set.prefetch [a_dep]
153
167
 
154
- @fetcher.data.delete "#{@dep_uri}?gems=a"
155
- @fetcher.data["#{@dep_uri}?gems=b"] = Marshal.dump []
168
+ @fetcher.data.delete "#{@dep_uri}a"
169
+ @fetcher.data["#{@dep_uri}?b"] = "---"
156
170
 
157
171
  set.prefetch [a_dep, b_dep]
158
172
  end
@@ -160,14 +174,8 @@ class TestGemResolverAPISet < Gem::TestCase
160
174
  def test_prefetch_cache_missing
161
175
  spec_fetcher
162
176
 
163
- data = [
164
- { :name => 'a',
165
- :number => '1',
166
- :platform => 'ruby',
167
- :dependencies => [], },
168
- ]
169
-
170
- @fetcher.data["#{@dep_uri}?gems=a,b"] = Marshal.dump data
177
+ @fetcher.data["#{@dep_uri}a"] = "---\n1 \n"
178
+ @fetcher.data["#{@dep_uri}b"] = "---"
171
179
 
172
180
  set = @DR::APISet.new @dep_uri
173
181
 
@@ -176,7 +184,8 @@ class TestGemResolverAPISet < Gem::TestCase
176
184
 
177
185
  set.prefetch [a_dep, b_dep]
178
186
 
179
- @fetcher.data.delete "#{@dep_uri}?gems=a,b"
187
+ @fetcher.data.delete "#{@dep_uri}a"
188
+ @fetcher.data.delete "#{@dep_uri}b"
180
189
 
181
190
  set.prefetch [a_dep, b_dep]
182
191
  end
@@ -184,15 +193,8 @@ class TestGemResolverAPISet < Gem::TestCase
184
193
  def test_prefetch_local
185
194
  spec_fetcher
186
195
 
187
- data = [
188
- { :name => 'a',
189
- :number => '1',
190
- :platform => 'ruby',
191
- :dependencies => [], },
192
- ]
193
-
194
- @fetcher.data["#{@dep_uri}?gems=a,b"] = Marshal.dump data
195
- @fetcher.data["#{@dep_uri}?gems=b"] = Marshal.dump []
196
+ @fetcher.data["#{@dep_uri}a"] = "---\n1 \n"
197
+ @fetcher.data["#{@dep_uri}b"] = "---"
196
198
 
197
199
  set = @DR::APISet.new @dep_uri
198
200
  set.remote = false
@@ -204,5 +206,4 @@ class TestGemResolverAPISet < Gem::TestCase
204
206
 
205
207
  assert_empty set.instance_variable_get :@data
206
208
  end
207
-
208
209
  end