aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/cmd
diff options
context:
space:
mode:
authorJack Nagel2014-02-08 16:04:53 -0500
committerJack Nagel2014-02-08 16:04:53 -0500
commit0a7767b247f6289f0dbd2b6601dfc4ce320ce585 (patch)
tree8c60acfca1d7304a8fa8a371b093d7abba5441df /Library/Homebrew/cmd
parent813cad6e1dba524460ae3cce2b88ba075816c1d4 (diff)
downloadhomebrew-0a7767b247f6289f0dbd2b6601dfc4ce320ce585.tar.bz2
Parse JSON early in GitHub module
Diffstat (limited to 'Library/Homebrew/cmd')
-rw-r--r--Library/Homebrew/cmd/search.rb11
1 files changed, 4 insertions, 7 deletions
diff --git a/Library/Homebrew/cmd/search.rb b/Library/Homebrew/cmd/search.rb
index 476b24b49..a03738bc8 100644
--- a/Library/Homebrew/cmd/search.rb
+++ b/Library/Homebrew/cmd/search.rb
@@ -1,7 +1,6 @@
require 'formula'
require 'blacklist'
require 'utils'
-require 'utils/json'
module Homebrew extend self
@@ -103,9 +102,9 @@ module Homebrew extend self
return [] if (HOMEBREW_LIBRARY/"Taps/#{user.downcase}-#{repo.downcase}").directory?
results = []
- GitHub.open "https://api.github.com/repos/#{user}/homebrew-#{repo}/git/trees/HEAD?recursive=1" do |f|
+ GitHub.open "https://api.github.com/repos/#{user}/homebrew-#{repo}/git/trees/HEAD?recursive=1" do |json|
user = user.downcase if user == "Homebrew" # special handling for the Homebrew organization
- Utils::JSON.load(f.read)["tree"].map{ |hash| hash['path'] }.compact.each do |file|
+ json["tree"].map{ |hash| hash['path'] }.compact.each do |file|
name = File.basename(file, '.rb')
if file =~ /\.rb$/ and name =~ rx
results << "#{user}/#{repo}/#{name}"
@@ -113,10 +112,8 @@ module Homebrew extend self
end
end
results
- rescue OpenURI::HTTPError, GitHub::Error, Utils::JSON::Error
- opoo <<-EOS.undent
- Failed to search tap: #{user}/#{repo}. Please run `brew update`.
- EOS
+ rescue OpenURI::HTTPError, GitHub::Error
+ opoo "Failed to search tap: #{user}/#{repo}. Please run `brew update`"
[]
end