class Bundler::Plumber::CLI

Public Instance Methods

check() click to toggle source
# File lib/bundler/plumber/cli.rb, line 39
def check
  update if options[:update]

  scanner    = Scanner.new
  leaky = false

  scanner.scan(ignore: options.ignore) do |result|
    leaky = true

    case result
    when Scanner::UnpatchedGem
      print_advisory result.gem, result.advisory
    end
  end

  if leaky
    say "Leaks found!", :red
    exit 1
  else
    say("No leaks found", :green) unless options.quiet?
  end
end
update() click to toggle source
# File lib/bundler/plumber/cli.rb, line 65
def update
  say("Updating ruby-mem-advisory-db ...") unless options.quiet?

  case Database.update!(quiet: options.quiet?)
  when true
    say("Updated ruby-mem-advisory-db", :green) unless options.quiet?
  when false
    say "Failed updating ruby-mem-advisory-db!", :red
    exit 1
  when nil
    say "Skipping update", :yellow
  end

  unless options.quiet?
    puts("ruby-mem-advisory-db: #{Database.new.size} advisories")
  end
end
version() click to toggle source
# File lib/bundler/plumber/cli.rb, line 84
def version
  database = Database.new

  puts "#{File.basename($0)} #{VERSION} (advisories: #{database.size})"
end

Protected Instance Methods

print_advisory(gem, advisory) click to toggle source
print_warning(message) click to toggle source
say(message="", color=nil) click to toggle source
Calls superclass method
# File lib/bundler/plumber/cli.rb, line 92
def say(message="", color=nil)
  color = nil unless $stdout.tty?
  super(message.to_s, color)
end