mirror of
https://github.com/stripe/stripe-ruby.git
synced 2025-10-06 00:02:18 -04:00
This moves away from rest-client's convention of using symbols as header names so as to present less obfuscation as to how these are actually named when they go over the wire. Because headers can be injected via the bindings' API I was initially worried that this change might break something, but upon inspection of rest-client source, I can see now that headers take precedence as assigned by their insertion order into the header hash, and are "stringified" in that same loop [1]. This means that even if a user injects a symbolized header name (`:idempotency_key`), it will still correctly overwrite the one generated by stripe-ruby despite that using the string format (`"Idempotency-Key"`). [1] https://github.com/rest-client/rest-client/blob/master/lib/restclient/request.rb#L603,L625