123456789_123456789_123456789_123456789_123456789_

Class: Bundler::Source

Instance Attribute Summary

Instance Method Summary

Instance Attribute Details

#checksum_store (readonly)

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 14

attr_reader :checksum_store

#dependency_names (rw)

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 12

attr_accessor :dependency_names

#path?Boolean (readonly)

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 79

def path?
  instance_of?(Bundler::Source::Path)
end

Instance Method Details

#add_dependency_names(names)

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 50

def add_dependency_names(names)
  @dependency_names = Array(dependency_names) | Array(names)
end

#cached!

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 46

def cached!; end

#can_lock?(spec) ⇒ Boolean

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 36

def can_lock?(spec)
  spec.source == self
end

#dependency_names_to_double_check

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 59

def dependency_names_to_double_check
  specs.dependency_names
end

#double_check_for

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.

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 57

def double_check_for(*); end

#download

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 34

def download(*); end

#earlier_version?(spec_version, locked_spec_version) ⇒ Boolean (private)

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 104

def earlier_version?(spec_version, locked_spec_version)
  Gem::Version.new(spec_version) < Gem::Version.new(locked_spec_version)
end

#extension_cache_path(spec)

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 83

def extension_cache_path(spec)
  return unless Bundler.settings[: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

#extension_cache_slug(_) (private)

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 116

def extension_cache_slug(_)
  nil
end

#identifier

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 75

def identifier
  to_s
end

#include?(other) ⇒ Boolean

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 67

def include?(other)
  other == self
end

#inspect

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 71

def inspect
  "#<#{self.class}:0x#{object_id} #{self}>"
end

#local!

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 42

def local!; end

#local_only!

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 44

def local_only!; end

#prefer_local!

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 40

def prefer_local!; end

#remote!

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 48

def remote!; end

#spec_names

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 63

def spec_names
  specs.spec_names
end

#unmet_deps

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 16

def unmet_deps
  specs.unmet_dependency_names
end

#version_color(spec_version, locked_spec_version) (private)

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 94

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

#version_message(spec, locked_spec = nil)

[ GitHub ]

  
# File 'lib/bundler/source.rb', line 20

def version_message(spec, locked_spec = nil)
  message = "#{spec.name} #{spec.version}"
  message += " (#{spec.platform})" if spec.platform != Gem::Platform::RUBY && !spec.platform.nil?

  if locked_spec
    locked_spec_version = locked_spec.version
    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