rubygems-update 3.0.3 → 3.4.7

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