Class: Bundler::Source
| Relationships & Source Files | |
| Namespace Children | |
|
Classes:
| |
| Extension / Inclusion / Inheritance Descendants | |
|
Subclasses:
|
|
| Inherits: | Object |
| Defined in: | lib/bundler/source.rb, lib/bundler/source/gemspec.rb, lib/bundler/source/git.rb, lib/bundler/source/metadata.rb, lib/bundler/source/path.rb, lib/bundler/source/rubygems.rb, lib/bundler/source/rubygems_aggregate.rb, lib/bundler/source/git/git_proxy.rb, lib/bundler/source/path/installer.rb, lib/bundler/source/rubygems/remote.rb |
Instance Attribute Summary
- #checksum_store readonly
- #dependency_names rw
- #path? ⇒ Boolean readonly
Instance Method Summary
- #add_dependency_names(names)
- #cached!
- #can_lock?(spec) ⇒ Boolean
- #dependency_names_to_double_check
-
#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.
- #download
- #extension_cache_path(spec)
- #identifier
- #include?(other) ⇒ Boolean
- #inspect
- #local!
- #local_only!
- #prefer_local!
- #remote!
- #spec_names
- #unmet_deps
- #version_message(spec, locked_spec = nil)
- #earlier_version?(spec_version, locked_spec_version) ⇒ Boolean private
- #extension_cache_slug(_) private
- #print_using_message(message) private
- #version_color(spec_version, locked_spec_version) private
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 ]
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
# 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.
# 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)
#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
# 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
#print_using_message(message) (private)
[ GitHub ]#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 (spec, locked_spec = nil) = "#{spec.name} #{spec.version}" += " (#{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 += Bundler.ui.add_color(" (was #{locked_spec_version})", version_color(spec.version, locked_spec_version)) end end end