rubygems-update 2.1.7 → 2.1.8
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.
- 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
|