rubygems-update 2.1.7 → 2.1.8
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of rubygems-update might be problematic. Click here for more details.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/History.txt +10 -0
- data/lib/rubygems.rb +1 -1
- data/lib/rubygems/dependency_installer.rb +3 -1
- data/lib/rubygems/dependency_resolver/index_set.rb +1 -1
- data/lib/rubygems/dependency_resolver/index_specification.rb +2 -2
- data/lib/rubygems/dependency_resolver/installer_set.rb +20 -1
- data/lib/rubygems/indexer.rb +7 -3
- data/lib/rubygems/package.rb +2 -6
- data/lib/rubygems/source/local.rb +1 -1
- data/test/rubygems/test_gem_dependency_resolver_index_specification.rb +27 -0
- data/test/rubygems/test_gem_indexer.rb +3 -0
- data/test/rubygems/test_gem_package.rb +13 -0
- metadata +3 -3
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c3eb7f711990fd0f87cb87eca6c1627ebb4ff6c7
|
4
|
+
data.tar.gz: c4f84f383343a06eaa173d95a7e67d909f041cb2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 902cedce83b8ec3fab27ec81b8c3e0722c4517b71cfe132b30f366b51aafa01d69195233d0645d3a2e27d750c2ee63902794dcdd9cce682613910ab5f28e1da3
|
7
|
+
data.tar.gz: 3116347b7dcd216652caff56d52ef2c55940f67c7117623d49d75313a8f89dd6f2989327375ea8a9ea9b70aee66d87c8ba11daa72d1aec2ee41806eaacdd9c8c
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/History.txt
CHANGED
@@ -1,5 +1,15 @@
|
|
1
1
|
# coding: UTF-8
|
2
2
|
|
3
|
+
=== 2.1.8 / 2013-10-10
|
4
|
+
|
5
|
+
Bug fixes:
|
6
|
+
|
7
|
+
* Fixed local installation of platform gem files. Issue #664 by Ryan Melton.
|
8
|
+
* Files starting with "." in the root directory are installed again. Issue
|
9
|
+
#680 by Ivo Wever, Pull Request #681 by Jeremy Evans.
|
10
|
+
* The index generator no longer indexes default gems. Issue #661 by
|
11
|
+
Jeremy Hinegardner.
|
12
|
+
|
3
13
|
=== 2.1.7 / 2013-10-09
|
4
14
|
|
5
15
|
Bug fixes:
|
data/lib/rubygems.rb
CHANGED
@@ -403,7 +403,9 @@ class Gem::DependencyInstaller
|
|
403
403
|
request_set.soft_missing = true
|
404
404
|
end
|
405
405
|
|
406
|
-
|
406
|
+
composed_set = Gem::DependencyResolver.compose_sets as, installer_set
|
407
|
+
|
408
|
+
request_set.resolve composed_set
|
407
409
|
|
408
410
|
request_set
|
409
411
|
end
|
@@ -30,7 +30,7 @@ class Gem::DependencyResolver::IndexSet
|
|
30
30
|
name = req.dependency.name
|
31
31
|
|
32
32
|
@all[name].each do |uri, n|
|
33
|
-
if req.dependency.match? n
|
33
|
+
if req.dependency.match? n then
|
34
34
|
res << Gem::DependencyResolver::IndexSpecification.new(
|
35
35
|
self, n.name, n.version, uri, n.platform)
|
36
36
|
end
|
@@ -14,12 +14,12 @@ class Gem::DependencyResolver::IndexSpecification
|
|
14
14
|
|
15
15
|
attr_reader :version
|
16
16
|
|
17
|
-
def initialize set, name, version, source,
|
17
|
+
def initialize set, name, version, source, platform
|
18
18
|
@set = set
|
19
19
|
@name = name
|
20
20
|
@version = version
|
21
21
|
@source = source
|
22
|
-
@platform =
|
22
|
+
@platform = platform.to_s
|
23
23
|
|
24
24
|
@spec = nil
|
25
25
|
end
|
@@ -87,7 +87,11 @@ class Gem::DependencyResolver::InstallerSet
|
|
87
87
|
end
|
88
88
|
|
89
89
|
def inspect # :nodoc:
|
90
|
-
|
90
|
+
always_install = @always_install.map { |s| s.full_name }
|
91
|
+
|
92
|
+
'#<%s domain: %s specs: %p always install: %p>' % [
|
93
|
+
self.class, @domain, @specs.keys, always_install,
|
94
|
+
]
|
91
95
|
end
|
92
96
|
|
93
97
|
##
|
@@ -131,5 +135,20 @@ class Gem::DependencyResolver::InstallerSet
|
|
131
135
|
def prefetch(reqs)
|
132
136
|
end
|
133
137
|
|
138
|
+
def pretty_print q # :nodoc:
|
139
|
+
q.group 2, '[InstallerSet', ']' do
|
140
|
+
q.breakable
|
141
|
+
q.text "domain: #{@domain}"
|
142
|
+
|
143
|
+
q.breakable
|
144
|
+
q.text 'specs: '
|
145
|
+
q.pp @specs.keys
|
146
|
+
|
147
|
+
q.breakable
|
148
|
+
q.text 'always install: '
|
149
|
+
q.pp @always_install
|
150
|
+
end
|
151
|
+
end
|
152
|
+
|
134
153
|
end
|
135
154
|
|
data/lib/rubygems/indexer.rb
CHANGED
@@ -126,7 +126,7 @@ class Gem::Indexer
|
|
126
126
|
# Builds Marshal quick index gemspecs.
|
127
127
|
|
128
128
|
def build_marshal_gemspecs
|
129
|
-
count = Gem::Specification.count
|
129
|
+
count = Gem::Specification.count { |s| not s.default_gem? }
|
130
130
|
progress = ui.progress_reporter count,
|
131
131
|
"Generating Marshal quick index gemspecs for #{count} gems",
|
132
132
|
"Complete"
|
@@ -135,6 +135,7 @@ class Gem::Indexer
|
|
135
135
|
|
136
136
|
Gem.time 'Generated Marshal quick index gemspecs' do
|
137
137
|
Gem::Specification.each do |spec|
|
138
|
+
next if spec.default_gem?
|
138
139
|
spec_file_name = "#{spec.original_name}.gemspec.rz"
|
139
140
|
marshal_name = File.join @quick_marshal_dir, spec_file_name
|
140
141
|
|
@@ -188,10 +189,13 @@ class Gem::Indexer
|
|
188
189
|
# Builds indicies for RubyGems 1.2 and newer. Handles full, latest, prerelease
|
189
190
|
|
190
191
|
def build_modern_indicies
|
191
|
-
|
192
|
+
specs = Gem::Specification.reject { |s| s.default_gem? }
|
193
|
+
|
194
|
+
prerelease, released = specs.partition { |s|
|
192
195
|
s.version.prerelease?
|
193
196
|
}
|
194
|
-
latest_specs =
|
197
|
+
latest_specs =
|
198
|
+
Gem::Specification.latest_specs.reject { |s| s.default_gem? }
|
195
199
|
|
196
200
|
build_modern_index(released.sort, @specs_index, 'specs')
|
197
201
|
build_modern_index(latest_specs.sort, @latest_specs_index, 'latest specs')
|
data/lib/rubygems/package.rb
CHANGED
@@ -339,13 +339,9 @@ EOM
|
|
339
339
|
def extract_tar_gz io, destination_dir, pattern = "*" # :nodoc:
|
340
340
|
open_tar_gz io do |tar|
|
341
341
|
tar.each do |entry|
|
342
|
-
|
343
|
-
# issue #644
|
344
|
-
full_name = entry.full_name.sub %r%\A\./%, ''
|
342
|
+
next unless File.fnmatch pattern, entry.full_name, File::FNM_DOTMATCH
|
345
343
|
|
346
|
-
|
347
|
-
|
348
|
-
destination = install_location full_name, destination_dir
|
344
|
+
destination = install_location entry.full_name, destination_dir
|
349
345
|
|
350
346
|
FileUtils.rm_rf destination
|
351
347
|
|
@@ -1,5 +1,6 @@
|
|
1
1
|
require 'rubygems/test_case'
|
2
2
|
require 'rubygems/dependency_resolver'
|
3
|
+
require 'rubygems/available_set'
|
3
4
|
|
4
5
|
class TestGemDependencyResolverIndexSpecification < Gem::TestCase
|
5
6
|
|
@@ -18,6 +19,17 @@ class TestGemDependencyResolverIndexSpecification < Gem::TestCase
|
|
18
19
|
assert_equal source, spec.source
|
19
20
|
end
|
20
21
|
|
22
|
+
def test_initialize_platform
|
23
|
+
set = Gem::DependencyResolver::IndexSet.new
|
24
|
+
source = Gem::Source::Local.new
|
25
|
+
version = Gem::Version.new '3.0.3'
|
26
|
+
|
27
|
+
spec = Gem::DependencyResolver::IndexSpecification.new(
|
28
|
+
set, 'rails', version, source, Gem::Platform.local)
|
29
|
+
|
30
|
+
assert_equal Gem::Platform.local.to_s, spec.platform
|
31
|
+
end
|
32
|
+
|
21
33
|
def test_spec
|
22
34
|
@fetcher = Gem::FakeFetcher.new
|
23
35
|
Gem::RemoteFetcher.fetcher = @fetcher
|
@@ -41,6 +53,21 @@ class TestGemDependencyResolverIndexSpecification < Gem::TestCase
|
|
41
53
|
assert_equal a_2_p.full_name, spec.full_name
|
42
54
|
end
|
43
55
|
|
56
|
+
def test_spec_local
|
57
|
+
a_2_p = quick_spec 'a', 2 do |s| s.platform = Gem::Platform.local end
|
58
|
+
Gem::Package.build a_2_p
|
59
|
+
|
60
|
+
source = Gem::Source::Local.new
|
61
|
+
set = Gem::DependencyResolver::InstallerSet.new :local
|
62
|
+
set.always_install << a_2_p
|
63
|
+
|
64
|
+
i_spec = Gem::DependencyResolver::IndexSpecification.new \
|
65
|
+
set, 'a', v(2), source, Gem::Platform.local
|
66
|
+
|
67
|
+
spec = i_spec.spec
|
68
|
+
|
69
|
+
assert_equal a_2_p.full_name, spec.full_name
|
70
|
+
end
|
44
71
|
|
45
72
|
end
|
46
73
|
|
@@ -24,6 +24,9 @@ class TestGemIndexer < Gem::TestCase
|
|
24
24
|
@d2_0_b = quick_spec 'd', '2.0.b'
|
25
25
|
util_build_gem @d2_0_b
|
26
26
|
|
27
|
+
@default = new_default_spec 'default', 2
|
28
|
+
install_default_gems @default
|
29
|
+
|
27
30
|
@tempdir = File.join(@tempdir, 'indexer')
|
28
31
|
|
29
32
|
gems = File.join(@tempdir, 'gems')
|
@@ -409,6 +409,19 @@ class TestGemPackage < Gem::Package::TarTestCase
|
|
409
409
|
assert_path_exists extracted
|
410
410
|
end
|
411
411
|
|
412
|
+
def test_extract_tar_gz_dot_file
|
413
|
+
package = Gem::Package.new @gem
|
414
|
+
|
415
|
+
tgz_io = util_tar_gz do |tar|
|
416
|
+
tar.add_file '.dot_file.rb', 0644 do |io| io.write 'hi' end
|
417
|
+
end
|
418
|
+
|
419
|
+
package.extract_tar_gz tgz_io, @destination
|
420
|
+
|
421
|
+
extracted = File.join @destination, '.dot_file.rb'
|
422
|
+
assert_path_exists extracted
|
423
|
+
end
|
424
|
+
|
412
425
|
def test_install_location
|
413
426
|
package = Gem::Package.new @gem
|
414
427
|
|
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.
|
4
|
+
version: 2.1.8
|
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-10-
|
35
|
+
date: 2013-10-10 00:00:00.000000000 Z
|
36
36
|
dependencies:
|
37
37
|
- !ruby/object:Gem::Dependency
|
38
38
|
name: minitest
|
@@ -495,7 +495,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
495
495
|
version: '0'
|
496
496
|
requirements: []
|
497
497
|
rubyforge_project: rubygems-update
|
498
|
-
rubygems_version: 2.1.
|
498
|
+
rubygems_version: 2.1.7
|
499
499
|
signing_key:
|
500
500
|
specification_version: 4
|
501
501
|
summary: RubyGems is a package management framework for Ruby
|
metadata.gz.sig
CHANGED
Binary file
|