class Excon::Connection
def validate_params(validation, params)
def validate_params(validation, params) valid_keys = case validation when :connection Excon::VALID_CONNECTION_KEYS when :request Excon::VALID_REQUEST_KEYS end invalid_keys = params.keys - valid_keys unless invalid_keys.empty? Excon.display_warning("Invalid Excon #{validation} keys: #{invalid_keys.map(&:inspect).join(', ')}") # FIXME: for now, just warn, don't mutate, give things (ie fog) a chance to catch up #params = params.dup #invalid_keys.each {|key| params.delete(key) } end if validation == :connection && params.key?(:host) && !params.key?(:hostname) Excon.display_warning('hostname is missing! For IPv6 support, provide both host and hostname: Excon::Connection#new(:host => uri.host, :hostname => uri.hostname, ...).') params[:hostname] = params[:host] end params end