rubygems-update 3.2.30 → 3.4.10

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 (641) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +1666 -994
  3. data/CONTRIBUTING.md +71 -15
  4. data/Manifest.txt +93 -37
  5. data/POLICIES.md +65 -16
  6. data/README.md +28 -13
  7. data/UPGRADING.md +5 -81
  8. data/bin/gem +2 -10
  9. data/bin/update_rubygems +5 -5
  10. data/bundler/CHANGELOG.md +647 -1
  11. data/bundler/README.md +3 -6
  12. data/bundler/UPGRADING.md +11 -4
  13. data/bundler/bundler.gemspec +8 -10
  14. data/bundler/exe/bundle +7 -11
  15. data/bundler/exe/bundler +1 -1
  16. data/bundler/lib/bundler/.document +1 -0
  17. data/bundler/lib/bundler/build_metadata.rb +3 -3
  18. data/bundler/lib/bundler/cli/add.rb +1 -1
  19. data/bundler/lib/bundler/cli/binstubs.rb +5 -1
  20. data/bundler/lib/bundler/cli/check.rb +1 -1
  21. data/bundler/lib/bundler/cli/common.rb +4 -2
  22. data/bundler/lib/bundler/cli/config.rb +10 -1
  23. data/bundler/lib/bundler/cli/console.rb +2 -2
  24. data/bundler/lib/bundler/cli/doctor.rb +10 -3
  25. data/bundler/lib/bundler/cli/gem.rb +136 -42
  26. data/bundler/lib/bundler/cli/info.rb +17 -3
  27. data/bundler/lib/bundler/cli/init.rb +6 -2
  28. data/bundler/lib/bundler/cli/install.rb +15 -33
  29. data/bundler/lib/bundler/cli/lock.rb +8 -5
  30. data/bundler/lib/bundler/cli/open.rb +6 -4
  31. data/bundler/lib/bundler/cli/outdated.rb +13 -6
  32. data/bundler/lib/bundler/cli/platform.rb +2 -2
  33. data/bundler/lib/bundler/cli/show.rb +1 -1
  34. data/bundler/lib/bundler/cli/update.rb +8 -4
  35. data/bundler/lib/bundler/cli/viz.rb +1 -1
  36. data/bundler/lib/bundler/cli.rb +67 -21
  37. data/bundler/lib/bundler/compact_index_client/cache.rb +1 -10
  38. data/bundler/lib/bundler/compact_index_client/updater.rb +53 -44
  39. data/bundler/lib/bundler/compact_index_client.rb +0 -6
  40. data/bundler/lib/bundler/constants.rb +1 -1
  41. data/bundler/lib/bundler/current_ruby.rb +18 -6
  42. data/bundler/lib/bundler/definition.rb +259 -242
  43. data/bundler/lib/bundler/dependency.rb +24 -71
  44. data/bundler/lib/bundler/digest.rb +1 -1
  45. data/bundler/lib/bundler/dsl.rb +29 -46
  46. data/bundler/lib/bundler/endpoint_specification.rb +15 -13
  47. data/bundler/lib/bundler/env.rb +2 -2
  48. data/bundler/lib/bundler/environment_preserver.rb +7 -3
  49. data/bundler/lib/bundler/errors.rb +15 -15
  50. data/bundler/lib/bundler/feature_flag.rb +0 -1
  51. data/bundler/lib/bundler/fetcher/base.rb +6 -8
  52. data/bundler/lib/bundler/fetcher/compact_index.rb +18 -25
  53. data/bundler/lib/bundler/fetcher/dependency.rb +2 -6
  54. data/bundler/lib/bundler/fetcher/downloader.rb +2 -5
  55. data/bundler/lib/bundler/fetcher/index.rb +0 -26
  56. data/bundler/lib/bundler/fetcher.rb +22 -29
  57. data/bundler/lib/bundler/force_platform.rb +18 -0
  58. data/bundler/lib/bundler/friendly_errors.rb +21 -7
  59. data/bundler/lib/bundler/gem_helper.rb +4 -4
  60. data/bundler/lib/bundler/gem_helpers.rb +9 -2
  61. data/bundler/lib/bundler/gem_version_promoter.rb +53 -98
  62. data/bundler/lib/bundler/graph.rb +3 -3
  63. data/bundler/lib/bundler/index.rb +13 -51
  64. data/bundler/lib/bundler/injector.rb +18 -4
  65. data/bundler/lib/bundler/inline.rb +9 -21
  66. data/bundler/lib/bundler/installer/gem_installer.rb +13 -5
  67. data/bundler/lib/bundler/installer/parallel_installer.rb +3 -33
  68. data/bundler/lib/bundler/installer/standalone.rb +42 -11
  69. data/bundler/lib/bundler/installer.rb +20 -44
  70. data/bundler/lib/bundler/lazy_specification.rb +72 -55
  71. data/bundler/lib/bundler/lockfile_generator.rb +3 -3
  72. data/bundler/lib/bundler/lockfile_parser.rb +28 -26
  73. data/bundler/lib/bundler/man/bundle-add.1 +21 -5
  74. data/bundler/lib/bundler/man/bundle-add.1.ronn +16 -4
  75. data/bundler/lib/bundler/man/bundle-binstubs.1 +1 -1
  76. data/bundler/lib/bundler/man/bundle-cache.1 +7 -1
  77. data/bundler/lib/bundler/man/bundle-cache.1.ronn +7 -0
  78. data/bundler/lib/bundler/man/bundle-check.1 +1 -1
  79. data/bundler/lib/bundler/man/bundle-clean.1 +2 -2
  80. data/bundler/lib/bundler/man/bundle-clean.1.ronn +1 -1
  81. data/bundler/lib/bundler/man/bundle-config.1 +34 -15
  82. data/bundler/lib/bundler/man/bundle-config.1.ronn +31 -19
  83. data/bundler/lib/bundler/man/bundle-console.1 +53 -0
  84. data/bundler/lib/bundler/man/bundle-console.1.ronn +44 -0
  85. data/bundler/lib/bundler/man/bundle-doctor.1 +1 -1
  86. data/bundler/lib/bundler/man/bundle-exec.1 +6 -6
  87. data/bundler/lib/bundler/man/bundle-exec.1.ronn +6 -6
  88. data/bundler/lib/bundler/man/bundle-gem.1 +37 -34
  89. data/bundler/lib/bundler/man/bundle-gem.1.ronn +21 -5
  90. data/bundler/lib/bundler/man/bundle-help.1 +13 -0
  91. data/bundler/lib/bundler/man/bundle-help.1.ronn +12 -0
  92. data/bundler/lib/bundler/man/bundle-info.1 +1 -1
  93. data/bundler/lib/bundler/man/bundle-init.1 +5 -1
  94. data/bundler/lib/bundler/man/bundle-init.1.ronn +2 -0
  95. data/bundler/lib/bundler/man/bundle-inject.1 +5 -2
  96. data/bundler/lib/bundler/man/bundle-inject.1.ronn +3 -1
  97. data/bundler/lib/bundler/man/bundle-install.1 +6 -31
  98. data/bundler/lib/bundler/man/bundle-install.1.ronn +8 -31
  99. data/bundler/lib/bundler/man/bundle-list.1 +1 -1
  100. data/bundler/lib/bundler/man/bundle-lock.1 +1 -1
  101. data/bundler/lib/bundler/man/bundle-open.1 +22 -2
  102. data/bundler/lib/bundler/man/bundle-open.1.ronn +9 -1
  103. data/bundler/lib/bundler/man/bundle-outdated.1 +3 -10
  104. data/bundler/lib/bundler/man/bundle-outdated.1.ronn +1 -10
  105. data/bundler/lib/bundler/man/bundle-platform.1 +16 -6
  106. data/bundler/lib/bundler/man/bundle-platform.1.ronn +14 -7
  107. data/bundler/lib/bundler/man/bundle-plugin.1 +81 -0
  108. data/bundler/lib/bundler/man/bundle-plugin.1.ronn +59 -0
  109. data/bundler/lib/bundler/man/bundle-pristine.1 +1 -1
  110. data/bundler/lib/bundler/man/bundle-remove.1 +1 -1
  111. data/bundler/lib/bundler/man/bundle-show.1 +1 -1
  112. data/bundler/lib/bundler/man/bundle-update.1 +2 -2
  113. data/bundler/lib/bundler/man/bundle-update.1.ronn +2 -1
  114. data/bundler/lib/bundler/man/bundle-version.1 +35 -0
  115. data/bundler/lib/bundler/man/bundle-version.1.ronn +24 -0
  116. data/bundler/lib/bundler/man/bundle-viz.1 +4 -1
  117. data/bundler/lib/bundler/man/bundle-viz.1.ronn +2 -0
  118. data/bundler/lib/bundler/man/bundle.1 +15 -10
  119. data/bundler/lib/bundler/man/bundle.1.ronn +12 -7
  120. data/bundler/lib/bundler/man/gemfile.5 +117 -80
  121. data/bundler/lib/bundler/man/gemfile.5.ronn +105 -84
  122. data/bundler/lib/bundler/man/index.txt +4 -0
  123. data/bundler/lib/bundler/match_metadata.rb +13 -0
  124. data/bundler/lib/bundler/match_platform.rb +0 -1
  125. data/bundler/lib/bundler/match_remote_metadata.rb +29 -0
  126. data/bundler/lib/bundler/mirror.rb +5 -7
  127. data/bundler/lib/bundler/plugin/api/source.rb +4 -9
  128. data/bundler/lib/bundler/plugin/index.rb +4 -4
  129. data/bundler/lib/bundler/plugin/installer/git.rb +0 -4
  130. data/bundler/lib/bundler/plugin/installer/rubygems.rb +0 -8
  131. data/bundler/lib/bundler/plugin/installer.rb +6 -3
  132. data/bundler/lib/bundler/plugin.rb +3 -1
  133. data/bundler/lib/bundler/process_lock.rb +1 -1
  134. data/bundler/lib/bundler/remote_specification.rb +7 -5
  135. data/bundler/lib/bundler/resolver/base.rb +109 -0
  136. data/bundler/lib/bundler/resolver/candidate.rb +94 -0
  137. data/bundler/lib/bundler/resolver/incompatibility.rb +15 -0
  138. data/bundler/lib/bundler/resolver/package.rb +72 -0
  139. data/bundler/lib/bundler/resolver/root.rb +25 -0
  140. data/bundler/lib/bundler/resolver/spec_group.rb +43 -71
  141. data/bundler/lib/bundler/resolver.rb +332 -308
  142. data/bundler/lib/bundler/ruby_dsl.rb +1 -1
  143. data/bundler/lib/bundler/ruby_version.rb +5 -18
  144. data/bundler/lib/bundler/rubygems_ext.rb +144 -25
  145. data/bundler/lib/bundler/rubygems_gem_installer.rb +32 -20
  146. data/bundler/lib/bundler/rubygems_integration.rb +24 -95
  147. data/bundler/lib/bundler/runtime.rb +2 -7
  148. data/bundler/lib/bundler/self_manager.rb +168 -0
  149. data/bundler/lib/bundler/settings.rb +5 -10
  150. data/bundler/lib/bundler/setup.rb +4 -1
  151. data/bundler/lib/bundler/shared_helpers.rb +17 -25
  152. data/bundler/lib/bundler/source/git/git_proxy.rb +219 -71
  153. data/bundler/lib/bundler/source/git.rb +23 -26
  154. data/bundler/lib/bundler/source/metadata.rb +3 -4
  155. data/bundler/lib/bundler/source/path/installer.rb +1 -22
  156. data/bundler/lib/bundler/source/path.rb +7 -7
  157. data/bundler/lib/bundler/source/rubygems.rb +91 -130
  158. data/bundler/lib/bundler/source/rubygems_aggregate.rb +1 -1
  159. data/bundler/lib/bundler/source.rb +4 -5
  160. data/bundler/lib/bundler/source_list.rb +19 -31
  161. data/bundler/lib/bundler/source_map.rb +15 -2
  162. data/bundler/lib/bundler/spec_set.rb +63 -35
  163. data/bundler/lib/bundler/stub_specification.rb +5 -3
  164. data/bundler/lib/bundler/templates/Executable +3 -5
  165. data/bundler/lib/bundler/templates/Executable.bundler +6 -11
  166. data/bundler/lib/bundler/templates/Executable.standalone +4 -4
  167. data/bundler/lib/bundler/templates/Gemfile +0 -2
  168. data/bundler/lib/bundler/templates/newgem/Cargo.toml.tt +7 -0
  169. data/bundler/lib/bundler/templates/newgem/Gemfile.tt +8 -2
  170. data/bundler/lib/bundler/templates/newgem/README.md.tt +7 -11
  171. data/bundler/lib/bundler/templates/newgem/Rakefile.tt +27 -3
  172. data/bundler/lib/bundler/templates/newgem/circleci/config.yml.tt +12 -0
  173. data/bundler/lib/bundler/templates/newgem/ext/newgem/Cargo.toml.tt +15 -0
  174. data/bundler/lib/bundler/templates/newgem/ext/newgem/extconf-rust.rb.tt +6 -0
  175. data/bundler/lib/bundler/templates/newgem/ext/newgem/src/lib.rs.tt +12 -0
  176. data/bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt +13 -3
  177. data/bundler/lib/bundler/templates/newgem/gitignore.tt +3 -0
  178. data/bundler/lib/bundler/templates/newgem/gitlab-ci.yml.tt +13 -4
  179. data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +22 -16
  180. data/bundler/lib/bundler/templates/newgem/sig/newgem.rbs.tt +8 -0
  181. data/bundler/lib/bundler/templates/newgem/standard.yml.tt +3 -0
  182. data/bundler/lib/bundler/templates/newgem/test/minitest/{newgem_test.rb.tt → test_newgem.rb.tt} +1 -1
  183. data/bundler/lib/bundler/ui/shell.rb +36 -13
  184. data/bundler/lib/bundler/ui/silent.rb +21 -5
  185. data/bundler/lib/bundler/uri_normalizer.rb +23 -0
  186. data/bundler/lib/bundler/vendor/.document +1 -0
  187. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb +3 -3
  188. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/wrapper.rb +0 -1
  189. data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool.rb +3 -1
  190. data/bundler/lib/bundler/vendor/fileutils/lib/fileutils.rb +1350 -408
  191. data/bundler/lib/bundler/vendor/net-http-persistent/README.rdoc +1 -1
  192. data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +1 -1
  193. data/bundler/lib/bundler/vendor/pub_grub/LICENSE.txt +21 -0
  194. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/assignment.rb +20 -0
  195. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/basic_package_source.rb +189 -0
  196. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/failure_writer.rb +182 -0
  197. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/incompatibility.rb +150 -0
  198. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/package.rb +43 -0
  199. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/partial_solution.rb +121 -0
  200. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/rubygems.rb +45 -0
  201. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/solve_failure.rb +19 -0
  202. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/static_package_source.rb +60 -0
  203. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/term.rb +105 -0
  204. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version.rb +3 -0
  205. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_constraint.rb +129 -0
  206. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_range.rb +411 -0
  207. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_solver.rb +243 -0
  208. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_union.rb +178 -0
  209. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub.rb +31 -0
  210. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +6 -6
  211. data/bundler/lib/bundler/vendor/thor/lib/thor/actions/inject_into_file.rb +1 -2
  212. data/bundler/lib/bundler/vendor/thor/lib/thor/actions.rb +6 -2
  213. data/bundler/lib/bundler/vendor/thor/lib/thor/core_ext/hash_with_indifferent_access.rb +6 -0
  214. data/bundler/lib/bundler/vendor/thor/lib/thor/error.rb +9 -4
  215. data/bundler/lib/bundler/vendor/thor/lib/thor/parser/options.rb +19 -1
  216. data/bundler/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +23 -5
  217. data/bundler/lib/bundler/vendor/thor/lib/thor/shell.rb +1 -1
  218. data/bundler/lib/bundler/vendor/thor/lib/thor/util.rb +1 -1
  219. data/bundler/lib/bundler/vendor/thor/lib/thor/version.rb +1 -1
  220. data/bundler/lib/bundler/vendor/tsort/LICENSE.txt +22 -0
  221. data/bundler/lib/bundler/vendor/tsort/lib/tsort.rb +452 -0
  222. data/bundler/lib/bundler/vendor/uri/lib/uri/common.rb +76 -91
  223. data/bundler/lib/bundler/vendor/uri/lib/uri/file.rb +7 -1
  224. data/bundler/lib/bundler/vendor/uri/lib/uri/ftp.rb +2 -2
  225. data/bundler/lib/bundler/vendor/uri/lib/uri/generic.rb +32 -13
  226. data/bundler/lib/bundler/vendor/uri/lib/uri/http.rb +40 -3
  227. data/bundler/lib/bundler/vendor/uri/lib/uri/https.rb +2 -2
  228. data/bundler/lib/bundler/vendor/uri/lib/uri/ldap.rb +2 -2
  229. data/bundler/lib/bundler/vendor/uri/lib/uri/ldaps.rb +2 -1
  230. data/bundler/lib/bundler/vendor/uri/lib/uri/mailto.rb +2 -3
  231. data/bundler/lib/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +14 -21
  232. data/bundler/lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +11 -17
  233. data/bundler/lib/bundler/vendor/uri/lib/uri/version.rb +1 -1
  234. data/bundler/lib/bundler/vendor/uri/lib/uri/ws.rb +83 -0
  235. data/bundler/lib/bundler/vendor/uri/lib/uri/wss.rb +23 -0
  236. data/bundler/lib/bundler/vendor/uri/lib/uri.rb +3 -3
  237. data/bundler/lib/bundler/vendored_persistent.rb +1 -33
  238. data/bundler/lib/bundler/{vendored_molinillo.rb → vendored_pub_grub.rb} +1 -1
  239. data/bundler/lib/bundler/{vendored_tmpdir.rb → vendored_tsort.rb} +1 -1
  240. data/bundler/lib/bundler/version.rb +5 -1
  241. data/bundler/lib/bundler/worker.rb +5 -7
  242. data/bundler/lib/bundler.rb +50 -77
  243. data/hide_lib_for_update/note.txt +0 -4
  244. data/lib/rubygems/available_set.rb +3 -3
  245. data/lib/rubygems/basic_specification.rb +12 -12
  246. data/lib/rubygems/bundler_version_finder.rb +14 -46
  247. data/lib/rubygems/command.rb +47 -39
  248. data/lib/rubygems/command_manager.rb +34 -13
  249. data/lib/rubygems/commands/build_command.rb +11 -8
  250. data/lib/rubygems/commands/cert_command.rb +39 -39
  251. data/lib/rubygems/commands/check_command.rb +20 -20
  252. data/lib/rubygems/commands/cleanup_command.rb +23 -23
  253. data/lib/rubygems/commands/contents_command.rb +13 -13
  254. data/lib/rubygems/commands/dependency_command.rb +35 -45
  255. data/lib/rubygems/commands/environment_command.rb +10 -7
  256. data/lib/rubygems/commands/exec_command.rb +248 -0
  257. data/lib/rubygems/commands/fetch_command.rb +32 -13
  258. data/lib/rubygems/commands/generate_index_command.rb +17 -17
  259. data/lib/rubygems/commands/help_command.rb +6 -6
  260. data/lib/rubygems/commands/info_command.rb +3 -3
  261. data/lib/rubygems/commands/install_command.rb +31 -24
  262. data/lib/rubygems/commands/list_command.rb +4 -4
  263. data/lib/rubygems/commands/lock_command.rb +4 -4
  264. data/lib/rubygems/commands/mirror_command.rb +3 -3
  265. data/lib/rubygems/commands/open_command.rb +9 -9
  266. data/lib/rubygems/commands/outdated_command.rb +5 -5
  267. data/lib/rubygems/commands/owner_command.rb +17 -12
  268. data/lib/rubygems/commands/pristine_command.rb +64 -49
  269. data/lib/rubygems/commands/push_command.rb +16 -16
  270. data/lib/rubygems/commands/query_command.rb +9 -9
  271. data/lib/rubygems/commands/rdoc_command.rb +26 -25
  272. data/lib/rubygems/commands/search_command.rb +4 -4
  273. data/lib/rubygems/commands/server_command.rb +16 -79
  274. data/lib/rubygems/commands/setup_command.rb +172 -173
  275. data/lib/rubygems/commands/signin_command.rb +9 -9
  276. data/lib/rubygems/commands/signout_command.rb +7 -7
  277. data/lib/rubygems/commands/sources_command.rb +22 -22
  278. data/lib/rubygems/commands/specification_command.rb +18 -18
  279. data/lib/rubygems/commands/stale_command.rb +2 -2
  280. data/lib/rubygems/commands/uninstall_command.rb +43 -40
  281. data/lib/rubygems/commands/unpack_command.rb +13 -13
  282. data/lib/rubygems/commands/update_command.rb +61 -72
  283. data/lib/rubygems/commands/which_command.rb +7 -7
  284. data/lib/rubygems/commands/yank_command.rb +11 -11
  285. data/lib/rubygems/compatibility.rb +4 -2
  286. data/lib/rubygems/config_file.rb +58 -25
  287. data/lib/rubygems/core_ext/kernel_gem.rb +1 -6
  288. data/lib/rubygems/core_ext/kernel_require.rb +108 -115
  289. data/lib/rubygems/core_ext/kernel_warn.rb +33 -37
  290. data/lib/rubygems/core_ext/tcpsocket_init.rb +1 -1
  291. data/lib/rubygems/defaults.rb +32 -36
  292. data/lib/rubygems/dependency.rb +20 -17
  293. data/lib/rubygems/dependency_installer.rb +37 -37
  294. data/lib/rubygems/dependency_list.rb +7 -7
  295. data/lib/rubygems/deprecate.rb +55 -8
  296. data/lib/rubygems/doctor.rb +21 -21
  297. data/lib/rubygems/errors.rb +3 -6
  298. data/lib/rubygems/exceptions.rb +35 -7
  299. data/lib/rubygems/ext/build_error.rb +1 -1
  300. data/lib/rubygems/ext/builder.rb +51 -22
  301. data/lib/rubygems/ext/cargo_builder/link_flag_converter.rb +27 -0
  302. data/lib/rubygems/ext/cargo_builder.rb +360 -0
  303. data/lib/rubygems/ext/cmake_builder.rb +2 -2
  304. data/lib/rubygems/ext/configure_builder.rb +1 -1
  305. data/lib/rubygems/ext/ext_conf_builder.rb +35 -59
  306. data/lib/rubygems/ext/rake_builder.rb +3 -3
  307. data/lib/rubygems/ext.rb +7 -6
  308. data/lib/rubygems/gem_runner.rb +12 -16
  309. data/lib/rubygems/gemcutter_utilities.rb +60 -21
  310. data/lib/rubygems/indexer.rb +30 -28
  311. data/lib/rubygems/install_default_message.rb +2 -2
  312. data/lib/rubygems/install_message.rb +2 -2
  313. data/lib/rubygems/install_update_options.rb +70 -61
  314. data/lib/rubygems/installer.rb +135 -87
  315. data/lib/rubygems/installer_uninstaller_utils.rb +2 -2
  316. data/lib/rubygems/local_remote_options.rb +22 -24
  317. data/lib/rubygems/mock_gem_ui.rb +2 -2
  318. data/lib/rubygems/name_tuple.rb +6 -7
  319. data/lib/rubygems/optparse/.document +1 -0
  320. data/lib/rubygems/optparse/COPYING +56 -0
  321. data/lib/rubygems/optparse/lib/optionparser.rb +2 -0
  322. data/lib/rubygems/optparse/lib/optparse/ac.rb +54 -0
  323. data/lib/rubygems/optparse/lib/optparse/date.rb +18 -0
  324. data/lib/rubygems/optparse/lib/optparse/kwargs.rb +22 -0
  325. data/lib/rubygems/optparse/lib/optparse/shellwords.rb +7 -0
  326. data/lib/rubygems/optparse/lib/optparse/time.rb +11 -0
  327. data/lib/rubygems/optparse/lib/optparse/uri.rb +7 -0
  328. data/lib/rubygems/optparse/lib/optparse/version.rb +71 -0
  329. data/lib/rubygems/optparse/lib/optparse.rb +2308 -0
  330. data/lib/rubygems/optparse.rb +3 -0
  331. data/lib/rubygems/package/file_source.rb +2 -2
  332. data/lib/rubygems/package/old.rb +9 -9
  333. data/lib/rubygems/package/tar_header.rb +62 -62
  334. data/lib/rubygems/package/tar_reader/entry.rb +90 -9
  335. data/lib/rubygems/package/tar_reader.rb +1 -29
  336. data/lib/rubygems/package/tar_writer.rb +7 -7
  337. data/lib/rubygems/package.rb +77 -60
  338. data/lib/rubygems/package_task.rb +4 -4
  339. data/lib/rubygems/path_support.rb +1 -6
  340. data/lib/rubygems/platform.rb +94 -61
  341. data/lib/rubygems/psych_tree.rb +1 -1
  342. data/lib/rubygems/query_utils.rb +49 -51
  343. data/lib/rubygems/rdoc.rb +2 -2
  344. data/lib/rubygems/remote_fetcher.rb +27 -27
  345. data/lib/rubygems/request/connection_pools.rb +4 -4
  346. data/lib/rubygems/request/http_pool.rb +1 -1
  347. data/lib/rubygems/request.rb +24 -24
  348. data/lib/rubygems/request_set/gem_dependency_api.rb +122 -123
  349. data/lib/rubygems/request_set/lockfile/parser.rb +26 -26
  350. data/lib/rubygems/request_set/lockfile/tokenizer.rb +4 -4
  351. data/lib/rubygems/request_set/lockfile.rb +9 -9
  352. data/lib/rubygems/request_set.rb +18 -18
  353. data/lib/rubygems/requirement.rb +15 -15
  354. data/lib/rubygems/resolver/activation_request.rb +3 -3
  355. data/lib/rubygems/resolver/api_set.rb +4 -4
  356. data/lib/rubygems/resolver/api_specification.rb +6 -6
  357. data/lib/rubygems/resolver/best_set.rb +5 -5
  358. data/lib/rubygems/resolver/conflict.rb +10 -10
  359. data/lib/rubygems/resolver/dependency_request.rb +2 -2
  360. data/lib/rubygems/resolver/git_set.rb +2 -2
  361. data/lib/rubygems/resolver/git_specification.rb +6 -6
  362. data/lib/rubygems/resolver/index_set.rb +3 -3
  363. data/lib/rubygems/resolver/index_specification.rb +6 -5
  364. data/lib/rubygems/resolver/installed_specification.rb +4 -4
  365. data/lib/rubygems/resolver/installer_set.rb +21 -26
  366. data/lib/rubygems/resolver/local_specification.rb +2 -2
  367. data/lib/rubygems/resolver/lock_set.rb +4 -4
  368. data/lib/rubygems/resolver/lock_specification.rb +4 -4
  369. data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph.rb +3 -3
  370. data/lib/rubygems/resolver/molinillo/lib/molinillo/errors.rb +32 -26
  371. data/lib/rubygems/resolver/molinillo/lib/molinillo/gem_metadata.rb +1 -1
  372. data/lib/rubygems/resolver/molinillo.rb +1 -1
  373. data/lib/rubygems/resolver/specification.rb +1 -1
  374. data/lib/rubygems/resolver/stats.rb +1 -1
  375. data/lib/rubygems/resolver/vendor_set.rb +1 -1
  376. data/lib/rubygems/resolver/vendor_specification.rb +3 -3
  377. data/lib/rubygems/resolver.rb +40 -40
  378. data/lib/rubygems/s3_uri_signer.rb +6 -6
  379. data/lib/rubygems/safe_yaml.rb +10 -10
  380. data/lib/rubygems/security/policies.rb +47 -47
  381. data/lib/rubygems/security/policy.rb +19 -21
  382. data/lib/rubygems/security/signer.rb +5 -5
  383. data/lib/rubygems/security/trust_dir.rb +4 -4
  384. data/lib/rubygems/security.rb +37 -43
  385. data/lib/rubygems/security_option.rb +7 -7
  386. data/lib/rubygems/source/git.rb +25 -24
  387. data/lib/rubygems/source/installed.rb +1 -1
  388. data/lib/rubygems/source/local.rb +2 -2
  389. data/lib/rubygems/source/specific_file.rb +1 -1
  390. data/lib/rubygems/source.rb +27 -32
  391. data/lib/rubygems/source_list.rb +5 -9
  392. data/lib/rubygems/spec_fetcher.rb +37 -37
  393. data/lib/rubygems/specification.rb +265 -211
  394. data/lib/rubygems/specification_policy.rb +49 -30
  395. data/lib/rubygems/stub_specification.rb +24 -27
  396. data/lib/rubygems/text.rb +22 -21
  397. data/lib/rubygems/tsort/.document +1 -0
  398. data/lib/rubygems/tsort/LICENSE.txt +22 -0
  399. data/lib/rubygems/tsort/lib/tsort.rb +452 -0
  400. data/lib/rubygems/tsort.rb +3 -0
  401. data/lib/rubygems/uninstaller.rb +29 -26
  402. data/lib/rubygems/unknown_command_spell_checker.rb +21 -0
  403. data/lib/rubygems/update_suggestion.rb +69 -0
  404. data/lib/rubygems/uri.rb +45 -30
  405. data/lib/rubygems/uri_formatter.rb +1 -1
  406. data/lib/rubygems/user_interaction.rb +42 -28
  407. data/lib/rubygems/util/licenses.rb +4 -2
  408. data/lib/rubygems/util.rb +12 -16
  409. data/lib/rubygems/validator.rb +6 -6
  410. data/lib/rubygems/version.rb +28 -17
  411. data/lib/rubygems/version_option.rb +5 -5
  412. data/lib/rubygems.rb +129 -117
  413. data/rubygems-update.gemspec +3 -3
  414. data/setup.rb +11 -16
  415. data/test/rubygems/alternate_cert.pem +14 -14
  416. data/test/rubygems/alternate_cert_32.pem +15 -15
  417. data/test/rubygems/alternate_key.pem +25 -25
  418. data/test/rubygems/bundler_test_gem.rb +419 -0
  419. data/test/rubygems/child_cert.pem +15 -16
  420. data/test/rubygems/child_cert_32.pem +15 -16
  421. data/test/rubygems/child_key.pem +25 -25
  422. data/test/rubygems/data/excon-0.7.7.gemspec.rz +0 -0
  423. data/test/rubygems/data/pry-0.4.7.gemspec.rz +0 -0
  424. data/test/rubygems/encrypted_private_key.pem +26 -26
  425. data/test/rubygems/expired_cert.pem +15 -15
  426. data/test/rubygems/future_cert.pem +15 -15
  427. data/test/rubygems/future_cert_32.pem +15 -15
  428. data/test/rubygems/grandchild_cert.pem +15 -16
  429. data/test/rubygems/grandchild_cert_32.pem +15 -16
  430. data/test/rubygems/grandchild_key.pem +25 -25
  431. data/test/rubygems/helper.rb +237 -207
  432. data/test/rubygems/installer_test_case.rb +13 -13
  433. data/test/rubygems/invalid_issuer_cert.pem +16 -16
  434. data/test/rubygems/invalid_issuer_cert_32.pem +16 -16
  435. data/test/rubygems/invalid_key.pem +25 -25
  436. data/test/rubygems/invalid_signer_cert.pem +15 -15
  437. data/test/rubygems/invalid_signer_cert_32.pem +15 -15
  438. data/test/rubygems/invalidchild_cert.pem +15 -16
  439. data/test/rubygems/invalidchild_cert_32.pem +15 -16
  440. data/test/rubygems/invalidchild_key.pem +25 -25
  441. data/test/rubygems/package/tar_test_case.rb +52 -17
  442. data/test/rubygems/packages/Bluebie-legs-0.6.2.gem +0 -0
  443. data/test/rubygems/plugin/exception/rubygems_plugin.rb +1 -1
  444. data/test/rubygems/plugin/standarderror/rubygems_plugin.rb +1 -1
  445. data/test/rubygems/private_key.pem +25 -25
  446. data/test/rubygems/public_cert.pem +16 -16
  447. data/test/rubygems/public_cert_32.pem +15 -15
  448. data/test/rubygems/public_key.pem +7 -7
  449. data/test/rubygems/rubygems_plugin.rb +2 -2
  450. data/test/rubygems/simple_gem.rb +1 -1
  451. data/test/rubygems/specifications/rubyforge-0.0.1.gemspec +4 -4
  452. data/test/rubygems/test_bundled_ca.rb +11 -11
  453. data/test/rubygems/test_config.rb +5 -5
  454. data/test/rubygems/test_deprecate.rb +3 -3
  455. data/test/rubygems/test_exit.rb +17 -0
  456. data/test/rubygems/test_gem.rb +367 -757
  457. data/test/rubygems/test_gem_available_set.rb +21 -21
  458. data/test/rubygems/test_gem_bundler_version_finder.rb +27 -47
  459. data/test/rubygems/test_gem_command.rb +45 -45
  460. data/test/rubygems/test_gem_command_manager.rb +124 -27
  461. data/test/rubygems/test_gem_commands_build_command.rb +73 -63
  462. data/test/rubygems/test_gem_commands_cert_command.rb +105 -107
  463. data/test/rubygems/test_gem_commands_check_command.rb +4 -4
  464. data/test/rubygems/test_gem_commands_cleanup_command.rb +40 -40
  465. data/test/rubygems/test_gem_commands_contents_command.rb +28 -28
  466. data/test/rubygems/test_gem_commands_dependency_command.rb +36 -36
  467. data/test/rubygems/test_gem_commands_environment_command.rb +38 -14
  468. data/test/rubygems/test_gem_commands_exec_command.rb +851 -0
  469. data/test/rubygems/test_gem_commands_fetch_command.rb +159 -26
  470. data/test/rubygems/test_gem_commands_generate_index_command.rb +7 -7
  471. data/test/rubygems/test_gem_commands_help_command.rb +13 -13
  472. data/test/rubygems/test_gem_commands_info_command.rb +28 -2
  473. data/test/rubygems/test_gem_commands_install_command.rb +200 -132
  474. data/test/rubygems/test_gem_commands_list_command.rb +4 -4
  475. data/test/rubygems/test_gem_commands_lock_command.rb +10 -10
  476. data/test/rubygems/test_gem_commands_mirror.rb +2 -2
  477. data/test/rubygems/test_gem_commands_open_command.rb +5 -5
  478. data/test/rubygems/test_gem_commands_outdated_command.rb +9 -9
  479. data/test/rubygems/test_gem_commands_owner_command.rb +126 -45
  480. data/test/rubygems/test_gem_commands_pristine_command.rb +141 -92
  481. data/test/rubygems/test_gem_commands_push_command.rb +85 -59
  482. data/test/rubygems/test_gem_commands_query_command.rb +73 -73
  483. data/test/rubygems/test_gem_commands_search_command.rb +2 -2
  484. data/test/rubygems/test_gem_commands_server_command.rb +6 -48
  485. data/test/rubygems/test_gem_commands_setup_command.rb +169 -92
  486. data/test/rubygems/test_gem_commands_signin_command.rb +154 -26
  487. data/test/rubygems/test_gem_commands_signout_command.rb +3 -3
  488. data/test/rubygems/test_gem_commands_sources_command.rb +74 -25
  489. data/test/rubygems/test_gem_commands_specification_command.rb +32 -32
  490. data/test/rubygems/test_gem_commands_stale_command.rb +4 -4
  491. data/test/rubygems/test_gem_commands_uninstall_command.rb +99 -82
  492. data/test/rubygems/test_gem_commands_unpack_command.rb +31 -31
  493. data/test/rubygems/test_gem_commands_update_command.rb +202 -91
  494. data/test/rubygems/test_gem_commands_which_command.rb +6 -6
  495. data/test/rubygems/test_gem_commands_yank_command.rb +43 -43
  496. data/test/rubygems/test_gem_config_file.rb +93 -81
  497. data/test/rubygems/test_gem_dependency.rb +78 -80
  498. data/test/rubygems/test_gem_dependency_installer.rb +165 -165
  499. data/test/rubygems/test_gem_dependency_list.rb +47 -47
  500. data/test/rubygems/test_gem_dependency_resolution_error.rb +4 -4
  501. data/test/rubygems/test_gem_doctor.rb +26 -26
  502. data/test/rubygems/test_gem_ext_builder.rb +60 -62
  503. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/.gitignore +1 -0
  504. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/custom_name.gemspec +8 -0
  505. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/ext/custom_name_lib/Cargo.lock +233 -0
  506. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/ext/custom_name_lib/Cargo.toml +10 -0
  507. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/ext/custom_name_lib/src/lib.rs +27 -0
  508. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/lib/custom_name.rb +1 -0
  509. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/.gitignore +1 -0
  510. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.lock +247 -0
  511. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.toml +10 -0
  512. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/rust_ruby_example.gemspec +8 -0
  513. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/src/lib.rs +51 -0
  514. data/test/rubygems/test_gem_ext_cargo_builder.rb +166 -0
  515. data/test/rubygems/test_gem_ext_cargo_builder_link_flag_converter.rb +33 -0
  516. data/test/rubygems/test_gem_ext_cargo_builder_unit.rb +60 -0
  517. data/test/rubygems/test_gem_ext_cmake_builder.rb +17 -15
  518. data/test/rubygems/test_gem_ext_configure_builder.rb +13 -13
  519. data/test/rubygems/test_gem_ext_ext_conf_builder.rb +53 -50
  520. data/test/rubygems/test_gem_ext_rake_builder.rb +15 -15
  521. data/test/rubygems/test_gem_gem_runner.rb +13 -8
  522. data/test/rubygems/test_gem_gemcutter_utilities.rb +71 -65
  523. data/test/rubygems/test_gem_impossible_dependencies_error.rb +4 -4
  524. data/test/rubygems/test_gem_indexer.rb +90 -67
  525. data/test/rubygems/test_gem_install_update_options.rb +18 -18
  526. data/test/rubygems/test_gem_installer.rb +511 -327
  527. data/test/rubygems/test_gem_local_remote_options.rb +10 -10
  528. data/test/rubygems/test_gem_name_tuple.rb +4 -4
  529. data/test/rubygems/test_gem_package.rb +246 -236
  530. data/test/rubygems/test_gem_package_old.rb +13 -13
  531. data/test/rubygems/test_gem_package_tar_header.rb +47 -47
  532. data/test/rubygems/test_gem_package_tar_reader.rb +55 -8
  533. data/test/rubygems/test_gem_package_tar_reader_entry.rb +161 -16
  534. data/test/rubygems/test_gem_package_tar_writer.rb +76 -76
  535. data/test/rubygems/test_gem_package_task.rb +18 -18
  536. data/test/rubygems/test_gem_path_support.rb +15 -19
  537. data/test/rubygems/test_gem_platform.rb +335 -214
  538. data/test/rubygems/test_gem_rdoc.rb +14 -14
  539. data/test/rubygems/test_gem_remote_fetcher.rb +169 -154
  540. data/test/rubygems/test_gem_request.rb +65 -59
  541. data/test/rubygems/test_gem_request_connection_pools.rb +29 -29
  542. data/test/rubygems/test_gem_request_set.rb +100 -100
  543. data/test/rubygems/test_gem_request_set_gem_dependency_api.rb +209 -211
  544. data/test/rubygems/test_gem_request_set_lockfile.rb +86 -86
  545. data/test/rubygems/test_gem_request_set_lockfile_parser.rb +58 -58
  546. data/test/rubygems/test_gem_request_set_lockfile_tokenizer.rb +62 -62
  547. data/test/rubygems/test_gem_requirement.rb +47 -42
  548. data/test/rubygems/test_gem_resolver.rb +173 -106
  549. data/test/rubygems/test_gem_resolver_activation_request.rb +6 -6
  550. data/test/rubygems/test_gem_resolver_api_set.rb +33 -33
  551. data/test/rubygems/test_gem_resolver_api_specification.rb +47 -47
  552. data/test/rubygems/test_gem_resolver_best_set.rb +22 -22
  553. data/test/rubygems/test_gem_resolver_composed_set.rb +1 -1
  554. data/test/rubygems/test_gem_resolver_conflict.rb +12 -12
  555. data/test/rubygems/test_gem_resolver_dependency_request.rb +15 -15
  556. data/test/rubygems/test_gem_resolver_git_set.rb +21 -21
  557. data/test/rubygems/test_gem_resolver_git_specification.rb +21 -21
  558. data/test/rubygems/test_gem_resolver_index_set.rb +12 -12
  559. data/test/rubygems/test_gem_resolver_index_specification.rb +16 -16
  560. data/test/rubygems/test_gem_resolver_installed_specification.rb +5 -5
  561. data/test/rubygems/test_gem_resolver_installer_set.rb +79 -35
  562. data/test/rubygems/test_gem_resolver_local_specification.rb +7 -7
  563. data/test/rubygems/test_gem_resolver_lock_set.rb +12 -12
  564. data/test/rubygems/test_gem_resolver_lock_specification.rb +17 -17
  565. data/test/rubygems/test_gem_resolver_requirement_list.rb +1 -1
  566. data/test/rubygems/test_gem_resolver_specification.rb +8 -8
  567. data/test/rubygems/test_gem_resolver_vendor_set.rb +6 -6
  568. data/test/rubygems/test_gem_resolver_vendor_specification.rb +10 -10
  569. data/test/rubygems/test_gem_security.rb +69 -69
  570. data/test/rubygems/test_gem_security_policy.rb +72 -72
  571. data/test/rubygems/test_gem_security_signer.rb +34 -34
  572. data/test/rubygems/test_gem_security_trust_dir.rb +6 -6
  573. data/test/rubygems/test_gem_silent_ui.rb +38 -32
  574. data/test/rubygems/test_gem_source.rb +44 -44
  575. data/test/rubygems/test_gem_source_fetch_problem.rb +9 -9
  576. data/test/rubygems/test_gem_source_git.rb +69 -62
  577. data/test/rubygems/test_gem_source_installed.rb +16 -16
  578. data/test/rubygems/test_gem_source_list.rb +5 -5
  579. data/test/rubygems/test_gem_source_local.rb +14 -14
  580. data/test/rubygems/test_gem_source_lock.rb +31 -31
  581. data/test/rubygems/test_gem_source_specific_file.rb +17 -17
  582. data/test/rubygems/test_gem_source_subpath_problem.rb +7 -7
  583. data/test/rubygems/test_gem_source_vendor.rb +13 -13
  584. data/test/rubygems/test_gem_spec_fetcher.rb +72 -72
  585. data/test/rubygems/test_gem_specification.rb +560 -493
  586. data/test/rubygems/test_gem_stream_ui.rb +20 -20
  587. data/test/rubygems/test_gem_stub_specification.rb +32 -48
  588. data/test/rubygems/test_gem_text.rb +7 -1
  589. data/test/rubygems/test_gem_uninstaller.rb +113 -113
  590. data/test/rubygems/test_gem_unsatisfiable_dependency_error.rb +3 -3
  591. data/test/rubygems/test_gem_update_suggestion.rb +208 -0
  592. data/test/rubygems/test_gem_uri.rb +4 -4
  593. data/test/rubygems/test_gem_uri_formatter.rb +14 -14
  594. data/test/rubygems/test_gem_util.rb +23 -23
  595. data/test/rubygems/test_gem_validator.rb +8 -8
  596. data/test/rubygems/test_gem_version.rb +27 -16
  597. data/test/rubygems/test_gem_version_option.rb +15 -15
  598. data/test/rubygems/test_kernel.rb +42 -60
  599. data/test/rubygems/test_project_sanity.rb +2 -2
  600. data/test/rubygems/test_remote_fetch_error.rb +6 -6
  601. data/test/rubygems/test_require.rb +132 -174
  602. data/test/rubygems/test_rubygems.rb +42 -12
  603. data/test/rubygems/utilities.rb +59 -37
  604. data/test/rubygems/wrong_key_cert.pem +15 -15
  605. data/test/rubygems/wrong_key_cert_32.pem +15 -15
  606. data/test/test_changelog_generator.rb +1 -0
  607. metadata +97 -41
  608. data/bundler/lib/bundler/dep_proxy.rb +0 -55
  609. data/bundler/lib/bundler/gemdeps.rb +0 -29
  610. data/bundler/lib/bundler/psyched_yaml.rb +0 -22
  611. data/bundler/lib/bundler/templates/gems.rb +0 -8
  612. data/bundler/lib/bundler/templates/newgem/travis.yml.tt +0 -6
  613. data/bundler/lib/bundler/vendor/molinillo/LICENSE +0 -9
  614. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb +0 -57
  615. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb +0 -88
  616. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/action.rb +0 -36
  617. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb +0 -66
  618. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_vertex.rb +0 -62
  619. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/delete_edge.rb +0 -63
  620. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb +0 -61
  621. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb +0 -126
  622. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/set_payload.rb +0 -46
  623. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb +0 -36
  624. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb +0 -164
  625. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb +0 -255
  626. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +0 -143
  627. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb +0 -6
  628. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb +0 -112
  629. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/modules/ui.rb +0 -67
  630. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb +0 -839
  631. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/resolver.rb +0 -46
  632. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/state.rb +0 -58
  633. data/bundler/lib/bundler/vendor/molinillo/lib/molinillo.rb +0 -11
  634. data/bundler/lib/bundler/vendor/tmpdir/lib/tmpdir.rb +0 -154
  635. data/bundler/lib/bundler/version_ranges.rb +0 -122
  636. data/lib/rubygems/psych_additions.rb +0 -10
  637. data/lib/rubygems/server.rb +0 -882
  638. data/test/rubygems/bogussources.rb +0 -9
  639. data/test/rubygems/data/null-type.gemspec.rz +0 -0
  640. data/test/rubygems/test_gem_server.rb +0 -608
  641. /data/bundler/lib/bundler/templates/newgem/ext/newgem/{extconf.rb.tt → extconf-c.rb.tt} +0 -0
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
- require_relative 'helper'
3
- require 'rubygems/dependency_list'
2
+ require_relative "helper"
3
+ require "rubygems/dependency_list"
4
4
 
5
5
  class TestGemDependencyList < Gem::TestCase
6
6
  def setup
@@ -9,26 +9,26 @@ class TestGemDependencyList < Gem::TestCase
9
9
  @deplist = Gem::DependencyList.new
10
10
 
11
11
  # TODO: switch to util_spec
12
- @a1 = util_spec 'a', '1'
13
- @a2 = util_spec 'a', '2'
14
- @a3 = util_spec 'a', '3'
12
+ @a1 = util_spec "a", "1"
13
+ @a2 = util_spec "a", "2"
14
+ @a3 = util_spec "a", "3"
15
15
 
16
- @b1 = util_spec 'b', '1' do |s|
17
- s.add_dependency 'a', '>= 1'
16
+ @b1 = util_spec "b", "1" do |s|
17
+ s.add_dependency "a", ">= 1"
18
18
  end
19
19
 
20
- @b2 = util_spec 'b', '2' do |s|
21
- s.add_dependency 'a', '>= 1'
20
+ @b2 = util_spec "b", "2" do |s|
21
+ s.add_dependency "a", ">= 1"
22
22
  end
23
23
 
24
- @c1 = util_spec 'c', '1' do |s|
25
- s.add_dependency 'b', '>= 1'
24
+ @c1 = util_spec "c", "1" do |s|
25
+ s.add_dependency "b", ">= 1"
26
26
  end
27
27
 
28
- @c2 = util_spec 'c', '2'
28
+ @c2 = util_spec "c", "2"
29
29
 
30
- @d1 = util_spec 'd', '1' do |s|
31
- s.add_dependency 'c', '>= 1'
30
+ @d1 = util_spec "d", "1" do |s|
31
+ s.add_dependency "c", ">= 1"
32
32
  end
33
33
  end
34
34
 
@@ -56,7 +56,7 @@ class TestGemDependencyList < Gem::TestCase
56
56
  end
57
57
 
58
58
  def test_dependency_order_circle
59
- @a1.add_dependency 'c', '>= 1'
59
+ @a1.add_dependency "c", ">= 1"
60
60
  @deplist.add @a1, @b1, @c1
61
61
 
62
62
  order = @deplist.dependency_order
@@ -65,14 +65,14 @@ class TestGemDependencyList < Gem::TestCase
65
65
  end
66
66
 
67
67
  def test_dependency_order_development
68
- e1 = util_spec 'e', '1'
69
- f1 = util_spec 'f', '1'
70
- g1 = util_spec 'g', '1'
68
+ e1 = util_spec "e", "1"
69
+ f1 = util_spec "f", "1"
70
+ g1 = util_spec "g", "1"
71
71
 
72
- @a1.add_dependency 'e'
73
- @a1.add_dependency 'f'
74
- @a1.add_dependency 'g'
75
- g1.add_development_dependency 'a'
72
+ @a1.add_dependency "e"
73
+ @a1.add_dependency "f"
74
+ @a1.add_dependency "g"
75
+ g1.add_development_dependency "a"
76
76
 
77
77
  deplist = Gem::DependencyList.new true
78
78
  deplist.add @a1, e1, f1, g1
@@ -80,7 +80,7 @@ class TestGemDependencyList < Gem::TestCase
80
80
  order = deplist.dependency_order
81
81
 
82
82
  assert_equal %w[g-1 a-1 f-1 e-1], order.map {|s| s.full_name },
83
- 'development on'
83
+ "development on"
84
84
 
85
85
  deplist2 = Gem::DependencyList.new
86
86
  deplist2.add @a1, e1, f1, g1
@@ -88,19 +88,19 @@ class TestGemDependencyList < Gem::TestCase
88
88
  order = deplist2.dependency_order
89
89
 
90
90
  assert_equal %w[a-1 g-1 f-1 e-1], order.map {|s| s.full_name },
91
- 'development off'
91
+ "development off"
92
92
  end
93
93
 
94
94
  def test_dependency_order_diamond
95
95
  util_diamond
96
- e1 = util_spec 'e', '1'
96
+ e1 = util_spec "e", "1"
97
97
  @deplist.add e1
98
- @a1.add_dependency 'e', '>= 1'
98
+ @a1.add_dependency "e", ">= 1"
99
99
 
100
100
  order = @deplist.dependency_order
101
101
 
102
102
  assert_equal %w[d-1 c-2 b-1 a-2 e-1], order.map {|s| s.full_name },
103
- 'deps of trimmed specs not included'
103
+ "deps of trimmed specs not included"
104
104
  end
105
105
 
106
106
  def test_dependency_order_no_dependencies
@@ -121,15 +121,15 @@ class TestGemDependencyList < Gem::TestCase
121
121
  end
122
122
 
123
123
  def test_ok_eh
124
- assert @deplist.ok?, 'no dependencies'
124
+ assert @deplist.ok?, "no dependencies"
125
125
 
126
126
  @deplist.add @b2
127
127
 
128
- refute @deplist.ok?, 'unsatisfied dependency'
128
+ refute @deplist.ok?, "unsatisfied dependency"
129
129
 
130
130
  @deplist.add @a1
131
131
 
132
- assert @deplist.ok?, 'satisfied dependency'
132
+ assert @deplist.ok?, "satisfied dependency"
133
133
  end
134
134
 
135
135
  def test_why_not_ok_eh
@@ -147,13 +147,13 @@ class TestGemDependencyList < Gem::TestCase
147
147
  end
148
148
 
149
149
  def test_why_not_ok_eh_old_dependency
150
- a = util_spec 'a', '1',
151
- 'b' => '~> 1.0'
150
+ a = util_spec "a", "1",
151
+ "b" => "~> 1.0"
152
152
 
153
- b0 = util_spec 'b', '1.0',
154
- 'd' => '>= 0'
153
+ b0 = util_spec "b", "1.0",
154
+ "d" => ">= 0"
155
155
 
156
- b1 = util_spec 'b', '1.1'
156
+ b1 = util_spec "b", "1.1"
157
157
 
158
158
  util_clear_gems
159
159
 
@@ -165,25 +165,25 @@ class TestGemDependencyList < Gem::TestCase
165
165
  end
166
166
 
167
167
  def test_ok_eh_mismatch
168
- a1 = util_spec 'a', '1'
169
- a2 = util_spec 'a', '2'
168
+ a1 = util_spec "a", "1"
169
+ a2 = util_spec "a", "2"
170
170
 
171
- b = util_spec 'b', '1' do |s|
172
- s.add_dependency 'a', '= 1'
171
+ b = util_spec "b", "1" do |s|
172
+ s.add_dependency "a", "= 1"
173
173
  end
174
174
 
175
- c = util_spec 'c', '1' do |s|
176
- s.add_dependency 'a', '= 2'
175
+ c = util_spec "c", "1" do |s|
176
+ s.add_dependency "a", "= 2"
177
177
  end
178
178
 
179
- d = util_spec 'd', '1' do |s|
180
- s.add_dependency 'b'
181
- s.add_dependency 'c'
179
+ d = util_spec "d", "1" do |s|
180
+ s.add_dependency "b"
181
+ s.add_dependency "c"
182
182
  end
183
183
 
184
184
  @deplist.add a1, a2, b, c, d
185
185
 
186
- assert @deplist.ok?, 'this will break on require'
186
+ assert @deplist.ok?, "this will break on require"
187
187
  end
188
188
 
189
189
  def test_ok_eh_redundant
@@ -256,8 +256,8 @@ class TestGemDependencyList < Gem::TestCase
256
256
  # d1 -> b1 -> a1
257
257
  # d1 -> c2 -> a2
258
258
  def util_diamond
259
- @c2.add_dependency 'a', '>= 2'
260
- @d1.add_dependency 'b'
259
+ @c2.add_dependency "a", ">= 2"
260
+ @d1.add_dependency "b"
261
261
 
262
262
  @deplist.add @a1, @a2, @b1, @c2, @d1
263
263
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
- require_relative 'helper'
2
+ require_relative "helper"
3
3
 
4
4
  class TestGemDependencyResolutionError < Gem::TestCase
5
5
  def setup
@@ -7,10 +7,10 @@ class TestGemDependencyResolutionError < Gem::TestCase
7
7
 
8
8
  @DR = Gem::Resolver
9
9
 
10
- @spec = util_spec 'a', 2
10
+ @spec = util_spec "a", 2
11
11
 
12
- @a1_req = @DR::DependencyRequest.new dep('a', '= 1'), nil
13
- @a2_req = @DR::DependencyRequest.new dep('a', '= 2'), nil
12
+ @a1_req = @DR::DependencyRequest.new dep("a", "= 1"), nil
13
+ @a2_req = @DR::DependencyRequest.new dep("a", "= 2"), nil
14
14
 
15
15
  @activated = @DR::ActivationRequest.new @spec, @a2_req
16
16
 
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
- require_relative 'helper'
3
- require 'rubygems/doctor'
2
+ require_relative "helper"
3
+ require "rubygems/doctor"
4
4
 
5
5
  class TestGemDoctor < Gem::TestCase
6
6
  def gem(name)
@@ -15,20 +15,20 @@ class TestGemDoctor < Gem::TestCase
15
15
  end
16
16
 
17
17
  def test_doctor
18
- a = gem 'a'
19
- b = gem 'b'
20
- c = gem 'c'
18
+ a = gem "a"
19
+ b = gem "b"
20
+ c = gem "c"
21
21
 
22
22
  Gem.use_paths @userhome, @gemhome
23
23
 
24
24
  FileUtils.rm b.spec_file
25
25
 
26
- File.open c.spec_file, 'w' do |io|
27
- io.write 'this will raise an exception when evaluated.'
26
+ File.open c.spec_file, "w" do |io|
27
+ io.write "this will raise an exception when evaluated."
28
28
  end
29
29
 
30
- assert_path_exist File.join(a.gem_dir, 'Rakefile')
31
- assert_path_exist File.join(a.gem_dir, 'lib', 'a.rb')
30
+ assert_path_exist File.join(a.gem_dir, "Rakefile")
31
+ assert_path_exist File.join(a.gem_dir, "lib", "a.rb")
32
32
 
33
33
  assert_path_exist b.gem_dir
34
34
  assert_path_not_exist b.spec_file
@@ -44,8 +44,8 @@ class TestGemDoctor < Gem::TestCase
44
44
  end
45
45
  end
46
46
 
47
- assert_path_exist File.join(a.gem_dir, 'Rakefile')
48
- assert_path_exist File.join(a.gem_dir, 'lib', 'a.rb')
47
+ assert_path_exist File.join(a.gem_dir, "Rakefile")
48
+ assert_path_exist File.join(a.gem_dir, "lib", "a.rb")
49
49
 
50
50
  assert_path_not_exist b.gem_dir
51
51
  assert_path_not_exist b.spec_file
@@ -68,20 +68,20 @@ Removed directory gems/c-2
68
68
  end
69
69
 
70
70
  def test_doctor_dry_run
71
- a = gem 'a'
72
- b = gem 'b'
73
- c = gem 'c'
71
+ a = gem "a"
72
+ b = gem "b"
73
+ c = gem "c"
74
74
 
75
75
  Gem.use_paths @userhome, @gemhome
76
76
 
77
77
  FileUtils.rm b.spec_file
78
78
 
79
- File.open c.spec_file, 'w' do |io|
80
- io.write 'this will raise an exception when evaluated.'
79
+ File.open c.spec_file, "w" do |io|
80
+ io.write "this will raise an exception when evaluated."
81
81
  end
82
82
 
83
- assert_path_exist File.join(a.gem_dir, 'Rakefile')
84
- assert_path_exist File.join(a.gem_dir, 'lib', 'a.rb')
83
+ assert_path_exist File.join(a.gem_dir, "Rakefile")
84
+ assert_path_exist File.join(a.gem_dir, "lib", "a.rb")
85
85
 
86
86
  assert_path_exist b.gem_dir
87
87
  assert_path_not_exist b.spec_file
@@ -97,8 +97,8 @@ Removed directory gems/c-2
97
97
  end
98
98
  end
99
99
 
100
- assert_path_exist File.join(a.gem_dir, 'Rakefile')
101
- assert_path_exist File.join(a.gem_dir, 'lib', 'a.rb')
100
+ assert_path_exist File.join(a.gem_dir, "Rakefile")
101
+ assert_path_exist File.join(a.gem_dir, "lib", "a.rb")
102
102
 
103
103
  assert_path_exist b.gem_dir
104
104
  assert_path_not_exist b.spec_file
@@ -121,7 +121,7 @@ Extra directory gems/c-2
121
121
  end
122
122
 
123
123
  def test_doctor_non_gem_home
124
- other_dir = File.join @tempdir, 'other', 'dir'
124
+ other_dir = File.join @tempdir, "other", "dir"
125
125
 
126
126
  FileUtils.mkdir_p other_dir
127
127
 
@@ -147,13 +147,13 @@ This directory does not appear to be a RubyGems repository, skipping
147
147
  def test_doctor_child_missing
148
148
  doctor = Gem::Doctor.new @gemhome
149
149
 
150
- doctor.doctor_child 'missing', ''
150
+ doctor.doctor_child "missing", ""
151
151
 
152
152
  assert true # count
153
153
  end
154
154
 
155
155
  def test_doctor_badly_named_plugins
156
- gem 'a'
156
+ gem "a"
157
157
 
158
158
  Gem.use_paths @gemhome.to_s
159
159
 
@@ -183,12 +183,12 @@ Removed file plugins/a_badly_named_file.rb
183
183
  def test_gem_repository_eh
184
184
  doctor = Gem::Doctor.new @gemhome
185
185
 
186
- refute doctor.gem_repository?, 'no gems installed'
186
+ refute doctor.gem_repository?, "no gems installed"
187
187
 
188
- install_specs util_spec 'a'
188
+ install_specs util_spec "a"
189
189
 
190
190
  doctor = Gem::Doctor.new @gemhome
191
191
 
192
- assert doctor.gem_repository?, 'gems installed'
192
+ assert doctor.gem_repository?, "gems installed"
193
193
  end
194
194
  end
@@ -1,38 +1,36 @@
1
1
  # frozen_string_literal: true
2
- require_relative 'helper'
3
- require 'rubygems/ext'
4
- require 'rubygems/installer'
2
+ require_relative "helper"
3
+ require "rubygems/ext"
4
+ require "rubygems/installer"
5
5
 
6
6
  class TestGemExtBuilder < Gem::TestCase
7
7
  def setup
8
+ @orig_DESTDIR = ENV["DESTDIR"]
9
+ @orig_make = ENV["make"]
8
10
  super
9
11
 
10
- @ext = File.join @tempdir, 'ext'
11
- @dest_path = File.join @tempdir, 'prefix'
12
+ @ext = File.join @tempdir, "ext"
13
+ @dest_path = File.join @tempdir, "prefix"
12
14
 
13
15
  FileUtils.mkdir_p @ext
14
16
  FileUtils.mkdir_p @dest_path
15
17
 
16
- @orig_DESTDIR = ENV['DESTDIR']
17
- @orig_make = ENV['make']
18
+ @spec = util_spec "a"
18
19
 
19
- @spec = util_spec 'a'
20
-
21
- @builder = Gem::Ext::Builder.new @spec, ''
20
+ @builder = Gem::Ext::Builder.new @spec, ""
22
21
  end
23
22
 
24
23
  def teardown
25
- ENV['DESTDIR'] = @orig_DESTDIR
26
- ENV['make'] = @orig_make
27
-
28
24
  super
25
+ ENV["DESTDIR"] = @orig_DESTDIR
26
+ ENV["make"] = @orig_make
29
27
  end
30
28
 
31
29
  def test_class_make
32
- ENV['DESTDIR'] = 'destination'
30
+ ENV["DESTDIR"] = "destination"
33
31
  results = []
34
32
 
35
- File.open File.join(@ext, 'Makefile'), 'w' do |io|
33
+ File.open File.join(@ext, "Makefile"), "w" do |io|
36
34
  io.puts <<-MAKEFILE
37
35
  all:
38
36
  \t@#{Gem.ruby} -e "puts %Q{all: \#{ENV['DESTDIR']}}"
@@ -61,10 +59,10 @@ install:
61
59
  end
62
60
 
63
61
  def test_class_make_no_clean
64
- ENV['DESTDIR'] = 'destination'
62
+ ENV["DESTDIR"] = "destination"
65
63
  results = []
66
64
 
67
- File.open File.join(@ext, 'Makefile'), 'w' do |io|
65
+ File.open File.join(@ext, "Makefile"), "w" do |io|
68
66
  io.puts <<-MAKEFILE
69
67
  all:
70
68
  \t@#{Gem.ruby} -e "puts %Q{all: \#{ENV['DESTDIR']}}"
@@ -84,9 +82,9 @@ install:
84
82
  end
85
83
 
86
84
  def test_custom_make_with_options
87
- ENV['make'] = 'make V=1'
85
+ ENV["make"] = "make V=1"
88
86
  results = []
89
- File.open File.join(@ext, 'Makefile'), 'w' do |io|
87
+ File.open File.join(@ext, "Makefile"), "w" do |io|
90
88
  io.puts <<-MAKEFILE
91
89
  all:
92
90
  \t@#{Gem.ruby} -e "puts 'all: OK'"
@@ -106,16 +104,16 @@ install:
106
104
  end
107
105
 
108
106
  def test_build_extensions
109
- pend if /mswin/ =~ RUBY_PLATFORM && ENV.key?('GITHUB_ACTIONS') # not working from the beginning
110
- @spec.extensions << 'ext/extconf.rb'
107
+ pend if RUBY_PLATFORM.include?("mswin") && ENV.key?("GITHUB_ACTIONS") # not working from the beginning
108
+ @spec.extensions << "ext/extconf.rb"
111
109
 
112
- ext_dir = File.join @spec.gem_dir, 'ext'
110
+ ext_dir = File.join @spec.gem_dir, "ext"
113
111
 
114
112
  FileUtils.mkdir_p ext_dir
115
113
 
116
- extconf_rb = File.join ext_dir, 'extconf.rb'
114
+ extconf_rb = File.join ext_dir, "extconf.rb"
117
115
 
118
- File.open extconf_rb, 'w' do |f|
116
+ File.open extconf_rb, "w" do |f|
119
117
  f.write <<-'RUBY'
120
118
  require 'mkmf'
121
119
 
@@ -123,11 +121,11 @@ install:
123
121
  RUBY
124
122
  end
125
123
 
126
- ext_lib_dir = File.join ext_dir, 'lib'
124
+ ext_lib_dir = File.join ext_dir, "lib"
127
125
  FileUtils.mkdir ext_lib_dir
128
- FileUtils.touch File.join ext_lib_dir, 'a.rb'
129
- FileUtils.mkdir File.join ext_lib_dir, 'a'
130
- FileUtils.touch File.join ext_lib_dir, 'a', 'b.rb'
126
+ FileUtils.touch File.join ext_lib_dir, "a.rb"
127
+ FileUtils.mkdir File.join ext_lib_dir, "a"
128
+ FileUtils.touch File.join ext_lib_dir, "a", "b.rb"
131
129
 
132
130
  use_ui @ui do
133
131
  @builder.build_extensions
@@ -135,20 +133,20 @@ install:
135
133
 
136
134
  assert_path_exist @spec.extension_dir
137
135
  assert_path_exist @spec.gem_build_complete_path
138
- assert_path_exist File.join @spec.extension_dir, 'gem_make.out'
139
- assert_path_exist File.join @spec.extension_dir, 'a.rb'
140
- assert_path_exist File.join @spec.gem_dir, 'lib', 'a.rb'
141
- assert_path_exist File.join @spec.gem_dir, 'lib', 'a', 'b.rb'
136
+ assert_path_exist File.join @spec.extension_dir, "gem_make.out"
137
+ assert_path_exist File.join @spec.extension_dir, "a.rb"
138
+ assert_path_exist File.join @spec.gem_dir, "lib", "a.rb"
139
+ assert_path_exist File.join @spec.gem_dir, "lib", "a", "b.rb"
142
140
  end
143
141
 
144
142
  def test_build_extensions_with_gemhome_with_space
145
- pend if /mswin/ =~ RUBY_PLATFORM && ENV.key?('GITHUB_ACTIONS') # not working from the beginning
146
- new_gemhome = File.join @tempdir, 'gem home'
143
+ pend if RUBY_PLATFORM.include?("mswin") && ENV.key?("GITHUB_ACTIONS") # not working from the beginning
144
+ new_gemhome = File.join @tempdir, "gem home"
147
145
  File.rename(@gemhome, new_gemhome)
148
146
  @gemhome = new_gemhome
149
147
  Gem.use_paths(@gemhome)
150
- @spec = util_spec 'a'
151
- @builder = Gem::Ext::Builder.new @spec, ''
148
+ @spec = util_spec "a"
149
+ @builder = Gem::Ext::Builder.new @spec, ""
152
150
 
153
151
  test_build_extensions
154
152
  end
@@ -163,17 +161,17 @@ install:
163
161
  false
164
162
  end
165
163
  end
166
- pend if /mswin/ =~ RUBY_PLATFORM && ENV.key?('GITHUB_ACTIONS') # not working from the beginning
164
+ pend if RUBY_PLATFORM.include?("mswin") && ENV.key?("GITHUB_ACTIONS") # not working from the beginning
167
165
 
168
- @spec.extensions << 'ext/extconf.rb'
166
+ @spec.extensions << "ext/extconf.rb"
169
167
 
170
- ext_dir = File.join @spec.gem_dir, 'ext'
168
+ ext_dir = File.join @spec.gem_dir, "ext"
171
169
 
172
170
  FileUtils.mkdir_p ext_dir
173
171
 
174
- extconf_rb = File.join ext_dir, 'extconf.rb'
172
+ extconf_rb = File.join ext_dir, "extconf.rb"
175
173
 
176
- File.open extconf_rb, 'w' do |f|
174
+ File.open extconf_rb, "w" do |f|
177
175
  f.write <<-'RUBY'
178
176
  require 'mkmf'
179
177
 
@@ -181,11 +179,11 @@ install:
181
179
  RUBY
182
180
  end
183
181
 
184
- ext_lib_dir = File.join ext_dir, 'lib'
182
+ ext_lib_dir = File.join ext_dir, "lib"
185
183
  FileUtils.mkdir ext_lib_dir
186
- FileUtils.touch File.join ext_lib_dir, 'a.rb'
187
- FileUtils.mkdir File.join ext_lib_dir, 'a'
188
- FileUtils.touch File.join ext_lib_dir, 'a', 'b.rb'
184
+ FileUtils.touch File.join ext_lib_dir, "a.rb"
185
+ FileUtils.mkdir File.join ext_lib_dir, "a"
186
+ FileUtils.touch File.join ext_lib_dir, "a", "b.rb"
189
187
 
190
188
  use_ui @ui do
191
189
  @builder.build_extensions
@@ -193,10 +191,10 @@ install:
193
191
 
194
192
  assert_path_exist @spec.extension_dir
195
193
  assert_path_exist @spec.gem_build_complete_path
196
- assert_path_exist File.join @spec.extension_dir, 'gem_make.out'
197
- assert_path_exist File.join @spec.extension_dir, 'a.rb'
198
- assert_path_not_exist File.join @spec.gem_dir, 'lib', 'a.rb'
199
- assert_path_not_exist File.join @spec.gem_dir, 'lib', 'a', 'b.rb'
194
+ assert_path_exist File.join @spec.extension_dir, "gem_make.out"
195
+ assert_path_exist File.join @spec.extension_dir, "a.rb"
196
+ assert_path_not_exist File.join @spec.gem_dir, "lib", "a.rb"
197
+ assert_path_not_exist File.join @spec.gem_dir, "lib", "a", "b.rb"
200
198
  ensure
201
199
  class << Gem
202
200
  remove_method :install_extension_in_lib
@@ -210,10 +208,10 @@ install:
210
208
  @builder.build_extensions
211
209
  end
212
210
 
213
- assert_equal '', @ui.output
214
- assert_equal '', @ui.error
211
+ assert_equal "", @ui.output
212
+ assert_equal "", @ui.error
215
213
 
216
- assert_path_not_exist File.join @spec.extension_dir, 'gem_make.out'
214
+ assert_path_not_exist File.join @spec.extension_dir, "gem_make.out"
217
215
  end
218
216
 
219
217
  def test_build_extensions_rebuild_failure
@@ -234,7 +232,7 @@ install:
234
232
  def test_build_extensions_extconf_bad
235
233
  cwd = Dir.pwd
236
234
 
237
- @spec.extensions << 'extconf.rb'
235
+ @spec.extensions << "extconf.rb"
238
236
 
239
237
  FileUtils.mkdir_p @spec.gem_dir
240
238
 
@@ -246,9 +244,9 @@ install:
246
244
 
247
245
  assert_match(/\AERROR: Failed to build gem native extension.$/, e.message)
248
246
  assert_equal "Building native extensions. This could take a while...\n", @ui.output
249
- assert_equal '', @ui.error
247
+ assert_equal "", @ui.error
250
248
 
251
- gem_make_out = File.join @spec.extension_dir, 'gem_make.out'
249
+ gem_make_out = File.join @spec.extension_dir, "gem_make.out"
252
250
  cmd_make_out = File.read(gem_make_out)
253
251
 
254
252
  assert_match %r{#{Regexp.escape Gem.ruby} .* extconf\.rb}, cmd_make_out
@@ -261,7 +259,7 @@ install:
261
259
 
262
260
  def test_build_extensions_unsupported
263
261
  FileUtils.mkdir_p @spec.gem_dir
264
- gem_make_out = File.join @spec.extension_dir, 'gem_make.out'
262
+ gem_make_out = File.join @spec.extension_dir, "gem_make.out"
265
263
  @spec.extensions << nil
266
264
 
267
265
  e = assert_raise Gem::Ext::BuildError do
@@ -272,7 +270,7 @@ install:
272
270
 
273
271
  assert_match(/^\s*No builder for extension ''$/, e.message)
274
272
  assert_equal "Building native extensions. This could take a while...\n", @ui.output
275
- assert_equal '', @ui.error
273
+ assert_equal "", @ui.error
276
274
 
277
275
  assert_equal "No builder for extension ''\n", File.read(gem_make_out)
278
276
 
@@ -284,14 +282,14 @@ install:
284
282
  def test_build_extensions_with_build_args
285
283
  args = ["--aa", "--bb"]
286
284
  @builder.build_args = args
287
- @spec.extensions << 'extconf.rb'
285
+ @spec.extensions << "extconf.rb"
288
286
 
289
287
  FileUtils.mkdir_p @spec.gem_dir
290
288
 
291
289
  File.open File.join(@spec.gem_dir, "extconf.rb"), "w" do |f|
292
290
  f.write <<-'RUBY'
293
291
  puts "IN EXTCONF"
294
- extconf_args = File.join File.dirname(__FILE__), 'extconf_args'
292
+ extconf_args = File.join __dir__, 'extconf_args'
295
293
  File.open extconf_args, 'w' do |f|
296
294
  f.puts ARGV.inspect
297
295
  end
@@ -315,14 +313,14 @@ install:
315
313
  end
316
314
 
317
315
  def test_initialize
318
- build_info_dir = File.join @gemhome, 'build_info'
316
+ build_info_dir = File.join @gemhome, "build_info"
319
317
 
320
318
  FileUtils.mkdir_p build_info_dir
321
319
 
322
320
  build_info_file = File.join build_info_dir, "#{@spec.full_name}.info"
323
321
 
324
- File.open build_info_file, 'w' do |io|
325
- io.puts '--with-foo-dir=/nonexistent'
322
+ File.open build_info_file, "w" do |io|
323
+ io.puts "--with-foo-dir=/nonexistent"
326
324
  end
327
325
 
328
326
  builder = Gem::Ext::Builder.new @spec
@@ -0,0 +1,8 @@
1
+ Gem::Specification.new do |s|
2
+ s.name = "custom_name"
3
+ s.version = "0.1.0"
4
+ s.summary = "A Rust extension for Ruby"
5
+ s.extensions = ["ext/custom_name_lib/Cargo.toml"]
6
+ s.authors = ["Ian Ker-Seymer"]
7
+ s.files = ["lib/custom_name.rb", "ext/custom_name_lib/Cargo.toml", "ext/custom_name_lib/Cargo.lock", "ext/custom_name_lib/src/lib.rs"]
8
+ end