diff options
| author | David MacMahon | 2013-10-22 16:18:31 -0700 |
|---|---|---|
| committer | Mike McQuaid | 2013-10-25 21:12:28 +0100 |
| commit | a999ddc002af970b12e8472daa3677c1c2e093c5 (patch) | |
| tree | 4918b88db8bb39d5303cbd507ce49d549da32e9e | |
| parent | 5b433bb05a8b9010493a58ea6fe475596dfa06e9 (diff) | |
| download | brew-a999ddc002af970b12e8472daa3677c1c2e093c5.tar.bz2 | |
Add HOMEBREW_NO_GITHUB_API env var.
This patch allows users to "opt out" of using the GitHub API altogether
by setting the HOMEBREW_NO_GITHUB_API environment variable. The
value of the environment variable does not matter (it can even be
empty!).
For Bash/ZSH: export HOMEBREW_NO_GITHUB_API=1
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
| -rw-r--r-- | Library/Contributions/manpages/brew.1.md | 4 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/search.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/utils.rb | 6 | ||||
| -rw-r--r-- | share/man/man1/brew.1 | 6 |
4 files changed, 16 insertions, 2 deletions
diff --git a/Library/Contributions/manpages/brew.1.md b/Library/Contributions/manpages/brew.1.md index 5524c070b..595c062a2 100644 --- a/Library/Contributions/manpages/brew.1.md +++ b/Library/Contributions/manpages/brew.1.md @@ -524,6 +524,10 @@ can take several different forms: *Note:* Homebrew will only try to print emoji on Lion or newer. + * HOMEBREW\_NO\_GITHUB\_API: + If set, Homebrew will not use the GitHub API for e.g searches or + fetching relevant issues on a failed install. + * HOMEBREW\_SOURCEFORGE\_MIRROR: If set, Homebrew will use the value of `HOMEBREW_SOURCEFORGE_MIRROR` to select a SourceForge mirror for downloading bottles. diff --git a/Library/Homebrew/cmd/search.rb b/Library/Homebrew/cmd/search.rb index b2febbdba..7319b1d90 100644 --- a/Library/Homebrew/cmd/search.rb +++ b/Library/Homebrew/cmd/search.rb @@ -61,7 +61,7 @@ module Homebrew extend self count = local_results.length + tap_results.length if count == 0 and not blacklisted? query - puts "No formula found for #{query.inspect}. Searching open pull requests..." + puts "No formula found for #{query.inspect}." begin GitHub.find_pull_requests(rx) { |pull| puts pull } rescue GitHub::Error => e diff --git a/Library/Homebrew/utils.rb b/Library/Homebrew/utils.rb index f3ac5e447..97dd708af 100644 --- a/Library/Homebrew/utils.rb +++ b/Library/Homebrew/utils.rb @@ -254,6 +254,9 @@ module GitHub extend self Error = Class.new(StandardError) def open url, headers={}, &block + # This is a no-op if the user is opting out of using the GitHub API. + return if ENV['HOMEBREW_NO_GITHUB_API'] + require 'net/https' # for exception classes below default_headers = {'User-Agent' => HOMEBREW_USER_AGENT} @@ -296,6 +299,9 @@ module GitHub extend self end def find_pull_requests rx + return if ENV['HOMEBREW_NO_GITHUB_API'] + puts "Searching open pull requests..." + query = rx.source.delete('.*').gsub('\\', '') each_issue_matching(query) do |issue| diff --git a/share/man/man1/brew.1 b/share/man/man1/brew.1 index ee6716111..cbae61934 100644 --- a/share/man/man1/brew.1 +++ b/share/man/man1/brew.1 @@ -1,7 +1,7 @@ .\" generated with Ronn/v0.7.3 .\" http://github.com/rtomayko/ronn/tree/0.7.3 . -.TH "BREW" "1" "September 2013" "Homebrew" "brew" +.TH "BREW" "1" "October 2013" "Homebrew" "brew" . .SH "NAME" \fBbrew\fR \- The missing package manager for OS X @@ -557,6 +557,10 @@ If set, Homebrew will not print the beer emoji on a successful build\. \fINote:\fR Homebrew will only try to print emoji on Lion or newer\. . .TP +HOMEBREW_NO_GITHUB_API +If set, Homebrew will not use the GitHub API for e\.g searches or fetching relevant issues on a failed install\. +. +.TP HOMEBREW_SOURCEFORGE_MIRROR If set, Homebrew will use the value of \fBHOMEBREW_SOURCEFORGE_MIRROR\fR to select a SourceForge mirror for downloading bottles\. . |
