The LockSpecification
comes from a lockfile (Gem::RequestSet::Lockfile
).
A LockSpecification’s dependency information is pre-filled from the lockfile.
Attributes
Read
No documentation available
Class Methods
lib/rubygems/resolver/lock_specification.rb
View on GitHub
# File tmp/rubies/ruby-2.3.8/lib/rubygems/resolver/lock_specification.rb, line 12
def initialize set, name, version, sources, platform
super()
@name = name
@platform = platform
@set = set
@source = sources.first
@sources = sources
@version = version
@dependencies = []
@spec = nil
end
No documentation available
Instance Methods
lib/rubygems/resolver/lock_specification.rb
View on GitHub
# File tmp/rubies/ruby-2.3.8/lib/rubygems/resolver/lock_specification.rb, line 30
def install options = {}
destination = options[:install_dir] || Gem.dir
if File.exist? File.join(destination, 'specifications', spec.spec_name) then
yield nil
return
end
super
end
This is a null install as a locked specification is considered installed. options
are ignored.
#
lib/rubygems/resolver/lock_specification.rb
View on GitHub
# File tmp/rubies/ruby-2.3.8/lib/rubygems/resolver/lock_specification.rb, line 73
def spec
@spec ||= Gem::Specification.find { |spec|
spec.name == @name and spec.version == @version
}
@spec ||= Gem::Specification.new do |s|
s.name = @name
s.version = @version
s.platform = @platform
s.dependencies.concat @dependencies
end
end
A specification constructed from the lockfile is returned