From 7532545140c1ce0da370b2b3124e488dbb11fc41 Mon Sep 17 00:00:00 2001 From: Valentin VĂLCIU Date: Mon, 27 Feb 2017 22:33:34 +0200 Subject: add command 'cask outdated' --- Library/Homebrew/cask/lib/hbc/cli/outdated.rb | 39 +++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 Library/Homebrew/cask/lib/hbc/cli/outdated.rb (limited to 'Library/Homebrew/cask/lib/hbc/cli') diff --git a/Library/Homebrew/cask/lib/hbc/cli/outdated.rb b/Library/Homebrew/cask/lib/hbc/cli/outdated.rb new file mode 100644 index 000000000..d608beab5 --- /dev/null +++ b/Library/Homebrew/cask/lib/hbc/cli/outdated.rb @@ -0,0 +1,39 @@ +module Hbc + class CLI + class Outdated < Base + def self.run(*args) + greedy = args.include?("--greedy") + verbose = ($stdout.tty? || CLI.verbose?) && !args.include?("--quiet") + + cask_tokens = cask_tokens_from(args) + casks_to_check = if cask_tokens.empty? + Hbc.installed + else + cask_tokens.map { |token| Hbc.load(token) } + end + + casks_to_check.each do |cask| + odebug "Checking update info of Cask #{cask}" + list_if_outdated(cask, greedy, verbose) + end + end + + def self.list_if_outdated(cask, greedy, verbose) + return unless cask.outdated?(greedy) + + if verbose + outdated_versions = cask.outdated_versions(greedy) + outdated_info = "#{cask.token} (#{outdated_versions.join(", ")})" + current_version = cask.version.to_s + puts "#{outdated_info} != #{current_version}" + else + puts cask.token + end + end + + def self.help + "list the outdated installed Casks" + end + end + end +end -- cgit v1.2.3