class Bundler::Source
Attributes
dependency_names[RW]
Public Instance Methods
# File lib/bundler/source.rb, line 32 def can_lock?(spec) spec.source == self end
# File lib/bundler/source.rb, line 41 def dependency_names_to_double_check specs.dependency_names end
# File lib/bundler/source.rb, line 39 def double_check_for(*); end
it's possible that gems from one source depend on gems from some other source, so now we download gemspecs and iterate over those dependencies, looking for gems we don't have info on yet.
# File lib/bundler/source.rb, line 57
def extension_cache_path(spec)
return unless Bundler.feature_flag.global_gem_cache?
return unless source_slug = extension_cache_slug(spec)
Bundler.user_cache.join(
"extensions", Gem::Platform.local.to_s, Bundler.ruby_scope,
source_slug, spec.full_name
)
end # File lib/bundler/source.rb, line 45 def include?(other) other == self end
# File lib/bundler/source.rb, line 49
def inspect
"#<#{self.class}:0x#{object_id} #{self}>"
end # File lib/bundler/source.rb, line 53 def path? instance_of?(Bundler::Source::Path) end
# File lib/bundler/source.rb, line 13 def unmet_deps specs.unmet_dependency_names end
# File lib/bundler/source.rb, line 17
def version_message(spec)
message = "#{spec.name} #{spec.version}"
message += " (#{spec.platform})" if spec.platform != Gem::Platform::RUBY && !spec.platform.nil?
if Bundler.locked_gems
locked_spec = Bundler.locked_gems.specs.find {|s| s.name == spec.name }
locked_spec_version = locked_spec.version if locked_spec
if locked_spec_version && spec.version != locked_spec_version
message += Bundler.ui.add_color(" (was #{locked_spec_version})", version_color(spec.version, locked_spec_version))
end
end
message
end Private Instance Methods
# File lib/bundler/source.rb, line 78 def earlier_version?(spec_version, locked_spec_version) Gem::Version.new(spec_version) < Gem::Version.new(locked_spec_version) end
# File lib/bundler/source.rb, line 90 def extension_cache_slug(_) nil end
# File lib/bundler/source.rb, line 82
def print_using_message(message)
if !message.include?("(was ") && Bundler.feature_flag.suppress_install_using_messages?
Bundler.ui.debug message
else
Bundler.ui.info message
end
end # File lib/bundler/source.rb, line 68
def version_color(spec_version, locked_spec_version)
if Gem::Version.correct?(spec_version) && Gem::Version.correct?(locked_spec_version)
# display yellow if there appears to be a regression
earlier_version?(spec_version, locked_spec_version) ? :yellow : :green
else
# default to green if the versions cannot be directly compared
:green
end
end
Ruby Core © 1993–2017 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.