aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorJack Nagel2013-08-02 18:18:34 -0500
committerJack Nagel2013-08-02 18:25:17 -0500
commitba968516067e03adc4e31d7fb96334e44c4f6798 (patch)
tree80e2a8b8cd48e5ae7f940263eb6ac112f2e692be /Library
parentfaf0a7204a7416c8c7299b70eb52f8f5c6471a34 (diff)
downloadbrew-ba968516067e03adc4e31d7fb96334e44c4f6798.tar.bz2
Always load net/https before referencing related constants
I put this require inside the method body, because eager-loading net/https is slow compared to the rest of Homebrew, and utils.rb is loaded for each `brew` invocation. It's probably worth breaking up global.rb a bit, to reduce the amount of code we are loading unnecessarily, but hopefully also to make inter-file dependencies a bit more obvious. Fixes Homebrew/homebrew#21617.
Diffstat (limited to 'Library')
-rw-r--r--Library/Homebrew/utils.rb2
1 files changed, 2 insertions, 0 deletions
diff --git a/Library/Homebrew/utils.rb b/Library/Homebrew/utils.rb
index e1f1b6b98..818354993 100644
--- a/Library/Homebrew/utils.rb
+++ b/Library/Homebrew/utils.rb
@@ -244,6 +244,8 @@ module GitHub extend self
Error = Class.new(StandardError)
def open url, headers={}, &block
+ require 'net/https' # for exception classes below
+
default_headers = {'User-Agent' => HOMEBREW_USER_AGENT}
default_headers['Authorization'] = "token #{HOMEBREW_GITHUB_API_TOKEN}" if HOMEBREW_GITHUB_API_TOKEN
Kernel.open(url, default_headers.merge(headers), &block)