rubygems-update 2.1.0.rc.1 → 2.1.0.rc.2

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.

Potentially problematic release.


This version of rubygems-update might be problematic. Click here for more details.

Files changed (63) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/History.txt +11 -3
  5. data/Manifest.txt +1 -0
  6. data/Rakefile +22 -18
  7. data/lib/rubygems.rb +8 -10
  8. data/lib/rubygems/basic_specification.rb +112 -108
  9. data/lib/rubygems/commands/build_command.rb +19 -0
  10. data/lib/rubygems/commands/check_command.rb +7 -0
  11. data/lib/rubygems/commands/cleanup_command.rb +5 -5
  12. data/lib/rubygems/commands/contents_command.rb +8 -0
  13. data/lib/rubygems/commands/dependency_command.rb +11 -0
  14. data/lib/rubygems/commands/environment_command.rb +3 -0
  15. data/lib/rubygems/commands/fetch_command.rb +10 -0
  16. data/lib/rubygems/commands/list_command.rb +12 -1
  17. data/lib/rubygems/commands/mirror_command.rb +6 -0
  18. data/lib/rubygems/commands/outdated_command.rb +9 -0
  19. data/lib/rubygems/commands/owner_command.rb +9 -2
  20. data/lib/rubygems/commands/pristine_command.rb +12 -11
  21. data/lib/rubygems/commands/push_command.rb +8 -2
  22. data/lib/rubygems/commands/query_command.rb +9 -0
  23. data/lib/rubygems/commands/rdoc_command.rb +6 -2
  24. data/lib/rubygems/commands/search_command.rb +14 -1
  25. data/lib/rubygems/commands/sources_command.rb +47 -0
  26. data/lib/rubygems/commands/specification_command.rb +16 -0
  27. data/lib/rubygems/commands/stale_command.rb +10 -0
  28. data/lib/rubygems/commands/uninstall_command.rb +19 -6
  29. data/lib/rubygems/commands/unpack_command.rb +18 -0
  30. data/lib/rubygems/commands/update_command.rb +9 -0
  31. data/lib/rubygems/commands/which_command.rb +11 -0
  32. data/lib/rubygems/commands/yank_command.rb +16 -2
  33. data/lib/rubygems/core_ext/kernel_require.rb +4 -4
  34. data/lib/rubygems/defaults.rb +7 -0
  35. data/lib/rubygems/dependency_installer.rb +1 -4
  36. data/lib/rubygems/ext/builder.rb +118 -0
  37. data/lib/rubygems/installer.rb +7 -60
  38. data/lib/rubygems/package_task.rb +5 -2
  39. data/lib/rubygems/remote_fetcher.rb +1 -1
  40. data/lib/rubygems/security/policy.rb +5 -0
  41. data/lib/rubygems/security/signer.rb +19 -1
  42. data/lib/rubygems/source.rb +7 -3
  43. data/lib/rubygems/source/local.rb +5 -4
  44. data/lib/rubygems/source/specific_file.rb +28 -0
  45. data/lib/rubygems/specification.rb +55 -44
  46. data/lib/rubygems/stub_specification.rb +93 -92
  47. data/lib/rubygems/test_case.rb +10 -9
  48. data/test/rubygems/test_gem.rb +27 -0
  49. data/test/rubygems/test_gem_commands_install_command.rb +1 -0
  50. data/test/rubygems/test_gem_commands_uninstall_command.rb +17 -8
  51. data/test/rubygems/test_gem_ext_builder.rb +97 -2
  52. data/test/rubygems/test_gem_installer.rb +0 -89
  53. data/test/rubygems/test_gem_package.rb +6 -8
  54. data/test/rubygems/test_gem_package_task.rb +23 -2
  55. data/test/rubygems/test_gem_security_policy.rb +11 -0
  56. data/test/rubygems/test_gem_security_signer.rb +6 -0
  57. data/test/rubygems/test_gem_source.rb +23 -0
  58. data/test/rubygems/test_gem_source_installed.rb +28 -0
  59. data/test/rubygems/test_gem_source_local.rb +29 -6
  60. data/test/rubygems/test_gem_source_specific_file.rb +38 -0
  61. data/test/rubygems/test_gem_specification.rb +10 -2
  62. metadata +7 -5
  63. metadata.gz.sig +0 -0
@@ -184,5 +184,28 @@ class TestGemSource < Gem::TestCase
184
184
  end
185
185
  end
186
186
 
187
+ def test_spaceship
188
+ remote = @source
189
+ specific = Gem::Source::SpecificFile.new(@a1.cache_file)
190
+ installed = Gem::Source::Installed.new
191
+ local = Gem::Source::Local.new
192
+
193
+ assert_equal( 0, remote. <=>(remote), 'remote <=> remote')
194
+
195
+ assert_equal(-1, remote. <=>(specific), 'remote <=> specific')
196
+ assert_equal( 1, specific. <=>(remote), 'specific <=> remote')
197
+
198
+ assert_equal(-1, remote. <=>(local), 'remote <=> local')
199
+ assert_equal( 1, local. <=>(remote), 'local <=> remote')
200
+
201
+ assert_equal(-1, remote. <=>(installed), 'remote <=> installed')
202
+ assert_equal( 1, installed.<=>(remote), 'installed <=> remote')
203
+
204
+ no_uri = @source.dup
205
+ no_uri.instance_variable_set :@uri, nil
206
+
207
+ assert_equal(-1, remote. <=>(no_uri), 'remote <=> no_uri')
208
+ end
209
+
187
210
  end
188
211
 
@@ -0,0 +1,28 @@
1
+ require 'rubygems/test_case'
2
+ require 'rubygems/source'
3
+
4
+ class TestGemSourceInstalled < Gem::TestCase
5
+
6
+ def test_spaceship
7
+ a1 = quick_gem 'a', '1'
8
+ util_build_gem a1
9
+
10
+ remote = Gem::Source.new @gem_repo
11
+ specific = Gem::Source::SpecificFile.new a1.cache_file
12
+ installed = Gem::Source::Installed.new
13
+ local = Gem::Source::Local.new
14
+
15
+ assert_equal( 0, installed.<=>(installed), 'installed <=> installed')
16
+
17
+ assert_equal(-1, remote. <=>(installed), 'remote <=> installed')
18
+ assert_equal( 1, installed.<=>(remote), 'installed <=> remote')
19
+
20
+ assert_equal( 1, installed.<=>(local), 'installed <=> local')
21
+ assert_equal(-1, local. <=>(installed), 'local <=> installed')
22
+
23
+ assert_equal(-1, specific. <=>(installed), 'specific <=> installed')
24
+ assert_equal( 1, installed.<=>(specific), 'installed <=> specific')
25
+ end
26
+
27
+ end
28
+
@@ -66,18 +66,41 @@ class TestGemSourceLocal < Gem::TestCase
66
66
  assert_equal s, @a
67
67
  end
68
68
 
69
+ def test_inspect
70
+ assert_equal '#<Gem::Source::Local specs: "NOT LOADED">', @sl.inspect
71
+
72
+ @sl.load_specs :released
73
+
74
+ inner = [@a, @ap, @b].map { |t| t.name_tuple }.inspect
75
+
76
+ assert_equal "#<Gem::Source::Local specs: #{inner}>", @sl.inspect
77
+ end
78
+
69
79
  def test_download
70
80
  path = @sl.download @a
71
81
 
72
82
  assert_equal File.expand_path(@a.file_name), path
73
83
  end
74
84
 
75
- def test_compare
76
- uri = URI.parse "http://gems.example/foo"
77
- s = Gem::Source.new uri
85
+ def test_spaceship
86
+ a1 = quick_gem 'a', '1'
87
+ util_build_gem a1
78
88
 
79
- assert_equal(-1, s <=> @sl)
80
- assert_equal 0, @sl <=> @sl
81
- assert_equal 1, @sl <=> s
89
+ remote = Gem::Source.new @gem_repo
90
+ specific = Gem::Source::SpecificFile.new a1.cache_file
91
+ installed = Gem::Source::Installed.new
92
+ local = Gem::Source::Local.new
93
+
94
+ assert_equal( 0, local. <=>(local), 'local <=> local')
95
+
96
+ assert_equal(-1, remote. <=>(local), 'remote <=> local')
97
+ assert_equal( 1, local. <=>(remote), 'local <=> remote')
98
+
99
+ assert_equal( 1, installed.<=>(local), 'installed <=> local')
100
+ assert_equal(-1, local. <=>(installed), 'local <=> installed')
101
+
102
+ assert_equal(-1, specific. <=>(local), 'specific <=> local')
103
+ assert_equal( 1, local. <=>(specific), 'local <=> specific')
82
104
  end
105
+
83
106
  end
@@ -30,4 +30,42 @@ class TestGemSourceSpecificFile < Gem::TestCase
30
30
  def test_download
31
31
  assert_equal @a_gem, @sf.download(@a)
32
32
  end
33
+
34
+ def test_spaceship
35
+ a1 = quick_gem 'a', '1'
36
+ util_build_gem a1
37
+
38
+ remote = Gem::Source.new @gem_repo
39
+ specific = Gem::Source::SpecificFile.new a1.cache_file
40
+ installed = Gem::Source::Installed.new
41
+ local = Gem::Source::Local.new
42
+
43
+ assert_equal( 0, specific. <=>(specific), 'specific <=> specific')
44
+
45
+ assert_equal(-1, remote. <=>(specific), 'remote <=> specific')
46
+ assert_equal( 1, specific. <=>(remote), 'specific <=> remote')
47
+
48
+ assert_equal(-1, specific. <=>(local), 'specific <=> local')
49
+ assert_equal( 1, local. <=>(specific), 'local <=> specific')
50
+
51
+ assert_equal(-1, specific. <=>(installed), 'specific <=> installed')
52
+ assert_equal( 1, installed.<=>(specific), 'installed <=> specific')
53
+
54
+ a2 = quick_gem 'a', '2'
55
+ util_build_gem a2
56
+
57
+ b1 = quick_gem 'b', '1'
58
+ util_build_gem b1
59
+
60
+ a1_source = specific
61
+ a2_source = Gem::Source::SpecificFile.new a2.cache_file
62
+ b1_source = Gem::Source::SpecificFile.new b1.cache_file
63
+
64
+ assert_nil a1_source.<=>(b1_source), 'a1_source <=> b1_source'
65
+
66
+ assert_equal(-1, a1_source.<=>(a2_source), 'a1_source <=> a2_source')
67
+ assert_equal( 0, a1_source.<=>(a1_source), 'a1_source <=> a1_source')
68
+ assert_equal( 1, a2_source.<=>(a1_source), 'a2_source <=> a1_source')
69
+ end
70
+
33
71
  end
@@ -445,6 +445,14 @@ end
445
445
  end
446
446
  end
447
447
 
448
+ def test_self_all_equals
449
+ a = new_spec "foo", "1", nil, "lib/foo.rb"
450
+
451
+ Gem::Specification.all = [a]
452
+
453
+ assert_equal a, Gem::Specification.find_inactive_by_path('foo')
454
+ end
455
+
448
456
  def test_self_attribute_names
449
457
  expected_value = %w[
450
458
  authors
@@ -1313,7 +1321,7 @@ dependencies: []
1313
1321
  end
1314
1322
 
1315
1323
  def test_base_dir_not_loaded
1316
- @a1.instance_variable_set :@filename, nil
1324
+ @a1.instance_variable_set :@loaded_from, nil
1317
1325
 
1318
1326
  assert_equal Gem.dir, @a1.base_dir
1319
1327
  end
@@ -1322,7 +1330,7 @@ dependencies: []
1322
1330
  default_dir =
1323
1331
  File.join Gem::Specification.default_specifications_dir, @a1.spec_name
1324
1332
 
1325
- @a1.instance_variable_set :@filename, default_dir
1333
+ @a1.instance_variable_set :@loaded_from, default_dir
1326
1334
 
1327
1335
  assert_equal Gem.default_dir, @a1.base_dir
1328
1336
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubygems-update
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.0.rc.1
4
+ version: 2.1.0.rc.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jim Weirich
@@ -32,7 +32,7 @@ cert_chain:
32
32
  KDyY1VIazVgoC8XvR4h/95/iScPiuglzA+DBG1hip1xScAtw05BrXyUNrc9CEMYU
33
33
  wgF94UVoHRp6ywo8I7NP3HcwFQDFNEZPNGXsng==
34
34
  -----END CERTIFICATE-----
35
- date: 2013-07-25 00:00:00.000000000 Z
35
+ date: 2013-08-26 00:00:00.000000000 Z
36
36
  dependencies:
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: minitest
@@ -439,6 +439,7 @@ files:
439
439
  - test/rubygems/test_gem_server.rb
440
440
  - test/rubygems/test_gem_silent_ui.rb
441
441
  - test/rubygems/test_gem_source.rb
442
+ - test/rubygems/test_gem_source_installed.rb
442
443
  - test/rubygems/test_gem_source_list.rb
443
444
  - test/rubygems/test_gem_source_local.rb
444
445
  - test/rubygems/test_gem_source_specific_file.rb
@@ -469,7 +470,7 @@ post_install_message:
469
470
  rdoc_options:
470
471
  - --main
471
472
  - README.rdoc
472
- - --title=RubyGems 2.1.0.rc.1 Documentation
473
+ - --title=RubyGems Update Documentation
473
474
  require_paths:
474
475
  - hide_lib_for_update
475
476
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -483,8 +484,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
483
484
  - !ruby/object:Gem::Version
484
485
  version: '0'
485
486
  requirements: []
486
- rubyforge_project: rubygems
487
- rubygems_version: 2.0.6
487
+ rubyforge_project: rubygems-update
488
+ rubygems_version: 2.0.7
488
489
  signing_key:
489
490
  specification_version: 4
490
491
  summary: RubyGems is a package management framework for Ruby
@@ -566,6 +567,7 @@ test_files:
566
567
  - test/rubygems/test_gem_server.rb
567
568
  - test/rubygems/test_gem_silent_ui.rb
568
569
  - test/rubygems/test_gem_source.rb
570
+ - test/rubygems/test_gem_source_installed.rb
569
571
  - test/rubygems/test_gem_source_list.rb
570
572
  - test/rubygems/test_gem_source_local.rb
571
573
  - test/rubygems/test_gem_source_specific_file.rb
metadata.gz.sig CHANGED
Binary file