rubygems-update 3.3.26 → 3.4.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (292) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +1178 -1088
  3. data/CONTRIBUTING.md +30 -7
  4. data/Manifest.txt +35 -32
  5. data/POLICIES.md +10 -8
  6. data/README.md +2 -2
  7. data/bin/gem +1 -4
  8. data/bin/update_rubygems +1 -1
  9. data/bundler/CHANGELOG.md +122 -1
  10. data/bundler/README.md +2 -2
  11. data/bundler/UPGRADING.md +1 -1
  12. data/bundler/bundler.gemspec +2 -2
  13. data/bundler/exe/bundle +1 -4
  14. data/bundler/lib/bundler/build_metadata.rb +2 -2
  15. data/bundler/lib/bundler/cli/add.rb +1 -1
  16. data/bundler/lib/bundler/cli/binstubs.rb +5 -1
  17. data/bundler/lib/bundler/cli/check.rb +1 -1
  18. data/bundler/lib/bundler/cli/common.rb +1 -0
  19. data/bundler/lib/bundler/cli/console.rb +2 -2
  20. data/bundler/lib/bundler/cli/doctor.rb +4 -6
  21. data/bundler/lib/bundler/cli/gem.rb +62 -40
  22. data/bundler/lib/bundler/cli/install.rb +2 -3
  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 +1 -3
  26. data/bundler/lib/bundler/cli/viz.rb +1 -1
  27. data/bundler/lib/bundler/cli.rb +44 -2
  28. data/bundler/lib/bundler/compact_index_client/cache.rb +1 -1
  29. data/bundler/lib/bundler/compact_index_client/updater.rb +40 -39
  30. data/bundler/lib/bundler/constants.rb +1 -1
  31. data/bundler/lib/bundler/definition.rb +87 -51
  32. data/bundler/lib/bundler/dependency.rb +12 -11
  33. data/bundler/lib/bundler/digest.rb +1 -1
  34. data/bundler/lib/bundler/dsl.rb +3 -3
  35. data/bundler/lib/bundler/env.rb +1 -1
  36. data/bundler/lib/bundler/environment_preserver.rb +1 -0
  37. data/bundler/lib/bundler/errors.rb +1 -11
  38. data/bundler/lib/bundler/fetcher/compact_index.rb +9 -11
  39. data/bundler/lib/bundler/fetcher/dependency.rb +1 -1
  40. data/bundler/lib/bundler/fetcher/downloader.rb +2 -5
  41. data/bundler/lib/bundler/fetcher.rb +2 -6
  42. data/bundler/lib/bundler/force_platform.rb +18 -0
  43. data/bundler/lib/bundler/friendly_errors.rb +0 -3
  44. data/bundler/lib/bundler/gem_version_promoter.rb +52 -86
  45. data/bundler/lib/bundler/graph.rb +3 -3
  46. data/bundler/lib/bundler/index.rb +5 -13
  47. data/bundler/lib/bundler/injector.rb +1 -1
  48. data/bundler/lib/bundler/inline.rb +8 -10
  49. data/bundler/lib/bundler/installer/parallel_installer.rb +0 -31
  50. data/bundler/lib/bundler/installer/standalone.rb +11 -7
  51. data/bundler/lib/bundler/installer.rb +9 -23
  52. data/bundler/lib/bundler/lazy_specification.rb +37 -33
  53. data/bundler/lib/bundler/lockfile_parser.rb +5 -5
  54. data/bundler/lib/bundler/man/bundle-add.1 +1 -1
  55. data/bundler/lib/bundler/man/bundle-binstubs.1 +1 -1
  56. data/bundler/lib/bundler/man/bundle-cache.1 +1 -1
  57. data/bundler/lib/bundler/man/bundle-check.1 +1 -1
  58. data/bundler/lib/bundler/man/bundle-clean.1 +1 -1
  59. data/bundler/lib/bundler/man/bundle-config.1 +2 -2
  60. data/bundler/lib/bundler/man/bundle-config.1.ronn +1 -1
  61. data/bundler/lib/bundler/man/bundle-console.1 +1 -1
  62. data/bundler/lib/bundler/man/bundle-doctor.1 +1 -1
  63. data/bundler/lib/bundler/man/bundle-exec.1 +5 -5
  64. data/bundler/lib/bundler/man/bundle-exec.1.ronn +5 -5
  65. data/bundler/lib/bundler/man/bundle-gem.1 +27 -37
  66. data/bundler/lib/bundler/man/bundle-gem.1.ronn +5 -5
  67. data/bundler/lib/bundler/man/bundle-help.1 +1 -1
  68. data/bundler/lib/bundler/man/bundle-info.1 +1 -1
  69. data/bundler/lib/bundler/man/bundle-init.1 +1 -1
  70. data/bundler/lib/bundler/man/bundle-inject.1 +1 -1
  71. data/bundler/lib/bundler/man/bundle-install.1 +1 -30
  72. data/bundler/lib/bundler/man/bundle-install.1.ronn +0 -29
  73. data/bundler/lib/bundler/man/bundle-list.1 +1 -1
  74. data/bundler/lib/bundler/man/bundle-lock.1 +1 -1
  75. data/bundler/lib/bundler/man/bundle-open.1 +22 -2
  76. data/bundler/lib/bundler/man/bundle-open.1.ronn +9 -1
  77. data/bundler/lib/bundler/man/bundle-outdated.1 +1 -1
  78. data/bundler/lib/bundler/man/bundle-platform.1 +2 -2
  79. data/bundler/lib/bundler/man/bundle-platform.1.ronn +1 -1
  80. data/bundler/lib/bundler/man/bundle-plugin.1 +1 -1
  81. data/bundler/lib/bundler/man/bundle-pristine.1 +1 -1
  82. data/bundler/lib/bundler/man/bundle-remove.1 +1 -1
  83. data/bundler/lib/bundler/man/bundle-show.1 +1 -1
  84. data/bundler/lib/bundler/man/bundle-update.1 +1 -1
  85. data/bundler/lib/bundler/man/bundle-version.1 +1 -1
  86. data/bundler/lib/bundler/man/bundle-viz.1 +1 -1
  87. data/bundler/lib/bundler/man/bundle.1 +1 -1
  88. data/bundler/lib/bundler/man/gemfile.5 +1 -1
  89. data/bundler/lib/bundler/mirror.rb +5 -7
  90. data/bundler/lib/bundler/plugin/index.rb +4 -4
  91. data/bundler/lib/bundler/plugin/installer/rubygems.rb +0 -4
  92. data/bundler/lib/bundler/resolver/base.rb +42 -15
  93. data/bundler/lib/bundler/resolver/candidate.rb +94 -0
  94. data/bundler/lib/bundler/resolver/incompatibility.rb +15 -0
  95. data/bundler/lib/bundler/resolver/package.rb +72 -0
  96. data/bundler/lib/bundler/resolver/root.rb +25 -0
  97. data/bundler/lib/bundler/resolver/spec_group.rb +26 -36
  98. data/bundler/lib/bundler/resolver.rb +314 -278
  99. data/bundler/lib/bundler/rubygems_ext.rb +11 -6
  100. data/bundler/lib/bundler/rubygems_gem_installer.rb +4 -2
  101. data/bundler/lib/bundler/rubygems_integration.rb +9 -13
  102. data/bundler/lib/bundler/runtime.rb +1 -5
  103. data/bundler/lib/bundler/settings.rb +0 -6
  104. data/bundler/lib/bundler/shared_helpers.rb +1 -0
  105. data/bundler/lib/bundler/source/git/git_proxy.rb +193 -67
  106. data/bundler/lib/bundler/source/git.rb +15 -17
  107. data/bundler/lib/bundler/source/metadata.rb +0 -1
  108. data/bundler/lib/bundler/source/path/installer.rb +1 -22
  109. data/bundler/lib/bundler/source/path.rb +5 -5
  110. data/bundler/lib/bundler/source/rubygems.rb +14 -68
  111. data/bundler/lib/bundler/source_list.rb +8 -2
  112. data/bundler/lib/bundler/spec_set.rb +7 -9
  113. data/bundler/lib/bundler/templates/Executable +1 -1
  114. data/bundler/lib/bundler/templates/Executable.bundler +4 -9
  115. data/bundler/lib/bundler/templates/Executable.standalone +2 -0
  116. data/bundler/lib/bundler/templates/newgem/Cargo.toml.tt +7 -0
  117. data/bundler/lib/bundler/templates/newgem/Gemfile.tt +3 -0
  118. data/bundler/lib/bundler/templates/newgem/README.md.tt +6 -4
  119. data/bundler/lib/bundler/templates/newgem/Rakefile.tt +2 -1
  120. data/bundler/lib/bundler/templates/newgem/circleci/config.yml.tt +12 -0
  121. data/bundler/lib/bundler/templates/newgem/ext/newgem/Cargo.toml.tt +15 -0
  122. data/bundler/lib/bundler/templates/newgem/ext/newgem/extconf-rust.rb.tt +6 -0
  123. data/bundler/lib/bundler/templates/newgem/ext/newgem/src/lib.rs.tt +12 -0
  124. data/bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt +10 -0
  125. data/bundler/lib/bundler/templates/newgem/gitignore.tt +3 -0
  126. data/bundler/lib/bundler/templates/newgem/gitlab-ci.yml.tt +8 -0
  127. data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +8 -2
  128. data/bundler/lib/bundler/ui/shell.rb +35 -12
  129. data/bundler/lib/bundler/ui/silent.rb +21 -5
  130. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb +3 -3
  131. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/wrapper.rb +0 -1
  132. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool.rb +3 -1
  133. data/bundler/lib/bundler/vendor/fileutils/lib/fileutils.rb +1350 -408
  134. data/bundler/lib/bundler/vendor/net-http-persistent/README.rdoc +1 -1
  135. data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +1 -1
  136. data/bundler/lib/bundler/vendor/pub_grub/LICENSE.txt +21 -0
  137. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/assignment.rb +20 -0
  138. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/basic_package_source.rb +189 -0
  139. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/failure_writer.rb +182 -0
  140. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/incompatibility.rb +151 -0
  141. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/package.rb +43 -0
  142. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/partial_solution.rb +121 -0
  143. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/rubygems.rb +45 -0
  144. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/solve_failure.rb +19 -0
  145. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/static_package_source.rb +53 -0
  146. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/term.rb +105 -0
  147. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version.rb +3 -0
  148. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_constraint.rb +128 -0
  149. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_range.rb +409 -0
  150. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_solver.rb +240 -0
  151. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_union.rb +178 -0
  152. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub.rb +31 -0
  153. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +1 -1
  154. data/bundler/lib/bundler/vendor/uri/lib/uri/common.rb +64 -16
  155. data/bundler/lib/bundler/vendor/uri/lib/uri/file.rb +7 -1
  156. data/bundler/lib/bundler/vendor/uri/lib/uri/ftp.rb +2 -1
  157. data/bundler/lib/bundler/vendor/uri/lib/uri/generic.rb +27 -7
  158. data/bundler/lib/bundler/vendor/uri/lib/uri/http.rb +40 -2
  159. data/bundler/lib/bundler/vendor/uri/lib/uri/https.rb +2 -1
  160. data/bundler/lib/bundler/vendor/uri/lib/uri/ldap.rb +1 -1
  161. data/bundler/lib/bundler/vendor/uri/lib/uri/ldaps.rb +2 -1
  162. data/bundler/lib/bundler/vendor/uri/lib/uri/mailto.rb +2 -2
  163. data/bundler/lib/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +13 -7
  164. data/bundler/lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +10 -5
  165. data/bundler/lib/bundler/vendor/uri/lib/uri/version.rb +1 -1
  166. data/bundler/lib/bundler/vendor/uri/lib/uri/ws.rb +1 -2
  167. data/bundler/lib/bundler/vendor/uri/lib/uri/wss.rb +2 -1
  168. data/bundler/lib/bundler/vendor/uri/lib/uri.rb +3 -2
  169. data/bundler/lib/bundler/vendored_persistent.rb +1 -33
  170. data/bundler/lib/bundler/{vendored_tmpdir.rb → vendored_pub_grub.rb} +1 -1
  171. data/bundler/lib/bundler/version.rb +5 -1
  172. data/bundler/lib/bundler/worker.rb +5 -7
  173. data/bundler/lib/bundler.rb +20 -64
  174. data/lib/rubygems/command.rb +5 -1
  175. data/lib/rubygems/command_manager.rb +19 -6
  176. data/lib/rubygems/commands/build_command.rb +3 -0
  177. data/lib/rubygems/commands/fetch_command.rb +1 -1
  178. data/lib/rubygems/commands/install_command.rb +7 -3
  179. data/lib/rubygems/commands/owner_command.rb +1 -1
  180. data/lib/rubygems/commands/rdoc_command.rb +3 -2
  181. data/lib/rubygems/commands/setup_command.rb +2 -2
  182. data/lib/rubygems/commands/unpack_command.rb +1 -1
  183. data/lib/rubygems/commands/update_command.rb +1 -7
  184. data/lib/rubygems/config_file.rb +33 -0
  185. data/lib/rubygems/core_ext/kernel_gem.rb +0 -5
  186. data/lib/rubygems/core_ext/kernel_require.rb +116 -113
  187. data/lib/rubygems/core_ext/kernel_warn.rb +33 -37
  188. data/lib/rubygems/defaults.rb +15 -1
  189. data/lib/rubygems/dependency.rb +4 -1
  190. data/lib/rubygems/dependency_installer.rb +24 -24
  191. data/lib/rubygems/exceptions.rb +1 -3
  192. data/lib/rubygems/ext/builder.rb +4 -5
  193. data/lib/rubygems/ext/cargo_builder/link_flag_converter.rb +9 -5
  194. data/lib/rubygems/ext/cargo_builder.rb +144 -109
  195. data/lib/rubygems/ext/ext_conf_builder.rb +2 -0
  196. data/lib/rubygems/indexer.rb +1 -1
  197. data/lib/rubygems/installer.rb +5 -5
  198. data/lib/rubygems/optparse/lib/optparse.rb +20 -15
  199. data/lib/rubygems/package/tar_header.rb +11 -11
  200. data/lib/rubygems/platform.rb +1 -3
  201. data/lib/rubygems/request_set/gem_dependency_api.rb +104 -104
  202. data/lib/rubygems/requirement.rb +7 -7
  203. data/lib/rubygems/resolver/installer_set.rb +1 -1
  204. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph.rb +1 -1
  205. data/lib/rubygems/resolver/molinillo/lib/molinillo/errors.rb +32 -26
  206. data/lib/rubygems/resolver/molinillo/lib/molinillo/gem_metadata.rb +1 -1
  207. data/lib/rubygems/security/policies.rb +40 -40
  208. data/lib/rubygems/security/trust_dir.rb +1 -1
  209. data/lib/rubygems/security.rb +3 -16
  210. data/lib/rubygems/source.rb +2 -2
  211. data/lib/rubygems/specification.rb +37 -49
  212. data/lib/rubygems/specification_policy.rb +14 -0
  213. data/lib/rubygems/stub_specification.rb +2 -2
  214. data/lib/rubygems/text.rb +1 -1
  215. data/lib/rubygems/tsort/lib/tsort.rb +308 -310
  216. data/lib/rubygems/update_suggestion.rb +69 -0
  217. data/lib/rubygems/util.rb +1 -5
  218. data/lib/rubygems/validator.rb +1 -1
  219. data/lib/rubygems.rb +29 -9
  220. data/rubygems-update.gemspec +2 -2
  221. data/test/rubygems/bundler_test_gem.rb +419 -0
  222. data/test/rubygems/helper.rb +7 -3
  223. data/test/rubygems/test_bundled_ca.rb +1 -1
  224. data/test/rubygems/test_exit.rb +6 -0
  225. data/test/rubygems/test_gem.rb +4 -421
  226. data/test/rubygems/test_gem_bundler_version_finder.rb +2 -1
  227. data/test/rubygems/test_gem_command_manager.rb +41 -1
  228. data/test/rubygems/test_gem_commands_build_command.rb +10 -0
  229. data/test/rubygems/test_gem_commands_install_command.rb +19 -0
  230. data/test/rubygems/test_gem_commands_setup_command.rb +1 -8
  231. data/test/rubygems/test_gem_commands_update_command.rb +6 -6
  232. data/test/rubygems/test_gem_config_file.rb +1 -1
  233. data/test/rubygems/test_gem_dependency.rb +2 -0
  234. data/test/rubygems/test_gem_ext_builder.rb +3 -3
  235. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/custom_name.gemspec +2 -4
  236. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/{Cargo.lock → ext/custom_name_lib/Cargo.lock} +22 -32
  237. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/{Cargo.toml → ext/custom_name_lib/Cargo.toml} +1 -1
  238. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/{src → ext/custom_name_lib/src}/lib.rs +1 -1
  239. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/lib/custom_name.rb +1 -0
  240. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.lock +22 -32
  241. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.toml +1 -1
  242. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/src/lib.rs +12 -0
  243. data/test/rubygems/test_gem_ext_cargo_builder.rb +30 -42
  244. data/test/rubygems/test_gem_ext_cargo_builder_link_flag_converter.rb +16 -16
  245. data/test/rubygems/test_gem_ext_cargo_builder_unit.rb +5 -20
  246. data/test/rubygems/test_gem_indexer.rb +39 -20
  247. data/test/rubygems/test_gem_installer.rb +69 -3
  248. data/test/rubygems/test_gem_package_tar_header.rb +13 -13
  249. data/test/rubygems/test_gem_platform.rb +59 -60
  250. data/test/rubygems/test_gem_remote_fetcher.rb +4 -4
  251. data/test/rubygems/test_gem_request_set.rb +2 -2
  252. data/test/rubygems/test_gem_request_set_lockfile_parser.rb +4 -4
  253. data/test/rubygems/test_gem_requirement.rb +1 -1
  254. data/test/rubygems/test_gem_resolver_api_set.rb +12 -12
  255. data/test/rubygems/test_gem_resolver_api_specification.rb +19 -19
  256. data/test/rubygems/test_gem_resolver_git_specification.rb +1 -1
  257. data/test/rubygems/test_gem_security_policy.rb +10 -10
  258. data/test/rubygems/test_gem_security_trust_dir.rb +2 -2
  259. data/test/rubygems/test_gem_specification.rb +50 -37
  260. data/test/rubygems/test_gem_uninstaller.rb +1 -1
  261. data/test/rubygems/test_gem_update_suggestion.rb +208 -0
  262. data/test/rubygems/test_kernel.rb +10 -8
  263. data/test/rubygems/test_require.rb +69 -55
  264. metadata +39 -36
  265. data/bundler/lib/bundler/templates/newgem/travis.yml.tt +0 -6
  266. data/bundler/lib/bundler/vendor/molinillo/LICENSE +0 -9
  267. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb +0 -57
  268. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb +0 -88
  269. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/action.rb +0 -36
  270. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb +0 -66
  271. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_vertex.rb +0 -62
  272. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/delete_edge.rb +0 -63
  273. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb +0 -61
  274. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb +0 -126
  275. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/set_payload.rb +0 -46
  276. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb +0 -36
  277. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb +0 -164
  278. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb +0 -255
  279. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +0 -149
  280. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb +0 -6
  281. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb +0 -112
  282. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/modules/ui.rb +0 -67
  283. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb +0 -839
  284. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/resolver.rb +0 -46
  285. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/state.rb +0 -58
  286. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo.rb +0 -11
  287. data/bundler/lib/bundler/vendor/tmpdir/lib/tmpdir.rb +0 -154
  288. data/bundler/lib/bundler/vendored_molinillo.rb +0 -4
  289. data/bundler/lib/bundler/version_ranges.rb +0 -122
  290. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/build.rb +0 -21
  291. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/build.rb +0 -21
  292. /data/bundler/lib/bundler/templates/newgem/ext/newgem/{extconf.rb.tt → extconf-c.rb.tt} +0 -0
@@ -616,27 +616,6 @@ class TestGem < Gem::TestCase
616
616
  assert_equal %w[https://rubygems.org/], Gem.default_sources
617
617
  end
618
618
 
619
- def test_self_use_gemdeps
620
- with_local_bundler_at(Gem.dir) do
621
- with_rubygems_gemdeps("-") do
622
- FileUtils.mkdir_p "detect/a/b"
623
- FileUtils.mkdir_p "detect/a/Isolate"
624
-
625
- FileUtils.touch "detect/Isolate"
626
-
627
- begin
628
- Dir.chdir "detect/a/b"
629
-
630
- Gem.use_gemdeps
631
-
632
- assert_equal add_bundler_full_name([]), loaded_spec_names
633
- ensure
634
- Dir.chdir @tempdir
635
- end
636
- end
637
- end
638
- end
639
-
640
619
  def test_self_dir
641
620
  assert_equal @gemhome, Gem.dir
642
621
  end
@@ -776,43 +755,6 @@ class TestGem < Gem::TestCase
776
755
  assert_equal cwd, $LOAD_PATH.shift
777
756
  end
778
757
 
779
- def test_self_find_files_with_gemfile
780
- with_local_bundler_at(Gem.dir) do
781
- cwd = File.expand_path("test/rubygems", PROJECT_DIR)
782
- actual_load_path = $LOAD_PATH.unshift(cwd).dup
783
-
784
- discover_path = File.join "lib", "sff", "discover.rb"
785
-
786
- foo1, _ = %w[1 2].map do |version|
787
- spec = quick_gem "sff", version do |s|
788
- s.files << discover_path
789
- end
790
-
791
- write_file(File.join "gems", spec.full_name, discover_path) do |fp|
792
- fp.puts "# #{spec.full_name}"
793
- end
794
-
795
- spec
796
- end
797
- Gem.refresh
798
-
799
- write_file(File.join Dir.pwd, "Gemfile") do |fp|
800
- fp.puts "source 'https://rubygems.org'"
801
- fp.puts "gem '#{foo1.name}', '#{foo1.version}'"
802
- end
803
- Gem.use_gemdeps(File.join Dir.pwd, "Gemfile")
804
-
805
- expected = [
806
- File.expand_path("test/rubygems/sff/discover.rb", PROJECT_DIR),
807
- File.join(foo1.full_gem_path, discover_path),
808
- ].sort
809
-
810
- assert_equal expected, Gem.find_files("sff/discover").sort
811
- assert_equal expected, Gem.find_files("sff/**.rb").sort, "[ruby-core:31730]"
812
- assert_equal cwd, actual_load_path.shift
813
- end
814
- end
815
-
816
758
  def test_self_find_latest_files
817
759
  cwd = File.expand_path("test/rubygems", PROJECT_DIR)
818
760
  $LOAD_PATH.unshift cwd
@@ -1358,8 +1300,8 @@ class TestGem < Gem::TestCase
1358
1300
 
1359
1301
  def test_setting_paths_does_not_warn_about_unknown_keys
1360
1302
  stdout, stderr = capture_output do
1361
- Gem.paths = { "foo" => [],
1362
- "bar" => Object.new,
1303
+ Gem.paths = { "foo" => [],
1304
+ "bar" => Object.new,
1363
1305
  "GEM_HOME" => Gem.paths.home,
1364
1306
  "GEM_PATH" => "foo" }
1365
1307
  end
@@ -1640,168 +1582,6 @@ class TestGem < Gem::TestCase
1640
1582
  "Wrong spec selected"
1641
1583
  end
1642
1584
 
1643
- def test_auto_activation_of_specific_gemdeps_file
1644
- with_local_bundler_at(Gem.dir) do
1645
- a = util_spec "a", "1", nil, "lib/a.rb"
1646
- b = util_spec "b", "1", nil, "lib/b.rb"
1647
- c = util_spec "c", "1", nil, "lib/c.rb"
1648
-
1649
- install_specs a, b, c
1650
-
1651
- path = File.join @tempdir, "gem.deps.rb"
1652
-
1653
- File.open path, "w" do |f|
1654
- f.puts "gem 'a'"
1655
- f.puts "gem 'b'"
1656
- f.puts "gem 'c'"
1657
- end
1658
-
1659
- with_rubygems_gemdeps(path) do
1660
- Gem.use_gemdeps
1661
-
1662
- assert_equal add_bundler_full_name(%W[a-1 b-1 c-1]), loaded_spec_names
1663
- end
1664
- end
1665
- end
1666
-
1667
- def test_auto_activation_of_used_gemdeps_file
1668
- with_local_bundler_at(Gem.dir) do
1669
- a = util_spec "a", "1", nil, "lib/a.rb"
1670
- b = util_spec "b", "1", nil, "lib/b.rb"
1671
- c = util_spec "c", "1", nil, "lib/c.rb"
1672
-
1673
- install_specs a, b, c
1674
-
1675
- path = File.join @tempdir, "gem.deps.rb"
1676
-
1677
- File.open path, "w" do |f|
1678
- f.puts "gem 'a'"
1679
- f.puts "gem 'b'"
1680
- f.puts "gem 'c'"
1681
- end
1682
-
1683
- with_rubygems_gemdeps("-") do
1684
- expected_specs = [a, b, util_spec("bundler", Bundler::VERSION), c].compact.map(&:full_name)
1685
-
1686
- Gem.use_gemdeps
1687
-
1688
- assert_equal expected_specs, loaded_spec_names
1689
- end
1690
- end
1691
- end
1692
-
1693
- def add_bundler_full_name(names)
1694
- names << "bundler-#{Bundler::VERSION}".freeze
1695
- names.sort!
1696
- names
1697
- end
1698
-
1699
- def test_looks_for_gemdeps_files_automatically_from_binstubs
1700
- path = File.join(@tempdir, "gd-tmp")
1701
-
1702
- with_local_bundler_at(path) do
1703
- a = util_spec "a", "1" do |s|
1704
- s.executables = %w[foo]
1705
- s.bindir = "exe"
1706
- end
1707
-
1708
- write_file File.join(@tempdir, "exe", "foo") do |fp|
1709
- fp.puts "puts Gem.loaded_specs.values.map(&:full_name).sort"
1710
- end
1711
-
1712
- b = util_spec "b", "1", nil, "lib/b.rb"
1713
- c = util_spec "c", "1", nil, "lib/c.rb"
1714
-
1715
- install_specs a, b, c
1716
-
1717
- install_gem a, :install_dir => path
1718
- install_gem b, :install_dir => path
1719
- install_gem c, :install_dir => path
1720
-
1721
- ENV["GEM_PATH"] = path
1722
-
1723
- with_rubygems_gemdeps("-") do
1724
- new_PATH = [File.join(path, "bin"), ENV["PATH"]].join(File::PATH_SEPARATOR)
1725
- new_RUBYOPT = "-I#{rubygems_path} -I#{bundler_path}"
1726
-
1727
- path = File.join @tempdir, "gem.deps.rb"
1728
-
1729
- File.open path, "w" do |f|
1730
- f.puts "gem 'a'"
1731
- end
1732
- out0 = with_path_and_rubyopt(new_PATH, new_RUBYOPT) do
1733
- IO.popen("foo", &:read).split(/\n/)
1734
- end
1735
-
1736
- File.open path, "a" do |f|
1737
- f.puts "gem 'b'"
1738
- f.puts "gem 'c'"
1739
- end
1740
- out = with_path_and_rubyopt(new_PATH, new_RUBYOPT) do
1741
- IO.popen("foo", &:read).split(/\n/)
1742
- end
1743
-
1744
- assert_equal ["b-1", "c-1"], out - out0
1745
- end
1746
- end
1747
- end
1748
-
1749
- def test_looks_for_gemdeps_files_automatically_from_binstubs_in_parent_dir
1750
- path = File.join(@tempdir, "gd-tmp")
1751
-
1752
- with_local_bundler_at(path) do
1753
- pend "IO.popen has issues on JRuby when passed :chdir" if Gem.java_platform?
1754
-
1755
- a = util_spec "a", "1" do |s|
1756
- s.executables = %w[foo]
1757
- s.bindir = "exe"
1758
- end
1759
-
1760
- write_file File.join(@tempdir, "exe", "foo") do |fp|
1761
- fp.puts "puts Gem.loaded_specs.values.map(&:full_name).sort"
1762
- end
1763
-
1764
- b = util_spec "b", "1", nil, "lib/b.rb"
1765
- c = util_spec "c", "1", nil, "lib/c.rb"
1766
-
1767
- install_specs a, b, c
1768
-
1769
- install_gem a, :install_dir => path
1770
- install_gem b, :install_dir => path
1771
- install_gem c, :install_dir => path
1772
-
1773
- ENV["GEM_PATH"] = path
1774
-
1775
- with_rubygems_gemdeps("-") do
1776
- Dir.mkdir "sub1"
1777
-
1778
- new_PATH = [File.join(path, "bin"), ENV["PATH"]].join(File::PATH_SEPARATOR)
1779
- new_RUBYOPT = "-I#{rubygems_path} -I#{bundler_path}"
1780
-
1781
- path = File.join @tempdir, "gem.deps.rb"
1782
-
1783
- File.open path, "w" do |f|
1784
- f.puts "gem 'a'"
1785
- end
1786
- out0 = with_path_and_rubyopt(new_PATH, new_RUBYOPT) do
1787
- IO.popen("foo", :chdir => "sub1", &:read).split(/\n/)
1788
- end
1789
-
1790
- File.open path, "a" do |f|
1791
- f.puts "gem 'b'"
1792
- f.puts "gem 'c'"
1793
- end
1794
- out = with_path_and_rubyopt(new_PATH, new_RUBYOPT) do
1795
- IO.popen("foo", :chdir => "sub1", &:read).split(/\n/)
1796
- end
1797
-
1798
- Dir.rmdir "sub1"
1799
-
1800
- assert_equal ["b-1", "c-1"], out - out0
1801
- end
1802
- end
1803
- end
1804
-
1805
1585
  def test_register_default_spec
1806
1586
  Gem.clear_default_specs
1807
1587
 
@@ -1842,162 +1622,6 @@ class TestGem < Gem::TestCase
1842
1622
  assert_equal old_style, Gem.find_unresolved_default_spec("foo.rb")
1843
1623
  end
1844
1624
 
1845
- def test_use_gemdeps
1846
- with_local_bundler_at(Gem.dir) do
1847
- gem_deps_file = "gem.deps.rb".tap(&Gem::UNTAINT)
1848
- spec = util_spec "a", 1
1849
- install_specs spec
1850
-
1851
- spec = Gem::Specification.find {|s| s == spec }
1852
- refute spec.activated?
1853
-
1854
- File.open gem_deps_file, "w" do |io|
1855
- io.write 'gem "a"'
1856
- end
1857
-
1858
- assert_nil Gem.gemdeps
1859
-
1860
- Gem.use_gemdeps gem_deps_file
1861
-
1862
- assert_equal add_bundler_full_name(%W[a-1]), loaded_spec_names
1863
- refute_nil Gem.gemdeps
1864
- end
1865
- end
1866
-
1867
- def test_use_gemdeps_ENV
1868
- with_local_bundler_at(Gem.dir) do
1869
- with_rubygems_gemdeps(nil) do
1870
- spec = util_spec "a", 1
1871
-
1872
- refute spec.activated?
1873
-
1874
- File.open "gem.deps.rb", "w" do |io|
1875
- io.write 'gem "a"'
1876
- end
1877
-
1878
- Gem.use_gemdeps
1879
-
1880
- refute spec.activated?
1881
- end
1882
- end
1883
- end
1884
-
1885
- def test_use_gemdeps_argument_missing
1886
- with_local_bundler_at(Gem.dir) do
1887
- e = assert_raise ArgumentError do
1888
- Gem.use_gemdeps "gem.deps.rb"
1889
- end
1890
-
1891
- assert_equal "Unable to find gem dependencies file at gem.deps.rb",
1892
- e.message
1893
- end
1894
- end
1895
-
1896
- def test_use_gemdeps_argument_missing_match_ENV
1897
- with_local_bundler_at(Gem.dir) do
1898
- with_rubygems_gemdeps("gem.deps.rb") do
1899
- e = assert_raise ArgumentError do
1900
- Gem.use_gemdeps "gem.deps.rb"
1901
- end
1902
-
1903
- assert_equal "Unable to find gem dependencies file at gem.deps.rb",
1904
- e.message
1905
- end
1906
- end
1907
- end
1908
-
1909
- def test_use_gemdeps_automatic
1910
- with_local_bundler_at(Gem.dir) do
1911
- with_rubygems_gemdeps("-") do
1912
- spec = util_spec "a", 1
1913
- install_specs spec
1914
- spec = Gem::Specification.find {|s| s == spec }
1915
-
1916
- refute spec.activated?
1917
-
1918
- File.open "Gemfile", "w" do |io|
1919
- io.write 'gem "a"'
1920
- end
1921
-
1922
- Gem.use_gemdeps
1923
-
1924
- assert_equal add_bundler_full_name(%W[a-1]), loaded_spec_names
1925
- end
1926
- end
1927
- end
1928
-
1929
- def test_use_gemdeps_automatic_missing
1930
- with_local_bundler_at(Gem.dir) do
1931
- with_rubygems_gemdeps("-") do
1932
- Gem.use_gemdeps
1933
-
1934
- assert true # count
1935
- end
1936
- end
1937
- end
1938
-
1939
- def test_use_gemdeps_disabled
1940
- with_local_bundler_at(Gem.dir) do
1941
- with_rubygems_gemdeps("") do
1942
- spec = util_spec "a", 1
1943
-
1944
- refute spec.activated?
1945
-
1946
- File.open "gem.deps.rb", "w" do |io|
1947
- io.write 'gem "a"'
1948
- end
1949
-
1950
- Gem.use_gemdeps
1951
-
1952
- refute spec.activated?
1953
- end
1954
- end
1955
- end
1956
-
1957
- def test_use_gemdeps_missing_gem
1958
- with_local_bundler_at(Gem.dir) do
1959
- with_rubygems_gemdeps("x") do
1960
- File.open "x", "w" do |io|
1961
- io.write 'gem "a"'
1962
- end
1963
-
1964
- expected = <<-EXPECTED
1965
- Could not find gem 'a' in locally installed gems.
1966
- You may need to `bundle install` to install missing gems
1967
-
1968
- EXPECTED
1969
-
1970
- Gem::Deprecate.skip_during do
1971
- actual_stdout, actual_stderr = capture_output do
1972
- Gem.use_gemdeps
1973
- end
1974
- assert_empty actual_stdout
1975
- assert_equal(expected, actual_stderr)
1976
- end
1977
- end
1978
- end
1979
- end
1980
-
1981
- def test_use_gemdeps_specific
1982
- with_local_bundler_at(Gem.dir) do
1983
- with_rubygems_gemdeps("x") do
1984
- spec = util_spec "a", 1
1985
- install_specs spec
1986
-
1987
- spec = Gem::Specification.find {|s| s == spec }
1988
- refute spec.activated?
1989
-
1990
- File.open "x", "w" do |io|
1991
- io.write 'gem "a"'
1992
- end
1993
-
1994
- Gem.use_gemdeps
1995
-
1996
- assert_equal add_bundler_full_name(%W[a-1]), loaded_spec_names
1997
- end
1998
- end
1999
- end
2000
-
2001
1625
  def test_operating_system_defaults
2002
1626
  operating_system_defaults = Gem.operating_system_defaults
2003
1627
 
@@ -2061,13 +1685,8 @@ You may need to `bundle install` to install missing gems
2061
1685
  end
2062
1686
 
2063
1687
  def redefine_method(base, method, new_result)
2064
- if RUBY_VERSION >= "2.5"
2065
- base.alias_method(method, method)
2066
- base.define_method(method) { new_result }
2067
- else
2068
- base.send(:alias_method, method, method)
2069
- base.send(:define_method, method) { new_result }
2070
- end
1688
+ base.alias_method(method, method)
1689
+ base.define_method(method) { new_result }
2071
1690
  end
2072
1691
 
2073
1692
  def with_plugin(path)
@@ -2115,40 +1734,4 @@ You may need to `bundle install` to install missing gems
2115
1734
  def util_cache_dir
2116
1735
  File.join Gem.dir, "cache"
2117
1736
  end
2118
-
2119
- def with_path_and_rubyopt(path_value, rubyopt_value)
2120
- path, ENV["PATH"] = ENV["PATH"], path_value
2121
- rubyopt, ENV["RUBYOPT"] = ENV["RUBYOPT"], rubyopt_value
2122
-
2123
- yield
2124
- ensure
2125
- ENV["PATH"] = path
2126
- ENV["RUBYOPT"] = rubyopt
2127
- end
2128
-
2129
- def with_rubygems_gemdeps(value)
2130
- rubygems_gemdeps, ENV["RUBYGEMS_GEMDEPS"] = ENV["RUBYGEMS_GEMDEPS"], value
2131
-
2132
- yield
2133
- ensure
2134
- ENV["RUBYGEMS_GEMDEPS"] = rubygems_gemdeps
2135
- end
2136
-
2137
- def with_local_bundler_at(path)
2138
- require "bundler"
2139
-
2140
- # If bundler gemspec exists, pretend it's installed
2141
- bundler_gemspec = File.expand_path("../../bundler/bundler.gemspec", __dir__)
2142
- if File.exist?(bundler_gemspec)
2143
- target_gemspec_location = "#{path}/specifications/bundler-#{Bundler::VERSION}.gemspec"
2144
-
2145
- FileUtils.mkdir_p File.dirname(target_gemspec_location)
2146
-
2147
- File.write target_gemspec_location, Gem::Specification.load(bundler_gemspec).to_ruby_for_cache
2148
- end
2149
-
2150
- yield
2151
- ensure
2152
- Bundler.reset!
2153
- end
2154
1737
  end
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  require_relative "helper"
3
+ require "rubygems/bundler_version_finder"
3
4
 
4
5
  class TestGemBundlerVersionFinder < Gem::TestCase
5
6
  def setup
@@ -78,7 +79,7 @@ class TestGemBundlerVersionFinder < Gem::TestCase
78
79
 
79
80
  def test_deleted_directory
80
81
  pend "Cannot perform this test on windows" if win_platform?
81
- pend "Cannot perform this test on Solaris" if /solaris/ =~ RUBY_PLATFORM
82
+ pend "Cannot perform this test on Solaris" if RUBY_PLATFORM.include?("solaris")
82
83
  require "tmpdir"
83
84
 
84
85
  orig_dir = Dir.pwd
@@ -76,7 +76,7 @@ class TestGemCommandManager < Gem::TestCase
76
76
 
77
77
  message = "Unknown command pish".dup
78
78
 
79
- if RUBY_VERSION >= "2.4" && defined?(DidYouMean::SPELL_CHECKERS) && defined?(DidYouMean::Correctable)
79
+ if defined?(DidYouMean::SPELL_CHECKERS) && defined?(DidYouMean::Correctable)
80
80
  message << "\nDid you mean? \"push\""
81
81
  end
82
82
 
@@ -126,6 +126,46 @@ class TestGemCommandManager < Gem::TestCase
126
126
  @command_manager.unregister_command :crash
127
127
  end
128
128
 
129
+ def test_process_args_with_c_flag
130
+ custom_start_point = File.join @tempdir, "nice_folder"
131
+ FileUtils.mkdir_p custom_start_point
132
+
133
+ execution_path = nil
134
+ use_ui @ui do
135
+ @command_manager[:install].when_invoked do
136
+ execution_path = Dir.pwd
137
+ true
138
+ end
139
+ @command_manager.process_args %W[-C #{custom_start_point} install net-scp-4.0.0.gem --local]
140
+ end
141
+
142
+ assert_equal custom_start_point, execution_path
143
+ end
144
+
145
+ def test_process_args_with_c_flag_without_path
146
+ use_ui @ui do
147
+ assert_raise Gem::MockGemUi::TermError do
148
+ @command_manager.process_args %w[-C install net-scp-4.0.0.gem --local]
149
+ end
150
+ end
151
+
152
+ assert_match(/install isn't a directory./i, @ui.error)
153
+ end
154
+
155
+ def test_process_args_with_c_flag_path_not_found
156
+ custom_start_point = File.join @tempdir, "nice_folder"
157
+ FileUtils.mkdir_p custom_start_point
158
+ custom_start_point.tr!("_", "-")
159
+
160
+ use_ui @ui do
161
+ assert_raise Gem::MockGemUi::TermError do
162
+ @command_manager.process_args %W[-C #{custom_start_point} install net-scp-4.0.0.gem --local]
163
+ end
164
+ end
165
+
166
+ assert_match(/#{custom_start_point} isn't a directory./i, @ui.error)
167
+ end
168
+
129
169
  def test_process_args_bad_arg
130
170
  use_ui @ui do
131
171
  assert_raise Gem::MockGemUi::TermError do
@@ -41,6 +41,16 @@ class TestGemCommandsBuildCommand < Gem::TestCase
41
41
  assert_includes Gem.platforms, Gem::Platform.local
42
42
  end
43
43
 
44
+ def test_handle_deprecated_options
45
+ use_ui @ui do
46
+ @cmd.handle_options %w[-C ./test/dir]
47
+ end
48
+
49
+ assert_equal "WARNING: The \"-C\" option has been deprecated and will be removed in Rubygems 4.0. " \
50
+ "-C is a global flag now. Use `gem -C PATH build GEMSPEC_FILE [options]` instead\n",
51
+ @ui.error
52
+ end
53
+
44
54
  def test_options_filename
45
55
  gemspec_file = File.join(@tempdir, @gem.spec_name)
46
56
 
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  require_relative "helper"
3
+ require_relative "test_gem_update_suggestion"
3
4
  require "rubygems/commands/install_command"
4
5
  require "rubygems/request_set"
5
6
  require "rubygems/rdoc"
@@ -1550,4 +1551,22 @@ ERROR: Possible alternatives: non_existent_with_hint
1550
1551
  assert_equal " a-3", out.shift
1551
1552
  assert_empty out
1552
1553
  end
1554
+
1555
+ def test_suggest_update_if_enabled
1556
+ TestUpdateSuggestion.with_eglible_environment(cmd: @cmd) do
1557
+ spec_fetcher do |fetcher|
1558
+ fetcher.gem "a", 2
1559
+ end
1560
+
1561
+ @cmd.options[:args] = %w[a]
1562
+
1563
+ use_ui @ui do
1564
+ assert_raise Gem::MockGemUi::SystemExitException, @ui.error do
1565
+ @cmd.execute
1566
+ end
1567
+ end
1568
+
1569
+ assert_includes @ui.output, "A new release of RubyGems is available: 1.2.3 → 2.0.0!"
1570
+ end
1571
+ end
1553
1572
  end
@@ -15,6 +15,7 @@ class TestGemCommandsSetupCommand < Gem::TestCase
15
15
  super
16
16
 
17
17
  @cmd = Gem::Commands::SetupCommand.new
18
+ @cmd.options[:document] = []
18
19
 
19
20
  filelist = %w[
20
21
  bin/gem
@@ -66,7 +67,6 @@ class TestGemCommandsSetupCommand < Gem::TestCase
66
67
  io.puts "I changed it!"
67
68
  end
68
69
 
69
- @cmd.options[:document] = []
70
70
  @cmd.execute
71
71
 
72
72
  assert_match %r{\A#!}, File.read(gem_bin_path)
@@ -78,7 +78,6 @@ class TestGemCommandsSetupCommand < Gem::TestCase
78
78
  io.puts "I changed it!"
79
79
  end
80
80
 
81
- @cmd.options[:document] = []
82
81
  @cmd.options[:regenerate_binstubs] = false
83
82
  @cmd.execute
84
83
 
@@ -91,7 +90,6 @@ class TestGemCommandsSetupCommand < Gem::TestCase
91
90
  io.puts "I changed it!"
92
91
  end
93
92
 
94
- @cmd.options[:document] = []
95
93
  @cmd.execute
96
94
 
97
95
  assert_match %r{\Arequire}, File.read(gem_plugin_path)
@@ -103,7 +101,6 @@ class TestGemCommandsSetupCommand < Gem::TestCase
103
101
  io.puts "I changed it!"
104
102
  end
105
103
 
106
- @cmd.options[:document] = []
107
104
  @cmd.options[:regenerate_plugins] = false
108
105
  @cmd.execute
109
106
 
@@ -116,15 +113,12 @@ class TestGemCommandsSetupCommand < Gem::TestCase
116
113
  # Simulate gem installed with an older rubygems without a plugins layout
117
114
  FileUtils.rm_rf Gem.plugindir
118
115
 
119
- @cmd.options[:document] = []
120
116
  @cmd.execute
121
117
 
122
118
  assert_match %r{\Arequire}, File.read(gem_plugin_path)
123
119
  end
124
120
 
125
121
  def test_execute_informs_about_installed_executables
126
- @cmd.options[:document] = []
127
-
128
122
  use_ui @ui do
129
123
  @cmd.execute
130
124
  end
@@ -143,7 +137,6 @@ class TestGemCommandsSetupCommand < Gem::TestCase
143
137
  io.puts "I changed it!"
144
138
  end
145
139
 
146
- @cmd.options[:document] = []
147
140
  @cmd.options[:env_shebang] = true
148
141
  @cmd.execute
149
142
 
@@ -669,10 +669,10 @@ class TestGemCommandsUpdateCommand < Gem::TestCase
669
669
  @cmd.handle_options %w[--system]
670
670
 
671
671
  expected = {
672
- :args => [],
672
+ :args => [],
673
673
  :document => %w[ri],
674
- :force => false,
675
- :system => true,
674
+ :force => false,
675
+ :system => true,
676
676
  }
677
677
 
678
678
  assert_equal expected, @cmd.options
@@ -688,10 +688,10 @@ class TestGemCommandsUpdateCommand < Gem::TestCase
688
688
  @cmd.handle_options %w[--system 1.3.7]
689
689
 
690
690
  expected = {
691
- :args => [],
691
+ :args => [],
692
692
  :document => %w[ri],
693
- :force => false,
694
- :system => "1.3.7",
693
+ :force => false,
694
+ :system => "1.3.7",
695
695
  }
696
696
 
697
697
  assert_equal expected, @cmd.options
@@ -330,7 +330,7 @@ if you believe they were disclosed to a third party.
330
330
  util_config_file
331
331
 
332
332
  assert_equal({ :rubygems => "701229f217cdf23b1344c7b4b54ca97",
333
- :other => "a5fdbb6ba150cbb83aad2bb2fede64c" }, @cfg.api_keys)
333
+ :other => "a5fdbb6ba150cbb83aad2bb2fede64c" }, @cfg.api_keys)
334
334
  end
335
335
 
336
336
  def test_load_api_keys_bad_permission
@@ -358,6 +358,8 @@ class TestGemDependency < Gem::TestCase
358
358
 
359
359
  assert_equal [b, b_1], dep.to_specs
360
360
 
361
+ require "rubygems/bundler_version_finder"
362
+
361
363
  Gem::BundlerVersionFinder.stub(:bundler_version, Gem::Version.new("1")) do
362
364
  assert_equal [b_1, b], dep.to_specs
363
365
  end