mirror of
https://github.com/kennethreitz/requests.git
synced 2026-06-05 22:50:18 +00:00
Merge pull request #1092 from jianlius/case-insensitive-update
Make merge_kwargs case-insensitive when looking up keys.
This commit is contained in:
+13
-2
@@ -49,9 +49,20 @@ def merge_kwargs(local_kwarg, default_kwarg):
|
||||
default_kwarg = from_key_val_list(default_kwarg)
|
||||
local_kwarg = from_key_val_list(local_kwarg)
|
||||
|
||||
# Update new values.
|
||||
# Update new values in a case-insensitive way
|
||||
def get_original_key(original_keys, new_key):
|
||||
"""
|
||||
Finds the key from original_keys that case-insensitive matches new_key.
|
||||
"""
|
||||
for original_key in original_keys:
|
||||
if key.lower() == original_key.lower():
|
||||
return original_key
|
||||
return new_key
|
||||
|
||||
kwargs = default_kwarg.copy()
|
||||
kwargs.update(local_kwarg)
|
||||
original_keys = kwargs.keys()
|
||||
for key, value in local_kwarg.items():
|
||||
kwargs[get_original_key(original_keys, key)] = value
|
||||
|
||||
# Remove keys that are set to None.
|
||||
for (k, v) in local_kwarg.items():
|
||||
|
||||
Reference in New Issue
Block a user