From 743e9bbdaad1dc8cd23ae49ef3b42e3fc9f4a16a Mon Sep 17 00:00:00 2001
From: ilovezfs <ilovezfs@icloud.com>
Date: Sun, 4 Sep 2016 11:20:03 -0700
Subject: [PATCH] bump-formula-pr: formula name guessing

---
 Library/Homebrew/dev-cmd/bump-formula-pr.rb | 20 +++++++++++++++++++-
 1 file changed, 19 insertions(+), 1 deletion(-)

diff --git a/Library/Homebrew/dev-cmd/bump-formula-pr.rb b/Library/Homebrew/dev-cmd/bump-formula-pr.rb
index 5b3b4773d0..79bfe20106 100644
--- a/Library/Homebrew/dev-cmd/bump-formula-pr.rb
+++ b/Library/Homebrew/dev-cmd/bump-formula-pr.rb
@@ -64,6 +64,25 @@ module Homebrew
 
   def bump_formula_pr
     formula = ARGV.formulae.first
+    new_url = ARGV.value("url")
+    if new_url && !formula
+      is_devel = ARGV.include?("--devel")
+      base_url = new_url.split("/")[0..4].join("/")
+      base_url = /#{Regexp.escape(base_url)}/
+      guesses = []
+      Formula.each do |f|
+        if is_devel && f.devel && f.devel.url && f.devel.url.match(base_url)
+          guesses << f
+        elsif f.stable && f.stable.url && f.stable.url.match(base_url)
+          guesses << f
+        end
+      end
+      if guesses.count == 1
+        formula = guesses.shift
+      elsif guesses.count > 1
+        odie "Couldn't guess formula for sure: could be one of these:\n#{guesses}"
+      end
+    end
     odie "No formula found!" unless formula
 
     requested_spec, formula_spec = if ARGV.include?("--devel")
@@ -78,7 +97,6 @@ module Homebrew
       [checksum.hash_type.to_s, checksum.hexdigest]
     end
 
-    new_url = ARGV.value("url")
     new_hash = ARGV.value(hash_type)
     new_tag = ARGV.value("tag")
     new_revision = ARGV.value("revision")
-- 
GitLab