Class: Bundler::Source

Inherits:
Object
  • Object
show all
Defined in:
lib/bundler/source.rb,
lib/bundler/source/git.rb,
lib/bundler/source/path.rb,
lib/bundler/source/gemspec.rb,
lib/bundler/source/metadata.rb,
lib/bundler/source/rubygems.rb,
lib/bundler/source/git/git_proxy.rb,
lib/bundler/source/path/installer.rb,
lib/bundler/source/rubygems/remote.rb

Direct Known Subclasses

Metadata, Path, Rubygems

Defined Under Namespace

Classes: Gemspec, Git, Metadata, Path, Rubygems

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#dependency_namesObject

Returns the value of attribute dependency_names.



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

def dependency_names
  @dependency_names
end

Instance Method Details

#cached!Object



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

def cached!; end

#can_lock?(spec) ⇒ Boolean

Returns:

  • (Boolean)


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

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

#dependency_names_to_double_checkObject



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

def dependency_names_to_double_check
  specs.dependency_names
end

#double_check_forObject

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.



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

def double_check_for(*); end

#extension_cache_path(spec) ⇒ Object



63
64
65
66
67
68
69
70
# File 'lib/bundler/source.rb', line 63

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

#include?(other) ⇒ Boolean

Returns:

  • (Boolean)


51
52
53
# File 'lib/bundler/source.rb', line 51

def include?(other)
  other == self
end

#inspectObject



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

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

#local!Object



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

def local!; end

#path?Boolean

Returns:

  • (Boolean)


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

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

#remote!Object



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

def remote!; end

#unmet_depsObject



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

def unmet_deps
  specs.unmet_dependency_names
end

#version_message(spec) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
28
29
30
# 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