defaults
authorKenneth Reitz <me@kennethreitz.com>
Sun, 22 May 2011 17:55:13 +0000 (13:55 -0400)
committerKenneth Reitz <me@kennethreitz.com>
Sun, 22 May 2011 17:55:13 +0000 (13:55 -0400)
requests/api.py
requests/config.py

index 234f17a..0e27410 100644 (file)
@@ -36,12 +36,12 @@ def request(method, url, **kwargs):
     """
     data = kwargs.pop('data', dict()) or kwargs.pop('params', dict())
 
-    r = Request(method=method, url=url, data=data, headers=kwargs.pop('headers', {}),
-        cookiejar=kwargs.pop('cookies', None),
-        files=kwargs.pop('files', None),
-        auth=kwargs.pop('auth', auth_manager.get_auth(url)),
-        timeout=kwargs.pop('timeout', config.settings.timeout),
-        allow_redirects=kwargs.pop('allow_redirects', None)
+    r = Request(method=method, url=url, data=data, headers=kwargs.pop('headers', dict()),
+        cookiejar=kwargs.get('cookies', None),
+        files=kwargs.get('files', None),
+        auth=kwargs.get('auth', auth_manager.get_auth(url)),
+        timeout=kwargs.get('timeout', config.settings.timeout),
+        allow_redirects=kwargs.get('allow_redirects', None)
     )
 
     r.send()
index 6d6d190..351f918 100644 (file)
@@ -26,6 +26,7 @@ class Settings(object):
 
         # cache previous settings for __exit__
         r.__cache = self.__dict__.copy()
+        map(self.__cache.setdefault, self.__attrs__)
 
         # set new settings
         self.__dict__.update(*args, **kwargs)
@@ -40,6 +41,7 @@ class Settings(object):
     def __exit__(self, *args):
 
         # restore cached copy
+        print '>>> {0}'.format(self.__cache)
         self.__dict__.update(self.__cache.copy())
         del self.__cache