Skip to content
Snippets Groups Projects
Commit 598c5e36 authored by Mike McQuaid's avatar Mike McQuaid
Browse files

Tell people to report URL/tap deprecations to the tap.

Rather than Homebrew/brew or Homebrew/homebrew-core.
parent f0249118
No related branches found
No related tags found
No related merge requests found
......@@ -138,6 +138,14 @@ rescue RuntimeError, SystemCallError => e
onoe e
$stderr.puts e.backtrace if ARGV.debug?
exit 1
rescue MethodDeprecatedError => e
Utils::Analytics.report_exception(e)
onoe e
if e.issues_url
$stderr.puts "If reporting this issue please do so at (not Homebrew/brew or Homebrew/core):"
$stderr.puts " #{Formatter.url(e.issues_url)}"
end
exit 1
rescue Exception => e
Utils::Analytics.report_exception(e)
onoe e
......
......@@ -56,7 +56,9 @@ end
class FormulaSpecificationError < StandardError; end
class MethodDeprecatedError < StandardError; end
class MethodDeprecatedError < StandardError
attr_accessor :issues_url
end
class FormulaUnavailableError < RuntimeError
attr_reader :name
......
......@@ -151,6 +151,11 @@ class Formulary
FileUtils.rm_f(path)
curl url, "-o", path
super
rescue MethodDeprecatedError => e
if url =~ %r{github.com/([\w-]+)/homebrew-([\w-]+)/}
e.issues_url = "https://github.com/#{$1}/homebrew-#{$2}/issues/new"
end
raise
end
end
......@@ -202,6 +207,13 @@ class Formulary
rescue FormulaUnavailableError => e
raise TapFormulaUnavailableError.new(tap, name), "", e.backtrace
end
def load_file
super
rescue MethodDeprecatedError => e
e.issues_url = formula.tap.issues_url || formula.tap.to_s
raise
end
end
class NullLoader < FormulaLoader
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment