rubygems-update 3.1.6 → 3.3.22

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 (703) hide show
  1. checksums.yaml +4 -4
  2. data/{History.txt → CHANGELOG.md} +1452 -514
  3. data/CODE_OF_CONDUCT.md +55 -19
  4. data/CONTRIBUTING.md +74 -27
  5. data/Manifest.txt +154 -117
  6. data/POLICIES.md +27 -19
  7. data/README.md +10 -8
  8. data/UPGRADING.md +5 -81
  9. data/bin/gem +3 -8
  10. data/bin/update_rubygems +5 -5
  11. data/bundler/CHANGELOG.md +2358 -1430
  12. data/bundler/README.md +7 -9
  13. data/bundler/UPGRADING.md +27 -34
  14. data/bundler/bundler.gemspec +8 -11
  15. data/bundler/exe/bundle +10 -8
  16. data/bundler/exe/bundler +1 -1
  17. data/bundler/lib/bundler/.document +1 -0
  18. data/bundler/lib/bundler/build_metadata.rb +4 -12
  19. data/bundler/lib/bundler/cli/add.rb +1 -1
  20. data/bundler/lib/bundler/cli/binstubs.rb +6 -2
  21. data/bundler/lib/bundler/cli/cache.rb +3 -8
  22. data/bundler/lib/bundler/cli/check.rb +4 -2
  23. data/bundler/lib/bundler/cli/clean.rb +1 -1
  24. data/bundler/lib/bundler/cli/common.rb +31 -3
  25. data/bundler/lib/bundler/cli/config.rb +10 -1
  26. data/bundler/lib/bundler/cli/console.rb +1 -1
  27. data/bundler/lib/bundler/cli/doctor.rb +25 -6
  28. data/bundler/lib/bundler/cli/exec.rb +5 -10
  29. data/bundler/lib/bundler/cli/fund.rb +36 -0
  30. data/bundler/lib/bundler/cli/gem.rb +219 -28
  31. data/bundler/lib/bundler/cli/info.rb +38 -6
  32. data/bundler/lib/bundler/cli/init.rb +3 -3
  33. data/bundler/lib/bundler/cli/inject.rb +1 -1
  34. data/bundler/lib/bundler/cli/install.rb +25 -54
  35. data/bundler/lib/bundler/cli/issue.rb +5 -4
  36. data/bundler/lib/bundler/cli/list.rb +19 -11
  37. data/bundler/lib/bundler/cli/lock.rb +5 -1
  38. data/bundler/lib/bundler/cli/open.rb +1 -2
  39. data/bundler/lib/bundler/cli/outdated.rb +105 -76
  40. data/bundler/lib/bundler/cli/platform.rb +2 -2
  41. data/bundler/lib/bundler/cli/plugin.rb +10 -0
  42. data/bundler/lib/bundler/cli/pristine.rb +5 -0
  43. data/bundler/lib/bundler/cli/remove.rb +1 -2
  44. data/bundler/lib/bundler/cli/show.rb +2 -2
  45. data/bundler/lib/bundler/cli/update.rb +20 -9
  46. data/bundler/lib/bundler/cli.rb +106 -83
  47. data/bundler/lib/bundler/compact_index_client/cache.rb +6 -23
  48. data/bundler/lib/bundler/compact_index_client/gem_parser.rb +28 -0
  49. data/bundler/lib/bundler/compact_index_client/updater.rb +29 -25
  50. data/bundler/lib/bundler/compact_index_client.rb +3 -9
  51. data/bundler/lib/bundler/current_ruby.rb +17 -6
  52. data/bundler/lib/bundler/definition.rb +297 -396
  53. data/bundler/lib/bundler/dep_proxy.rb +16 -9
  54. data/bundler/lib/bundler/dependency.rb +22 -77
  55. data/bundler/lib/bundler/digest.rb +71 -0
  56. data/bundler/lib/bundler/dsl.rb +76 -83
  57. data/bundler/lib/bundler/endpoint_specification.rb +16 -14
  58. data/bundler/lib/bundler/env.rb +2 -2
  59. data/bundler/lib/bundler/environment_preserver.rb +29 -2
  60. data/bundler/lib/bundler/errors.rb +30 -3
  61. data/bundler/lib/bundler/feature_flag.rb +0 -9
  62. data/bundler/lib/bundler/fetcher/base.rb +7 -9
  63. data/bundler/lib/bundler/fetcher/compact_index.rb +11 -16
  64. data/bundler/lib/bundler/fetcher/downloader.rb +10 -7
  65. data/bundler/lib/bundler/fetcher/index.rb +2 -30
  66. data/bundler/lib/bundler/fetcher.rb +24 -25
  67. data/bundler/lib/bundler/friendly_errors.rb +46 -47
  68. data/bundler/lib/bundler/gem_helper.rb +53 -31
  69. data/bundler/lib/bundler/gem_helpers.rb +43 -24
  70. data/bundler/lib/bundler/gem_version_promoter.rb +10 -20
  71. data/bundler/lib/bundler/graph.rb +1 -1
  72. data/bundler/lib/bundler/index.rb +19 -25
  73. data/bundler/lib/bundler/injector.rb +38 -6
  74. data/bundler/lib/bundler/inline.rb +4 -13
  75. data/bundler/lib/bundler/installer/gem_installer.rb +19 -24
  76. data/bundler/lib/bundler/installer/parallel_installer.rb +46 -25
  77. data/bundler/lib/bundler/installer/standalone.rb +58 -11
  78. data/bundler/lib/bundler/installer.rb +51 -81
  79. data/bundler/lib/bundler/lazy_specification.rb +79 -36
  80. data/bundler/lib/bundler/lockfile_generator.rb +3 -3
  81. data/bundler/lib/bundler/lockfile_parser.rb +19 -44
  82. data/bundler/lib/bundler/man/.document +1 -0
  83. data/bundler/{man → lib/bundler/man}/bundle-add.1 +21 -5
  84. data/bundler/{man/bundle-add.ronn → lib/bundler/man/bundle-add.1.ronn} +16 -4
  85. data/bundler/{man → lib/bundler/man}/bundle-binstubs.1 +5 -3
  86. data/bundler/{man/bundle-binstubs.ronn → lib/bundler/man/bundle-binstubs.1.ronn} +2 -4
  87. data/bundler/{man → lib/bundler/man}/bundle-cache.1 +7 -1
  88. data/bundler/{man/bundle-cache.ronn → lib/bundler/man/bundle-cache.1.ronn} +7 -0
  89. data/bundler/{man → lib/bundler/man}/bundle-check.1 +1 -1
  90. data/bundler/{man → lib/bundler/man}/bundle-clean.1 +1 -1
  91. data/bundler/{man → lib/bundler/man}/bundle-config.1 +65 -47
  92. data/bundler/{man/bundle-config.ronn → lib/bundler/man/bundle-config.1.ronn} +74 -65
  93. data/bundler/lib/bundler/man/bundle-console.1 +53 -0
  94. data/bundler/lib/bundler/man/bundle-console.1.ronn +44 -0
  95. data/bundler/{man → lib/bundler/man}/bundle-doctor.1 +1 -1
  96. data/bundler/{man → lib/bundler/man}/bundle-exec.1 +2 -2
  97. data/bundler/{man/bundle-exec.ronn → lib/bundler/man/bundle-exec.1.ronn} +1 -1
  98. data/bundler/{man → lib/bundler/man}/bundle-gem.1 +38 -3
  99. data/bundler/{man/bundle-gem.ronn → lib/bundler/man/bundle-gem.1.ronn} +46 -7
  100. data/bundler/lib/bundler/man/bundle-help.1 +13 -0
  101. data/bundler/lib/bundler/man/bundle-help.1.ronn +12 -0
  102. data/bundler/{man → lib/bundler/man}/bundle-info.1 +1 -1
  103. data/bundler/{man → lib/bundler/man}/bundle-init.1 +1 -1
  104. data/bundler/{man → lib/bundler/man}/bundle-inject.1 +5 -2
  105. data/bundler/{man/bundle-inject.ronn → lib/bundler/man/bundle-inject.1.ronn} +3 -1
  106. data/bundler/{man → lib/bundler/man}/bundle-install.1 +35 -4
  107. data/bundler/{man/bundle-install.ronn → lib/bundler/man/bundle-install.1.ronn} +33 -5
  108. data/bundler/{man → lib/bundler/man}/bundle-list.1 +7 -7
  109. data/bundler/{man/bundle-list.ronn → lib/bundler/man/bundle-list.1.ronn} +6 -6
  110. data/bundler/{man → lib/bundler/man}/bundle-lock.1 +1 -1
  111. data/bundler/{man → lib/bundler/man}/bundle-open.1 +1 -1
  112. data/bundler/{man → lib/bundler/man}/bundle-outdated.1 +3 -10
  113. data/bundler/{man/bundle-outdated.ronn → lib/bundler/man/bundle-outdated.1.ronn} +1 -10
  114. data/bundler/{man → lib/bundler/man}/bundle-platform.1 +16 -6
  115. data/bundler/{man/bundle-platform.ronn → lib/bundler/man/bundle-platform.1.ronn} +14 -7
  116. data/bundler/lib/bundler/man/bundle-plugin.1 +81 -0
  117. data/bundler/lib/bundler/man/bundle-plugin.1.ronn +59 -0
  118. data/bundler/{man → lib/bundler/man}/bundle-pristine.1 +1 -1
  119. data/bundler/{man → lib/bundler/man}/bundle-remove.1 +1 -1
  120. data/bundler/{man → lib/bundler/man}/bundle-show.1 +1 -1
  121. data/bundler/{man → lib/bundler/man}/bundle-update.1 +5 -5
  122. data/bundler/{man/bundle-update.ronn → lib/bundler/man/bundle-update.1.ronn} +5 -4
  123. data/bundler/lib/bundler/man/bundle-version.1 +35 -0
  124. data/bundler/lib/bundler/man/bundle-version.1.ronn +24 -0
  125. data/bundler/{man → lib/bundler/man}/bundle-viz.1 +4 -1
  126. data/bundler/{man/bundle-viz.ronn → lib/bundler/man/bundle-viz.1.ronn} +2 -0
  127. data/bundler/{man → lib/bundler/man}/bundle.1 +15 -10
  128. data/bundler/{man/bundle.ronn → lib/bundler/man/bundle.1.ronn} +12 -7
  129. data/bundler/{man → lib/bundler/man}/gemfile.5 +106 -80
  130. data/bundler/{man → lib/bundler/man}/gemfile.5.ronn +94 -83
  131. data/bundler/{man → lib/bundler/man}/index.txt +4 -0
  132. data/bundler/lib/bundler/match_metadata.rb +13 -0
  133. data/bundler/lib/bundler/match_platform.rb +0 -1
  134. data/bundler/lib/bundler/match_remote_metadata.rb +29 -0
  135. data/bundler/lib/bundler/mirror.rb +2 -2
  136. data/bundler/lib/bundler/plugin/api/source.rb +25 -9
  137. data/bundler/lib/bundler/plugin/dsl.rb +1 -1
  138. data/bundler/lib/bundler/plugin/index.rb +13 -1
  139. data/bundler/lib/bundler/plugin/installer/git.rb +0 -4
  140. data/bundler/lib/bundler/plugin/installer/rubygems.rb +1 -5
  141. data/bundler/lib/bundler/plugin/installer.rb +11 -11
  142. data/bundler/lib/bundler/plugin/source_list.rb +5 -1
  143. data/bundler/lib/bundler/plugin.rb +58 -11
  144. data/bundler/lib/bundler/process_lock.rb +1 -1
  145. data/bundler/lib/bundler/remote_specification.rb +11 -6
  146. data/bundler/lib/bundler/resolver/base.rb +50 -0
  147. data/bundler/lib/bundler/resolver/spec_group.rb +64 -57
  148. data/bundler/lib/bundler/resolver.rb +234 -230
  149. data/bundler/lib/bundler/retry.rb +2 -2
  150. data/bundler/lib/bundler/ruby_dsl.rb +1 -1
  151. data/bundler/lib/bundler/ruby_version.rb +6 -19
  152. data/bundler/lib/bundler/rubygems_ext.rb +194 -33
  153. data/bundler/lib/bundler/rubygems_gem_installer.rb +87 -16
  154. data/bundler/lib/bundler/rubygems_integration.rb +71 -153
  155. data/bundler/lib/bundler/runtime.rb +22 -26
  156. data/bundler/lib/bundler/self_manager.rb +168 -0
  157. data/bundler/lib/bundler/settings.rb +145 -66
  158. data/bundler/lib/bundler/setup.rb +2 -2
  159. data/bundler/lib/bundler/shared_helpers.rb +17 -32
  160. data/bundler/lib/bundler/similarity_detector.rb +1 -1
  161. data/bundler/lib/bundler/source/git/git_proxy.rb +88 -84
  162. data/bundler/lib/bundler/source/git.rb +50 -32
  163. data/bundler/lib/bundler/source/metadata.rb +3 -7
  164. data/bundler/lib/bundler/source/path/installer.rb +10 -10
  165. data/bundler/lib/bundler/source/path.rb +10 -4
  166. data/bundler/lib/bundler/source/rubygems/remote.rb +1 -1
  167. data/bundler/lib/bundler/source/rubygems.rb +201 -179
  168. data/bundler/lib/bundler/source/rubygems_aggregate.rb +68 -0
  169. data/bundler/lib/bundler/source.rb +25 -5
  170. data/bundler/lib/bundler/source_list.rb +105 -63
  171. data/bundler/lib/bundler/source_map.rb +71 -0
  172. data/bundler/lib/bundler/spec_set.rb +62 -57
  173. data/bundler/lib/bundler/stub_specification.rb +30 -10
  174. data/bundler/lib/bundler/templates/Executable +2 -4
  175. data/bundler/lib/bundler/templates/Executable.bundler +8 -8
  176. data/bundler/lib/bundler/templates/Executable.standalone +2 -4
  177. data/bundler/lib/bundler/templates/Gemfile +0 -2
  178. data/bundler/lib/bundler/templates/gems.rb +0 -3
  179. data/bundler/lib/bundler/templates/newgem/CHANGELOG.md.tt +5 -0
  180. data/bundler/lib/bundler/templates/newgem/CODE_OF_CONDUCT.md.tt +57 -47
  181. data/bundler/lib/bundler/templates/newgem/Gemfile.tt +12 -1
  182. data/bundler/lib/bundler/templates/newgem/README.md.tt +9 -14
  183. data/bundler/lib/bundler/templates/newgem/Rakefile.tt +32 -5
  184. data/bundler/lib/bundler/templates/newgem/bin/console.tt +1 -0
  185. data/bundler/lib/bundler/templates/newgem/circleci/config.yml.tt +13 -0
  186. data/bundler/lib/bundler/templates/newgem/ext/newgem/extconf.rb.tt +2 -0
  187. data/bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt +27 -0
  188. data/bundler/lib/bundler/templates/newgem/gitlab-ci.yml.tt +9 -0
  189. data/bundler/lib/bundler/templates/newgem/lib/newgem/version.rb.tt +2 -0
  190. data/bundler/lib/bundler/templates/newgem/lib/newgem.rb.tt +4 -2
  191. data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +27 -17
  192. data/bundler/lib/bundler/templates/newgem/rubocop.yml.tt +13 -0
  193. data/bundler/lib/bundler/templates/newgem/sig/newgem.rbs.tt +8 -0
  194. data/bundler/lib/bundler/templates/newgem/spec/newgem_spec.rb.tt +2 -0
  195. data/bundler/lib/bundler/templates/newgem/spec/spec_helper.rb.tt +2 -1
  196. data/bundler/lib/bundler/templates/newgem/standard.yml.tt +3 -0
  197. data/bundler/lib/bundler/templates/newgem/test/{test_helper.rb.tt → minitest/test_helper.rb.tt} +2 -0
  198. data/bundler/lib/bundler/templates/newgem/test/{newgem_test.rb.tt → minitest/test_newgem.rb.tt} +3 -1
  199. data/bundler/lib/bundler/templates/newgem/test/test-unit/newgem_test.rb.tt +15 -0
  200. data/bundler/lib/bundler/templates/newgem/test/test-unit/test_helper.rb.tt +6 -0
  201. data/bundler/lib/bundler/ui/shell.rb +6 -6
  202. data/bundler/lib/bundler/uri_credentials_filter.rb +3 -1
  203. data/bundler/lib/bundler/vendor/.document +1 -0
  204. data/bundler/lib/bundler/vendor/connection_pool/LICENSE +20 -0
  205. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb +19 -21
  206. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/version.rb +1 -1
  207. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/wrapper.rb +57 -0
  208. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool.rb +39 -74
  209. data/bundler/lib/bundler/vendor/fileutils/LICENSE.txt +22 -0
  210. data/bundler/lib/bundler/vendor/molinillo/LICENSE +9 -0
  211. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb +7 -0
  212. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb +2 -2
  213. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb +11 -5
  214. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb +37 -5
  215. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +34 -28
  216. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb +1 -1
  217. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb +12 -1
  218. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb +49 -47
  219. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo.rb +0 -1
  220. data/bundler/lib/bundler/vendor/net-http-persistent/README.rdoc +82 -0
  221. data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +82 -189
  222. data/bundler/lib/bundler/vendor/thor/LICENSE.md +20 -0
  223. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/create_link.rb +2 -1
  224. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +9 -7
  225. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/inject_into_file.rb +1 -2
  226. data/bundler/lib/bundler/vendor/thor/lib/thor/actions.rb +7 -3
  227. data/bundler/lib/bundler/vendor/thor/lib/thor/base.rb +9 -0
  228. data/bundler/lib/bundler/vendor/thor/lib/thor/core_ext/hash_with_indifferent_access.rb +6 -0
  229. data/bundler/lib/bundler/vendor/thor/lib/thor/error.rb +10 -5
  230. data/bundler/lib/bundler/vendor/thor/lib/thor/parser/arguments.rb +5 -1
  231. data/bundler/lib/bundler/vendor/thor/lib/thor/parser/options.rb +28 -9
  232. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +27 -6
  233. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/color.rb +5 -1
  234. data/bundler/lib/bundler/vendor/thor/lib/thor/shell.rb +1 -1
  235. data/bundler/lib/bundler/vendor/thor/lib/thor/util.rb +1 -1
  236. data/bundler/lib/bundler/vendor/thor/lib/thor/version.rb +1 -1
  237. data/bundler/lib/bundler/vendor/thor/lib/thor.rb +5 -13
  238. data/bundler/lib/bundler/vendor/tmpdir/lib/tmpdir.rb +154 -0
  239. data/bundler/lib/bundler/vendor/tsort/LICENSE.txt +22 -0
  240. data/bundler/lib/bundler/vendor/tsort/lib/tsort.rb +452 -0
  241. data/bundler/lib/bundler/vendor/uri/LICENSE.txt +22 -0
  242. data/bundler/lib/bundler/vendor/uri/lib/uri/common.rb +17 -80
  243. data/bundler/lib/bundler/vendor/uri/lib/uri/ftp.rb +0 -1
  244. data/bundler/lib/bundler/vendor/uri/lib/uri/generic.rb +5 -6
  245. data/bundler/lib/bundler/vendor/uri/lib/uri/http.rb +0 -1
  246. data/bundler/lib/bundler/vendor/uri/lib/uri/https.rb +0 -1
  247. data/bundler/lib/bundler/vendor/uri/lib/uri/ldap.rb +1 -1
  248. data/bundler/lib/bundler/vendor/uri/lib/uri/mailto.rb +0 -1
  249. data/bundler/lib/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +1 -14
  250. data/bundler/lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +1 -12
  251. data/bundler/lib/bundler/vendor/uri/lib/uri/version.rb +1 -1
  252. data/bundler/lib/bundler/vendor/uri/lib/uri/ws.rb +84 -0
  253. data/bundler/lib/bundler/vendor/uri/lib/uri/wss.rb +22 -0
  254. data/bundler/lib/bundler/vendor/uri/lib/uri.rb +0 -1
  255. data/bundler/lib/bundler/vendored_persistent.rb +0 -7
  256. data/bundler/lib/bundler/vendored_tmpdir.rb +4 -0
  257. data/bundler/lib/bundler/vendored_tsort.rb +4 -0
  258. data/bundler/lib/bundler/version.rb +1 -1
  259. data/bundler/lib/bundler/worker.rb +20 -5
  260. data/bundler/lib/bundler/yaml_serializer.rb +1 -1
  261. data/bundler/lib/bundler.rb +79 -47
  262. data/hide_lib_for_update/note.txt +0 -4
  263. data/lib/rubygems/available_set.rb +7 -9
  264. data/lib/rubygems/basic_specification.rb +23 -21
  265. data/lib/rubygems/bundler_version_finder.rb +26 -53
  266. data/lib/rubygems/command.rb +48 -45
  267. data/lib/rubygems/command_manager.rb +20 -14
  268. data/lib/rubygems/commands/build_command.rb +47 -27
  269. data/lib/rubygems/commands/cert_command.rb +78 -75
  270. data/lib/rubygems/commands/check_command.rb +20 -22
  271. data/lib/rubygems/commands/cleanup_command.rb +30 -26
  272. data/lib/rubygems/commands/contents_command.rb +16 -18
  273. data/lib/rubygems/commands/dependency_command.rb +39 -51
  274. data/lib/rubygems/commands/environment_command.rb +11 -10
  275. data/lib/rubygems/commands/fetch_command.rb +33 -16
  276. data/lib/rubygems/commands/generate_index_command.rb +17 -19
  277. data/lib/rubygems/commands/help_command.rb +6 -6
  278. data/lib/rubygems/commands/info_command.rb +10 -7
  279. data/lib/rubygems/commands/install_command.rb +29 -27
  280. data/lib/rubygems/commands/list_command.rb +9 -8
  281. data/lib/rubygems/commands/lock_command.rb +5 -7
  282. data/lib/rubygems/commands/mirror_command.rb +3 -5
  283. data/lib/rubygems/commands/open_command.rb +10 -14
  284. data/lib/rubygems/commands/outdated_command.rb +5 -7
  285. data/lib/rubygems/commands/owner_command.rb +26 -16
  286. data/lib/rubygems/commands/pristine_command.rb +61 -49
  287. data/lib/rubygems/commands/push_command.rb +22 -59
  288. data/lib/rubygems/commands/query_command.rb +21 -351
  289. data/lib/rubygems/commands/rdoc_command.rb +23 -25
  290. data/lib/rubygems/commands/search_command.rb +8 -8
  291. data/lib/rubygems/commands/server_command.rb +16 -77
  292. data/lib/rubygems/commands/setup_command.rb +255 -229
  293. data/lib/rubygems/commands/signin_command.rb +9 -11
  294. data/lib/rubygems/commands/signout_command.rb +7 -9
  295. data/lib/rubygems/commands/sources_command.rb +27 -25
  296. data/lib/rubygems/commands/specification_command.rb +25 -21
  297. data/lib/rubygems/commands/stale_command.rb +3 -5
  298. data/lib/rubygems/commands/uninstall_command.rb +41 -43
  299. data/lib/rubygems/commands/unpack_command.rb +13 -15
  300. data/lib/rubygems/commands/update_command.rb +132 -74
  301. data/lib/rubygems/commands/which_command.rb +7 -9
  302. data/lib/rubygems/commands/yank_command.rb +16 -19
  303. data/lib/rubygems/compatibility.rb +4 -2
  304. data/lib/rubygems/config_file.rb +42 -26
  305. data/lib/rubygems/core_ext/kernel_gem.rb +1 -1
  306. data/lib/rubygems/core_ext/kernel_require.rb +6 -3
  307. data/lib/rubygems/core_ext/kernel_warn.rb +12 -13
  308. data/lib/rubygems/core_ext/tcpsocket_init.rb +52 -0
  309. data/lib/rubygems/defaults.rb +108 -32
  310. data/lib/rubygems/dependency.rb +21 -22
  311. data/lib/rubygems/dependency_installer.rb +19 -91
  312. data/lib/rubygems/dependency_list.rb +13 -15
  313. data/lib/rubygems/deprecate.rb +102 -8
  314. data/lib/rubygems/doctor.rb +22 -22
  315. data/lib/rubygems/errors.rb +6 -21
  316. data/lib/rubygems/exceptions.rb +33 -34
  317. data/lib/rubygems/ext/build_error.rb +2 -0
  318. data/lib/rubygems/ext/builder.rb +48 -54
  319. data/lib/rubygems/ext/cargo_builder/link_flag_converter.rb +23 -0
  320. data/lib/rubygems/ext/cargo_builder.rb +321 -0
  321. data/lib/rubygems/ext/cmake_builder.rb +6 -9
  322. data/lib/rubygems/ext/configure_builder.rb +5 -8
  323. data/lib/rubygems/ext/ext_conf_builder.rb +42 -66
  324. data/lib/rubygems/ext/rake_builder.rb +7 -10
  325. data/lib/rubygems/ext.rb +7 -6
  326. data/lib/rubygems/gem_runner.rb +15 -26
  327. data/lib/rubygems/gemcutter_utilities.rb +153 -32
  328. data/lib/rubygems/indexer.rb +30 -49
  329. data/lib/rubygems/install_default_message.rb +2 -2
  330. data/lib/rubygems/install_message.rb +2 -2
  331. data/lib/rubygems/install_update_options.rb +73 -64
  332. data/lib/rubygems/installer.rb +194 -151
  333. data/lib/rubygems/installer_uninstaller_utils.rb +29 -0
  334. data/lib/rubygems/local_remote_options.rb +22 -24
  335. data/lib/rubygems/mock_gem_ui.rb +2 -8
  336. data/lib/rubygems/name_tuple.rb +9 -14
  337. data/lib/rubygems/openssl.rb +7 -0
  338. data/lib/rubygems/optparse/.document +1 -0
  339. data/lib/rubygems/optparse/COPYING +56 -0
  340. data/lib/rubygems/optparse/lib/optionparser.rb +2 -0
  341. data/lib/rubygems/optparse/lib/optparse/ac.rb +54 -0
  342. data/lib/rubygems/optparse/lib/optparse/date.rb +18 -0
  343. data/lib/rubygems/optparse/lib/optparse/kwargs.rb +22 -0
  344. data/lib/rubygems/optparse/lib/optparse/shellwords.rb +7 -0
  345. data/lib/rubygems/optparse/lib/optparse/time.rb +11 -0
  346. data/lib/rubygems/optparse/lib/optparse/uri.rb +7 -0
  347. data/lib/rubygems/optparse/lib/optparse/version.rb +71 -0
  348. data/lib/rubygems/optparse/lib/optparse.rb +2303 -0
  349. data/lib/rubygems/optparse.rb +3 -0
  350. data/lib/rubygems/package/digest_io.rb +0 -2
  351. data/lib/rubygems/package/file_source.rb +2 -4
  352. data/lib/rubygems/package/io_source.rb +4 -2
  353. data/lib/rubygems/package/old.rb +9 -11
  354. data/lib/rubygems/package/tar_header.rb +54 -56
  355. data/lib/rubygems/package/tar_reader/entry.rb +2 -5
  356. data/lib/rubygems/package/tar_reader.rb +1 -4
  357. data/lib/rubygems/package/tar_writer.rb +8 -18
  358. data/lib/rubygems/package.rb +101 -117
  359. data/lib/rubygems/package_task.rb +5 -11
  360. data/lib/rubygems/path_support.rb +2 -9
  361. data/lib/rubygems/platform.rb +101 -76
  362. data/lib/rubygems/psych_tree.rb +1 -3
  363. data/lib/rubygems/query_utils.rb +351 -0
  364. data/lib/rubygems/rdoc.rb +2 -14
  365. data/lib/rubygems/remote_fetcher.rb +48 -74
  366. data/lib/rubygems/request/connection_pools.rb +6 -10
  367. data/lib/rubygems/request/http_pool.rb +2 -4
  368. data/lib/rubygems/request/https_pool.rb +0 -2
  369. data/lib/rubygems/request.rb +26 -31
  370. data/lib/rubygems/request_set/gem_dependency_api.rb +23 -25
  371. data/lib/rubygems/request_set/lockfile/parser.rb +26 -28
  372. data/lib/rubygems/request_set/lockfile/tokenizer.rb +5 -7
  373. data/lib/rubygems/request_set/lockfile.rb +17 -21
  374. data/lib/rubygems/request_set.rb +27 -40
  375. data/lib/rubygems/requirement.rb +28 -48
  376. data/lib/rubygems/resolver/activation_request.rb +12 -6
  377. data/lib/rubygems/resolver/api_set/gem_parser.rb +20 -0
  378. data/lib/rubygems/resolver/api_set.rb +32 -25
  379. data/lib/rubygems/resolver/api_specification.rb +29 -15
  380. data/lib/rubygems/resolver/best_set.rb +7 -9
  381. data/lib/rubygems/resolver/composed_set.rb +3 -5
  382. data/lib/rubygems/resolver/conflict.rb +12 -14
  383. data/lib/rubygems/resolver/current_set.rb +0 -2
  384. data/lib/rubygems/resolver/dependency_request.rb +3 -5
  385. data/lib/rubygems/resolver/git_set.rb +2 -4
  386. data/lib/rubygems/resolver/git_specification.rb +6 -8
  387. data/lib/rubygems/resolver/index_set.rb +4 -6
  388. data/lib/rubygems/resolver/index_specification.rb +38 -7
  389. data/lib/rubygems/resolver/installed_specification.rb +4 -6
  390. data/lib/rubygems/resolver/installer_set.rb +66 -24
  391. data/lib/rubygems/resolver/local_specification.rb +2 -4
  392. data/lib/rubygems/resolver/lock_set.rb +6 -8
  393. data/lib/rubygems/resolver/lock_specification.rb +4 -6
  394. data/lib/rubygems/resolver/molinillo/LICENSE +9 -0
  395. data/lib/rubygems/resolver/molinillo/lib/molinillo/delegates/resolution_state.rb +7 -0
  396. data/lib/rubygems/resolver/molinillo/lib/molinillo/delegates/specification_provider.rb +8 -0
  397. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/action.rb +1 -0
  398. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb +2 -1
  399. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/add_vertex.rb +2 -1
  400. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/delete_edge.rb +2 -1
  401. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb +2 -1
  402. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/log.rb +7 -6
  403. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/set_payload.rb +2 -1
  404. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/tag.rb +4 -3
  405. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/vertex.rb +51 -12
  406. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph.rb +41 -8
  407. data/lib/rubygems/resolver/molinillo/lib/molinillo/errors.rb +76 -8
  408. data/lib/rubygems/resolver/molinillo/lib/molinillo/gem_metadata.rb +2 -1
  409. data/lib/rubygems/resolver/molinillo/lib/molinillo/modules/specification_provider.rb +13 -1
  410. data/lib/rubygems/resolver/molinillo/lib/molinillo/modules/ui.rb +3 -1
  411. data/lib/rubygems/resolver/molinillo/lib/molinillo/resolution.rb +510 -165
  412. data/lib/rubygems/resolver/molinillo/lib/molinillo/resolver.rb +3 -2
  413. data/lib/rubygems/resolver/molinillo/lib/molinillo/state.rb +8 -4
  414. data/lib/rubygems/resolver/molinillo/lib/molinillo.rb +6 -5
  415. data/lib/rubygems/resolver/molinillo.rb +1 -1
  416. data/lib/rubygems/resolver/requirement_list.rb +0 -2
  417. data/lib/rubygems/resolver/set.rb +0 -3
  418. data/lib/rubygems/resolver/source_set.rb +0 -2
  419. data/lib/rubygems/resolver/spec_specification.rb +14 -2
  420. data/lib/rubygems/resolver/specification.rb +14 -4
  421. data/lib/rubygems/resolver/stats.rb +0 -2
  422. data/lib/rubygems/resolver/vendor_set.rb +1 -3
  423. data/lib/rubygems/resolver/vendor_specification.rb +3 -5
  424. data/lib/rubygems/resolver.rb +53 -51
  425. data/lib/rubygems/s3_uri_signer.rb +7 -15
  426. data/lib/rubygems/safe_yaml.rb +14 -16
  427. data/lib/rubygems/security/policies.rb +11 -11
  428. data/lib/rubygems/security/policy.rb +25 -29
  429. data/lib/rubygems/security/signer.rb +13 -16
  430. data/lib/rubygems/security/trust_dir.rb +4 -5
  431. data/lib/rubygems/security.rb +103 -69
  432. data/lib/rubygems/security_option.rb +7 -7
  433. data/lib/rubygems/source/git.rb +30 -30
  434. data/lib/rubygems/source/installed.rb +1 -3
  435. data/lib/rubygems/source/local.rb +4 -6
  436. data/lib/rubygems/source/lock.rb +0 -2
  437. data/lib/rubygems/source/specific_file.rb +1 -3
  438. data/lib/rubygems/source/vendor.rb +0 -2
  439. data/lib/rubygems/source.rb +44 -38
  440. data/lib/rubygems/source_list.rb +9 -16
  441. data/lib/rubygems/spec_fetcher.rb +49 -48
  442. data/lib/rubygems/specification.rb +338 -295
  443. data/lib/rubygems/specification_policy.rb +112 -61
  444. data/lib/rubygems/stub_specification.rb +21 -28
  445. data/lib/rubygems/text.rb +21 -20
  446. data/lib/rubygems/tsort/.document +1 -0
  447. data/lib/rubygems/tsort/LICENSE.txt +22 -0
  448. data/lib/rubygems/tsort/lib/tsort.rb +454 -0
  449. data/lib/rubygems/tsort.rb +3 -0
  450. data/lib/rubygems/uninstaller.rb +98 -45
  451. data/lib/rubygems/unknown_command_spell_checker.rb +21 -0
  452. data/lib/rubygems/uri.rb +126 -0
  453. data/lib/rubygems/uri_formatter.rb +2 -3
  454. data/lib/rubygems/user_interaction.rb +43 -54
  455. data/lib/rubygems/util/licenses.rb +115 -10
  456. data/lib/rubygems/util/list.rb +0 -2
  457. data/lib/rubygems/util.rb +18 -12
  458. data/lib/rubygems/validator.rb +6 -8
  459. data/lib/rubygems/version.rb +29 -20
  460. data/lib/rubygems/version_option.rb +11 -5
  461. data/lib/rubygems.rb +192 -289
  462. data/rubygems-update.gemspec +4 -4
  463. data/setup.rb +11 -22
  464. data/test/rubygems/data/excon-0.7.7.gemspec.rz +0 -0
  465. data/test/rubygems/data/null-required-ruby-version.gemspec.rz +0 -0
  466. data/test/rubygems/data/null-required-rubygems-version.gemspec.rz +0 -0
  467. data/test/rubygems/data/pry-0.4.7.gemspec.rz +0 -0
  468. data/test/rubygems/encrypted_private_key.pem +26 -26
  469. data/{lib/rubygems/test_case.rb → test/rubygems/helper.rb} +380 -314
  470. data/{lib → test}/rubygems/installer_test_case.rb +38 -24
  471. data/{lib → test}/rubygems/package/tar_test_case.rb +4 -6
  472. data/test/rubygems/packages/ascii_binder-0.1.10.1.gem +0 -0
  473. data/test/rubygems/packages/ill-formatted-platform-1.0.0.10.gem +0 -0
  474. data/test/rubygems/plugin/exception/rubygems_plugin.rb +1 -1
  475. data/test/rubygems/plugin/load/rubygems_plugin.rb +0 -2
  476. data/test/rubygems/plugin/standarderror/rubygems_plugin.rb +1 -1
  477. data/test/rubygems/private_ec_key.pem +9 -0
  478. data/test/rubygems/rubygems/commands/crash_command.rb +0 -2
  479. data/test/rubygems/rubygems_plugin.rb +2 -4
  480. data/test/rubygems/specifications/bar-0.0.2.gemspec +0 -2
  481. data/test/rubygems/specifications/rubyforge-0.0.1.gemspec +4 -6
  482. data/test/rubygems/test_bundled_ca.rb +43 -50
  483. data/test/rubygems/test_config.rb +5 -7
  484. data/test/rubygems/test_deprecate.rb +87 -10
  485. data/test/rubygems/test_exit.rb +11 -0
  486. data/test/rubygems/test_gem.rb +719 -639
  487. data/test/rubygems/test_gem_available_set.rb +24 -26
  488. data/test/rubygems/test_gem_bundler_version_finder.rb +37 -44
  489. data/test/rubygems/test_gem_command.rb +78 -49
  490. data/test/rubygems/test_gem_command_manager.rb +98 -35
  491. data/test/rubygems/test_gem_commands_build_command.rb +275 -57
  492. data/test/rubygems/test_gem_commands_cert_command.rb +180 -125
  493. data/test/rubygems/test_gem_commands_check_command.rb +9 -11
  494. data/test/rubygems/test_gem_commands_cleanup_command.rb +78 -69
  495. data/test/rubygems/test_gem_commands_contents_command.rb +73 -42
  496. data/test/rubygems/test_gem_commands_dependency_command.rb +38 -40
  497. data/test/rubygems/test_gem_commands_environment_command.rb +60 -38
  498. data/test/rubygems/test_gem_commands_fetch_command.rb +163 -32
  499. data/test/rubygems/test_gem_commands_generate_index_command.rb +8 -14
  500. data/test/rubygems/test_gem_commands_help_command.rb +34 -16
  501. data/test/rubygems/test_gem_commands_info_command.rb +33 -9
  502. data/test/rubygems/test_gem_commands_install_command.rb +401 -198
  503. data/test/rubygems/test_gem_commands_list_command.rb +5 -7
  504. data/test/rubygems/test_gem_commands_lock_command.rb +11 -13
  505. data/test/rubygems/test_gem_commands_mirror.rb +3 -5
  506. data/test/rubygems/test_gem_commands_open_command.rb +16 -19
  507. data/test/rubygems/test_gem_commands_outdated_command.rb +23 -7
  508. data/test/rubygems/test_gem_commands_owner_command.rb +100 -46
  509. data/test/rubygems/test_gem_commands_pristine_command.rb +131 -99
  510. data/test/rubygems/test_gem_commands_push_command.rb +134 -66
  511. data/test/rubygems/test_gem_commands_query_command.rb +91 -91
  512. data/test/rubygems/test_gem_commands_search_command.rb +2 -4
  513. data/test/rubygems/test_gem_commands_server_command.rb +6 -50
  514. data/test/rubygems/test_gem_commands_setup_command.rb +288 -179
  515. data/test/rubygems/test_gem_commands_signin_command.rb +162 -28
  516. data/test/rubygems/test_gem_commands_signout_command.rb +3 -10
  517. data/test/rubygems/test_gem_commands_sources_command.rb +139 -32
  518. data/test/rubygems/test_gem_commands_specification_command.rb +81 -55
  519. data/test/rubygems/test_gem_commands_stale_command.rb +4 -6
  520. data/test/rubygems/test_gem_commands_uninstall_command.rb +80 -82
  521. data/test/rubygems/test_gem_commands_unpack_command.rb +32 -34
  522. data/test/rubygems/test_gem_commands_update_command.rb +335 -88
  523. data/test/rubygems/test_gem_commands_which_command.rb +12 -14
  524. data/test/rubygems/test_gem_commands_yank_command.rb +80 -44
  525. data/test/rubygems/test_gem_config_file.rb +114 -97
  526. data/test/rubygems/test_gem_dependency.rb +87 -87
  527. data/test/rubygems/test_gem_dependency_installer.rb +277 -391
  528. data/test/rubygems/test_gem_dependency_list.rb +57 -59
  529. data/test/rubygems/test_gem_dependency_resolution_error.rb +5 -7
  530. data/test/rubygems/test_gem_doctor.rb +73 -47
  531. data/test/rubygems/test_gem_ext_builder.rb +115 -109
  532. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/.gitignore +1 -0
  533. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/Cargo.lock +243 -0
  534. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/Cargo.toml +10 -0
  535. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/build.rb +21 -0
  536. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/custom_name.gemspec +10 -0
  537. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/src/lib.rs +27 -0
  538. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/.gitignore +1 -0
  539. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.lock +243 -0
  540. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.toml +10 -0
  541. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/build.rb +21 -0
  542. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/rust_ruby_example.gemspec +8 -0
  543. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/src/lib.rs +39 -0
  544. data/test/rubygems/test_gem_ext_cargo_builder.rb +178 -0
  545. data/test/rubygems/test_gem_ext_cargo_builder_link_flag_converter.rb +33 -0
  546. data/test/rubygems/test_gem_ext_cargo_builder_unit.rb +75 -0
  547. data/test/rubygems/test_gem_ext_cmake_builder.rb +31 -38
  548. data/test/rubygems/test_gem_ext_configure_builder.rb +23 -39
  549. data/test/rubygems/test_gem_ext_ext_conf_builder.rb +66 -82
  550. data/test/rubygems/test_gem_ext_rake_builder.rb +49 -32
  551. data/test/rubygems/test_gem_gem_runner.rb +51 -8
  552. data/test/rubygems/test_gem_gemcutter_utilities.rb +87 -76
  553. data/test/rubygems/test_gem_impossible_dependencies_error.rb +4 -6
  554. data/test/rubygems/test_gem_indexer.rb +62 -64
  555. data/test/rubygems/test_gem_install_update_options.rb +31 -21
  556. data/test/rubygems/test_gem_installer.rb +798 -491
  557. data/test/rubygems/test_gem_local_remote_options.rb +11 -13
  558. data/test/rubygems/test_gem_name_tuple.rb +4 -6
  559. data/test/rubygems/test_gem_package.rb +318 -283
  560. data/test/rubygems/test_gem_package_old.rb +18 -20
  561. data/test/rubygems/test_gem_package_tar_header.rb +64 -47
  562. data/test/rubygems/test_gem_package_tar_reader.rb +8 -10
  563. data/test/rubygems/test_gem_package_tar_reader_entry.rb +18 -20
  564. data/test/rubygems/test_gem_package_tar_writer.rb +96 -100
  565. data/test/rubygems/test_gem_package_task.rb +58 -25
  566. data/test/rubygems/test_gem_path_support.rb +15 -21
  567. data/test/rubygems/test_gem_platform.rb +354 -201
  568. data/test/rubygems/test_gem_rdoc.rb +19 -21
  569. data/test/rubygems/test_gem_remote_fetcher.rb +376 -337
  570. data/test/rubygems/test_gem_request.rb +114 -86
  571. data/test/rubygems/test_gem_request_connection_pools.rb +30 -34
  572. data/test/rubygems/test_gem_request_set.rb +123 -124
  573. data/test/rubygems/test_gem_request_set_gem_dependency_api.rb +222 -226
  574. data/test/rubygems/test_gem_request_set_lockfile.rb +93 -95
  575. data/test/rubygems/test_gem_request_set_lockfile_parser.rb +68 -70
  576. data/test/rubygems/test_gem_request_set_lockfile_tokenizer.rb +136 -138
  577. data/test/rubygems/test_gem_requirement.rb +133 -54
  578. data/test/rubygems/test_gem_resolver.rb +149 -117
  579. data/test/rubygems/test_gem_resolver_activation_request.rb +6 -8
  580. data/test/rubygems/test_gem_resolver_api_set.rb +79 -78
  581. data/test/rubygems/test_gem_resolver_api_specification.rb +47 -49
  582. data/test/rubygems/test_gem_resolver_best_set.rb +43 -22
  583. data/test/rubygems/test_gem_resolver_composed_set.rb +1 -3
  584. data/test/rubygems/test_gem_resolver_conflict.rb +12 -14
  585. data/test/rubygems/test_gem_resolver_dependency_request.rb +15 -17
  586. data/test/rubygems/test_gem_resolver_git_set.rb +22 -24
  587. data/test/rubygems/test_gem_resolver_git_specification.rb +22 -23
  588. data/test/rubygems/test_gem_resolver_index_set.rb +14 -16
  589. data/test/rubygems/test_gem_resolver_index_specification.rb +16 -18
  590. data/test/rubygems/test_gem_resolver_installed_specification.rb +5 -7
  591. data/test/rubygems/test_gem_resolver_installer_set.rb +104 -44
  592. data/test/rubygems/test_gem_resolver_local_specification.rb +7 -9
  593. data/test/rubygems/test_gem_resolver_lock_set.rb +15 -17
  594. data/test/rubygems/test_gem_resolver_lock_specification.rb +17 -19
  595. data/test/rubygems/test_gem_resolver_requirement_list.rb +1 -3
  596. data/test/rubygems/test_gem_resolver_specification.rb +8 -12
  597. data/test/rubygems/test_gem_resolver_vendor_set.rb +9 -11
  598. data/test/rubygems/test_gem_resolver_vendor_specification.rb +10 -12
  599. data/test/rubygems/test_gem_security.rb +104 -78
  600. data/test/rubygems/test_gem_security_policy.rb +92 -97
  601. data/test/rubygems/test_gem_security_signer.rb +45 -47
  602. data/test/rubygems/test_gem_security_trust_dir.rb +12 -14
  603. data/test/rubygems/test_gem_silent_ui.rb +46 -42
  604. data/test/rubygems/test_gem_source.rb +53 -52
  605. data/test/rubygems/test_gem_source_fetch_problem.rb +16 -8
  606. data/test/rubygems/test_gem_source_git.rb +69 -69
  607. data/test/rubygems/test_gem_source_installed.rb +16 -18
  608. data/test/rubygems/test_gem_source_list.rb +5 -6
  609. data/test/rubygems/test_gem_source_local.rb +15 -17
  610. data/test/rubygems/test_gem_source_lock.rb +31 -33
  611. data/test/rubygems/test_gem_source_specific_file.rb +18 -20
  612. data/test/rubygems/test_gem_source_subpath_problem.rb +49 -0
  613. data/test/rubygems/test_gem_source_vendor.rb +13 -15
  614. data/test/rubygems/test_gem_spec_fetcher.rb +74 -67
  615. data/test/rubygems/test_gem_specification.rb +888 -1024
  616. data/test/rubygems/test_gem_stream_ui.rb +23 -23
  617. data/test/rubygems/test_gem_stub_specification.rb +39 -57
  618. data/test/rubygems/test_gem_text.rb +8 -4
  619. data/test/rubygems/test_gem_uninstaller.rb +233 -104
  620. data/test/rubygems/test_gem_unsatisfiable_dependency_error.rb +3 -5
  621. data/test/rubygems/test_gem_uri.rb +39 -0
  622. data/test/rubygems/test_gem_uri_formatter.rb +14 -16
  623. data/test/rubygems/test_gem_util.rb +37 -35
  624. data/test/rubygems/test_gem_validator.rb +10 -12
  625. data/test/rubygems/test_gem_version.rb +31 -31
  626. data/test/rubygems/test_gem_version_option.rb +16 -18
  627. data/test/rubygems/test_kernel.rb +46 -60
  628. data/test/rubygems/test_project_sanity.rb +8 -3
  629. data/test/rubygems/test_remote_fetch_error.rb +7 -9
  630. data/test/rubygems/test_require.rb +240 -167
  631. data/test/rubygems/test_rubygems.rb +74 -0
  632. data/{lib/rubygems/test_utilities.rb → test/rubygems/utilities.rb} +30 -39
  633. data/test/test_changelog_generator.rb +17 -0
  634. metadata +158 -146
  635. data/.bundle/config +0 -2
  636. data/.rubocop.yml +0 -91
  637. data/Gemfile +0 -8
  638. data/Gemfile.lock +0 -43
  639. data/Rakefile +0 -428
  640. data/bundler/CODE_OF_CONDUCT.md +0 -136
  641. data/bundler/lib/bundler/gemdeps.rb +0 -29
  642. data/bundler/lib/bundler/psyched_yaml.rb +0 -37
  643. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/monotonic_time.rb +0 -66
  644. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/compatibility.rb +0 -26
  645. data/bundler/man/bundle-add.1.txt +0 -58
  646. data/bundler/man/bundle-binstubs.1.txt +0 -48
  647. data/bundler/man/bundle-cache.1.txt +0 -78
  648. data/bundler/man/bundle-check.1.txt +0 -33
  649. data/bundler/man/bundle-clean.1.txt +0 -26
  650. data/bundler/man/bundle-config.1.txt +0 -528
  651. data/bundler/man/bundle-doctor.1.txt +0 -44
  652. data/bundler/man/bundle-exec.1.txt +0 -178
  653. data/bundler/man/bundle-gem.1.txt +0 -91
  654. data/bundler/man/bundle-info.1.txt +0 -21
  655. data/bundler/man/bundle-init.1.txt +0 -34
  656. data/bundler/man/bundle-inject.1.txt +0 -32
  657. data/bundler/man/bundle-install.1.txt +0 -401
  658. data/bundler/man/bundle-list.1.txt +0 -43
  659. data/bundler/man/bundle-lock.1.txt +0 -93
  660. data/bundler/man/bundle-open.1.txt +0 -29
  661. data/bundler/man/bundle-outdated.1.txt +0 -131
  662. data/bundler/man/bundle-platform.1.txt +0 -57
  663. data/bundler/man/bundle-pristine.1.txt +0 -44
  664. data/bundler/man/bundle-remove.1.txt +0 -34
  665. data/bundler/man/bundle-show.1.txt +0 -27
  666. data/bundler/man/bundle-update.1.txt +0 -390
  667. data/bundler/man/bundle-viz.1.txt +0 -39
  668. data/bundler/man/bundle.1.txt +0 -116
  669. data/bundler/man/gemfile.5.txt +0 -649
  670. data/lib/rubygems/psych_additions.rb +0 -10
  671. data/lib/rubygems/server.rb +0 -879
  672. data/lib/rubygems/source_local.rb +0 -7
  673. data/lib/rubygems/source_specific_file.rb +0 -6
  674. data/lib/rubygems/syck_hack.rb +0 -79
  675. data/lib/rubygems/uri_parser.rb +0 -36
  676. data/lib/rubygems/uri_parsing.rb +0 -23
  677. data/lib/ubygems.rb +0 -14
  678. data/test/rubygems/bogussources.rb +0 -9
  679. data/test/rubygems/data/null-type.gemspec.rz +0 -0
  680. data/test/rubygems/test_gem_server.rb +0 -612
  681. data/tmp/.keep +0 -0
  682. data/util/CL2notes +0 -55
  683. data/util/bisect +0 -10
  684. data/util/ci.sh +0 -62
  685. data/util/cops/deprecations.rb +0 -52
  686. data/util/create_certs.rb +0 -171
  687. data/util/create_certs.sh +0 -27
  688. data/util/create_encrypted_key.rb +0 -16
  689. data/util/generate_spdx_license_list.rb +0 -63
  690. data/util/patch_with_prs.rb +0 -77
  691. data/util/rubocop +0 -8
  692. data/util/update_bundled_ca_certificates.rb +0 -137
  693. data/util/update_changelog.rb +0 -64
  694. /data/bundler/{man/bundle-check.ronn → lib/bundler/man/bundle-check.1.ronn} +0 -0
  695. /data/bundler/{man/bundle-clean.ronn → lib/bundler/man/bundle-clean.1.ronn} +0 -0
  696. /data/bundler/{man/bundle-doctor.ronn → lib/bundler/man/bundle-doctor.1.ronn} +0 -0
  697. /data/bundler/{man/bundle-info.ronn → lib/bundler/man/bundle-info.1.ronn} +0 -0
  698. /data/bundler/{man/bundle-init.ronn → lib/bundler/man/bundle-init.1.ronn} +0 -0
  699. /data/bundler/{man/bundle-lock.ronn → lib/bundler/man/bundle-lock.1.ronn} +0 -0
  700. /data/bundler/{man/bundle-open.ronn → lib/bundler/man/bundle-open.1.ronn} +0 -0
  701. /data/bundler/{man/bundle-pristine.ronn → lib/bundler/man/bundle-pristine.1.ronn} +0 -0
  702. /data/bundler/{man/bundle-remove.ronn → lib/bundler/man/bundle-remove.1.ronn} +0 -0
  703. /data/bundler/{man/bundle-show.ronn → lib/bundler/man/bundle-show.1.ronn} +0 -0
@@ -1,9 +1,8 @@
1
1
  # frozen_string_literal: true
2
- require 'rubygems/test_case'
3
- require 'rubygems/request_set'
2
+ require_relative "helper"
3
+ require "rubygems/request_set"
4
4
 
5
5
  class TestGemRequestSetGemDependencyAPI < Gem::TestCase
6
-
7
6
  def setup
8
7
  super
9
8
 
@@ -14,7 +13,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
14
13
  @git_set = Gem::Resolver::GitSet.new
15
14
  @vendor_set = Gem::Resolver::VendorSet.new
16
15
 
17
- @gda = @GDA.new @set, 'gem.deps.rb'
16
+ @gda = @GDA.new @set, "gem.deps.rb"
18
17
  @gda.instance_variable_set :@git_set, @git_set
19
18
  @gda.instance_variable_set :@vendor_set, @vendor_set
20
19
  end
@@ -45,45 +44,45 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
45
44
  end
46
45
 
47
46
  def test_gempspec_with_multiple_runtime_deps
48
- save_gemspec 'foo', '1.0' do |s|
49
- s.add_runtime_dependency 'bar', '>= 1.6.0', '< 1.6.4'
47
+ save_gemspec "foo", "1.0" do |s|
48
+ s.add_runtime_dependency "bar", ">= 1.6.0", "< 1.6.4"
50
49
  end
51
50
  @gda.gemspec
52
- assert_equal %w{ foo bar }.sort, @set.dependencies.map(&:name).sort
53
- bar = @set.dependencies.find { |d| d.name == 'bar' }
54
- assert_equal [["<", Gem::Version.create('1.6.4')],
55
- [">=", Gem::Version.create('1.6.0')]], bar.requirement.requirements.sort
51
+ assert_equal %w[ foo bar ].sort, @set.dependencies.map(&:name).sort
52
+ bar = @set.dependencies.find {|d| d.name == "bar" }
53
+ assert_equal [["<", Gem::Version.create("1.6.4")],
54
+ [">=", Gem::Version.create("1.6.0")]], bar.requirement.requirements.sort
56
55
  end
57
56
 
58
57
  def test_gemspec_without_group
59
- @gda.send :add_dependencies, [:development], [dep('a', '= 1')]
58
+ @gda.send :add_dependencies, [:development], [dep("a", "= 1")]
60
59
 
61
- assert_equal [dep('a', '= 1')], @set.dependencies
60
+ assert_equal [dep("a", "= 1")], @set.dependencies
62
61
 
63
62
  @gda.without_groups << :development
64
63
 
65
- @gda.send :add_dependencies, [:development], [dep('b', '= 2')]
64
+ @gda.send :add_dependencies, [:development], [dep("b", "= 2")]
66
65
 
67
- assert_equal [dep('a', '= 1')], @set.dependencies
66
+ assert_equal [dep("a", "= 1")], @set.dependencies
68
67
  end
69
68
 
70
69
  def test_gem
71
- @gda.gem 'a'
70
+ @gda.gem "a"
72
71
 
73
- assert_equal [dep('a')], @set.dependencies
72
+ assert_equal [dep("a")], @set.dependencies
74
73
 
75
- assert_equal %w[a], @gda.requires['a']
74
+ assert_equal %w[a], @gda.requires["a"]
76
75
 
77
- expected = { 'a' => Gem::Requirement.default }
76
+ expected = { "a" => Gem::Requirement.default }
78
77
 
79
78
  assert_equal expected, @gda.dependencies
80
79
  end
81
80
 
82
81
  def test_gem_duplicate
83
- @gda.gem 'a'
82
+ @gda.gem "a"
84
83
 
85
- _, err = capture_io do
86
- @gda.gem 'a'
84
+ _, err = capture_output do
85
+ @gda.gem "a"
87
86
  end
88
87
 
89
88
  expected = "Gem dependencies file gem.deps.rb requires a more than once."
@@ -92,141 +91,141 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
92
91
  end
93
92
 
94
93
  def test_gem_git
95
- @gda.gem 'a', :git => 'git/a'
94
+ @gda.gem "a", :git => "git/a"
96
95
 
97
- assert_equal [dep('a')], @set.dependencies
96
+ assert_equal [dep("a")], @set.dependencies
98
97
 
99
- assert_equal %w[git/a master], @git_set.repositories['a']
98
+ assert_equal %w[git/a master], @git_set.repositories["a"]
100
99
 
101
- expected = { 'a' => Gem::Requirement.create('!') }
100
+ expected = { "a" => Gem::Requirement.create("!") }
102
101
 
103
102
  assert_equal expected, @gda.dependencies
104
103
  end
105
104
 
106
105
  def test_gem_bitbucket
107
- @gda.gem 'a', :bitbucket => 'example/repository'
106
+ @gda.gem "a", :bitbucket => "example/repository"
108
107
 
109
- assert_equal [dep('a')], @set.dependencies
108
+ assert_equal [dep("a")], @set.dependencies
110
109
 
111
110
  assert_equal %w[https://example@bitbucket.org/example/repository.git master],
112
- @git_set.repositories['a']
111
+ @git_set.repositories["a"]
113
112
 
114
- expected = { 'a' => Gem::Requirement.create('!') }
113
+ expected = { "a" => Gem::Requirement.create("!") }
115
114
 
116
115
  assert_equal expected, @gda.dependencies
117
116
  end
118
117
 
119
118
  def test_gem_bitbucket_expand_path
120
- @gda.gem 'a', :bitbucket => 'example'
119
+ @gda.gem "a", :bitbucket => "example"
121
120
 
122
- assert_equal [dep('a')], @set.dependencies
121
+ assert_equal [dep("a")], @set.dependencies
123
122
 
124
123
  assert_equal %w[https://example@bitbucket.org/example/example.git master],
125
- @git_set.repositories['a']
124
+ @git_set.repositories["a"]
126
125
 
127
- expected = { 'a' => Gem::Requirement.create('!') }
126
+ expected = { "a" => Gem::Requirement.create("!") }
128
127
 
129
128
  assert_equal expected, @gda.dependencies
130
129
  end
131
130
 
132
131
  def test_gem_git_branch
133
- _, err = capture_io do
134
- @gda.gem 'a', :git => 'git/a', :branch => 'other', :tag => 'v1'
132
+ _, err = capture_output do
133
+ @gda.gem "a", :git => "git/a", :branch => "other", :tag => "v1"
135
134
  end
136
135
  expected = "Gem dependencies file gem.deps.rb includes git reference for both ref/branch and tag but only ref/branch is used."
137
136
  assert_match expected, err
138
137
 
139
- assert_equal [dep('a')], @set.dependencies
138
+ assert_equal [dep("a")], @set.dependencies
140
139
 
141
- assert_equal %w[git/a other], @git_set.repositories['a']
140
+ assert_equal %w[git/a other], @git_set.repositories["a"]
142
141
  end
143
142
 
144
143
  def test_gem_git_gist
145
- @gda.gem 'a', :gist => 'a'
144
+ @gda.gem "a", :gist => "a"
146
145
 
147
- assert_equal [dep('a')], @set.dependencies
146
+ assert_equal [dep("a")], @set.dependencies
148
147
 
149
148
  assert_equal %w[https://gist.github.com/a.git master],
150
- @git_set.repositories['a']
149
+ @git_set.repositories["a"]
151
150
  end
152
151
 
153
152
  def test_gem_git_ref
154
- _, err = capture_io do
155
- @gda.gem 'a', :git => 'git/a', :ref => 'abcd123', :branch => 'other'
153
+ _, err = capture_output do
154
+ @gda.gem "a", :git => "git/a", :ref => "abcd123", :branch => "other"
156
155
  end
157
156
  expected = "Gem dependencies file gem.deps.rb includes git reference for both ref and branch but only ref is used."
158
157
  assert_match expected, err
159
158
 
160
- assert_equal [dep('a')], @set.dependencies
159
+ assert_equal [dep("a")], @set.dependencies
161
160
 
162
- assert_equal %w[git/a abcd123], @git_set.repositories['a']
161
+ assert_equal %w[git/a abcd123], @git_set.repositories["a"]
163
162
  end
164
163
 
165
164
  def test_gem_git_submodules
166
- @gda.gem 'a', :git => 'git/a', :submodules => true
165
+ @gda.gem "a", :git => "git/a", :submodules => true
167
166
 
168
- assert_equal [dep('a')], @set.dependencies
167
+ assert_equal [dep("a")], @set.dependencies
169
168
 
170
- assert_equal %w[git/a master], @git_set.repositories['a']
169
+ assert_equal %w[git/a master], @git_set.repositories["a"]
171
170
  assert_equal %w[git/a], @git_set.need_submodules.keys
172
171
  end
173
172
 
174
173
  def test_gem_git_tag
175
- @gda.gem 'a', :git => 'git/a', :tag => 'v1'
174
+ @gda.gem "a", :git => "git/a", :tag => "v1"
176
175
 
177
- assert_equal [dep('a')], @set.dependencies
176
+ assert_equal [dep("a")], @set.dependencies
178
177
 
179
- assert_equal %w[git/a v1], @git_set.repositories['a']
178
+ assert_equal %w[git/a v1], @git_set.repositories["a"]
180
179
  end
181
180
 
182
181
  def test_gem_github
183
- @gda.gem 'a', :github => 'example/repository'
182
+ @gda.gem "a", :github => "example/repository"
184
183
 
185
- assert_equal [dep('a')], @set.dependencies
184
+ assert_equal [dep("a")], @set.dependencies
186
185
 
187
186
  assert_equal %w[git://github.com/example/repository.git master],
188
- @git_set.repositories['a']
187
+ @git_set.repositories["a"]
189
188
 
190
- expected = { 'a' => Gem::Requirement.create('!') }
189
+ expected = { "a" => Gem::Requirement.create("!") }
191
190
 
192
191
  assert_equal expected, @gda.dependencies
193
192
  end
194
193
 
195
194
  def test_gem_github_expand_path
196
- @gda.gem 'a', :github => 'example'
195
+ @gda.gem "a", :github => "example"
197
196
 
198
- assert_equal [dep('a')], @set.dependencies
197
+ assert_equal [dep("a")], @set.dependencies
199
198
 
200
199
  assert_equal %w[git://github.com/example/example.git master],
201
- @git_set.repositories['a']
200
+ @git_set.repositories["a"]
202
201
 
203
- expected = { 'a' => Gem::Requirement.create('!') }
202
+ expected = { "a" => Gem::Requirement.create("!") }
204
203
 
205
204
  assert_equal expected, @gda.dependencies
206
205
  end
207
206
 
208
207
  def test_gem_group
209
- @gda.gem 'a', :group => :test
208
+ @gda.gem "a", :group => :test
210
209
 
211
- assert_equal [dep('a')], @set.dependencies
210
+ assert_equal [dep("a")], @set.dependencies
212
211
  end
213
212
 
214
213
  def test_gem_group_without
215
214
  @gda.without_groups << :test
216
215
 
217
- @gda.gem 'a', :group => :test
216
+ @gda.gem "a", :group => :test
218
217
 
219
218
  assert_empty @set.dependencies
220
219
 
221
- expected = { 'a' => Gem::Requirement.default }
220
+ expected = { "a" => Gem::Requirement.default }
222
221
 
223
222
  assert_equal expected, @gda.dependencies
224
223
  end
225
224
 
226
225
  def test_gem_groups
227
- @gda.gem 'a', :groups => [:test, :development]
226
+ @gda.gem "a", :groups => [:test, :development]
228
227
 
229
- assert_equal [dep('a')], @set.dependencies
228
+ assert_equal [dep("a")], @set.dependencies
230
229
  end
231
230
 
232
231
  def test_gem_path
@@ -240,7 +239,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
240
239
 
241
240
  assert_equal "#{name}-#{version}", loaded.full_name
242
241
 
243
- expected = { name => Gem::Requirement.create('!') }
242
+ expected = { name => Gem::Requirement.create("!") }
244
243
 
245
244
  assert_equal expected, @gda.dependencies
246
245
  end
@@ -248,8 +247,8 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
248
247
  def test_gem_platforms
249
248
  win_platform, Gem.win_platform = Gem.win_platform?, false
250
249
 
251
- with_engine_version 'ruby', '2.0.0' do
252
- @gda.gem 'a', :platforms => :ruby
250
+ with_engine_version "ruby", "2.0.0" do
251
+ @gda.gem "a", :platforms => :ruby
253
252
 
254
253
  refute_empty @set.dependencies
255
254
  end
@@ -260,44 +259,44 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
260
259
  def test_gem_platforms_bundler_ruby
261
260
  win_platform, Gem.win_platform = Gem.win_platform?, false
262
261
 
263
- with_engine_version 'ruby', '2.0.0' do
262
+ with_engine_version "ruby", "2.0.0" do
264
263
  set = Gem::RequestSet.new
265
- gda = @GDA.new set, 'gem.deps.rb'
266
- gda.gem 'a', :platforms => :ruby
264
+ gda = @GDA.new set, "gem.deps.rb"
265
+ gda.gem "a", :platforms => :ruby
267
266
 
268
267
  refute_empty set.dependencies
269
268
  end
270
269
 
271
- with_engine_version 'rbx', '2.0.0' do
270
+ with_engine_version "rbx", "2.0.0" do
272
271
  set = Gem::RequestSet.new
273
- gda = @GDA.new set, 'gem.deps.rb'
274
- gda.gem 'a', :platforms => :ruby
272
+ gda = @GDA.new set, "gem.deps.rb"
273
+ gda.gem "a", :platforms => :ruby
275
274
 
276
275
  refute_empty set.dependencies
277
276
  end
278
277
 
279
- with_engine_version 'truffleruby', '2.0.0' do
278
+ with_engine_version "truffleruby", "2.0.0" do
280
279
  set = Gem::RequestSet.new
281
- gda = @GDA.new set, 'gem.deps.rb'
282
- gda.gem 'a', :platforms => :ruby
280
+ gda = @GDA.new set, "gem.deps.rb"
281
+ gda.gem "a", :platforms => :ruby
283
282
 
284
283
  refute_empty set.dependencies
285
284
  end
286
285
 
287
- with_engine_version 'jruby', '1.7.6' do
286
+ with_engine_version "jruby", "1.7.6" do
288
287
  set = Gem::RequestSet.new
289
- gda = @GDA.new set, 'gem.deps.rb'
290
- gda.gem 'a', :platforms => :ruby
288
+ gda = @GDA.new set, "gem.deps.rb"
289
+ gda.gem "a", :platforms => :ruby
291
290
 
292
291
  assert_empty set.dependencies
293
292
  end
294
293
 
295
294
  Gem.win_platform = true
296
295
 
297
- with_engine_version 'ruby', '2.0.0' do
296
+ with_engine_version "ruby", "2.0.0" do
298
297
  set = Gem::RequestSet.new
299
- gda = @GDA.new set, 'gem.deps.rb'
300
- gda.gem 'a', :platforms => :ruby
298
+ gda = @GDA.new set, "gem.deps.rb"
299
+ gda.gem "a", :platforms => :ruby
301
300
 
302
301
  assert_empty set.dependencies
303
302
  end
@@ -306,14 +305,14 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
306
305
  end
307
306
 
308
307
  def test_gem_platforms_engine
309
- with_engine_version 'jruby', '1.7.6' do
310
- @gda.gem 'a', :platforms => :mri
308
+ with_engine_version "jruby", "1.7.6" do
309
+ @gda.gem "a", :platforms => :mri
311
310
 
312
311
  assert_empty @set.dependencies
313
312
  end
314
313
 
315
- with_engine_version 'truffleruby', '1.2.3' do
316
- @gda.gem 'a', :platforms => :mri
314
+ with_engine_version "truffleruby", "1.2.3" do
315
+ @gda.gem "a", :platforms => :mri
317
316
 
318
317
  assert_empty @set.dependencies
319
318
  end
@@ -322,16 +321,16 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
322
321
  def test_gem_platforms_maglev
323
322
  win_platform, Gem.win_platform = Gem.win_platform?, false
324
323
 
325
- with_engine_version 'maglev', '1.0.0' do
324
+ with_engine_version "maglev", "1.0.0" do
326
325
  set = Gem::RequestSet.new
327
- gda = @GDA.new set, 'gem.deps.rb'
328
- gda.gem 'a', :platforms => :ruby
326
+ gda = @GDA.new set, "gem.deps.rb"
327
+ gda.gem "a", :platforms => :ruby
329
328
 
330
329
  refute_empty set.dependencies
331
330
 
332
331
  set = Gem::RequestSet.new
333
- gda = @GDA.new set, 'gem.deps.rb'
334
- gda.gem 'a', :platforms => :maglev
332
+ gda = @GDA.new set, "gem.deps.rb"
333
+ gda.gem "a", :platforms => :maglev
335
334
 
336
335
  refute_empty set.dependencies
337
336
  end
@@ -340,16 +339,16 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
340
339
  end
341
340
 
342
341
  def test_gem_platforms_truffleruby
343
- with_engine_version 'truffleruby', '1.0.0' do
342
+ with_engine_version "truffleruby", "1.0.0" do
344
343
  set = Gem::RequestSet.new
345
- gda = @GDA.new set, 'gem.deps.rb'
346
- gda.gem 'a', :platforms => :truffleruby
344
+ gda = @GDA.new set, "gem.deps.rb"
345
+ gda.gem "a", :platforms => :truffleruby
347
346
 
348
347
  refute_empty set.dependencies
349
348
 
350
349
  set = Gem::RequestSet.new
351
- gda = @GDA.new set, 'gem.deps.rb'
352
- gda.gem 'a', :platforms => :maglev
350
+ gda = @GDA.new set, "gem.deps.rb"
351
+ gda.gem "a", :platforms => :maglev
353
352
 
354
353
  assert_empty set.dependencies
355
354
  end
@@ -358,8 +357,8 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
358
357
  def test_gem_platforms_multiple
359
358
  win_platform, Gem.win_platform = Gem.win_platform?, false
360
359
 
361
- with_engine_version 'ruby', '2.0.0' do
362
- @gda.gem 'a', :platforms => [:mswin, :jruby]
360
+ with_engine_version "ruby", "2.0.0" do
361
+ @gda.gem "a", :platforms => [:mswin, :jruby]
363
362
 
364
363
  assert_empty @set.dependencies
365
364
  end
@@ -371,8 +370,8 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
371
370
  def test_gem_platforms_platform
372
371
  win_platform, Gem.win_platform = Gem.win_platform?, false
373
372
 
374
- with_engine_version 'ruby', '2.0.0' do
375
- @gda.gem 'a', :platforms => :jruby, :platform => :ruby
373
+ with_engine_version "ruby", "2.0.0" do
374
+ @gda.gem "a", :platforms => :jruby, :platform => :ruby
376
375
 
377
376
  refute_empty @set.dependencies
378
377
  end
@@ -381,35 +380,35 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
381
380
  end
382
381
 
383
382
  def test_gem_platforms_version
384
- with_engine_version 'ruby', '2.0.0' do
385
- @gda.gem 'a', :platforms => :ruby_18
383
+ with_engine_version "ruby", "2.0.0" do
384
+ @gda.gem "a", :platforms => :ruby_18
386
385
 
387
386
  assert_empty @set.dependencies
388
387
  end
389
388
  end
390
389
 
391
390
  def test_gem_platforms_unknown
392
- e = assert_raises ArgumentError do
393
- @gda.gem 'a', :platforms => :unknown
391
+ e = assert_raise ArgumentError do
392
+ @gda.gem "a", :platforms => :unknown
394
393
  end
395
394
 
396
- assert_equal 'unknown platform :unknown', e.message
395
+ assert_equal "unknown platform :unknown", e.message
397
396
  end
398
397
 
399
398
  def test_gem_requires
400
- @gda.gem 'a', :require => %w[b c]
401
- @gda.gem 'd', :require => 'e'
399
+ @gda.gem "a", :require => %w[b c]
400
+ @gda.gem "d", :require => "e"
402
401
 
403
- assert_equal [dep('a'), dep('d')], @set.dependencies
402
+ assert_equal [dep("a"), dep("d")], @set.dependencies
404
403
 
405
- assert_equal %w[b c], @gda.requires['a']
406
- assert_equal %w[e], @gda.requires['d']
404
+ assert_equal %w[b c], @gda.requires["a"]
405
+ assert_equal %w[e], @gda.requires["d"]
407
406
  end
408
407
 
409
408
  def test_gem_requires_false
410
- @gda.gem 'a', :require => false
409
+ @gda.gem "a", :require => false
411
410
 
412
- assert_equal [dep('a')], @set.dependencies
411
+ assert_equal [dep("a")], @set.dependencies
413
412
 
414
413
  assert_empty @gda.requires
415
414
  end
@@ -417,37 +416,37 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
417
416
  def test_gem_requires_without_group
418
417
  @gda.without_groups << :test
419
418
 
420
- @gda.gem 'a', :group => :test
419
+ @gda.gem "a", :group => :test
421
420
 
422
421
  assert_empty @set.dependencies
423
422
 
424
- assert_empty @gda.requires['a']
423
+ assert_empty @gda.requires["a"]
425
424
  end
426
425
 
427
426
  def test_gem_requirement
428
- @gda.gem 'a', '~> 1.0'
427
+ @gda.gem "a", "~> 1.0"
429
428
 
430
- assert_equal [dep('a', '~> 1.0')], @set.dependencies
429
+ assert_equal [dep("a", "~> 1.0")], @set.dependencies
431
430
 
432
- expected = { 'a' => Gem::Requirement.create(['~> 1.0']) }
431
+ expected = { "a" => Gem::Requirement.create(["~> 1.0"]) }
433
432
 
434
433
  assert_equal expected, @gda.dependencies
435
434
  end
436
435
 
437
436
  def test_gem_requirements
438
- @gda.gem 'b', '~> 1.0', '>= 1.0.2'
437
+ @gda.gem "b", "~> 1.0", ">= 1.0.2"
439
438
 
440
- assert_equal [dep('b', '~> 1.0', '>= 1.0.2')], @set.dependencies
439
+ assert_equal [dep("b", "~> 1.0", ">= 1.0.2")], @set.dependencies
441
440
 
442
- expected = { 'b' => Gem::Requirement.create(['~> 1.0', '>= 1.0.2']) }
441
+ expected = { "b" => Gem::Requirement.create(["~> 1.0", ">= 1.0.2"]) }
443
442
 
444
443
  assert_equal expected, @gda.dependencies
445
444
  end
446
445
 
447
446
  def test_gem_requirements_options
448
- @gda.gem 'c', :git => 'https://example/c.git'
447
+ @gda.gem "c", :git => "https://example/c.git"
449
448
 
450
- assert_equal [dep('c')], @set.dependencies
449
+ assert_equal [dep("c")], @set.dependencies
451
450
  end
452
451
 
453
452
  def test_gem_source_mismatch
@@ -456,7 +455,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
456
455
  gda = @GDA.new @set, nil
457
456
  gda.gem name
458
457
 
459
- e = assert_raises ArgumentError do
458
+ e = assert_raise ArgumentError do
460
459
  gda.gem name, :path => directory
461
460
  end
462
461
 
@@ -467,7 +466,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
467
466
  gda.instance_variable_set :@vendor_set, @vendor_set
468
467
  gda.gem name, :path => directory
469
468
 
470
- e = assert_raises ArgumentError do
469
+ e = assert_raise ArgumentError do
471
470
  gda.gem name
472
471
  end
473
472
 
@@ -476,82 +475,82 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
476
475
  end
477
476
 
478
477
  def test_gem_deps_file
479
- assert_equal 'gem.deps.rb', @gda.gem_deps_file
478
+ assert_equal "gem.deps.rb", @gda.gem_deps_file
480
479
 
481
- gda = @GDA.new @set, 'foo/Gemfile'
480
+ gda = @GDA.new @set, "foo/Gemfile"
482
481
 
483
- assert_equal 'Gemfile', gda.gem_deps_file
482
+ assert_equal "Gemfile", gda.gem_deps_file
484
483
  end
485
484
 
486
485
  def test_gem_group_method
487
486
  groups = []
488
487
 
489
488
  @gda.group :a do
490
- groups = @gda.send :gem_group, 'a', :group => :b, :groups => [:c, :d]
489
+ groups = @gda.send :gem_group, "a", :group => :b, :groups => [:c, :d]
491
490
  end
492
491
 
493
- assert_equal [:a, :b, :c, :d], groups.sort_by { |group| group.to_s }
492
+ assert_equal [:a, :b, :c, :d], groups.sort_by {|group| group.to_s }
494
493
  end
495
494
 
496
495
  def test_gemspec
497
- save_gemspec 'a', 1 do |s|
498
- s.add_dependency 'b', 2
499
- s.add_development_dependency 'c', 3
496
+ save_gemspec "a", 1 do |s|
497
+ s.add_dependency "b", 2
498
+ s.add_development_dependency "c", 3
500
499
  end
501
500
 
502
501
  @gda.gemspec
503
502
 
504
- assert_equal [dep('a', '= 1'), dep('b', '= 2'), dep('c', '=3')],
503
+ assert_equal [dep("a", "= 1"), dep("b", "= 2"), dep("c", "=3")],
505
504
  @set.dependencies
506
505
 
507
- assert_equal %w[a], @gda.requires['a']
506
+ assert_equal %w[a], @gda.requires["a"]
508
507
 
509
508
  expected = {
510
- 'a' => Gem::Requirement.create('!'),
511
- 'b' => req('= 2'),
512
- 'c' => req('= 3'),
509
+ "a" => Gem::Requirement.create("!"),
510
+ "b" => req("= 2"),
511
+ "c" => req("= 3"),
513
512
  }
514
513
 
515
514
  assert_equal expected, @gda.dependencies
516
515
  end
517
516
 
518
517
  def test_gemspec_bad
519
- FileUtils.touch 'a.gemspec'
518
+ FileUtils.touch "a.gemspec"
520
519
 
521
- e = assert_raises ArgumentError do
522
- capture_io do
520
+ e = assert_raise ArgumentError do
521
+ capture_output do
523
522
  @gda.gemspec
524
523
  end
525
524
  end
526
525
 
527
- assert_equal 'invalid gemspec ./a.gemspec', e.message
526
+ assert_equal "invalid gemspec ./a.gemspec", e.message
528
527
  end
529
528
 
530
529
  def test_gemspec_development_group
531
- save_gemspec 'a', 1 do |s|
532
- s.add_dependency 'b', 2
533
- s.add_development_dependency 'c', 3
530
+ save_gemspec "a", 1 do |s|
531
+ s.add_dependency "b", 2
532
+ s.add_development_dependency "c", 3
534
533
  end
535
534
 
536
535
  @gda.without_groups << :other
537
536
 
538
537
  @gda.gemspec :development_group => :other
539
538
 
540
- assert_equal [dep('a', '= 1'), dep('b', '= 2')], @set.dependencies
539
+ assert_equal [dep("a", "= 1"), dep("b", "= 2")], @set.dependencies
541
540
 
542
- assert_equal %w[a], @gda.requires['a']
541
+ assert_equal %w[a], @gda.requires["a"]
543
542
  end
544
543
 
545
544
  def test_gemspec_multiple
546
- save_gemspec 'a', 1 do |s|
547
- s.add_dependency 'b', 2
545
+ save_gemspec "a", 1 do |s|
546
+ s.add_dependency "b", 2
548
547
  end
549
548
 
550
- save_gemspec 'b', 2 do |s|
551
- s.add_dependency 'c', 3
549
+ save_gemspec "b", 2 do |s|
550
+ s.add_dependency "c", 3
552
551
  end
553
552
 
554
- e = assert_raises ArgumentError do
553
+ e = assert_raise ArgumentError do
555
554
  @gda.gemspec
556
555
  end
557
556
 
@@ -559,31 +558,31 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
559
558
  end
560
559
 
561
560
  def test_gemspec_name
562
- save_gemspec 'a', 1 do |s|
563
- s.add_dependency 'b', 2
561
+ save_gemspec "a", 1 do |s|
562
+ s.add_dependency "b", 2
564
563
  end
565
564
 
566
- save_gemspec 'b', 2 do |s|
567
- s.add_dependency 'c', 3
565
+ save_gemspec "b", 2 do |s|
566
+ s.add_dependency "c", 3
568
567
  end
569
568
 
570
- @gda.gemspec :name => 'b'
569
+ @gda.gemspec :name => "b"
571
570
 
572
- assert_equal [dep('b', '= 2'), dep('c', '= 3')], @set.dependencies
571
+ assert_equal [dep("b", "= 2"), dep("c", "= 3")], @set.dependencies
573
572
  end
574
573
 
575
574
  def test_gemspec_named
576
- save_gemspec 'a', 1 do |s|
577
- s.add_dependency 'b', 2
575
+ save_gemspec "a", 1 do |s|
576
+ s.add_dependency "b", 2
578
577
  end
579
578
 
580
579
  @gda.gemspec
581
580
 
582
- assert_equal [dep('a', '= 1'), dep('b', '= 2')], @set.dependencies
581
+ assert_equal [dep("a", "= 1"), dep("b", "= 2")], @set.dependencies
583
582
  end
584
583
 
585
584
  def test_gemspec_none
586
- e = assert_raises ArgumentError do
585
+ e = assert_raise ArgumentError do
587
586
  @gda.gemspec
588
587
  end
589
588
 
@@ -591,27 +590,27 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
591
590
  end
592
591
 
593
592
  def test_gemspec_path
594
- FileUtils.mkdir 'other'
593
+ FileUtils.mkdir "other"
595
594
 
596
- save_gemspec 'a', 1, 'other' do |s|
597
- s.add_dependency 'b', 2
595
+ save_gemspec "a", 1, "other" do |s|
596
+ s.add_dependency "b", 2
598
597
  end
599
598
 
600
- @gda.gemspec :path => 'other'
599
+ @gda.gemspec :path => "other"
601
600
 
602
- assert_equal [dep('a', '= 1'), dep('b', '= 2')], @set.dependencies
601
+ assert_equal [dep("a", "= 1"), dep("b", "= 2")], @set.dependencies
603
602
  end
604
603
 
605
604
  def test_git
606
- @gda.git 'git://example/repo.git' do
607
- @gda.gem 'a'
608
- @gda.gem 'b'
605
+ @gda.git "git://example/repo.git" do
606
+ @gda.gem "a"
607
+ @gda.gem "b"
609
608
  end
610
609
 
611
- assert_equal [dep('a'), dep('b')], @set.dependencies
610
+ assert_equal [dep("a"), dep("b")], @set.dependencies
612
611
 
613
- assert_equal %w[git://example/repo.git master], @git_set.repositories['a']
614
- assert_equal %w[git://example/repo.git master], @git_set.repositories['b']
612
+ assert_equal %w[git://example/repo.git master], @git_set.repositories["a"]
613
+ assert_equal %w[git://example/repo.git master], @git_set.repositories["b"]
615
614
  end
616
615
 
617
616
  def test_git_source
@@ -619,21 +618,21 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
619
618
  "git://example/#{repo_name}.git"
620
619
  end
621
620
 
622
- @gda.gem 'a', :example => 'repo'
621
+ @gda.gem "a", :example => "repo"
623
622
 
624
- assert_equal %w[git://example/repo.git master], @git_set.repositories['a']
623
+ assert_equal %w[git://example/repo.git master], @git_set.repositories["a"]
625
624
  end
626
625
 
627
626
  def test_group
628
627
  @gda.group :test do
629
- @gda.gem 'a'
628
+ @gda.gem "a"
630
629
  end
631
630
 
632
- assert_equal [dep('a')], @set.dependencies
631
+ assert_equal [dep("a")], @set.dependencies
633
632
  end
634
633
 
635
634
  def test_load
636
- tf = Tempfile.open 'gem.deps.rb' do |io|
635
+ tf = Tempfile.open "gem.deps.rb" do |io|
637
636
  io.write <<-GEM_DEPS
638
637
  gem 'a'
639
638
 
@@ -647,7 +646,7 @@ end
647
646
 
648
647
  assert_equal gda, gda.load
649
648
 
650
- assert_equal [dep('a'), dep('b')], @set.dependencies
649
+ assert_equal [dep("a"), dep("b")], @set.dependencies
651
650
  io
652
651
  end
653
652
  tf.close!
@@ -656,18 +655,18 @@ end
656
655
  def test_pin_gem_source
657
656
  gda = @GDA.new @set, nil
658
657
 
659
- gda.send :pin_gem_source, 'a'
660
- gda.send :pin_gem_source, 'a'
658
+ gda.send :pin_gem_source, "a"
659
+ gda.send :pin_gem_source, "a"
661
660
 
662
- e = assert_raises ArgumentError do
663
- gda.send :pin_gem_source, 'a', :path, 'vendor/a'
661
+ e = assert_raise ArgumentError do
662
+ gda.send :pin_gem_source, "a", :path, "vendor/a"
664
663
  end
665
664
 
666
665
  assert_equal "duplicate source path: vendor/a for gem a",
667
666
  e.message
668
667
 
669
- e = assert_raises ArgumentError do
670
- gda.send :pin_gem_source, 'a', :git, 'git://example/repo.git'
668
+ e = assert_raise ArgumentError do
669
+ gda.send :pin_gem_source, "a", :git, "git://example/repo.git"
671
670
  end
672
671
 
673
672
  assert_equal "duplicate source git: git://example/repo.git for gem a",
@@ -676,18 +675,18 @@ end
676
675
 
677
676
  def test_platform_mswin
678
677
  if win_platform?
679
- util_set_arch 'x86-mswin32-60' do
678
+ util_set_arch "x86-mswin32-60" do
680
679
  @gda.platform :mswin do
681
- @gda.gem 'a'
680
+ @gda.gem "a"
682
681
  end
683
682
 
684
- assert_equal [dep('a')], @set.dependencies
683
+ assert_equal [dep("a")], @set.dependencies
685
684
  refute_empty @set.dependencies
686
685
  end
687
686
  else
688
- util_set_arch 'i686-darwin8.10.1' do
687
+ util_set_arch "i686-darwin8.10.1" do
689
688
  @gda.platform :mswin do
690
- @gda.gem 'a'
689
+ @gda.gem "a"
691
690
  end
692
691
 
693
692
  assert_empty @set.dependencies
@@ -700,9 +699,9 @@ end
700
699
 
701
700
  gda = @GDA.new @set, nil
702
701
 
703
- with_engine_version 'ruby', '1.8.7' do
702
+ with_engine_version "ruby", "1.8.7" do
704
703
  gda.platform :mri_19, :mri_20 do
705
- gda.gem 'a'
704
+ gda.gem "a"
706
705
  end
707
706
  end
708
707
 
@@ -710,9 +709,9 @@ end
710
709
 
711
710
  gda = @GDA.new @set, nil
712
711
 
713
- with_engine_version 'ruby', '2.0.0' do
712
+ with_engine_version "ruby", "2.0.0" do
714
713
  gda.platform :mri_19, :mri_20 do
715
- gda.gem 'a'
714
+ gda.gem "a"
716
715
  end
717
716
  end
718
717
 
@@ -725,28 +724,28 @@ end
725
724
  win_platform, Gem.win_platform = Gem.win_platform?, false
726
725
 
727
726
  @gda.platform :ruby do
728
- @gda.gem 'a'
727
+ @gda.gem "a"
729
728
  end
730
729
 
731
- assert_equal [dep('a')], @set.dependencies
730
+ assert_equal [dep("a")], @set.dependencies
732
731
  ensure
733
732
  Gem.win_platform = win_platform
734
733
  end
735
734
 
736
735
  def test_platforms
737
736
  unless win_platform?
738
- util_set_arch 'i686-darwin8.10.1' do
737
+ util_set_arch "i686-darwin8.10.1" do
739
738
  @gda.platforms :ruby do
740
- @gda.gem 'a'
739
+ @gda.gem "a"
741
740
  end
742
741
 
743
- assert_equal [dep('a')], @set.dependencies
742
+ assert_equal [dep("a")], @set.dependencies
744
743
 
745
744
  @gda.platforms :mswin do
746
- @gda.gem 'b'
745
+ @gda.gem "b"
747
746
  end
748
747
 
749
- assert_equal [dep('a')], @set.dependencies
748
+ assert_equal [dep("a")], @set.dependencies
750
749
  end
751
750
  end
752
751
  end
@@ -756,53 +755,51 @@ end
756
755
  end
757
756
 
758
757
  def test_ruby_engine
759
- with_engine_version 'jruby', '1.7.6' do
758
+ with_engine_version "jruby", "1.7.6" do
760
759
  assert @gda.ruby RUBY_VERSION,
761
- :engine => 'jruby', :engine_version => '1.7.6'
762
-
760
+ :engine => "jruby", :engine_version => "1.7.6"
763
761
  end
764
762
 
765
- with_engine_version 'truffleruby', '1.0.0-rc11' do
763
+ with_engine_version "truffleruby", "1.0.0-rc11" do
766
764
  assert @gda.ruby RUBY_VERSION,
767
- :engine => 'truffleruby', :engine_version => '1.0.0-rc11'
768
-
765
+ :engine => "truffleruby", :engine_version => "1.0.0-rc11"
769
766
  end
770
767
  end
771
768
 
772
769
  def test_ruby_engine_mismatch_engine
773
- with_engine_version 'ruby', '2.0.0' do
774
- e = assert_raises Gem::RubyVersionMismatch do
775
- @gda.ruby RUBY_VERSION, :engine => 'jruby', :engine_version => '1.7.4'
770
+ with_engine_version "ruby", "2.0.0" do
771
+ e = assert_raise Gem::RubyVersionMismatch do
772
+ @gda.ruby RUBY_VERSION, :engine => "jruby", :engine_version => "1.7.4"
776
773
  end
777
774
 
778
- assert_equal 'Your Ruby engine is ruby, but your gem.deps.rb requires jruby',
775
+ assert_equal "Your Ruby engine is ruby, but your gem.deps.rb requires jruby",
779
776
  e.message
780
777
  end
781
778
  end
782
779
 
783
780
  def test_ruby_engine_mismatch_version
784
- with_engine_version 'jruby', '1.7.6' do
785
- e = assert_raises Gem::RubyVersionMismatch do
786
- @gda.ruby RUBY_VERSION, :engine => 'jruby', :engine_version => '1.7.4'
781
+ with_engine_version "jruby", "1.7.6" do
782
+ e = assert_raise Gem::RubyVersionMismatch do
783
+ @gda.ruby RUBY_VERSION, :engine => "jruby", :engine_version => "1.7.4"
787
784
  end
788
785
 
789
- assert_equal 'Your Ruby engine version is jruby 1.7.6, but your gem.deps.rb requires jruby 1.7.4',
786
+ assert_equal "Your Ruby engine version is jruby 1.7.6, but your gem.deps.rb requires jruby 1.7.4",
790
787
  e.message
791
788
  end
792
789
  end
793
790
 
794
791
  def test_ruby_engine_no_engine_version
795
- e = assert_raises ArgumentError do
796
- @gda.ruby RUBY_VERSION, :engine => 'jruby'
792
+ e = assert_raise ArgumentError do
793
+ @gda.ruby RUBY_VERSION, :engine => "jruby"
797
794
  end
798
795
 
799
- assert_equal 'You must specify engine_version along with the Ruby engine',
796
+ assert_equal "You must specify engine_version along with the Ruby engine",
800
797
  e.message
801
798
  end
802
799
 
803
800
  def test_ruby_mismatch
804
- e = assert_raises Gem::RubyVersionMismatch do
805
- @gda.ruby '1.8.0'
801
+ e = assert_raise Gem::RubyVersionMismatch do
802
+ @gda.ruby "1.8.0"
806
803
  end
807
804
 
808
805
  assert_equal "Your Ruby version is #{RUBY_VERSION}, but your gem.deps.rb requires 1.8.0", e.message
@@ -811,19 +808,19 @@ end
811
808
  def test_ruby_mismatch_installing
812
809
  @gda.installing = true
813
810
 
814
- assert @gda.ruby '1.8.0'
811
+ assert @gda.ruby "1.8.0"
815
812
  end
816
813
 
817
814
  def test_source
818
815
  sources = Gem.sources
819
816
 
820
- @gda.source 'http://first.example'
817
+ @gda.source "http://first.example"
821
818
 
822
819
  assert_equal %w[http://first.example], Gem.sources
823
820
 
824
821
  assert_same sources, Gem.sources
825
822
 
826
- @gda.source 'http://second.example'
823
+ @gda.source "http://second.example"
827
824
 
828
825
  assert_equal %w[http://first.example http://second.example], Gem.sources
829
826
  end
@@ -833,9 +830,9 @@ end
833
830
  engine = Gem.ruby_engine
834
831
  engine_version = RUBY_ENGINE_VERSION
835
832
 
836
- with_engine_version 'other', '1.2.3' do
837
- assert_equal 'other', Gem.ruby_engine
838
- assert_equal '1.2.3', RUBY_ENGINE_VERSION
833
+ with_engine_version "other", "1.2.3" do
834
+ assert_equal "other", Gem.ruby_engine
835
+ assert_equal "1.2.3", RUBY_ENGINE_VERSION
839
836
 
840
837
  assert_equal version, RUBY_VERSION
841
838
  end
@@ -845,5 +842,4 @@ end
845
842
 
846
843
  assert_equal engine_version, RUBY_ENGINE_VERSION if engine
847
844
  end
848
-
849
845
  end unless Gem.java_platform?