keep_alive is now disable-able!
authorKenneth Reitz <me@kennethreitz.com>
Wed, 9 Nov 2011 23:53:45 +0000 (15:53 -0800)
committerKenneth Reitz <me@kennethreitz.com>
Wed, 9 Nov 2011 23:54:24 +0000 (15:54 -0800)
requests/defaults.py
requests/models.py
test_requests.py

index c99786f0c7aa83c47f831f327857bb7fde52a23b..49db114c0d1d4b0b2f3bfc0ae7932a9e2664f946 100644 (file)
@@ -35,7 +35,7 @@ defaults['timeout'] = None
 defaults['max_redirects'] = 30
 defaults['decode_unicode'] = True
 defaults['timeout_fallback'] = True
-defaults['keep_alive'] = True
+defaults['keep_alive'] = True
 defaults['pool_connections'] = 10
 defaults['pool_maxsize'] = 1
 defaults['max_retries'] = 0
index 3b711cf54e0911f59b6989a397baa71428e965b3..1c4d57581d29ae12d5e8cd1a32541f695e61bf08 100644 (file)
@@ -20,6 +20,7 @@ from .hooks import dispatch_hook
 from .structures import CaseInsensitiveDict
 from .status_codes import codes
 from .packages.urllib3.exceptions import MaxRetryError
+from .packages.urllib3 import connectionpool
 from .exceptions import (
     Timeout, URLRequired, TooManyRedirects, HTTPError, ConnectionError)
 from .utils import (
@@ -352,7 +353,11 @@ class Request(object):
             self.__dict__.update(r.__dict__)
 
 
-        conn = self._poolmanager.connection_from_url(url)
+        if self.config.get('keep_alive'):
+            conn = self._poolmanager.connection_from_url(url)
+        else:
+            conn = connectionpool.connection_from_url(url)
+            print 'NO CONNECTION FOR YOU1'
 
         if not self.sent or anyway:
 
@@ -373,7 +378,7 @@ class Request(object):
                     self.headers['Cookie'] = cookie_header
 
             try:
-                # Create the connection.
+                # Send the request.
                 r = conn.urlopen(
                     method=self.method,
                     url=url,
@@ -385,6 +390,7 @@ class Request(object):
                     decode_content=False,
                     retries=self.config.get('max_retries', 0)
                 )
+
             except MaxRetryError, e:
                 if not self.config.get('safe_mode', False):
                     raise ConnectionError(e)
index 300779e41f5d77a5e4be643a91aa6113096633c0..8b0f7c7ab43fe0783461a784bc96a2e7384b1dbd 100755 (executable)
@@ -57,6 +57,8 @@ class RequestsTestSuite(unittest.TestCase):
     def tearDown(self):
         """Teardown."""
         # self.httpbin.kill()
+        pass
+
 
     def test_entry_points(self):
 
@@ -551,8 +553,5 @@ class RequestsTestSuite(unittest.TestCase):
         assert r.content == None
 
 
-
-
-
 if __name__ == '__main__':
     unittest.main()