class Bundler::Source
Attributes
dependency_names[RW]
Public Instance Methods
add_dependency_names(names)
click to toggle source
# File bundler/source.rb, line 45 def add_dependency_names(names) @dependency_names = Array(dependency_names) | Array(names) end
cached!()
click to toggle source
# File bundler/source.rb, line 41 def cached!; end
can_lock?(spec)
click to toggle source
# File bundler/source.rb, line 33 def can_lock?(spec) spec.source == self end
dependency_names_to_double_check()
click to toggle source
# File bundler/source.rb, line 54 def dependency_names_to_double_check specs.dependency_names end
double_check_for(*)
click to toggle source
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 bundler/source.rb, line 52 def double_check_for(*); end
extension_cache_path(spec)
click to toggle source
# File bundler/source.rb, line 78 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
identifier()
click to toggle source
# File bundler/source.rb, line 70 def identifier to_s end
include?(other)
click to toggle source
# File bundler/source.rb, line 62 def include?(other) other == self end
inspect()
click to toggle source
# File bundler/source.rb, line 66 def inspect "#<#{self.class}:0x#{object_id} #{self}>" end
local!()
click to toggle source
# File bundler/source.rb, line 37 def local!; end
local_only!()
click to toggle source
# File bundler/source.rb, line 39 def local_only!; end
path?()
click to toggle source
# File bundler/source.rb, line 74 def path? instance_of?(Bundler::Source::Path) end
remote!()
click to toggle source
# File bundler/source.rb, line 43 def remote!; end
spec_names()
click to toggle source
# File bundler/source.rb, line 58 def spec_names specs.spec_names end
unmet_deps()
click to toggle source
# File bundler/source.rb, line 14 def unmet_deps specs.unmet_dependency_names end
version_message(spec)
click to toggle source
# File bundler/source.rb, line 18 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
earlier_version?(spec_version, locked_spec_version)
click to toggle source
# File bundler/source.rb, line 99 def earlier_version?(spec_version, locked_spec_version) Gem::Version.new(spec_version) < Gem::Version.new(locked_spec_version) end
extension_cache_slug(_)
click to toggle source
# File bundler/source.rb, line 111 def extension_cache_slug(_) nil end
print_using_message(message)
click to toggle source
# File bundler/source.rb, line 103 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
version_color(spec_version, locked_spec_version)
click to toggle source
# File bundler/source.rb, line 89 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