lib/git_trend/cli.rb in git-trend-1.3.0 vs lib/git_trend/cli.rb in git-trend-1.4.0
- old
+ new
@@ -1,11 +1,11 @@
require "thor"
+# rubocop:disable Metrics/AbcSize
module GitTrend
class CLI < Thor
- map "-v" => :version,
- "--version" => :version
+ map "-v" => :version, "--version" => :version
default_command :list
class_option :verbose, type: :boolean
class << self
@@ -26,26 +26,28 @@
option :format, aliases: "-f", required: false, default: "text", desc: "Choose a formatter as text or json. Enable: [t, text, j, json]"
option :number, aliases: "-n", required: false, type: :numeric, desc: "Number of lines"
option :help, aliases: "-h", required: false, type: :boolean
def list
help(:list) && return if options[:help]
+
scraper = Scraper.new
projects = scraper.get(options[:language], options[:since], options[:number])
formatter = Formatter.new(options[:format])
formatter.print(projects, enable_description: !!options[:description])
rescue => e
say "An unexpected #{e.class} has occurred.", :red
- say e.message unless e.class.to_s == e.message
+ say e.message unless e.instance_of?(e.message) # エラー内容がクラス名の場合は表示しない
puts exception.backtrace if options[:verbose]
end
desc :languages, "Show selectable languages"
- option :format, aliases: "-f", required: false, default: "text", desc: "Choose a formatter as text or json. Enable: [t, text, j, json]"
+ option :format, aliases: "-f", required: false, default: "text", desc: "Choose a formatter as text or json. Enable: [t, text, j, json]"
def languages
scraper = Scraper.new
languages = scraper.languages
formatter = Formatter.new(options[:format])
formatter.print_languages(languages)
end
end
end
+# rubocop:enable Metrics/AbcSize