From: Kenneth Reitz Date: Mon, 17 Dec 2012 11:35:01 +0000 (-0500) Subject: /s/prefetch/stream X-Git-Tag: v1.0.0~18 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4c3b9df6091b65d8c72763222bd5fdefb7231149;p=services%2Fpython-requests.git /s/prefetch/stream --- diff --git a/requests/adapters.py b/requests/adapters.py index 0d9bb04..ffdf6c9 100644 --- a/requests/adapters.py +++ b/requests/adapters.py @@ -142,7 +142,7 @@ class HTTPAdapter(BaseAdapter): """ self.poolmanager.clear() - def send(self, request, prefetch=True, timeout=None, verify=True, cert=None, proxies=None): + def send(self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None): """Sends PreparedRequest object. Returns Response object.""" conn = self.get_connection(request.url, proxies) @@ -180,7 +180,7 @@ class HTTPAdapter(BaseAdapter): r = self.build_response(request, resp) - if prefetch: + if not stream: r.content return r diff --git a/requests/api.py b/requests/api.py index 13f6531..294dbe4 100644 --- a/requests/api.py +++ b/requests/api.py @@ -30,7 +30,7 @@ def request(method, url, **kwargs): :param allow_redirects: (optional) Boolean. Set to True if POST/PUT/DELETE redirect following is allowed. :param proxies: (optional) Dictionary mapping protocol to the URL of the proxy. :param verify: (optional) if ``True``, the SSL cert will be verified. A CA_BUNDLE path can also be provided. - :param prefetch: (optional) if ``True``, the response content will be immediately downloaded. + :param stream: (optional) if ``False``, the response content will be immediately downloaded. :param cert: (optional) if String, path to ssl client cert file (.pem). If Tuple, ('cert', 'key') pair. """ diff --git a/requests/models.py b/requests/models.py index dfd04ec..308abb3 100644 --- a/requests/models.py +++ b/requests/models.py @@ -378,7 +378,7 @@ class Response(object): self.headers = CaseInsensitiveDict() #: File-like object representation of response (for advanced usage). - #: Requires that ``prefetch=False` on the request. + #: Requires that ``stream=True` on the request. # This requirement does not apply for use internally to Requests. self.raw = None @@ -393,8 +393,6 @@ class Response(object): #: up here. The list is sorted from the oldest to the most recent request. self.history = [] - #: The :class:`Request ` that created the Response. - # self.request = None self.reason = None @@ -513,8 +511,7 @@ class Response(object): # Fallback to auto-detected encoding. if self.encoding is None: - if chardet is not None: - encoding = chardet.detect(self.content)['encoding'] + encoding = self.apparent_encoding # Decode unicode from given encoding. try: diff --git a/requests/sessions.py b/requests/sessions.py index 2fe23f6..83dcdc4 100644 --- a/requests/sessions.py +++ b/requests/sessions.py @@ -62,7 +62,7 @@ def merge_kwargs(local_kwarg, default_kwarg): class SessionRedirectMixin(object): - def resolve_redirects(self, resp, req, prefetch=True, timeout=None, verify=True, cert=None): + def resolve_redirects(self, resp, req, stream=False, timeout=None, verify=True, cert=None): """Receives a Response. Returns a generator of Responses.""" i = 0 @@ -122,7 +122,7 @@ class SessionRedirectMixin(object): auth=req.auth, cookies=req.cookies, allow_redirects=False, - prefetch=prefetch, + stream=stream, timeout=timeout, verify=verify, cert=cert @@ -159,8 +159,8 @@ class Session(SessionRedirectMixin): #: representing multivalued query parameters. self.params = {} - #: Prefetch response content. - self.prefetch = True + #: Stream response content. + self.stream = False #: SSL Verification. self.verify = True @@ -194,7 +194,7 @@ class Session(SessionRedirectMixin): allow_redirects=True, proxies=None, hooks=None, - prefetch=None, + stream=None, verify=None, cert=None): @@ -214,7 +214,7 @@ class Session(SessionRedirectMixin): auth = merge_kwargs(auth, self.auth) proxies = merge_kwargs(proxies, self.proxies) hooks = merge_kwargs(hooks, self.hooks) - prefetch = merge_kwargs(prefetch, self.prefetch) + stream = merge_kwargs(stream, self.stream) verify = merge_kwargs(verify, self.verify) cert = merge_kwargs(cert, self.cert) @@ -234,10 +234,10 @@ class Session(SessionRedirectMixin): prep = req.prepare() # Send the request. - resp = self.send(prep, prefetch=prefetch, timeout=timeout, verify=verify, cert=cert) + resp = self.send(prep, stream=stream, timeout=timeout, verify=verify, cert=cert) # Redirect resolving generator. - gen = self.resolve_redirects(resp, req, prefetch, timeout, verify, cert) + gen = self.resolve_redirects(resp, req, stream, timeout, verify, cert) # Resolve redirects if allowed. history = [r for r in gen] if allow_redirects else []