rubygems-update 3.0.3 → 3.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +1 -0
  3. data/CODE_OF_CONDUCT.md +10 -8
  4. data/CONTRIBUTING.md +7 -0
  5. data/History.txt +67 -0
  6. data/README.md +6 -0
  7. data/Rakefile +21 -3
  8. data/bundler/lib/bundler/build_metadata.rb +1 -1
  9. data/lib/rubygems.rb +2 -1
  10. data/lib/rubygems/command_manager.rb +6 -0
  11. data/lib/rubygems/commands/build_command.rb +28 -13
  12. data/lib/rubygems/commands/owner_command.rb +2 -0
  13. data/lib/rubygems/dependency_list.rb +1 -1
  14. data/lib/rubygems/rdoc.rb +2 -2
  15. data/lib/rubygems/request_set/gem_dependency_api.rb +8 -5
  16. data/lib/rubygems/requirement.rb +0 -4
  17. data/lib/rubygems/specification.rb +8 -9
  18. data/lib/rubygems/test_case.rb +14 -8
  19. data/lib/rubygems/uninstaller.rb +1 -1
  20. data/rubygems-update.gemspec +1 -1
  21. data/test/rubygems/ca_cert.pem +74 -65
  22. data/test/rubygems/client.pem +103 -45
  23. data/test/rubygems/ssl_cert.pem +78 -17
  24. data/test/rubygems/ssl_key.pem +25 -13
  25. data/test/rubygems/test_bundled_ca.rb +1 -1
  26. data/test/rubygems/test_gem.rb +5 -8
  27. data/test/rubygems/test_gem_bundler_version_finder.rb +4 -0
  28. data/test/rubygems/test_gem_command_manager.rb +10 -0
  29. data/test/rubygems/test_gem_commands_build_command.rb +1 -0
  30. data/test/rubygems/test_gem_ext_cmake_builder.rb +1 -1
  31. data/test/rubygems/test_gem_indexer.rb +7 -0
  32. data/test/rubygems/test_gem_installer.rb +7 -3
  33. data/test/rubygems/test_gem_rdoc.rb +1 -135
  34. data/test/rubygems/test_gem_request_set_gem_dependency_api.rb +60 -27
  35. data/test/rubygems/test_gem_security_policy.rb +1 -1
  36. data/test/rubygems/test_gem_stream_ui.rb +2 -2
  37. data/test/rubygems/test_gem_uninstaller.rb +21 -2
  38. data/util/ci +6 -1
  39. data/util/create_encrypted_key.rb +4 -4
  40. metadata +3 -51
  41. data/bundler/man/bundle-add.1 +0 -58
  42. data/bundler/man/bundle-binstubs.1 +0 -40
  43. data/bundler/man/bundle-check.1 +0 -31
  44. data/bundler/man/bundle-clean.1 +0 -24
  45. data/bundler/man/bundle-config.1 +0 -497
  46. data/bundler/man/bundle-doctor.1 +0 -44
  47. data/bundler/man/bundle-exec.1 +0 -165
  48. data/bundler/man/bundle-gem.1 +0 -80
  49. data/bundler/man/bundle-info.1 +0 -20
  50. data/bundler/man/bundle-init.1 +0 -25
  51. data/bundler/man/bundle-inject.1 +0 -33
  52. data/bundler/man/bundle-install.1 +0 -308
  53. data/bundler/man/bundle-list.1 +0 -50
  54. data/bundler/man/bundle-lock.1 +0 -84
  55. data/bundler/man/bundle-open.1 +0 -32
  56. data/bundler/man/bundle-outdated.1 +0 -155
  57. data/bundler/man/bundle-package.1 +0 -55
  58. data/bundler/man/bundle-platform.1 +0 -61
  59. data/bundler/man/bundle-pristine.1 +0 -34
  60. data/bundler/man/bundle-remove.1 +0 -31
  61. data/bundler/man/bundle-show.1 +0 -23
  62. data/bundler/man/bundle-update.1 +0 -394
  63. data/bundler/man/bundle-viz.1 +0 -39
  64. data/bundler/man/bundle.1 +0 -136
@@ -1,15 +1,27 @@
1
1
  -----BEGIN RSA PRIVATE KEY-----
2
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- gQobb8zDZwJBANSK6MrXlrZTtEaeZuyOB4mAmRzGzOUVkUyULUjEx2GDT93ujAma
10
- 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
- 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
- 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
- mGSYFu9ZhvZkvQNV8eYrAkBJ+rOIaLDsmbrgkeDruH+B/9yrm4McDtQ/rgnOGYnH
14
- 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
15
27
  -----END RSA PRIVATE KEY-----
@@ -37,7 +37,7 @@ if ENV["CI"] || ENV["TEST_SSL"]
37
37
  http.verify_mode = OpenSSL::SSL::VERIFY_PEER
38
38
  http.cert_store = bundled_certificate_store
39
39
  http.get('/')
40
- rescue Errno::ENOENT, Errno::ETIMEDOUT
40
+ rescue Errno::ENOENT, Errno::ETIMEDOUT, SocketError
41
41
  skip "#{host} seems offline, I can't tell whether ssl would work."
42
42
  rescue OpenSSL::SSL::SSLError => e
43
43
  # Only fail for certificate verification errors
@@ -166,15 +166,12 @@ class TestGem < Gem::TestCase
166
166
  }
167
167
  Dir.chdir @tempdir do
168
168
  Dir.mkdir 'bin'
169
- File.open 'bin/foo.cmd', 'w' do |fp|
170
- fp.chmod(0755)
171
- fp.puts 'p'
172
- end
173
-
174
169
  Dir.mkdir 'data'
175
- File.open 'data/foo.txt', 'w' do |fp|
176
- fp.puts 'blah'
177
- end
170
+
171
+ File.write 'bin/foo.cmd', "p\n"
172
+ File.chmod 0755, 'bin/foo.cmd'
173
+
174
+ File.write 'data/foo.txt', "blah\n"
178
175
 
179
176
  spec_fetcher do |f|
180
177
  f.gem 'foo', 1 do |s|
@@ -3,6 +3,8 @@ require 'rubygems/test_case'
3
3
 
4
4
  class TestGemBundlerVersionFinder < Gem::TestCase
5
5
  def setup
6
+ super
7
+
6
8
  @argv = ARGV.dup
7
9
  @env = ENV.to_hash.clone
8
10
  ENV.delete("BUNDLER_VERSION")
@@ -13,6 +15,8 @@ class TestGemBundlerVersionFinder < Gem::TestCase
13
15
  ARGV.replace @argv
14
16
  ENV.replace @env
15
17
  $0 = @dollar_0
18
+
19
+ super
16
20
  end
17
21
 
18
22
  def bvf
@@ -103,6 +103,16 @@ class TestGemCommandManager < Gem::TestCase
103
103
  assert_match(/invalid option: --bad-arg/i, @ui.error)
104
104
  end
105
105
 
106
+ def test_process_args_bad_no_ri
107
+ use_ui @ui do
108
+ assert_raises Gem::MockGemUi::TermError do
109
+ @command_manager.process_args %w[--no-ri]
110
+ end
111
+ end
112
+
113
+ assert_match(/invalid option: --no-ri. Use --no-document instead./i, @ui.error)
114
+ end
115
+
106
116
  # HACK move to install command test
107
117
  def test_process_args_install
108
118
  #capture all install options
@@ -207,6 +207,7 @@ class TestGemCommandsBuildCommand < Gem::TestCase
207
207
  gs.write @gem.to_ruby
208
208
  end
209
209
 
210
+ @cmd.options[:build_path] = gemspec_dir
210
211
  @cmd.options[:args] = [gemspec_file]
211
212
 
212
213
  use_ui @ui do
@@ -25,7 +25,7 @@ class TestGemExtCmakeBuilder < Gem::TestCase
25
25
  File.open File.join(@ext, 'CMakeLists.txt'), 'w' do |cmakelists|
26
26
  cmakelists.write <<-eo_cmake
27
27
  cmake_minimum_required(VERSION 2.6)
28
- project(self_build LANGUAGES NONE)
28
+ project(self_build NONE)
29
29
  install (FILES test.txt DESTINATION bin)
30
30
  eo_cmake
31
31
  end
@@ -37,6 +37,13 @@ class TestGemIndexer < Gem::TestCase
37
37
  @indexer = Gem::Indexer.new(@tempdir)
38
38
  end
39
39
 
40
+ def teardown
41
+ super
42
+
43
+ util_clear_gems
44
+ util_clear_default_gems
45
+ end
46
+
40
47
  def test_initialize
41
48
  assert_equal @tempdir, @indexer.dest_directory
42
49
  assert_match %r{#{Dir.mktmpdir('gem_generate_index').match(/.*-/)}}, @indexer.directory
@@ -163,6 +163,8 @@ gem 'other', version
163
163
 
164
164
  wrapper = File.read installed_exec
165
165
  assert_match %r|generated by RubyGems|, wrapper
166
+ ensure
167
+ Gem::Installer.exec_format = nil
166
168
  end
167
169
 
168
170
  def test_check_executable_overwrite_other_gem
@@ -740,13 +742,13 @@ gem 'other', version
740
742
  rakefile = File.join gemdir, 'ext', 'a', 'Rakefile'
741
743
  spec_file = File.join @gemhome, 'specifications', @spec.spec_name
742
744
 
743
- Gem.pre_install do |installer|
745
+ Gem.pre_install do
744
746
  refute_path_exists cache_file, 'cache file must not exist yet'
745
747
  refute_path_exists spec_file, 'spec file must not exist yet'
746
748
  true
747
749
  end
748
750
 
749
- Gem.post_build do |installer|
751
+ Gem.post_build do
750
752
  assert_path_exists gemdir, 'gem install dir must exist'
751
753
  assert_path_exists rakefile, 'gem executable must exist'
752
754
  refute_path_exists stub_exe, 'gem executable must not exist'
@@ -754,7 +756,7 @@ gem 'other', version
754
756
  true
755
757
  end
756
758
 
757
- Gem.post_install do |installer|
759
+ Gem.post_install do
758
760
  assert_path_exists cache_file, 'cache file must exist'
759
761
  assert_path_exists spec_file, 'spec file must exist'
760
762
  end
@@ -1489,6 +1491,8 @@ gem 'other', version
1489
1491
  end
1490
1492
 
1491
1493
  def test_pre_install_checks_malicious_extensions_before_eval
1494
+ skip "mswin environment disallow to create file contained the carriage return code." if Gem.win_platform?
1495
+
1492
1496
  spec = util_spec "malicious", '1'
1493
1497
  def spec.full_name # so the spec is buildable
1494
1498
  "malicious-1"
@@ -5,7 +5,6 @@ require 'rubygems/rdoc'
5
5
 
6
6
  class TestGemRDoc < Gem::TestCase
7
7
  Gem::RDoc.load_rdoc
8
- rdoc_4 = Gem::Requirement.new('> 3').satisfied_by?(Gem::RDoc.rdoc_version)
9
8
 
10
9
  def setup
11
10
  super
@@ -31,29 +30,8 @@ class TestGemRDoc < Gem::TestCase
31
30
  Gem.configuration[:rdoc] = nil
32
31
  end
33
32
 
34
- ##
35
- # RDoc 4 ships with its own Gem::RDoc which overrides this one which is
36
- # shipped for backwards compatibility.
37
-
38
- def rdoc_4?
39
- Gem::Requirement.new('>= 4.0.0.preview2').satisfied_by? \
40
- @hook.class.rdoc_version
41
- end
42
-
43
- def rdoc_3?
44
- Gem::Requirement.new('~> 3.0').satisfied_by? @hook.class.rdoc_version
45
- end
46
-
47
- def rdoc_3_8_or_better?
48
- Gem::Requirement.new('>= 3.8').satisfied_by? @hook.class.rdoc_version
49
- end
50
-
51
33
  def test_initialize
52
- if rdoc_4?
53
- refute @hook.generate_rdoc
54
- else
55
- assert @hook.generate_rdoc
56
- end
34
+ refute @hook.generate_rdoc
57
35
  assert @hook.generate_ri
58
36
 
59
37
  rdoc = Gem::RDoc.new @a, false, false
@@ -75,67 +53,6 @@ class TestGemRDoc < Gem::TestCase
75
53
  assert_empty args
76
54
  end
77
55
 
78
- def test_document
79
- skip 'RDoc 3 required' unless rdoc_3?
80
-
81
- options = RDoc::Options.new
82
- options.files = []
83
-
84
- rdoc = @hook.new_rdoc
85
- @hook.instance_variable_set :@rdoc, rdoc
86
- @hook.instance_variable_set :@file_info, []
87
-
88
- @hook.document 'darkfish', options, @a.doc_dir('rdoc')
89
-
90
- assert @hook.rdoc_installed?
91
- end unless rdoc_4
92
-
93
- def test_generate
94
- skip 'RDoc 3 required' unless rdoc_3?
95
-
96
- FileUtils.mkdir_p @a.doc_dir
97
- FileUtils.mkdir_p File.join(@a.gem_dir, 'lib')
98
-
99
- @hook.generate
100
-
101
- assert @hook.rdoc_installed?
102
- assert @hook.ri_installed?
103
-
104
- rdoc = @hook.instance_variable_get :@rdoc
105
-
106
- refute rdoc.options.hyperlink_all
107
- end unless rdoc_4
108
-
109
- def test_generate_configuration_rdoc_array
110
- skip 'RDoc 3 required' unless rdoc_3?
111
-
112
- Gem.configuration[:rdoc] = %w[-A]
113
-
114
- FileUtils.mkdir_p @a.doc_dir
115
- FileUtils.mkdir_p File.join(@a.gem_dir, 'lib')
116
-
117
- @hook.generate
118
-
119
- rdoc = @hook.instance_variable_get :@rdoc
120
-
121
- assert rdoc.options.hyperlink_all
122
- end unless rdoc_4
123
-
124
- def test_generate_configuration_rdoc_string
125
- skip 'RDoc 3 required' unless rdoc_3?
126
-
127
- Gem.configuration[:rdoc] = '-A'
128
-
129
- FileUtils.mkdir_p @a.doc_dir
130
- FileUtils.mkdir_p File.join(@a.gem_dir, 'lib')
131
-
132
- @hook.generate
133
-
134
- rdoc = @hook.instance_variable_get :@rdoc
135
-
136
- assert rdoc.options.hyperlink_all
137
- end unless rdoc_4
138
-
139
56
  def test_generate_disabled
140
57
  @hook.generate_rdoc = false
141
58
  @hook.generate_ri = false
@@ -146,57 +63,6 @@ class TestGemRDoc < Gem::TestCase
146
63
  refute @hook.ri_installed?
147
64
  end
148
65
 
149
- def test_generate_force
150
- skip 'RDoc 3 required' unless rdoc_3?
151
-
152
- FileUtils.mkdir_p @a.doc_dir 'ri'
153
- FileUtils.mkdir_p @a.doc_dir 'rdoc'
154
- FileUtils.mkdir_p File.join(@a.gem_dir, 'lib')
155
-
156
- @hook.force = true
157
-
158
- @hook.generate
159
-
160
- assert_path_exists File.join(@a.doc_dir('rdoc'), 'index.html')
161
- assert_path_exists File.join(@a.doc_dir('ri'), 'cache.ri')
162
- end unless rdoc_4
163
-
164
- def test_generate_no_overwrite
165
- skip 'RDoc 3 required' unless rdoc_3?
166
-
167
- FileUtils.mkdir_p @a.doc_dir 'ri'
168
- FileUtils.mkdir_p @a.doc_dir 'rdoc'
169
- FileUtils.mkdir_p File.join(@a.gem_dir, 'lib')
170
-
171
- @hook.generate
172
-
173
- refute_path_exists File.join(@a.doc_dir('rdoc'), 'index.html')
174
- refute_path_exists File.join(@a.doc_dir('ri'), 'cache.ri')
175
- end unless rdoc_4
176
-
177
- def test_generate_legacy
178
- skip 'RDoc < 3.8 required' if rdoc_3_8_or_better?
179
-
180
- FileUtils.mkdir_p @a.doc_dir
181
- FileUtils.mkdir_p File.join(@a.gem_dir, 'lib')
182
-
183
- @hook.generate_legacy
184
-
185
- assert @hook.rdoc_installed?
186
- assert @hook.ri_installed?
187
- end unless rdoc_4
188
-
189
- def test_legacy_rdoc
190
- skip 'RDoc < 3.8 required' if rdoc_3_8_or_better?
191
-
192
- FileUtils.mkdir_p @a.doc_dir
193
- FileUtils.mkdir_p File.join(@a.gem_dir, 'lib')
194
-
195
- @hook.legacy_rdoc '--op', @a.doc_dir('rdoc')
196
-
197
- assert @hook.rdoc_installed?
198
- end unless rdoc_4
199
-
200
66
  def test_new_rdoc
201
67
  assert_kind_of RDoc::RDoc, @hook.new_rdoc
202
68
  end
@@ -283,6 +283,14 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
283
283
  refute_empty set.dependencies
284
284
  end
285
285
 
286
+ with_engine_version 'truffleruby', '2.0.0' do
287
+ set = Gem::RequestSet.new
288
+ gda = @GDA.new set, 'gem.deps.rb'
289
+ gda.gem 'a', :platforms => :ruby
290
+
291
+ refute_empty set.dependencies
292
+ end
293
+
286
294
  with_engine_version 'jruby', '1.7.6' do
287
295
  set = Gem::RequestSet.new
288
296
  gda = @GDA.new set, 'gem.deps.rb'
@@ -310,6 +318,12 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
310
318
 
311
319
  assert_empty @set.dependencies
312
320
  end
321
+
322
+ with_engine_version 'truffleruby', '1.2.3' do
323
+ @gda.gem 'a', :platforms => :mri
324
+
325
+ assert_empty @set.dependencies
326
+ end
313
327
  end
314
328
 
315
329
  def test_gem_platforms_maglev
@@ -332,6 +346,22 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
332
346
  Gem.win_platform = win_platform
333
347
  end
334
348
 
349
+ def test_gem_platforms_truffleruby
350
+ with_engine_version 'truffleruby', '1.0.0' do
351
+ set = Gem::RequestSet.new
352
+ gda = @GDA.new set, 'gem.deps.rb'
353
+ gda.gem 'a', :platforms => :truffleruby
354
+
355
+ refute_empty set.dependencies
356
+
357
+ set = Gem::RequestSet.new
358
+ gda = @GDA.new set, 'gem.deps.rb'
359
+ gda.gem 'a', :platforms => :maglev
360
+
361
+ assert_empty set.dependencies
362
+ end
363
+ end
364
+
335
365
  def test_gem_platforms_multiple
336
366
  win_platform, Gem.win_platform = Gem.win_platform?, false
337
367
 
@@ -652,20 +682,23 @@ end
652
682
  end
653
683
 
654
684
  def test_platform_mswin
655
- util_set_arch 'i686-darwin8.10.1' do
656
- @gda.platform :mswin do
657
- @gda.gem 'a'
685
+ if win_platform?
686
+ util_set_arch 'x86-mswin32-60' do
687
+ @gda.platform :mswin do
688
+ @gda.gem 'a'
689
+ end
690
+
691
+ assert_equal [dep('a')], @set.dependencies
692
+ refute_empty @set.dependencies
658
693
  end
694
+ else
695
+ util_set_arch 'i686-darwin8.10.1' do
696
+ @gda.platform :mswin do
697
+ @gda.gem 'a'
698
+ end
659
699
 
660
- assert_empty @set.dependencies
661
- end
662
-
663
- util_set_arch 'x86-mswin32-60' do
664
- @gda.platform :mswin do
665
- @gda.gem 'a'
700
+ assert_empty @set.dependencies
666
701
  end
667
-
668
- refute_empty @set.dependencies
669
702
  end
670
703
  end
671
704
 
@@ -708,26 +741,20 @@ end
708
741
  end
709
742
 
710
743
  def test_platforms
711
- util_set_arch 'i686-darwin8.10.1' do
712
- @gda.platforms :ruby do
713
- @gda.gem 'a'
714
- end
744
+ unless win_platform?
745
+ util_set_arch 'i686-darwin8.10.1' do
746
+ @gda.platforms :ruby do
747
+ @gda.gem 'a'
748
+ end
715
749
 
716
- assert_equal [dep('a')], @set.dependencies
750
+ assert_equal [dep('a')], @set.dependencies
717
751
 
718
- @gda.platforms :mswin do
719
- @gda.gem 'b'
720
- end
752
+ @gda.platforms :mswin do
753
+ @gda.gem 'b'
754
+ end
721
755
 
722
- assert_equal [dep('a')], @set.dependencies
723
- end
724
-
725
- util_set_arch 'x86-mswin32-60' do
726
- @gda.platforms :mswin do
727
- @gda.gem 'c'
756
+ assert_equal [dep('a')], @set.dependencies
728
757
  end
729
-
730
- assert_equal [dep('a'), dep('c')], @set.dependencies
731
758
  end
732
759
  end
733
760
 
@@ -741,6 +768,12 @@ end
741
768
  :engine => 'jruby', :engine_version => '1.7.6'
742
769
 
743
770
  end
771
+
772
+ with_engine_version 'truffleruby', '1.0.0-rc11' do
773
+ assert @gda.ruby RUBY_VERSION,
774
+ :engine => 'truffleruby', :engine_version => '1.0.0-rc11'
775
+
776
+ end
744
777
  end
745
778
 
746
779
  def test_ruby_engine_mismatch_engine