From c75207c1e0a9cf1bc7e5d91e93c0fb7c9f3a602d Mon Sep 17 00:00:00 2001 From: Xu Cheng Date: Wed, 9 Sep 2015 15:21:18 +0800 Subject: [PATCH] desc: print descriptions directly by formulae instead of cache We allow passing formulae by URL, file path, etc whose descriptions won't be cached Closes Homebrew/homebrew#43726. Signed-off-by: Xu Cheng --- Library/Homebrew/cmd/desc.rb | 5 ++++- Library/Homebrew/descriptions.rb | 16 ---------------- 2 files changed, 4 insertions(+), 17 deletions(-) diff --git a/Library/Homebrew/cmd/desc.rb b/Library/Homebrew/cmd/desc.rb index dab18fc915..df228d643e 100644 --- a/Library/Homebrew/cmd/desc.rb +++ b/Library/Homebrew/cmd/desc.rb @@ -10,7 +10,10 @@ module Homebrew if search_type.empty? raise FormulaUnspecifiedError if ARGV.named.empty? - Descriptions.named(ARGV.formulae.map(&:full_name)).print + desc = {} + ARGV.formulae.each { |f| desc[f.full_name] = f.desc } + results = Descriptions.new(desc) + results.print elsif search_type.size > 1 odie "Pick one, and only one, of -s/--search, -n/--name, or -d/--description." else diff --git a/Library/Homebrew/descriptions.rb b/Library/Homebrew/descriptions.rb index 09ea7ed561..e66e388eb8 100644 --- a/Library/Homebrew/descriptions.rb +++ b/Library/Homebrew/descriptions.rb @@ -106,22 +106,6 @@ class Descriptions end end - # Given an array of formula names, return a {Descriptions} object mapping - # those names to their descriptions. - def self.named(names) - self.ensure_cache - - results = {} - unless names.empty? - results = names.inject({}) do |accum, name| - accum[name] = @cache[name] - accum - end - end - - new(results) - end - # Given a regex, find all formulae whose specified fields contain a match. def self.search(regex, field = :either) self.ensure_cache