[rubygems/rubygems] Move expanding dependencies with metadata to specification classes
https://github.com/rubygems/rubygems/commit/7f921aa46e
This commit is contained in:
parent
24f5e3010f
commit
a1716e2365
@ -13,5 +13,18 @@ module Bundler
|
|||||||
def matches_current_rubygems?
|
def matches_current_rubygems?
|
||||||
@required_rubygems_version.satisfied_by?(Gem.rubygems_version)
|
@required_rubygems_version.satisfied_by?(Gem.rubygems_version)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def expanded_dependencies
|
||||||
|
runtime_dependencies + [
|
||||||
|
metadata_dependency("Ruby", required_ruby_version),
|
||||||
|
metadata_dependency("RubyGems", required_rubygems_version),
|
||||||
|
].compact
|
||||||
|
end
|
||||||
|
|
||||||
|
def metadata_dependency(name, requirement)
|
||||||
|
return if requirement.nil? || requirement.none?
|
||||||
|
|
||||||
|
Gem::Dependency.new("#{name}\0", requirement)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -39,9 +39,7 @@ module Bundler
|
|||||||
end
|
end
|
||||||
|
|
||||||
def dependencies
|
def dependencies
|
||||||
@dependencies ||= @specs.flat_map do |spec|
|
@dependencies ||= @specs.flat_map(&:expanded_dependencies).uniq.sort
|
||||||
spec.runtime_dependencies + metadata_dependencies(spec)
|
|
||||||
end.uniq.sort
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def ==(other)
|
def ==(other)
|
||||||
@ -71,19 +69,6 @@ module Bundler
|
|||||||
def exemplary_spec
|
def exemplary_spec
|
||||||
@specs.first
|
@specs.first
|
||||||
end
|
end
|
||||||
|
|
||||||
def metadata_dependencies(spec)
|
|
||||||
[
|
|
||||||
metadata_dependency("Ruby", spec.required_ruby_version),
|
|
||||||
metadata_dependency("RubyGems", spec.required_rubygems_version),
|
|
||||||
].compact
|
|
||||||
end
|
|
||||||
|
|
||||||
def metadata_dependency(name, requirement)
|
|
||||||
return if requirement.nil? || requirement.none?
|
|
||||||
|
|
||||||
Gem::Dependency.new("#{name}\0", requirement)
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
Loading…
x
Reference in New Issue
Block a user