Module: LanguageHelpers

Included in:
Language
Defined in:
lib/cutting_edge/langs.rb

Instance Method Summary collapse

Instance Method Details

#dependency_with_latest(results) ⇒ Object

For each dependency, find its latest version and return the two together. Takes account of invalid or dependencies (see #unknown_dependency)

results - Array of Gem::Dependencies and unknown dependencies.

Returns an Array of tuples of each dependency and its latest version: e.g., [[<Gem::Dependency>, <Gem::Version>]]



21
22
23
24
25
# File 'lib/cutting_edge/langs.rb', line 21

def dependency_with_latest(results)
  results.map do |dependency|
    [dependency, dependency.requirement.to_s == 'unknown' ? nil : latest_version(dependency.name)]
  end
end

#log_error(message) ⇒ Object



27
28
29
# File 'lib/cutting_edge/langs.rb', line 27

def log_error(message)
  logger.error(message) if ::CuttingEdge::App.enable_logging
end

#unknown_dependency(name, type = :runtime) ⇒ Object

Return a mock construct that mimicks Gem::Dependency for dependencies we tried to parse, but weren’t valid.



12
13
14
# File 'lib/cutting_edge/langs.rb', line 12

def unknown_dependency(name, type = :runtime)
  OpenStruct.new(name: name, type: type, requirement: 'unknown')
end