class Bundler::Persistent::Net::HTTP::Persistent

def proxy_from_env

def proxy_from_env
  env_proxy = ENV['http_proxy'] || ENV['HTTP_PROXY']
  return nil if env_proxy.nil? or env_proxy.empty?
  uri = URI normalize_uri env_proxy
  env_no_proxy = ENV['no_proxy'] || ENV['NO_PROXY']
  # '*' is special case for always bypass
  return nil if env_no_proxy == '*'
  if env_no_proxy then
    uri.query = "no_proxy=#{escape(env_no_proxy)}"
  end
  unless uri.user or uri.password then
    uri.user     = escape ENV['http_proxy_user'] || ENV['HTTP_PROXY_USER']
    uri.password = escape ENV['http_proxy_pass'] || ENV['HTTP_PROXY_PASS']
  end
  uri
end