rubygems-update 3.4.6 → 3.4.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (145) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +77 -1
  3. data/Manifest.txt +3 -1
  4. data/POLICIES.md +5 -5
  5. data/README.md +17 -4
  6. data/bundler/CHANGELOG.md +74 -0
  7. data/bundler/README.md +1 -4
  8. data/bundler/lib/bundler/build_metadata.rb +2 -2
  9. data/bundler/lib/bundler/cli/init.rb +2 -2
  10. data/bundler/lib/bundler/cli.rb +1 -0
  11. data/bundler/lib/bundler/current_ruby.rb +2 -0
  12. data/bundler/lib/bundler/definition.rb +5 -1
  13. data/bundler/lib/bundler/dependency.rb +1 -1
  14. data/bundler/lib/bundler/endpoint_specification.rb +0 -4
  15. data/bundler/lib/bundler/environment_preserver.rb +2 -2
  16. data/bundler/lib/bundler/fetcher/dependency.rb +1 -5
  17. data/bundler/lib/bundler/fetcher.rb +2 -2
  18. data/bundler/lib/bundler/index.rb +2 -2
  19. data/bundler/lib/bundler/injector.rb +1 -1
  20. data/bundler/lib/bundler/installer/parallel_installer.rb +3 -2
  21. data/bundler/lib/bundler/installer/standalone.rb +1 -1
  22. data/bundler/lib/bundler/lazy_specification.rb +4 -8
  23. data/bundler/lib/bundler/lockfile_generator.rb +1 -1
  24. data/bundler/lib/bundler/lockfile_parser.rb +11 -11
  25. data/bundler/lib/bundler/man/bundle-add.1 +1 -1
  26. data/bundler/lib/bundler/man/bundle-binstubs.1 +1 -1
  27. data/bundler/lib/bundler/man/bundle-cache.1 +1 -1
  28. data/bundler/lib/bundler/man/bundle-check.1 +1 -1
  29. data/bundler/lib/bundler/man/bundle-clean.1 +1 -1
  30. data/bundler/lib/bundler/man/bundle-config.1 +1 -1
  31. data/bundler/lib/bundler/man/bundle-console.1 +1 -1
  32. data/bundler/lib/bundler/man/bundle-doctor.1 +1 -1
  33. data/bundler/lib/bundler/man/bundle-exec.1 +1 -1
  34. data/bundler/lib/bundler/man/bundle-gem.1 +1 -1
  35. data/bundler/lib/bundler/man/bundle-help.1 +1 -1
  36. data/bundler/lib/bundler/man/bundle-info.1 +1 -1
  37. data/bundler/lib/bundler/man/bundle-init.1 +5 -1
  38. data/bundler/lib/bundler/man/bundle-init.1.ronn +2 -0
  39. data/bundler/lib/bundler/man/bundle-inject.1 +1 -1
  40. data/bundler/lib/bundler/man/bundle-install.1 +1 -1
  41. data/bundler/lib/bundler/man/bundle-list.1 +1 -1
  42. data/bundler/lib/bundler/man/bundle-lock.1 +1 -1
  43. data/bundler/lib/bundler/man/bundle-open.1 +1 -1
  44. data/bundler/lib/bundler/man/bundle-outdated.1 +1 -1
  45. data/bundler/lib/bundler/man/bundle-platform.1 +1 -1
  46. data/bundler/lib/bundler/man/bundle-plugin.1 +1 -1
  47. data/bundler/lib/bundler/man/bundle-pristine.1 +1 -1
  48. data/bundler/lib/bundler/man/bundle-remove.1 +1 -1
  49. data/bundler/lib/bundler/man/bundle-show.1 +1 -1
  50. data/bundler/lib/bundler/man/bundle-update.1 +1 -1
  51. data/bundler/lib/bundler/man/bundle-version.1 +1 -1
  52. data/bundler/lib/bundler/man/bundle-viz.1 +1 -1
  53. data/bundler/lib/bundler/man/bundle.1 +1 -1
  54. data/bundler/lib/bundler/man/gemfile.5 +1 -1
  55. data/bundler/lib/bundler/plugin/installer.rb +5 -2
  56. data/bundler/lib/bundler/plugin.rb +1 -1
  57. data/bundler/lib/bundler/remote_specification.rb +2 -6
  58. data/bundler/lib/bundler/resolver/base.rb +36 -4
  59. data/bundler/lib/bundler/resolver.rb +6 -9
  60. data/bundler/lib/bundler/rubygems_integration.rb +1 -1
  61. data/bundler/lib/bundler/settings.rb +1 -1
  62. data/bundler/lib/bundler/setup.rb +4 -1
  63. data/bundler/lib/bundler/shared_helpers.rb +1 -1
  64. data/bundler/lib/bundler/source/git/git_proxy.rb +27 -8
  65. data/bundler/lib/bundler/source/git.rb +2 -1
  66. data/bundler/lib/bundler/source/path.rb +1 -1
  67. data/bundler/lib/bundler/source/rubygems.rb +1 -2
  68. data/bundler/lib/bundler/spec_set.rb +13 -3
  69. data/bundler/lib/bundler/templates/Executable.bundler +1 -1
  70. data/bundler/lib/bundler/templates/newgem/Gemfile.tt +1 -1
  71. data/bundler/lib/bundler/templates/newgem/Rakefile.tt +10 -0
  72. data/bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt +1 -1
  73. data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +1 -1
  74. data/bundler/lib/bundler/uri_normalizer.rb +23 -0
  75. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/incompatibility.rb +6 -7
  76. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/static_package_source.rb +8 -1
  77. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_constraint.rb +5 -4
  78. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_range.rb +4 -2
  79. data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_solver.rb +4 -1
  80. data/bundler/lib/bundler/version.rb +1 -1
  81. data/bundler/lib/bundler.rb +10 -9
  82. data/lib/rubygems/bundler_version_finder.rb +1 -1
  83. data/lib/rubygems/command.rb +10 -6
  84. data/lib/rubygems/command_manager.rb +1 -0
  85. data/lib/rubygems/commands/exec_command.rb +248 -0
  86. data/lib/rubygems/commands/help_command.rb +3 -3
  87. data/lib/rubygems/commands/pristine_command.rb +9 -0
  88. data/lib/rubygems/commands/uninstall_command.rb +3 -0
  89. data/lib/rubygems/core_ext/kernel_require.rb +0 -10
  90. data/lib/rubygems/defaults.rb +2 -2
  91. data/lib/rubygems/dependency.rb +1 -1
  92. data/lib/rubygems/deprecate.rb +2 -2
  93. data/lib/rubygems/ext/builder.rb +17 -0
  94. data/lib/rubygems/ext/ext_conf_builder.rb +1 -2
  95. data/lib/rubygems/ext/rake_builder.rb +1 -1
  96. data/lib/rubygems/package/tar_header.rb +1 -1
  97. data/lib/rubygems/package/tar_reader/entry.rb +88 -7
  98. data/lib/rubygems/package/tar_reader.rb +0 -28
  99. data/lib/rubygems/platform.rb +2 -2
  100. data/lib/rubygems/request_set/gem_dependency_api.rb +0 -1
  101. data/lib/rubygems/requirement.rb +1 -1
  102. data/lib/rubygems/resolver/stats.rb +1 -1
  103. data/lib/rubygems/source/git.rb +1 -1
  104. data/lib/rubygems/specification.rb +9 -1
  105. data/lib/rubygems/specification_policy.rb +5 -0
  106. data/lib/rubygems/stub_specification.rb +7 -7
  107. data/lib/rubygems/text.rb +1 -1
  108. data/lib/rubygems/util/licenses.rb +2 -2
  109. data/lib/rubygems/version.rb +2 -2
  110. data/lib/rubygems.rb +3 -3
  111. data/rubygems-update.gemspec +1 -1
  112. data/test/rubygems/helper.rb +2 -3
  113. data/test/rubygems/package/tar_test_case.rb +50 -15
  114. data/test/rubygems/simple_gem.rb +1 -1
  115. data/test/rubygems/test_gem.rb +29 -0
  116. data/test/rubygems/test_gem_bundler_version_finder.rb +2 -2
  117. data/test/rubygems/test_gem_command_manager.rb +25 -0
  118. data/test/rubygems/test_gem_commands_exec_command.rb +851 -0
  119. data/test/rubygems/test_gem_commands_install_command.rb +1 -1
  120. data/test/rubygems/test_gem_commands_pristine_command.rb +48 -0
  121. data/test/rubygems/test_gem_commands_setup_command.rb +1 -1
  122. data/test/rubygems/test_gem_commands_uninstall_command.rb +31 -14
  123. data/test/rubygems/test_gem_ext_builder.rb +3 -5
  124. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.lock +20 -6
  125. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.toml +1 -1
  126. data/test/rubygems/test_gem_ext_cargo_builder.rb +1 -1
  127. data/test/rubygems/test_gem_gem_runner.rb +6 -1
  128. data/test/rubygems/test_gem_package.rb +0 -25
  129. data/test/rubygems/test_gem_package_tar_reader.rb +48 -1
  130. data/test/rubygems/test_gem_package_tar_reader_entry.rb +151 -6
  131. data/test/rubygems/test_gem_remote_fetcher.rb +1 -1
  132. data/test/rubygems/test_gem_request_set_gem_dependency_api.rb +10 -10
  133. data/test/rubygems/test_gem_request_set_lockfile_parser.rb +2 -2
  134. data/test/rubygems/test_gem_resolver_git_set.rb +9 -9
  135. data/test/rubygems/test_gem_resolver_git_specification.rb +1 -1
  136. data/test/rubygems/test_gem_source.rb +1 -1
  137. data/test/rubygems/test_gem_source_git.rb +13 -12
  138. data/test/rubygems/test_gem_source_installed.rb +1 -1
  139. data/test/rubygems/test_gem_source_lock.rb +3 -3
  140. data/test/rubygems/test_gem_source_vendor.rb +1 -1
  141. data/test/rubygems/test_gem_specification.rb +36 -2
  142. data/test/rubygems/test_gem_version.rb +2 -2
  143. data/test/rubygems/test_kernel.rb +0 -8
  144. metadata +6 -4
  145. data/bundler/lib/bundler/templates/gems.rb +0 -5
@@ -371,4 +371,29 @@ class TestGemCommandManager < Gem::TestCase
371
371
  ensure
372
372
  Gem::Commands.send(:remove_const, :FooCommand)
373
373
  end
374
+
375
+ def test_deprecated_command_with_version
376
+ require "rubygems/command"
377
+ foo_command = Class.new(Gem::Command) do
378
+ extend Gem::Deprecate
379
+
380
+ rubygems_deprecate_command("9.9.9")
381
+
382
+ def execute
383
+ say "pew pew!"
384
+ end
385
+ end
386
+
387
+ Gem::Commands.send(:const_set, :FooCommand, foo_command)
388
+ @command_manager.register_command(:foo, foo_command.new("foo"))
389
+
390
+ use_ui @ui do
391
+ @command_manager.process_args(%w[foo])
392
+ end
393
+
394
+ assert_equal "pew pew!\n", @ui.output
395
+ assert_match(/WARNING: foo command is deprecated. It will be removed in Rubygems 9.9.9/, @ui.error)
396
+ ensure
397
+ Gem::Commands.send(:remove_const, :FooCommand)
398
+ end
374
399
  end