cleanup
authorKenneth Reitz <me@kennethreitz.com>
Mon, 26 Sep 2011 00:36:39 +0000 (20:36 -0400)
committerKenneth Reitz <me@kennethreitz.com>
Mon, 26 Sep 2011 00:36:39 +0000 (20:36 -0400)
requests/config.py
requests/core.py
requests/models.py

index 5bf49b4572e466e63f1b8a8edeb205ef996195cc..a9cfbec802c37332ceaa4b4d6517e59b26a54d5f 100644 (file)
@@ -4,7 +4,7 @@
 requests.config
 ~~~~~~~~~~~~~~~
 
-This module provides the Requests settings feature set.
+This module provides the Requests configuration defaults.
 
 settings parameters:
 
@@ -18,27 +18,34 @@ settings parameters:
 
 """
 
-def merge_configs(config, default_config=None):
-    """Merge two given configurations."""
+def get_config(config=None, default_config=None):
+    """Merges two given configurations."""
+
+    # Allow raw calls.
+    if config is None:
+        config=dict()
 
     # Use the module-level defaults, if none is given.
     if default_config is None:
-        default_config = config.copy()
+        default_config = defaults.copy()
+
 
     d = default_config.copy()
     d.update(config)
 
     return d
 
+
 # Module-level defaults.
-config = dict()
-
-config['base_headers'] = {'User-Agent': 'python-requests.org'}
-config['accept_gzip'] = True
-config['proxies'] = {}
-config['verbose'] = None
-config['timeout'] = None
-config['max_redirects'] = 30
-config['decode_unicode'] = True
+defaults = dict()
+
+defaults['base_headers'] = {'User-Agent': 'python-requests.org'}
+defaults['accept_gzip'] = True
+defaults['proxies'] = {}
+defaults['verbose'] = None
+defaults['timeout'] = None
+defaults['max_redirects'] = 30
+defaults['decode_unicode'] = True
+defaults['keepalive'] = True
 
 
index 477f39d7dd280f59a21891f44c28519cf83971b6..0278f337399c8918ef75583a033b9e7f1652b9c7 100644 (file)
@@ -20,7 +20,6 @@ __copyright__ = 'Copyright 2011 Kenneth Reitz'
 
 
 from api import *
-from config import settings
 from exceptions import *
 from models import Request, Response
 from sessions import session
index 9ebd18d1e9fee10073c09660f1f62af4a140cd3a..4f4ee9420718a6d5a06614b7e943e2cf940aed30 100644 (file)
@@ -7,18 +7,15 @@ requests.models
 """
 
 import urllib
-import urllib2
-import socket
 import zlib
 
 from urlparse import urlparse, urlunparse, urljoin
-from datetime import datetime
 
 
 from .packages import urllib3
 # print dir(urllib3)
 
-from .config import settings
+from .config import get_config
 from .structures import CaseInsensitiveDict
 from .utils import *
 from .status_codes import codes
@@ -36,7 +33,7 @@ class Request(object):
     def __init__(self,
         url=None, headers=dict(), files=None, method=None, data=dict(),
         params=dict(), auth=None, cookies=None, timeout=None, redirect=False,
-        allow_redirects=False, proxies=None):
+        allow_redirects=False, proxies=None, config=None):
 
         #: Float describ the timeout of the request.
         #  (Use socket.setdefaulttimeout() as fallback)
@@ -72,6 +69,8 @@ class Request(object):
         # Dictionary mapping protocol to the URL of the proxy (e.g. {'http': 'foo.bar:3128'})
         self.proxies = proxies
 
+        self.config = get_config(config)
+
         self.data = data
         self._enc_data = encode_params(data)
         self.params = params