rubygems-update 3.3.18 → 3.4.19

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 (615) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +1429 -1064
  3. data/CONTRIBUTING.md +31 -8
  4. data/Manifest.txt +61 -36
  5. data/POLICIES.md +55 -20
  6. data/README.md +19 -6
  7. data/bundler/CHANGELOG.md +457 -1
  8. data/bundler/README.md +3 -6
  9. data/bundler/UPGRADING.md +11 -4
  10. data/bundler/bundler.gemspec +8 -10
  11. data/bundler/exe/bundle +5 -16
  12. data/bundler/lib/bundler/build_metadata.rb +2 -2
  13. data/bundler/lib/bundler/cli/add.rb +1 -1
  14. data/bundler/lib/bundler/cli/binstubs.rb +6 -2
  15. data/bundler/lib/bundler/cli/check.rb +1 -1
  16. data/bundler/lib/bundler/cli/common.rb +2 -0
  17. data/bundler/lib/bundler/cli/console.rb +2 -2
  18. data/bundler/lib/bundler/cli/doctor.rb +4 -6
  19. data/bundler/lib/bundler/cli/gem.rb +62 -40
  20. data/bundler/lib/bundler/cli/info.rb +1 -1
  21. data/bundler/lib/bundler/cli/init.rb +6 -2
  22. data/bundler/lib/bundler/cli/install.rb +8 -6
  23. data/bundler/lib/bundler/cli/lock.rb +8 -5
  24. data/bundler/lib/bundler/cli/open.rb +6 -4
  25. data/bundler/lib/bundler/cli/outdated.rb +14 -7
  26. data/bundler/lib/bundler/cli/platform.rb +7 -5
  27. data/bundler/lib/bundler/cli/viz.rb +1 -1
  28. data/bundler/lib/bundler/cli.rb +53 -7
  29. data/bundler/lib/bundler/compact_index_client/cache.rb +1 -1
  30. data/bundler/lib/bundler/compact_index_client/updater.rb +40 -39
  31. data/bundler/lib/bundler/constants.rb +1 -1
  32. data/bundler/lib/bundler/current_ruby.rb +16 -5
  33. data/bundler/lib/bundler/definition.rb +262 -133
  34. data/bundler/lib/bundler/dependency.rb +20 -86
  35. data/bundler/lib/bundler/digest.rb +1 -1
  36. data/bundler/lib/bundler/dsl.rb +6 -7
  37. data/bundler/lib/bundler/endpoint_specification.rb +2 -13
  38. data/bundler/lib/bundler/env.rb +2 -2
  39. data/bundler/lib/bundler/environment_preserver.rb +3 -2
  40. data/bundler/lib/bundler/errors.rb +1 -11
  41. data/bundler/lib/bundler/feature_flag.rb +0 -2
  42. data/bundler/lib/bundler/fetcher/compact_index.rb +11 -13
  43. data/bundler/lib/bundler/fetcher/dependency.rb +2 -6
  44. data/bundler/lib/bundler/fetcher/downloader.rb +4 -5
  45. data/bundler/lib/bundler/fetcher/index.rb +1 -2
  46. data/bundler/lib/bundler/fetcher.rb +21 -15
  47. data/bundler/lib/bundler/force_platform.rb +18 -0
  48. data/bundler/lib/bundler/friendly_errors.rb +1 -4
  49. data/bundler/lib/bundler/gem_helper.rb +3 -4
  50. data/bundler/lib/bundler/gem_helpers.rb +7 -2
  51. data/bundler/lib/bundler/gem_version_promoter.rb +53 -98
  52. data/bundler/lib/bundler/graph.rb +3 -3
  53. data/bundler/lib/bundler/index.rb +13 -47
  54. data/bundler/lib/bundler/injector.rb +5 -4
  55. data/bundler/lib/bundler/inline.rb +9 -11
  56. data/bundler/lib/bundler/installer/parallel_installer.rb +4 -34
  57. data/bundler/lib/bundler/installer/standalone.rb +13 -9
  58. data/bundler/lib/bundler/installer.rb +17 -29
  59. data/bundler/lib/bundler/lazy_specification.rb +54 -53
  60. data/bundler/lib/bundler/lockfile_generator.rb +3 -3
  61. data/bundler/lib/bundler/lockfile_parser.rb +17 -16
  62. data/bundler/lib/bundler/man/bundle-add.1 +6 -2
  63. data/bundler/lib/bundler/man/bundle-add.1.ronn +4 -1
  64. data/bundler/lib/bundler/man/bundle-binstubs.1 +1 -1
  65. data/bundler/lib/bundler/man/bundle-cache.1 +9 -3
  66. data/bundler/lib/bundler/man/bundle-cache.1.ronn +9 -2
  67. data/bundler/lib/bundler/man/bundle-check.1 +1 -1
  68. data/bundler/lib/bundler/man/bundle-clean.1 +2 -2
  69. data/bundler/lib/bundler/man/bundle-clean.1.ronn +1 -1
  70. data/bundler/lib/bundler/man/bundle-config.1 +26 -10
  71. data/bundler/lib/bundler/man/bundle-config.1.ronn +17 -10
  72. data/bundler/lib/bundler/man/bundle-console.1 +53 -0
  73. data/bundler/lib/bundler/man/bundle-console.1.ronn +44 -0
  74. data/bundler/lib/bundler/man/bundle-doctor.1 +1 -1
  75. data/bundler/lib/bundler/man/bundle-exec.1 +6 -6
  76. data/bundler/lib/bundler/man/bundle-exec.1.ronn +6 -6
  77. data/bundler/lib/bundler/man/bundle-gem.1 +27 -37
  78. data/bundler/lib/bundler/man/bundle-gem.1.ronn +5 -5
  79. data/bundler/lib/bundler/man/bundle-help.1 +13 -0
  80. data/bundler/lib/bundler/man/bundle-help.1.ronn +12 -0
  81. data/bundler/lib/bundler/man/bundle-info.1 +3 -3
  82. data/bundler/lib/bundler/man/bundle-info.1.ronn +3 -3
  83. data/bundler/lib/bundler/man/bundle-init.1 +5 -1
  84. data/bundler/lib/bundler/man/bundle-init.1.ronn +2 -0
  85. data/bundler/lib/bundler/man/bundle-inject.1 +5 -2
  86. data/bundler/lib/bundler/man/bundle-inject.1.ronn +3 -1
  87. data/bundler/lib/bundler/man/bundle-install.1 +5 -30
  88. data/bundler/lib/bundler/man/bundle-install.1.ronn +6 -29
  89. data/bundler/lib/bundler/man/bundle-list.1 +1 -1
  90. data/bundler/lib/bundler/man/bundle-lock.1 +1 -1
  91. data/bundler/lib/bundler/man/bundle-open.1 +22 -2
  92. data/bundler/lib/bundler/man/bundle-open.1.ronn +9 -1
  93. data/bundler/lib/bundler/man/bundle-outdated.1 +13 -9
  94. data/bundler/lib/bundler/man/bundle-outdated.1.ronn +12 -9
  95. data/bundler/lib/bundler/man/bundle-platform.1 +16 -6
  96. data/bundler/lib/bundler/man/bundle-platform.1.ronn +14 -7
  97. data/bundler/lib/bundler/man/bundle-plugin.1 +81 -0
  98. data/bundler/lib/bundler/man/bundle-plugin.1.ronn +59 -0
  99. data/bundler/lib/bundler/man/bundle-pristine.1 +1 -1
  100. data/bundler/lib/bundler/man/bundle-remove.1 +1 -1
  101. data/bundler/lib/bundler/man/bundle-show.1 +1 -1
  102. data/bundler/lib/bundler/man/bundle-update.1 +1 -1
  103. data/bundler/lib/bundler/man/bundle-version.1 +35 -0
  104. data/bundler/lib/bundler/man/bundle-version.1.ronn +24 -0
  105. data/bundler/lib/bundler/man/bundle-viz.1 +4 -1
  106. data/bundler/lib/bundler/man/bundle-viz.1.ronn +2 -0
  107. data/bundler/lib/bundler/man/bundle.1 +15 -10
  108. data/bundler/lib/bundler/man/bundle.1.ronn +12 -7
  109. data/bundler/lib/bundler/man/gemfile.5 +55 -55
  110. data/bundler/lib/bundler/man/gemfile.5.ronn +57 -53
  111. data/bundler/lib/bundler/man/index.txt +4 -0
  112. data/bundler/lib/bundler/match_metadata.rb +13 -0
  113. data/bundler/lib/bundler/match_remote_metadata.rb +29 -0
  114. data/bundler/lib/bundler/mirror.rb +5 -7
  115. data/bundler/lib/bundler/plugin/index.rb +5 -5
  116. data/bundler/lib/bundler/plugin/installer/rubygems.rb +0 -4
  117. data/bundler/lib/bundler/plugin/installer.rb +5 -2
  118. data/bundler/lib/bundler/plugin.rb +3 -1
  119. data/bundler/lib/bundler/remote_specification.rb +7 -12
  120. data/bundler/lib/bundler/resolver/base.rb +107 -0
  121. data/bundler/lib/bundler/resolver/candidate.rb +94 -0
  122. data/bundler/lib/bundler/resolver/incompatibility.rb +15 -0
  123. data/bundler/lib/bundler/resolver/package.rb +72 -0
  124. data/bundler/lib/bundler/resolver/root.rb +25 -0
  125. data/bundler/lib/bundler/resolver/spec_group.rb +42 -71
  126. data/bundler/lib/bundler/resolver.rb +335 -328
  127. data/bundler/lib/bundler/ruby_dsl.rb +7 -1
  128. data/bundler/lib/bundler/ruby_version.rb +8 -8
  129. data/bundler/lib/bundler/rubygems_ext.rb +100 -9
  130. data/bundler/lib/bundler/rubygems_gem_installer.rb +23 -14
  131. data/bundler/lib/bundler/rubygems_integration.rb +11 -15
  132. data/bundler/lib/bundler/runtime.rb +2 -6
  133. data/bundler/lib/bundler/safe_marshal.rb +31 -0
  134. data/bundler/lib/bundler/settings.rb +5 -11
  135. data/bundler/lib/bundler/setup.rb +4 -1
  136. data/bundler/lib/bundler/shared_helpers.rb +3 -3
  137. data/bundler/lib/bundler/source/git/git_proxy.rb +237 -74
  138. data/bundler/lib/bundler/source/git.rb +55 -30
  139. data/bundler/lib/bundler/source/metadata.rb +1 -2
  140. data/bundler/lib/bundler/source/path/installer.rb +1 -22
  141. data/bundler/lib/bundler/source/path.rb +6 -6
  142. data/bundler/lib/bundler/source/rubygems.rb +26 -81
  143. data/bundler/lib/bundler/source.rb +1 -1
  144. data/bundler/lib/bundler/source_list.rb +8 -2
  145. data/bundler/lib/bundler/spec_set.rb +60 -37
  146. data/bundler/lib/bundler/templates/Executable +1 -1
  147. data/bundler/lib/bundler/templates/Executable.bundler +5 -10
  148. data/bundler/lib/bundler/templates/Executable.standalone +2 -0
  149. data/bundler/lib/bundler/templates/newgem/Cargo.toml.tt +7 -0
  150. data/bundler/lib/bundler/templates/newgem/Gemfile.tt +3 -0
  151. data/bundler/lib/bundler/templates/newgem/README.md.tt +6 -4
  152. data/bundler/lib/bundler/templates/newgem/Rakefile.tt +12 -1
  153. data/bundler/lib/bundler/templates/newgem/bin/console.tt +0 -4
  154. data/bundler/lib/bundler/templates/newgem/circleci/config.yml.tt +12 -0
  155. data/bundler/lib/bundler/templates/newgem/ext/newgem/Cargo.toml.tt +15 -0
  156. data/bundler/lib/bundler/templates/newgem/ext/newgem/extconf-c.rb.tt +10 -0
  157. data/bundler/lib/bundler/templates/newgem/ext/newgem/extconf-rust.rb.tt +6 -0
  158. data/bundler/lib/bundler/templates/newgem/ext/newgem/newgem.c.tt +1 -1
  159. data/bundler/lib/bundler/templates/newgem/ext/newgem/src/lib.rs.tt +12 -0
  160. data/bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt +10 -0
  161. data/bundler/lib/bundler/templates/newgem/gitignore.tt +3 -0
  162. data/bundler/lib/bundler/templates/newgem/gitlab-ci.yml.tt +13 -4
  163. data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +9 -2
  164. data/bundler/lib/bundler/ui/rg_proxy.rb +1 -1
  165. data/bundler/lib/bundler/ui/shell.rb +35 -12
  166. data/bundler/lib/bundler/ui/silent.rb +21 -5
  167. data/bundler/lib/bundler/uri_normalizer.rb +23 -0
  168. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb +3 -3
  169. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/wrapper.rb +0 -1
  170. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool.rb +3 -1
  171. data/bundler/lib/bundler/vendor/fileutils/lib/fileutils.rb +1351 -409
  172. data/bundler/lib/bundler/vendor/net-http-persistent/README.rdoc +1 -1
  173. data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +1 -1
  174. data/bundler/lib/bundler/vendor/pub_grub/LICENSE.txt +21 -0
  175. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/assignment.rb +20 -0
  176. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/basic_package_source.rb +189 -0
  177. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/failure_writer.rb +182 -0
  178. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/incompatibility.rb +150 -0
  179. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/package.rb +43 -0
  180. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/partial_solution.rb +121 -0
  181. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/rubygems.rb +45 -0
  182. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/solve_failure.rb +19 -0
  183. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/static_package_source.rb +60 -0
  184. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/term.rb +105 -0
  185. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version.rb +3 -0
  186. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_constraint.rb +129 -0
  187. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_range.rb +411 -0
  188. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_solver.rb +248 -0
  189. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_union.rb +178 -0
  190. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub.rb +31 -0
  191. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +1 -1
  192. data/bundler/lib/bundler/vendor/uri/lib/uri/common.rb +64 -16
  193. data/bundler/lib/bundler/vendor/uri/lib/uri/file.rb +7 -1
  194. data/bundler/lib/bundler/vendor/uri/lib/uri/ftp.rb +2 -1
  195. data/bundler/lib/bundler/vendor/uri/lib/uri/generic.rb +27 -7
  196. data/bundler/lib/bundler/vendor/uri/lib/uri/http.rb +40 -2
  197. data/bundler/lib/bundler/vendor/uri/lib/uri/https.rb +2 -1
  198. data/bundler/lib/bundler/vendor/uri/lib/uri/ldap.rb +1 -1
  199. data/bundler/lib/bundler/vendor/uri/lib/uri/ldaps.rb +2 -1
  200. data/bundler/lib/bundler/vendor/uri/lib/uri/mailto.rb +2 -2
  201. data/bundler/lib/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +15 -9
  202. data/bundler/lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +11 -6
  203. data/bundler/lib/bundler/vendor/uri/lib/uri/version.rb +1 -1
  204. data/bundler/lib/bundler/vendor/uri/lib/uri/ws.rb +1 -2
  205. data/bundler/lib/bundler/vendor/uri/lib/uri/wss.rb +2 -1
  206. data/bundler/lib/bundler/vendor/uri/lib/uri.rb +3 -2
  207. data/bundler/lib/bundler/vendored_persistent.rb +1 -33
  208. data/bundler/lib/bundler/{vendored_tmpdir.rb → vendored_pub_grub.rb} +1 -1
  209. data/bundler/lib/bundler/version.rb +5 -1
  210. data/bundler/lib/bundler/worker.rb +5 -7
  211. data/bundler/lib/bundler.rb +25 -77
  212. data/{bin → exe}/gem +4 -5
  213. data/{bin → exe}/update_rubygems +12 -10
  214. data/lib/rubygems/available_set.rb +4 -3
  215. data/lib/rubygems/basic_specification.rb +5 -4
  216. data/lib/rubygems/bundler_version_finder.rb +2 -2
  217. data/lib/rubygems/command.rb +41 -32
  218. data/lib/rubygems/command_manager.rb +30 -15
  219. data/lib/rubygems/commands/build_command.rb +12 -8
  220. data/lib/rubygems/commands/cert_command.rb +34 -33
  221. data/lib/rubygems/commands/check_command.rb +21 -20
  222. data/lib/rubygems/commands/cleanup_command.rb +18 -17
  223. data/lib/rubygems/commands/contents_command.rb +14 -13
  224. data/lib/rubygems/commands/dependency_command.rb +17 -16
  225. data/lib/rubygems/commands/environment_command.rb +6 -5
  226. data/lib/rubygems/commands/exec_command.rb +249 -0
  227. data/lib/rubygems/commands/fetch_command.rb +10 -9
  228. data/lib/rubygems/commands/generate_index_command.rb +18 -17
  229. data/lib/rubygems/commands/help_command.rb +7 -6
  230. data/lib/rubygems/commands/info_command.rb +3 -3
  231. data/lib/rubygems/commands/install_command.rb +28 -23
  232. data/lib/rubygems/commands/list_command.rb +4 -3
  233. data/lib/rubygems/commands/lock_command.rb +5 -4
  234. data/lib/rubygems/commands/mirror_command.rb +4 -3
  235. data/lib/rubygems/commands/open_command.rb +10 -9
  236. data/lib/rubygems/commands/outdated_command.rb +6 -5
  237. data/lib/rubygems/commands/owner_command.rb +17 -14
  238. data/lib/rubygems/commands/pristine_command.rb +46 -36
  239. data/lib/rubygems/commands/push_command.rb +9 -8
  240. data/lib/rubygems/commands/query_command.rb +9 -8
  241. data/lib/rubygems/commands/rdoc_command.rb +21 -19
  242. data/lib/rubygems/commands/search_command.rb +4 -3
  243. data/lib/rubygems/commands/server_command.rb +4 -3
  244. data/lib/rubygems/commands/setup_command.rb +97 -106
  245. data/lib/rubygems/commands/signin_command.rb +10 -9
  246. data/lib/rubygems/commands/signout_command.rb +8 -7
  247. data/lib/rubygems/commands/sources_command.rb +22 -21
  248. data/lib/rubygems/commands/specification_command.rb +14 -13
  249. data/lib/rubygems/commands/stale_command.rb +3 -2
  250. data/lib/rubygems/commands/uninstall_command.rb +44 -40
  251. data/lib/rubygems/commands/unpack_command.rb +14 -13
  252. data/lib/rubygems/commands/update_command.rb +42 -63
  253. data/lib/rubygems/commands/which_command.rb +8 -7
  254. data/lib/rubygems/commands/yank_command.rb +12 -11
  255. data/lib/rubygems/config_file.rb +55 -21
  256. data/lib/rubygems/core_ext/kernel_gem.rb +1 -6
  257. data/lib/rubygems/core_ext/kernel_require.rb +109 -115
  258. data/lib/rubygems/core_ext/kernel_warn.rb +33 -37
  259. data/lib/rubygems/core_ext/tcpsocket_init.rb +3 -1
  260. data/lib/rubygems/defaults.rb +33 -18
  261. data/lib/rubygems/dependency.rb +15 -11
  262. data/lib/rubygems/dependency_installer.rb +38 -37
  263. data/lib/rubygems/dependency_list.rb +7 -6
  264. data/lib/rubygems/deprecate.rb +3 -2
  265. data/lib/rubygems/doctor.rb +19 -18
  266. data/lib/rubygems/errors.rb +3 -2
  267. data/lib/rubygems/exceptions.rb +16 -8
  268. data/lib/rubygems/ext/build_error.rb +2 -1
  269. data/lib/rubygems/ext/builder.rb +37 -21
  270. data/lib/rubygems/ext/cargo_builder/link_flag_converter.rb +9 -5
  271. data/lib/rubygems/ext/cargo_builder.rb +150 -111
  272. data/lib/rubygems/ext/cmake_builder.rb +2 -2
  273. data/lib/rubygems/ext/configure_builder.rb +2 -1
  274. data/lib/rubygems/ext/ext_conf_builder.rb +11 -9
  275. data/lib/rubygems/ext/rake_builder.rb +7 -5
  276. data/lib/rubygems/ext.rb +8 -7
  277. data/lib/rubygems/gem_runner.rb +6 -5
  278. data/lib/rubygems/gemcutter_utilities/webauthn_listener/response.rb +163 -0
  279. data/lib/rubygems/gemcutter_utilities/webauthn_listener.rb +105 -0
  280. data/lib/rubygems/gemcutter_utilities/webauthn_poller.rb +78 -0
  281. data/lib/rubygems/gemcutter_utilities.rb +90 -34
  282. data/lib/rubygems/indexer.rb +29 -28
  283. data/lib/rubygems/install_default_message.rb +3 -2
  284. data/lib/rubygems/install_message.rb +3 -2
  285. data/lib/rubygems/install_update_options.rb +56 -55
  286. data/lib/rubygems/installer.rb +54 -46
  287. data/lib/rubygems/installer_uninstaller_utils.rb +2 -2
  288. data/lib/rubygems/local_remote_options.rb +19 -20
  289. data/lib/rubygems/mock_gem_ui.rb +3 -2
  290. data/lib/rubygems/name_tuple.rb +5 -4
  291. data/lib/rubygems/optparse/lib/optparse.rb +20 -15
  292. data/lib/rubygems/optparse.rb +1 -1
  293. data/lib/rubygems/package/digest_io.rb +1 -0
  294. data/lib/rubygems/package/file_source.rb +3 -2
  295. data/lib/rubygems/package/io_source.rb +1 -0
  296. data/lib/rubygems/package/old.rb +9 -8
  297. data/lib/rubygems/package/source.rb +1 -0
  298. data/lib/rubygems/package/tar_header.rb +63 -62
  299. data/lib/rubygems/package/tar_reader/entry.rb +91 -9
  300. data/lib/rubygems/package/tar_reader.rb +2 -29
  301. data/lib/rubygems/package/tar_writer.rb +8 -7
  302. data/lib/rubygems/package.rb +64 -48
  303. data/lib/rubygems/package_task.rb +5 -4
  304. data/lib/rubygems/path_support.rb +1 -0
  305. data/lib/rubygems/platform.rb +79 -53
  306. data/lib/rubygems/psych_tree.rb +2 -1
  307. data/lib/rubygems/query_utils.rb +35 -35
  308. data/lib/rubygems/rdoc.rb +3 -2
  309. data/lib/rubygems/remote_fetcher.rb +23 -22
  310. data/lib/rubygems/request/connection_pools.rb +4 -4
  311. data/lib/rubygems/request/http_pool.rb +2 -1
  312. data/lib/rubygems/request/https_pool.rb +1 -0
  313. data/lib/rubygems/request.rb +23 -22
  314. data/lib/rubygems/request_set/gem_dependency_api.rb +123 -123
  315. data/lib/rubygems/request_set/lockfile/parser.rb +28 -27
  316. data/lib/rubygems/request_set/lockfile/tokenizer.rb +5 -3
  317. data/lib/rubygems/request_set/lockfile.rb +6 -5
  318. data/lib/rubygems/request_set.rb +20 -19
  319. data/lib/rubygems/requirement.rb +15 -14
  320. data/lib/rubygems/resolver/activation_request.rb +4 -3
  321. data/lib/rubygems/resolver/api_set.rb +5 -4
  322. data/lib/rubygems/resolver/api_specification.rb +7 -6
  323. data/lib/rubygems/resolver/best_set.rb +6 -5
  324. data/lib/rubygems/resolver/composed_set.rb +1 -0
  325. data/lib/rubygems/resolver/conflict.rb +11 -10
  326. data/lib/rubygems/resolver/current_set.rb +1 -0
  327. data/lib/rubygems/resolver/dependency_request.rb +3 -2
  328. data/lib/rubygems/resolver/git_set.rb +3 -2
  329. data/lib/rubygems/resolver/git_specification.rb +7 -6
  330. data/lib/rubygems/resolver/index_set.rb +4 -3
  331. data/lib/rubygems/resolver/index_specification.rb +7 -5
  332. data/lib/rubygems/resolver/installed_specification.rb +5 -4
  333. data/lib/rubygems/resolver/installer_set.rb +15 -17
  334. data/lib/rubygems/resolver/local_specification.rb +3 -2
  335. data/lib/rubygems/resolver/lock_set.rb +5 -4
  336. data/lib/rubygems/resolver/lock_specification.rb +5 -4
  337. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph.rb +1 -1
  338. data/lib/rubygems/resolver/molinillo/lib/molinillo/errors.rb +32 -26
  339. data/lib/rubygems/resolver/molinillo/lib/molinillo/gem_metadata.rb +1 -1
  340. data/lib/rubygems/resolver/molinillo.rb +2 -1
  341. data/lib/rubygems/resolver/requirement_list.rb +1 -0
  342. data/lib/rubygems/resolver/set.rb +1 -0
  343. data/lib/rubygems/resolver/source_set.rb +2 -0
  344. data/lib/rubygems/resolver/spec_specification.rb +1 -0
  345. data/lib/rubygems/resolver/specification.rb +2 -1
  346. data/lib/rubygems/resolver/stats.rb +2 -1
  347. data/lib/rubygems/resolver/vendor_set.rb +2 -1
  348. data/lib/rubygems/resolver/vendor_specification.rb +4 -3
  349. data/lib/rubygems/resolver.rb +41 -40
  350. data/lib/rubygems/s3_uri_signer.rb +10 -8
  351. data/lib/rubygems/safe_yaml.rb +4 -2
  352. data/lib/rubygems/security/policies.rb +48 -47
  353. data/lib/rubygems/security/policy.rb +19 -18
  354. data/lib/rubygems/security/signer.rb +6 -5
  355. data/lib/rubygems/security/trust_dir.rb +5 -4
  356. data/lib/rubygems/security.rb +30 -42
  357. data/lib/rubygems/security_option.rb +6 -5
  358. data/lib/rubygems/shellwords.rb +3 -0
  359. data/lib/rubygems/source/git.rb +22 -22
  360. data/lib/rubygems/source/installed.rb +2 -1
  361. data/lib/rubygems/source/local.rb +3 -2
  362. data/lib/rubygems/source/lock.rb +1 -0
  363. data/lib/rubygems/source/specific_file.rb +2 -1
  364. data/lib/rubygems/source/vendor.rb +1 -0
  365. data/lib/rubygems/source.rb +16 -16
  366. data/lib/rubygems/spec_fetcher.rb +10 -9
  367. data/lib/rubygems/specification.rb +121 -114
  368. data/lib/rubygems/specification_policy.rb +36 -15
  369. data/lib/rubygems/stub_specification.rb +11 -9
  370. data/lib/rubygems/text.rb +2 -2
  371. data/lib/rubygems/tsort/lib/tsort.rb +308 -310
  372. data/lib/rubygems/tsort.rb +1 -1
  373. data/lib/rubygems/uninstaller.rb +19 -18
  374. data/lib/rubygems/update_suggestion.rb +69 -0
  375. data/lib/rubygems/uri.rb +4 -4
  376. data/lib/rubygems/uri_formatter.rb +1 -1
  377. data/lib/rubygems/user_interaction.rb +37 -21
  378. data/lib/rubygems/util/licenses.rb +4 -3
  379. data/lib/rubygems/util/list.rb +1 -0
  380. data/lib/rubygems/util.rb +12 -15
  381. data/lib/rubygems/validator.rb +7 -6
  382. data/lib/rubygems/version.rb +17 -11
  383. data/lib/rubygems/version_option.rb +4 -3
  384. data/lib/rubygems.rb +89 -68
  385. data/rubygems-update.gemspec +10 -8
  386. data/setup.rb +10 -9
  387. data/test/rubygems/alternate_cert.pem +14 -14
  388. data/test/rubygems/alternate_cert_32.pem +15 -15
  389. data/test/rubygems/alternate_key.pem +25 -25
  390. data/test/rubygems/bad_rake.rb +1 -0
  391. data/test/rubygems/bundler_test_gem.rb +421 -0
  392. data/test/rubygems/child_cert.pem +15 -16
  393. data/test/rubygems/child_cert_32.pem +15 -16
  394. data/test/rubygems/child_key.pem +25 -25
  395. data/test/rubygems/encrypted_private_key.pem +26 -26
  396. data/test/rubygems/expired_cert.pem +15 -15
  397. data/test/rubygems/fake_certlib/openssl.rb +1 -0
  398. data/test/rubygems/future_cert.pem +15 -15
  399. data/test/rubygems/future_cert_32.pem +15 -15
  400. data/test/rubygems/good_rake.rb +1 -0
  401. data/test/rubygems/grandchild_cert.pem +15 -16
  402. data/test/rubygems/grandchild_cert_32.pem +15 -16
  403. data/test/rubygems/grandchild_key.pem +25 -25
  404. data/test/rubygems/helper.rb +172 -151
  405. data/test/rubygems/installer_test_case.rb +14 -13
  406. data/test/rubygems/invalid_issuer_cert.pem +16 -16
  407. data/test/rubygems/invalid_issuer_cert_32.pem +16 -16
  408. data/test/rubygems/invalid_key.pem +25 -25
  409. data/test/rubygems/invalid_signer_cert.pem +15 -15
  410. data/test/rubygems/invalid_signer_cert_32.pem +15 -15
  411. data/test/rubygems/invalidchild_cert.pem +15 -16
  412. data/test/rubygems/invalidchild_cert_32.pem +15 -16
  413. data/test/rubygems/invalidchild_key.pem +25 -25
  414. data/test/rubygems/multifactor_auth_utilities.rb +111 -0
  415. data/test/rubygems/package/tar_test_case.rb +53 -17
  416. data/test/rubygems/packages/Bluebie-legs-0.6.2.gem +0 -0
  417. data/test/rubygems/plugin/exception/rubygems_plugin.rb +2 -1
  418. data/test/rubygems/plugin/load/rubygems_plugin.rb +1 -0
  419. data/test/rubygems/plugin/standarderror/rubygems_plugin.rb +2 -1
  420. data/test/rubygems/private_key.pem +25 -25
  421. data/test/rubygems/public_cert.pem +16 -16
  422. data/test/rubygems/public_cert_32.pem +15 -15
  423. data/test/rubygems/public_key.pem +7 -7
  424. data/test/rubygems/rubygems/commands/crash_command.rb +1 -0
  425. data/test/rubygems/rubygems_plugin.rb +3 -2
  426. data/test/rubygems/simple_gem.rb +2 -1
  427. data/test/rubygems/specifications/bar-0.0.2.gemspec +2 -0
  428. data/test/rubygems/specifications/rubyforge-0.0.1.gemspec +6 -4
  429. data/test/rubygems/test_bundled_ca.rb +13 -12
  430. data/test/rubygems/test_config.rb +5 -4
  431. data/test/rubygems/test_deprecate.rb +5 -4
  432. data/test/rubygems/test_exit.rb +9 -3
  433. data/test/rubygems/test_gem.rb +339 -677
  434. data/test/rubygems/test_gem_available_set.rb +22 -21
  435. data/test/rubygems/test_gem_bundler_version_finder.rb +6 -4
  436. data/test/rubygems/test_gem_command.rb +45 -44
  437. data/test/rubygems/test_gem_command_manager.rb +96 -30
  438. data/test/rubygems/test_gem_commands_build_command.rb +74 -63
  439. data/test/rubygems/test_gem_commands_cert_command.rb +98 -99
  440. data/test/rubygems/test_gem_commands_check_command.rb +5 -4
  441. data/test/rubygems/test_gem_commands_cleanup_command.rb +41 -40
  442. data/test/rubygems/test_gem_commands_contents_command.rb +28 -27
  443. data/test/rubygems/test_gem_commands_dependency_command.rb +37 -36
  444. data/test/rubygems/test_gem_commands_environment_command.rb +17 -16
  445. data/test/rubygems/test_gem_commands_exec_command.rb +853 -0
  446. data/test/rubygems/test_gem_commands_fetch_command.rb +38 -37
  447. data/test/rubygems/test_gem_commands_generate_index_command.rb +8 -7
  448. data/test/rubygems/test_gem_commands_help_command.rb +14 -13
  449. data/test/rubygems/test_gem_commands_info_command.rb +29 -2
  450. data/test/rubygems/test_gem_commands_install_command.rb +152 -132
  451. data/test/rubygems/test_gem_commands_list_command.rb +5 -4
  452. data/test/rubygems/test_gem_commands_lock_command.rb +11 -10
  453. data/test/rubygems/test_gem_commands_mirror.rb +3 -2
  454. data/test/rubygems/test_gem_commands_open_command.rb +5 -4
  455. data/test/rubygems/test_gem_commands_outdated_command.rb +10 -9
  456. data/test/rubygems/test_gem_commands_owner_command.rb +227 -50
  457. data/test/rubygems/test_gem_commands_pristine_command.rb +142 -93
  458. data/test/rubygems/test_gem_commands_push_command.rb +189 -64
  459. data/test/rubygems/test_gem_commands_query_command.rb +74 -73
  460. data/test/rubygems/test_gem_commands_search_command.rb +3 -2
  461. data/test/rubygems/test_gem_commands_server_command.rb +3 -2
  462. data/test/rubygems/test_gem_commands_setup_command.rb +123 -96
  463. data/test/rubygems/test_gem_commands_signin_command.rb +71 -31
  464. data/test/rubygems/test_gem_commands_signout_command.rb +3 -3
  465. data/test/rubygems/test_gem_commands_sources_command.rb +29 -29
  466. data/test/rubygems/test_gem_commands_specification_command.rb +33 -32
  467. data/test/rubygems/test_gem_commands_stale_command.rb +5 -4
  468. data/test/rubygems/test_gem_commands_uninstall_command.rb +99 -81
  469. data/test/rubygems/test_gem_commands_unpack_command.rb +32 -31
  470. data/test/rubygems/test_gem_commands_update_command.rb +96 -95
  471. data/test/rubygems/test_gem_commands_which_command.rb +7 -6
  472. data/test/rubygems/test_gem_commands_yank_command.rb +162 -43
  473. data/test/rubygems/test_gem_config_file.rb +94 -81
  474. data/test/rubygems/test_gem_dependency.rb +76 -73
  475. data/test/rubygems/test_gem_dependency_installer.rb +200 -165
  476. data/test/rubygems/test_gem_dependency_list.rb +48 -47
  477. data/test/rubygems/test_gem_dependency_resolution_error.rb +5 -4
  478. data/test/rubygems/test_gem_doctor.rb +27 -26
  479. data/test/rubygems/test_gem_ext_builder.rb +60 -61
  480. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/custom_name.gemspec +4 -4
  481. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/{Cargo.lock → ext/custom_name_lib/Cargo.lock} +23 -33
  482. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/{Cargo.toml → ext/custom_name_lib/Cargo.toml} +1 -1
  483. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/{src → ext/custom_name_lib/src}/lib.rs +1 -1
  484. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/lib/custom_name.rb +3 -0
  485. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.lock +37 -33
  486. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.toml +1 -1
  487. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/rust_ruby_example.gemspec +2 -0
  488. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/src/lib.rs +12 -0
  489. data/test/rubygems/test_gem_ext_cargo_builder.rb +48 -59
  490. data/test/rubygems/test_gem_ext_cargo_builder_link_flag_converter.rb +20 -19
  491. data/test/rubygems/test_gem_ext_cargo_builder_unit.rb +21 -36
  492. data/test/rubygems/test_gem_ext_cmake_builder.rb +16 -15
  493. data/test/rubygems/test_gem_ext_configure_builder.rb +14 -13
  494. data/test/rubygems/test_gem_ext_ext_conf_builder.rb +51 -52
  495. data/test/rubygems/test_gem_ext_rake_builder.rb +16 -15
  496. data/test/rubygems/test_gem_gem_runner.rb +15 -9
  497. data/test/rubygems/test_gem_gemcutter_utilities.rb +170 -84
  498. data/test/rubygems/test_gem_impossible_dependencies_error.rb +5 -4
  499. data/test/rubygems/test_gem_indexer.rb +87 -67
  500. data/test/rubygems/test_gem_install_update_options.rb +17 -16
  501. data/test/rubygems/test_gem_installer.rb +422 -304
  502. data/test/rubygems/test_gem_local_remote_options.rb +11 -10
  503. data/test/rubygems/test_gem_name_tuple.rb +5 -4
  504. data/test/rubygems/test_gem_package.rb +243 -231
  505. data/test/rubygems/test_gem_package_old.rb +14 -13
  506. data/test/rubygems/test_gem_package_tar_header.rb +48 -47
  507. data/test/rubygems/test_gem_package_tar_reader.rb +56 -8
  508. data/test/rubygems/test_gem_package_tar_reader_entry.rb +162 -16
  509. data/test/rubygems/test_gem_package_tar_writer.rb +77 -76
  510. data/test/rubygems/test_gem_package_task.rb +19 -18
  511. data/test/rubygems/test_gem_path_support.rb +15 -14
  512. data/test/rubygems/test_gem_platform.rb +333 -227
  513. data/test/rubygems/test_gem_rdoc.rb +15 -14
  514. data/test/rubygems/test_gem_remote_fetcher.rb +155 -154
  515. data/test/rubygems/test_gem_request.rb +64 -58
  516. data/test/rubygems/test_gem_request_connection_pools.rb +30 -29
  517. data/test/rubygems/test_gem_request_set.rb +101 -100
  518. data/test/rubygems/test_gem_request_set_gem_dependency_api.rb +210 -211
  519. data/test/rubygems/test_gem_request_set_lockfile.rb +87 -86
  520. data/test/rubygems/test_gem_request_set_lockfile_parser.rb +58 -57
  521. data/test/rubygems/test_gem_request_set_lockfile_tokenizer.rb +63 -62
  522. data/test/rubygems/test_gem_requirement.rb +48 -41
  523. data/test/rubygems/test_gem_resolver.rb +167 -99
  524. data/test/rubygems/test_gem_resolver_activation_request.rb +7 -6
  525. data/test/rubygems/test_gem_resolver_api_set.rb +34 -33
  526. data/test/rubygems/test_gem_resolver_api_specification.rb +48 -47
  527. data/test/rubygems/test_gem_resolver_best_set.rb +23 -22
  528. data/test/rubygems/test_gem_resolver_composed_set.rb +2 -1
  529. data/test/rubygems/test_gem_resolver_conflict.rb +13 -12
  530. data/test/rubygems/test_gem_resolver_dependency_request.rb +16 -15
  531. data/test/rubygems/test_gem_resolver_git_set.rb +22 -21
  532. data/test/rubygems/test_gem_resolver_git_specification.rb +22 -21
  533. data/test/rubygems/test_gem_resolver_index_set.rb +13 -12
  534. data/test/rubygems/test_gem_resolver_index_specification.rb +17 -16
  535. data/test/rubygems/test_gem_resolver_installed_specification.rb +6 -5
  536. data/test/rubygems/test_gem_resolver_installer_set.rb +79 -34
  537. data/test/rubygems/test_gem_resolver_local_specification.rb +8 -7
  538. data/test/rubygems/test_gem_resolver_lock_set.rb +13 -12
  539. data/test/rubygems/test_gem_resolver_lock_specification.rb +18 -17
  540. data/test/rubygems/test_gem_resolver_requirement_list.rb +2 -1
  541. data/test/rubygems/test_gem_resolver_specification.rb +9 -8
  542. data/test/rubygems/test_gem_resolver_vendor_set.rb +7 -6
  543. data/test/rubygems/test_gem_resolver_vendor_specification.rb +11 -10
  544. data/test/rubygems/test_gem_security.rb +69 -68
  545. data/test/rubygems/test_gem_security_policy.rb +72 -72
  546. data/test/rubygems/test_gem_security_signer.rb +35 -34
  547. data/test/rubygems/test_gem_security_trust_dir.rb +7 -6
  548. data/test/rubygems/test_gem_silent_ui.rb +39 -32
  549. data/test/rubygems/test_gem_source.rb +45 -44
  550. data/test/rubygems/test_gem_source_fetch_problem.rb +10 -9
  551. data/test/rubygems/test_gem_source_git.rb +69 -62
  552. data/test/rubygems/test_gem_source_installed.rb +17 -16
  553. data/test/rubygems/test_gem_source_list.rb +6 -5
  554. data/test/rubygems/test_gem_source_local.rb +15 -14
  555. data/test/rubygems/test_gem_source_lock.rb +32 -31
  556. data/test/rubygems/test_gem_source_specific_file.rb +18 -17
  557. data/test/rubygems/test_gem_source_subpath_problem.rb +8 -7
  558. data/test/rubygems/test_gem_source_vendor.rb +14 -13
  559. data/test/rubygems/test_gem_spec_fetcher.rb +73 -72
  560. data/test/rubygems/test_gem_specification.rb +533 -469
  561. data/test/rubygems/test_gem_stream_ui.rb +53 -22
  562. data/test/rubygems/test_gem_stub_specification.rb +33 -32
  563. data/test/rubygems/test_gem_text.rb +2 -1
  564. data/test/rubygems/test_gem_uninstaller.rb +118 -117
  565. data/test/rubygems/test_gem_unsatisfiable_dependency_error.rb +4 -3
  566. data/test/rubygems/test_gem_update_suggestion.rb +209 -0
  567. data/test/rubygems/test_gem_uri.rb +6 -4
  568. data/test/rubygems/test_gem_uri_formatter.rb +15 -14
  569. data/test/rubygems/test_gem_util.rb +24 -23
  570. data/test/rubygems/test_gem_validator.rb +8 -8
  571. data/test/rubygems/test_gem_version.rb +24 -16
  572. data/test/rubygems/test_gem_version_option.rb +16 -15
  573. data/test/rubygems/test_kernel.rb +43 -48
  574. data/test/rubygems/test_project_sanity.rb +32 -3
  575. data/test/rubygems/test_remote_fetch_error.rb +8 -7
  576. data/test/rubygems/test_require.rb +118 -103
  577. data/test/rubygems/test_rubygems.rb +10 -8
  578. data/test/rubygems/test_webauthn_listener.rb +143 -0
  579. data/test/rubygems/test_webauthn_listener_response.rb +93 -0
  580. data/test/rubygems/test_webauthn_poller.rb +124 -0
  581. data/test/rubygems/utilities.rb +98 -34
  582. data/test/rubygems/wrong_key_cert.pem +15 -15
  583. data/test/rubygems/wrong_key_cert_32.pem +15 -15
  584. data/test/test_changelog_generator.rb +1 -1
  585. metadata +99 -46
  586. data/bundler/lib/bundler/dep_proxy.rb +0 -55
  587. data/bundler/lib/bundler/templates/gems.rb +0 -5
  588. data/bundler/lib/bundler/templates/newgem/ext/newgem/extconf.rb.tt +0 -5
  589. data/bundler/lib/bundler/templates/newgem/travis.yml.tt +0 -6
  590. data/bundler/lib/bundler/vendor/molinillo/LICENSE +0 -9
  591. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb +0 -57
  592. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb +0 -88
  593. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/action.rb +0 -36
  594. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb +0 -66
  595. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_vertex.rb +0 -62
  596. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/delete_edge.rb +0 -63
  597. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb +0 -61
  598. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb +0 -126
  599. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/set_payload.rb +0 -46
  600. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb +0 -36
  601. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb +0 -164
  602. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb +0 -255
  603. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +0 -149
  604. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb +0 -6
  605. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb +0 -112
  606. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/modules/ui.rb +0 -67
  607. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb +0 -839
  608. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/resolver.rb +0 -46
  609. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/state.rb +0 -58
  610. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo.rb +0 -11
  611. data/bundler/lib/bundler/vendor/tmpdir/lib/tmpdir.rb +0 -154
  612. data/bundler/lib/bundler/vendored_molinillo.rb +0 -4
  613. data/bundler/lib/bundler/version_ranges.rb +0 -122
  614. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/build.rb +0 -21
  615. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/build.rb +0 -21
@@ -1,7 +1,8 @@
1
1
  # frozen_string_literal: true
2
- require_relative 'helper'
3
- require 'rubygems/commands/cleanup_command'
4
- require 'rubygems/installer'
2
+
3
+ require_relative "helper"
4
+ require "rubygems/commands/cleanup_command"
5
+ require "rubygems/installer"
5
6
 
6
7
  class TestGemCommandsCleanupCommand < Gem::TestCase
7
8
  def setup
@@ -9,8 +10,8 @@ class TestGemCommandsCleanupCommand < Gem::TestCase
9
10
 
10
11
  @cmd = Gem::Commands::CleanupCommand.new
11
12
 
12
- @a_1 = util_spec 'a', 1
13
- @a_2 = util_spec 'a', 2
13
+ @a_1 = util_spec "a", 1
14
+ @a_2 = util_spec "a", 2
14
15
 
15
16
  install_gem @a_1
16
17
  install_gem @a_2
@@ -66,12 +67,12 @@ class TestGemCommandsCleanupCommand < Gem::TestCase
66
67
  end
67
68
 
68
69
  def test_execute_all_dependencies
69
- @b_1 = util_spec 'b', 1 do |s|
70
- s.add_dependency 'a', '1'
70
+ @b_1 = util_spec "b", 1 do |s|
71
+ s.add_dependency "a", "1"
71
72
  end
72
73
 
73
- @b_2 = util_spec 'b', 2 do |s|
74
- s.add_dependency 'a', '2'
74
+ @b_2 = util_spec "b", 2 do |s|
75
+ s.add_dependency "a", "2"
75
76
  end
76
77
 
77
78
  install_gem @b_1
@@ -86,12 +87,12 @@ class TestGemCommandsCleanupCommand < Gem::TestCase
86
87
  end
87
88
 
88
89
  def test_execute_dev_dependencies
89
- @b_1 = util_spec 'b', 1 do |s|
90
- s.add_development_dependency 'a', '1'
90
+ @b_1 = util_spec "b", 1 do |s|
91
+ s.add_development_dependency "a", "1"
91
92
  end
92
93
 
93
- @c_1 = util_spec 'c', 1 do |s|
94
- s.add_development_dependency 'a', '2'
94
+ @c_1 = util_spec "c", 1 do |s|
95
+ s.add_development_dependency "a", "2"
95
96
  end
96
97
 
97
98
  install_gem @b_1
@@ -105,12 +106,12 @@ class TestGemCommandsCleanupCommand < Gem::TestCase
105
106
  end
106
107
 
107
108
  def test_execute_without_dev_dependencies
108
- @b_1 = util_spec 'b', 1 do |s|
109
- s.add_development_dependency 'a', '1'
109
+ @b_1 = util_spec "b", 1 do |s|
110
+ s.add_development_dependency "a", "1"
110
111
  end
111
112
 
112
- @c_1 = util_spec 'c', 1 do |s|
113
- s.add_development_dependency 'a', '2'
113
+ @c_1 = util_spec "c", 1 do |s|
114
+ s.add_development_dependency "a", "2"
114
115
  end
115
116
 
116
117
  install_gem @b_1
@@ -124,14 +125,14 @@ class TestGemCommandsCleanupCommand < Gem::TestCase
124
125
  end
125
126
 
126
127
  def test_execute_all
127
- gemhome2 = File.join @tempdir, 'gemhome2'
128
+ gemhome2 = File.join @tempdir, "gemhome2"
128
129
 
129
130
  Gem.ensure_gem_subdirectories gemhome2
130
131
 
131
132
  Gem.use_paths @gemhome, gemhome2
132
133
 
133
- @b_1 = util_spec 'b', 1
134
- @b_2 = util_spec 'b', 2
134
+ @b_1 = util_spec "b", 1
135
+ @b_2 = util_spec "b", 2
135
136
 
136
137
  install_gem @b_1
137
138
  install_gem @b_2
@@ -140,15 +141,15 @@ class TestGemCommandsCleanupCommand < Gem::TestCase
140
141
 
141
142
  @cmd.execute
142
143
 
143
- assert_equal @gemhome, Gem.dir, 'GEM_HOME'
144
- assert_equal [@gemhome, gemhome2], Gem.path.sort, 'GEM_PATH'
144
+ assert_equal @gemhome, Gem.dir, "GEM_HOME"
145
+ assert_equal [@gemhome, gemhome2], Gem.path.sort, "GEM_PATH"
145
146
 
146
147
  assert_path_not_exist @a_1.gem_dir
147
148
  assert_path_not_exist @b_1.gem_dir
148
149
  end
149
150
 
150
151
  def test_execute_all_user
151
- @a_1_1, = util_gem 'a', '1.1'
152
+ @a_1_1, = util_gem "a", "1.1"
152
153
  @a_1_1 = install_gem @a_1_1 # pick up user install path
153
154
 
154
155
  Gem::Specification.dirs = [Gem.dir, Gem.user_dir]
@@ -167,7 +168,7 @@ class TestGemCommandsCleanupCommand < Gem::TestCase
167
168
  def test_execute_all_user_no_sudo
168
169
  FileUtils.chmod 0555, @gemhome
169
170
 
170
- @a_1_1, = util_gem 'a', '1.1'
171
+ @a_1_1, = util_gem "a", "1.1"
171
172
  @a_1_1 = install_gem @a_1_1, :user_install => true # pick up user install path
172
173
 
173
174
  Gem::Specification.dirs = [Gem.dir, Gem.user_dir]
@@ -195,11 +196,11 @@ class TestGemCommandsCleanupCommand < Gem::TestCase
195
196
  end
196
197
 
197
198
  def test_execute_keeps_older_versions_with_deps
198
- @b_1 = util_spec 'b', 1
199
- @b_2 = util_spec 'b', 2
199
+ @b_1 = util_spec "b", 1
200
+ @b_2 = util_spec "b", 2
200
201
 
201
- @c = util_spec 'c', 1 do |s|
202
- s.add_dependency 'b', '1'
202
+ @c = util_spec "c", 1 do |s|
203
+ s.add_dependency "b", "1"
203
204
  end
204
205
 
205
206
  install_gem @b_1
@@ -216,9 +217,9 @@ class TestGemCommandsCleanupCommand < Gem::TestCase
216
217
  def test_execute_ignore_default_gem_verbose
217
218
  Gem.configuration.verbose = :really
218
219
 
219
- @b_1 = util_spec 'b', 1
220
+ @b_1 = util_spec "b", 1
220
221
  @b_default = new_default_spec "b", "2"
221
- @b_2 = util_spec 'b', 3
222
+ @b_2 = util_spec "b", 3
222
223
 
223
224
  install_gem @b_1
224
225
  install_default_gems @b_default
@@ -235,12 +236,12 @@ class TestGemCommandsCleanupCommand < Gem::TestCase
235
236
  end
236
237
 
237
238
  def test_execute_remove_gem_home_only
238
- c_1, = util_gem 'c', '1'
239
- c_2, = util_gem 'c', '2'
240
- d_1, = util_gem 'd', '1'
241
- d_2, = util_gem 'd', '2'
242
- e_1, = util_gem 'e', '1'
243
- e_2, = util_gem 'e', '2'
239
+ c_1, = util_gem "c", "1"
240
+ c_2, = util_gem "c", "2"
241
+ d_1, = util_gem "d", "1"
242
+ d_2, = util_gem "d", "2"
243
+ e_1, = util_gem "e", "1"
244
+ e_2, = util_gem "e", "2"
244
245
 
245
246
  c_1 = install_gem c_1, :user_install => true # pick up user install path
246
247
  c_2 = install_gem c_2
@@ -263,11 +264,11 @@ class TestGemCommandsCleanupCommand < Gem::TestCase
263
264
  end
264
265
 
265
266
  def test_execute_user_install
266
- c_1, = util_gem 'c', '1.0'
267
- c_2, = util_gem 'c', '1.1'
267
+ c_1, = util_gem "c", "1.0"
268
+ c_2, = util_gem "c", "1.1"
268
269
 
269
- d_1, = util_gem 'd', '1.0'
270
- d_2, = util_gem 'd', '1.1'
270
+ d_1, = util_gem "d", "1.0"
271
+ d_2, = util_gem "d", "1.1"
271
272
 
272
273
  c_1 = install_gem c_1, :user_install => true # pick up user install path
273
274
  c_2 = install_gem c_2, :user_install => true # pick up user install path
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
- require_relative 'helper'
3
- require 'rubygems/commands/contents_command'
2
+
3
+ require_relative "helper"
4
+ require "rubygems/commands/contents_command"
4
5
 
5
6
  class TestGemCommandsContentsCommand < Gem::TestCase
6
7
  def setup
@@ -20,7 +21,7 @@ class TestGemCommandsContentsCommand < Gem::TestCase
20
21
  def test_execute
21
22
  @cmd.options[:args] = %w[foo]
22
23
 
23
- gem 'foo'
24
+ gem "foo"
24
25
 
25
26
  use_ui @ui do
26
27
  @cmd.execute
@@ -34,8 +35,8 @@ class TestGemCommandsContentsCommand < Gem::TestCase
34
35
  def test_execute_all
35
36
  @cmd.options[:all] = true
36
37
 
37
- gem 'foo'
38
- gem 'bar'
38
+ gem "foo"
39
+ gem "bar"
39
40
 
40
41
  use_ui @ui do
41
42
  @cmd.execute
@@ -63,8 +64,8 @@ class TestGemCommandsContentsCommand < Gem::TestCase
63
64
 
64
65
  def test_execute_exact_match
65
66
  @cmd.options[:args] = %w[foo]
66
- gem 'foo'
67
- gem 'bar'
67
+ gem "foo"
68
+ gem "bar"
68
69
 
69
70
  use_ui @ui do
70
71
  @cmd.execute
@@ -79,7 +80,7 @@ class TestGemCommandsContentsCommand < Gem::TestCase
79
80
  @cmd.options[:args] = %w[foo]
80
81
  @cmd.options[:lib_only] = true
81
82
 
82
- gem 'foo'
83
+ gem "foo"
83
84
 
84
85
  use_ui @ui do
85
86
  @cmd.execute
@@ -106,9 +107,9 @@ class TestGemCommandsContentsCommand < Gem::TestCase
106
107
 
107
108
  def test_execute_missing_version
108
109
  @cmd.options[:args] = %w[foo]
109
- @cmd.options[:version] = Gem::Requirement.new '= 2'
110
+ @cmd.options[:version] = Gem::Requirement.new "= 2"
110
111
 
111
- gem 'foo', 1
112
+ gem "foo", 1
112
113
 
113
114
  assert_raise Gem::MockGemUi::TermError do
114
115
  use_ui @ui do
@@ -123,7 +124,7 @@ class TestGemCommandsContentsCommand < Gem::TestCase
123
124
  def test_execute_missing_multiple
124
125
  @cmd.options[:args] = %w[foo bar]
125
126
 
126
- gem 'foo'
127
+ gem "foo"
127
128
 
128
129
  use_ui @ui do
129
130
  @cmd.execute
@@ -138,8 +139,8 @@ class TestGemCommandsContentsCommand < Gem::TestCase
138
139
  def test_execute_multiple
139
140
  @cmd.options[:args] = %w[foo bar]
140
141
 
141
- gem 'foo'
142
- gem 'bar'
142
+ gem "foo"
143
+ gem "bar"
143
144
 
144
145
  use_ui @ui do
145
146
  @cmd.execute
@@ -155,13 +156,13 @@ class TestGemCommandsContentsCommand < Gem::TestCase
155
156
  @cmd.options[:args] = %w[foo]
156
157
  @cmd.options[:show_install_dir] = true
157
158
 
158
- gem 'foo'
159
+ gem "foo"
159
160
 
160
161
  use_ui @ui do
161
162
  @cmd.execute
162
163
  end
163
164
 
164
- expected = File.join @gemhome, 'gems', 'foo-2'
165
+ expected = File.join @gemhome, "gems", "foo-2"
165
166
 
166
167
  assert_equal "#{expected}\n", @ui.output
167
168
  assert_equal "", @ui.error
@@ -171,14 +172,14 @@ class TestGemCommandsContentsCommand < Gem::TestCase
171
172
  @cmd.options[:args] = %w[foo]
172
173
  @cmd.options[:show_install_dir] = true
173
174
 
174
- gem 'foo', 1
175
- gem 'foo', 2
175
+ gem "foo", 1
176
+ gem "foo", 2
176
177
 
177
178
  use_ui @ui do
178
179
  @cmd.execute
179
180
  end
180
181
 
181
- expected = File.join @gemhome, 'gems', 'foo-2'
182
+ expected = File.join @gemhome, "gems", "foo-2"
182
183
 
183
184
  assert_equal "#{expected}\n", @ui.output
184
185
  assert_equal "", @ui.error
@@ -187,16 +188,16 @@ class TestGemCommandsContentsCommand < Gem::TestCase
187
188
  def test_execute_show_install_dir_version
188
189
  @cmd.options[:args] = %w[foo]
189
190
  @cmd.options[:show_install_dir] = true
190
- @cmd.options[:version] = Gem::Requirement.new '= 1'
191
+ @cmd.options[:version] = Gem::Requirement.new "= 1"
191
192
 
192
- gem 'foo', 1
193
- gem 'foo', 2
193
+ gem "foo", 1
194
+ gem "foo", 2
194
195
 
195
196
  use_ui @ui do
196
197
  @cmd.execute
197
198
  end
198
199
 
199
- expected = File.join @gemhome, 'gems', 'foo-1'
200
+ expected = File.join @gemhome, "gems", "foo-1"
200
201
 
201
202
  assert_equal "#{expected}\n", @ui.output
202
203
  assert_equal "", @ui.error
@@ -206,7 +207,7 @@ class TestGemCommandsContentsCommand < Gem::TestCase
206
207
  @cmd.options[:args] = %w[foo]
207
208
  @cmd.options[:prefix] = false
208
209
 
209
- gem 'foo'
210
+ gem "foo"
210
211
 
211
212
  use_ui @ui do
212
213
  @cmd.execute
@@ -236,9 +237,9 @@ lib/foo.rb
236
237
  end
237
238
 
238
239
  expected = [
239
- [RbConfig::CONFIG['bindir'], 'default_command'],
240
- [RbConfig::CONFIG['rubylibdir'], 'default/gem.rb'],
241
- [RbConfig::CONFIG['archdir'], 'default_gem.so'],
240
+ [RbConfig::CONFIG["bindir"], "default_command"],
241
+ [RbConfig::CONFIG["rubylibdir"], "default/gem.rb"],
242
+ [RbConfig::CONFIG["archdir"], "default_gem.so"],
242
243
  ].sort.map {|a|File.join a }.join "\n"
243
244
 
244
245
  assert_equal expected, @ui.output.chomp
@@ -264,7 +265,7 @@ lib/foo.rb
264
265
  assert @cmd.options[:lib_only]
265
266
  refute @cmd.options[:prefix]
266
267
  assert_equal %w[foo], @cmd.options[:specdirs]
267
- assert_equal Gem::Requirement.new('0.0.2'), @cmd.options[:version]
268
+ assert_equal Gem::Requirement.new("0.0.2"), @cmd.options[:version]
268
269
  assert @cmd.options[:show_install_dir]
269
270
  end
270
271
  end
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
- require_relative 'helper'
3
- require 'rubygems/commands/dependency_command'
2
+
3
+ require_relative "helper"
4
+ require "rubygems/commands/dependency_command"
4
5
 
5
6
  class TestGemCommandsDependencyCommand < Gem::TestCase
6
7
  def setup
@@ -11,9 +12,9 @@ class TestGemCommandsDependencyCommand < Gem::TestCase
11
12
  end
12
13
 
13
14
  def test_execute
14
- quick_gem 'foo' do |gem|
15
- gem.add_dependency 'bar', '> 1'
16
- gem.add_dependency 'baz', '> 1'
15
+ quick_gem "foo" do |gem|
16
+ gem.add_dependency "bar", "> 1"
17
+ gem.add_dependency "baz", "> 1"
17
18
  end
18
19
 
19
20
  @cmd.options[:args] = %w[foo]
@@ -24,16 +25,16 @@ class TestGemCommandsDependencyCommand < Gem::TestCase
24
25
 
25
26
  assert_equal "Gem foo-2\n bar (> 1)\n baz (> 1)\n\n",
26
27
  @stub_ui.output
27
- assert_equal '', @stub_ui.error
28
+ assert_equal "", @stub_ui.error
28
29
  end
29
30
 
30
31
  def test_execute_no_args
31
- install_specs util_spec 'x', '2'
32
+ install_specs util_spec "x", "2"
32
33
 
33
34
  spec_fetcher do |fetcher|
34
- fetcher.spec 'a', 1
35
- fetcher.spec 'a', '2.a'
36
- fetcher.spec 'dep_x', 1, 'x' => '>= 1'
35
+ fetcher.spec "a", 1
36
+ fetcher.spec "a", "2.a"
37
+ fetcher.spec "dep_x", 1, "x" => ">= 1"
37
38
  fetcher.legacy_platform
38
39
  end
39
40
 
@@ -58,7 +59,7 @@ Gem x-2
58
59
  EOF
59
60
 
60
61
  assert_equal expected, @stub_ui.output
61
- assert_equal '', @stub_ui.error
62
+ assert_equal "", @stub_ui.error
62
63
  end
63
64
 
64
65
  def test_execute_no_match
@@ -71,14 +72,14 @@ Gem x-2
71
72
  end
72
73
 
73
74
  assert_equal "No gems found matching foo (>= 0)\n", @stub_ui.output
74
- assert_equal '', @stub_ui.error
75
+ assert_equal "", @stub_ui.error
75
76
  end
76
77
 
77
78
  def test_execute_pipe_format
78
- spec = util_spec 'foo' do |gem|
79
- gem.add_dependency 'bar', '> 1'
79
+ spec = util_spec "foo" do |gem|
80
+ gem.add_dependency "bar", "> 1"
80
81
  end
81
- install_specs util_spec 'bar', 2
82
+ install_specs util_spec "bar", 2
82
83
  install_specs spec
83
84
 
84
85
  @cmd.options[:args] = %w[foo]
@@ -89,15 +90,15 @@ Gem x-2
89
90
  end
90
91
 
91
92
  assert_equal "bar --version '> 1'\n", @stub_ui.output
92
- assert_equal '', @stub_ui.error
93
+ assert_equal "", @stub_ui.error
93
94
  end
94
95
 
95
96
  def test_execute_regexp
96
97
  spec_fetcher do |fetcher|
97
- fetcher.spec 'a', 1
98
- fetcher.spec 'a', '2.a'
99
- fetcher.spec 'a_evil', 9
100
- fetcher.spec 'b', 2
98
+ fetcher.spec "a", 1
99
+ fetcher.spec "a", "2.a"
100
+ fetcher.spec "a_evil", 9
101
+ fetcher.spec "b", 2
101
102
  end
102
103
 
103
104
  @cmd.options[:args] = %w[[ab]]
@@ -118,17 +119,17 @@ Gem b-2
118
119
  EOF
119
120
 
120
121
  assert_equal expected, @stub_ui.output
121
- assert_equal '', @stub_ui.error
122
+ assert_equal "", @stub_ui.error
122
123
  end
123
124
 
124
125
  def test_execute_reverse
125
126
  # FIX: this shouldn't need to write out, but fails if you switch it
126
- quick_gem 'foo' do |gem|
127
- gem.add_dependency 'bar', '> 1'
127
+ quick_gem "foo" do |gem|
128
+ gem.add_dependency "bar", "> 1"
128
129
  end
129
130
 
130
- quick_gem 'baz' do |gem|
131
- gem.add_dependency 'foo'
131
+ quick_gem "baz" do |gem|
132
+ gem.add_dependency "foo"
132
133
  end
133
134
 
134
135
  @cmd.options[:args] = %w[foo]
@@ -147,7 +148,7 @@ Gem foo-2
147
148
  EOF
148
149
 
149
150
  assert_equal expected, @stub_ui.output
150
- assert_equal '', @stub_ui.error
151
+ assert_equal "", @stub_ui.error
151
152
  end
152
153
 
153
154
  def test_execute_reverse_remote
@@ -165,15 +166,15 @@ Gem foo-2
165
166
  ERROR: Only reverse dependencies for local gems are supported.
166
167
  EOF
167
168
 
168
- assert_equal '', @stub_ui.output
169
+ assert_equal "", @stub_ui.output
169
170
  assert_equal expected, @stub_ui.error
170
171
  end
171
172
 
172
173
  def test_execute_remote
173
- install_specs util_spec 'bar', '2'
174
+ install_specs util_spec "bar", "2"
174
175
 
175
176
  spec_fetcher do |fetcher|
176
- fetcher.spec 'foo', 2, 'bar' => '> 1'
177
+ fetcher.spec "foo", 2, "bar" => "> 1"
177
178
  end
178
179
 
179
180
  @cmd.options[:args] = %w[foo]
@@ -184,7 +185,7 @@ ERROR: Only reverse dependencies for local gems are supported.
184
185
  end
185
186
 
186
187
  assert_equal "Gem foo-2\n bar (> 1)\n\n", @stub_ui.output
187
- assert_equal '', @stub_ui.error
188
+ assert_equal "", @stub_ui.error
188
189
  end
189
190
 
190
191
  def test_execute_remote_version
@@ -192,25 +193,25 @@ ERROR: Only reverse dependencies for local gems are supported.
192
193
  Gem::RemoteFetcher.fetcher = @fetcher
193
194
 
194
195
  spec_fetcher do |fetcher|
195
- fetcher.spec 'a', 1
196
- fetcher.spec 'a', 2
196
+ fetcher.spec "a", 1
197
+ fetcher.spec "a", 2
197
198
  end
198
199
 
199
200
  @cmd.options[:args] = %w[a]
200
201
  @cmd.options[:domain] = :remote
201
- @cmd.options[:version] = req '= 1'
202
+ @cmd.options[:version] = req "= 1"
202
203
 
203
204
  use_ui @stub_ui do
204
205
  @cmd.execute
205
206
  end
206
207
 
207
208
  assert_equal "Gem a-1\n\n", @stub_ui.output
208
- assert_equal '', @stub_ui.error
209
+ assert_equal "", @stub_ui.error
209
210
  end
210
211
 
211
212
  def test_execute_prerelease
212
213
  spec_fetcher do |fetcher|
213
- fetcher.spec 'a', '2.a'
214
+ fetcher.spec "a", "2.a"
214
215
  end
215
216
 
216
217
  @cmd.options[:args] = %w[a]
@@ -222,6 +223,6 @@ ERROR: Only reverse dependencies for local gems are supported.
222
223
  end
223
224
 
224
225
  assert_equal "Gem a-2.a\n\n", @stub_ui.output
225
- assert_equal '', @stub_ui.error
226
+ assert_equal "", @stub_ui.error
226
227
  end
227
228
  end
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
- require_relative 'helper'
3
- require 'rubygems/commands/environment_command'
2
+
3
+ require_relative "helper"
4
+ require "rubygems/commands/environment_command"
4
5
 
5
6
  class TestGemCommandsEnvironmentCommand < Gem::TestCase
6
7
  def setup
@@ -11,9 +12,9 @@ class TestGemCommandsEnvironmentCommand < Gem::TestCase
11
12
 
12
13
  def test_execute
13
14
  orig_sources = Gem.sources.dup
14
- orig_path, ENV['PATH'] = ENV['PATH'], %w[/usr/local/bin /usr/bin /bin].join(File::PATH_SEPARATOR)
15
+ orig_path, ENV["PATH"] = ENV["PATH"], %w[/usr/local/bin /usr/bin /bin].join(File::PATH_SEPARATOR)
15
16
  Gem.sources.replace %w[http://gems.example.com]
16
- Gem.configuration['gemcutter_key'] = 'blah'
17
+ Gem.configuration["gemcutter_key"] = "blah"
17
18
 
18
19
  @cmd.send :handle_options, %w[]
19
20
 
@@ -51,7 +52,7 @@ class TestGemCommandsEnvironmentCommand < Gem::TestCase
51
52
 
52
53
  ensure
53
54
  Gem.sources.replace orig_sources
54
- ENV['PATH'] = orig_path
55
+ ENV["PATH"] = orig_path
55
56
  end
56
57
 
57
58
  def test_execute_gemdir
@@ -62,7 +63,7 @@ class TestGemCommandsEnvironmentCommand < Gem::TestCase
62
63
  end
63
64
 
64
65
  assert_equal "#{@gemhome}\n", @ui.output
65
- assert_equal '', @ui.error
66
+ assert_equal "", @ui.error
66
67
  end
67
68
 
68
69
  def test_execute_user_gemdir
@@ -73,7 +74,7 @@ class TestGemCommandsEnvironmentCommand < Gem::TestCase
73
74
  end
74
75
 
75
76
  assert_equal "#{Gem.user_dir}\n", @ui.output
76
- assert_equal '', @ui.error
77
+ assert_equal "", @ui.error
77
78
  end
78
79
 
79
80
  def test_execute_user_gemhome
@@ -84,7 +85,7 @@ class TestGemCommandsEnvironmentCommand < Gem::TestCase
84
85
  end
85
86
 
86
87
  assert_equal "#{Gem.user_dir}\n", @ui.output
87
- assert_equal '', @ui.error
88
+ assert_equal "", @ui.error
88
89
  end
89
90
 
90
91
  def test_execute_gempath
@@ -95,13 +96,13 @@ class TestGemCommandsEnvironmentCommand < Gem::TestCase
95
96
  end
96
97
 
97
98
  assert_equal "#{@gemhome}\n", @ui.output
98
- assert_equal '', @ui.error
99
+ assert_equal "", @ui.error
99
100
  end
100
101
 
101
102
  def test_execute_gempath_multiple
102
103
  Gem.clear_paths
103
104
  path = [@gemhome, "#{@gemhome}2"].join File::PATH_SEPARATOR
104
- ENV['GEM_PATH'] = path
105
+ ENV["GEM_PATH"] = path
105
106
 
106
107
  @cmd.send :handle_options, %w[gempath]
107
108
 
@@ -110,7 +111,7 @@ class TestGemCommandsEnvironmentCommand < Gem::TestCase
110
111
  end
111
112
 
112
113
  assert_equal "#{Gem.path.join File::PATH_SEPARATOR}\n", @ui.output
113
- assert_equal '', @ui.error
114
+ assert_equal "", @ui.error
114
115
  end
115
116
 
116
117
  def test_execute_remotesources
@@ -124,7 +125,7 @@ class TestGemCommandsEnvironmentCommand < Gem::TestCase
124
125
  end
125
126
 
126
127
  assert_equal "http://gems.example.com\n", @ui.output
127
- assert_equal '', @ui.error
128
+ assert_equal "", @ui.error
128
129
 
129
130
  ensure
130
131
  Gem.sources.replace orig_sources
@@ -139,8 +140,8 @@ class TestGemCommandsEnvironmentCommand < Gem::TestCase
139
140
  end
140
141
  end
141
142
 
142
- assert_equal '', @ui.output
143
- assert_equal '', @ui.error
143
+ assert_equal "", @ui.output
144
+ assert_equal "", @ui.error
144
145
  end
145
146
 
146
147
  def test_execute_version
@@ -151,7 +152,7 @@ class TestGemCommandsEnvironmentCommand < Gem::TestCase
151
152
  end
152
153
 
153
154
  assert_equal "#{Gem::VERSION}\n", @ui.output
154
- assert_equal '', @ui.error
155
+ assert_equal "", @ui.error
155
156
  end
156
157
 
157
158
  def test_execute_platform
@@ -162,6 +163,6 @@ class TestGemCommandsEnvironmentCommand < Gem::TestCase
162
163
  end
163
164
 
164
165
  assert_equal "#{Gem.platforms.join File::PATH_SEPARATOR}\n", @ui.output
165
- assert_equal '', @ui.error
166
+ assert_equal "", @ui.error
166
167
  end
167
168
  end