diff --git a/Library/Homebrew/cmd/info.rb b/Library/Homebrew/cmd/info.rb index 04719347fdbae14b24b74b73116b90d2044ac5f6..0e4186f3fa9afa4c57abbcc0731644dd00d82ace 100644 --- a/Library/Homebrew/cmd/info.rb +++ b/Library/Homebrew/cmd/info.rb @@ -45,7 +45,7 @@ module Homebrew end else ARGV.named.each_with_index do |f, i| - puts unless i == 0 + puts unless i.zero? begin if f.include?("/") || File.exist?(f) info_formula Formulary.factory(f) @@ -150,7 +150,8 @@ module Homebrew ohai "Requirements" %w[build required recommended optional].map do |type| reqs = f.requirements.select(&:"#{type}?") - puts "#{type.capitalize}: #{decorate_requirements(reqs)}" unless reqs.to_a.empty? + next if reqs.to_a.empty? + puts "#{type.capitalize}: #{decorate_requirements(reqs)}" end end @@ -172,8 +173,9 @@ module Homebrew def decorate_requirements(requirements) req_status = requirements.collect do |req| - req.satisfied? ? pretty_installed(req.name) : pretty_uninstalled(req.name) + req_s = req.display_s + req.satisfied? ? pretty_installed(req_s) : pretty_uninstalled(req_s) end - req_status * ", " + req_status.join(", ") end end diff --git a/Library/Homebrew/requirement.rb b/Library/Homebrew/requirement.rb index 4ea15774dba628a34093cf859d3baab215917986..f02870ac822060723b2f862b9bb23704e4074c84 100644 --- a/Library/Homebrew/requirement.rb +++ b/Library/Homebrew/requirement.rb @@ -122,6 +122,10 @@ class Requirement end end + def display_s + name + end + private def infer_name diff --git a/Library/Homebrew/requirements/java_requirement.rb b/Library/Homebrew/requirements/java_requirement.rb index c868e0f3f8f92fd9f19ea447c9787b45a1e41c3b..33fc01229991dbb07ff7a50c8e6019365fa9e6a6 100644 --- a/Library/Homebrew/requirements/java_requirement.rb +++ b/Library/Homebrew/requirements/java_requirement.rb @@ -42,4 +42,19 @@ class JavaRequirement < Requirement def inspect "#<#{self.class.name}: #{name.inspect} #{tags.inspect} version=#{@version.inspect}>" end + + def display_s + if @version + if @version[-1] == "+" + op = ">=" + version = @version[0, @version.length-1] + else + op = "=" + version = @version + end + "#{name} #{op} #{version}" + else + name + end + end end diff --git a/Library/Homebrew/requirements/language_module_requirement.rb b/Library/Homebrew/requirements/language_module_requirement.rb index 7091a690a79206a881decc7cf78eef56531e1135..e20f48361990223ac6cb6ff552ce8b15a769dea3 100644 --- a/Library/Homebrew/requirements/language_module_requirement.rb +++ b/Library/Homebrew/requirements/language_module_requirement.rb @@ -51,4 +51,8 @@ class LanguageModuleRequirement < Requirement when :ruby then "gem install" end end + + def display_s + "#{@module_name} (#{@language} module)" + end end diff --git a/Library/Homebrew/requirements/maximum_macos_requirement.rb b/Library/Homebrew/requirements/maximum_macos_requirement.rb index ad60af0637669f5c022ae184e879a9d501902a4e..03ef09e6bc6ed345283b295c209bc467ce1f22b0 100644 --- a/Library/Homebrew/requirements/maximum_macos_requirement.rb +++ b/Library/Homebrew/requirements/maximum_macos_requirement.rb @@ -16,4 +16,8 @@ class MaximumMacOSRequirement < Requirement versions newer than #{@version.pretty_name} due to an upstream incompatibility. EOS end + + def display_s + "macOS <= #{@version}" + end end diff --git a/Library/Homebrew/requirements/minimum_macos_requirement.rb b/Library/Homebrew/requirements/minimum_macos_requirement.rb index f128a661516776e12ed3f28e0785519613341bb6..e3108ec81dcc46b03c547f554b79808df1b2ac8e 100644 --- a/Library/Homebrew/requirements/minimum_macos_requirement.rb +++ b/Library/Homebrew/requirements/minimum_macos_requirement.rb @@ -13,4 +13,8 @@ class MinimumMacOSRequirement < Requirement def message "OS X #{@version.pretty_name} or newer is required." end + + def display_s + "macOS >= #{@version}" + end end diff --git a/Library/Homebrew/requirements/perl_requirement.rb b/Library/Homebrew/requirements/perl_requirement.rb index 007134191d59cab5437706ceaa8f55a8c3ab5826..06e36ac0d6328c60b6c786c16bd64785baa49bc9 100644 --- a/Library/Homebrew/requirements/perl_requirement.rb +++ b/Library/Homebrew/requirements/perl_requirement.rb @@ -25,4 +25,12 @@ class PerlRequirement < Requirement def inspect "#<#{self.class.name}: #{name.inspect} #{tags.inspect} version=#{@version.inspect}>" end + + def display_s + if @version + "#{name} >= #{@version}" + else + name + end + end end diff --git a/Library/Homebrew/requirements/ruby_requirement.rb b/Library/Homebrew/requirements/ruby_requirement.rb index 873f285bffdb59c0e7f7e24ef9e88ba997bf7a8d..a890435a58389414924c7c9b28704b4ce90124e4 100644 --- a/Library/Homebrew/requirements/ruby_requirement.rb +++ b/Library/Homebrew/requirements/ruby_requirement.rb @@ -25,4 +25,12 @@ class RubyRequirement < Requirement def inspect "#<#{self.class.name}: #{name.inspect} #{tags.inspect} version=#{@version.inspect}>" end + + def display_s + if @version + "#{name} >= #{@version}" + else + name + end + end end