diff --git a/Library/Homebrew/cmd/search.rb b/Library/Homebrew/cmd/search.rb index 4ab87d3a0b..7e19a72bd4 100644 --- a/Library/Homebrew/cmd/search.rb +++ b/Library/Homebrew/cmd/search.rb @@ -50,12 +50,12 @@ module Homebrew extend self return [] if (HOMEBREW_LIBRARY/"Taps/#{user.downcase}-#{repo.downcase}").directory? require 'open-uri' - require 'yaml' + require 'vendor/multi_json' results = [] - open "http://github.com/api/v2/yaml/blob/all/#{user}/homebrew-#{repo}/master" do |f| + open "https://api.github.com/repos/#{user}/homebrew-#{repo}/git/trees/HEAD?recursive=1" do |f| user.downcase! if user == "Homebrew" # special handling for the Homebrew organization - YAML::load(f.read)["blobs"].each do |file, _| + MultiJson.decode(f.read)["tree"].map{ |hash| hash['path'] }.compact.each do |file| name = File.basename(file, '.rb') if file =~ /\.rb$/ and name =~ rx results << "#{user}/#{repo}/#{name}"