класс Bundler::Source
Атрибуты
dependency_names[RW]
Открытые методы экземпляра
# 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
Возможны случаи, когда драгоценные камни из одного источника зависят от драгоценных камней из другого источника, поэтому сейчас мы загружаем gemspecs и перебираем эти зависимости, ищем драгоценные камни, о которых у нас ещё нет информации.
# 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 Приватные методы экземпляра
# 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.