-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update python-CacheControl to version 0.12.11 / rev 12 via SR 1089718
https://build.opensuse.org/request/show/1089718 by user dgarcia + dimstar_suse - Add requests-fix.patch to support latest version of urllib3 and requests gh#psf/cachecontrol#301, gh#psf/cachecontrol#304
- Loading branch information
1 parent
c1c2d7b
commit 9402475
Showing
5 changed files
with
123 additions
and
3 deletions.
There are no files selected for viewing
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,94 @@ | ||
Index: cachecontrol-0.12.12/.github/workflows/tests.yml | ||
=================================================================== | ||
--- cachecontrol-0.12.12.orig/.github/workflows/tests.yml | ||
+++ cachecontrol-0.12.12/.github/workflows/tests.yml | ||
@@ -14,9 +14,15 @@ jobs: | ||
runs-on: "${{ matrix.os }}" | ||
|
||
strategy: | ||
+ fail-fast: false | ||
matrix: | ||
- python-version: ["3.6", "3.7", "3.8", "3.9", "3.10"] | ||
- os: ["macos-10.15", "windows-latest", "ubuntu-latest"] | ||
+ python-version: ["3.7", "3.8", "3.9", "3.10"] | ||
+ os: ["macos-latest", "windows-latest", "ubuntu-latest"] | ||
+ include: | ||
+ - python-version: "3.6" | ||
+ os: "ubuntu-20.04" | ||
+ - python-version: "3.6" | ||
+ os: "windows-latest" | ||
|
||
steps: | ||
- uses: "actions/checkout@v2" | ||
Index: cachecontrol-0.12.12/cachecontrol/serialize.py | ||
=================================================================== | ||
--- cachecontrol-0.12.12.orig/cachecontrol/serialize.py | ||
+++ cachecontrol-0.12.12/cachecontrol/serialize.py | ||
@@ -51,7 +51,6 @@ class Serializer(object): | ||
u"status": response.status, | ||
u"version": response.version, | ||
u"reason": text_type(response.reason), | ||
- u"strict": response.strict, | ||
u"decode_content": response.decode_content, | ||
} | ||
} | ||
@@ -138,6 +137,9 @@ class Serializer(object): | ||
# TypeError: 'str' does not support the buffer interface | ||
body = io.BytesIO(body_raw.encode("utf8")) | ||
|
||
+ # Discard any `strict` parameter serialized by older version of cachecontrol. | ||
+ cached["response"].pop("strict", None) | ||
+ | ||
return HTTPResponse(body=body, preload_content=False, **cached["response"]) | ||
|
||
def _loads_v0(self, request, data, body_file=None): | ||
Index: cachecontrol-0.12.12/tests/test_etag.py | ||
=================================================================== | ||
--- cachecontrol-0.12.12.orig/tests/test_etag.py | ||
+++ cachecontrol-0.12.12/tests/test_etag.py | ||
@@ -1,6 +1,8 @@ | ||
# SPDX-FileCopyrightText: 2015 Eric Larson | ||
# | ||
# SPDX-License-Identifier: Apache-2.0 | ||
+from contextlib import ExitStack | ||
+from contextlib import suppress | ||
|
||
import pytest | ||
|
||
@@ -134,11 +136,20 @@ class TestReleaseConnection(object): | ||
|
||
resp = Mock(status=304, headers={}) | ||
|
||
- # This is how the urllib3 response is created in | ||
- # requests.adapters | ||
- response_mod = "requests.adapters.HTTPResponse.from_httplib" | ||
+ # These are various ways the the urllib3 response can created | ||
+ # in requests.adapters. Which one is actually used depends | ||
+ # on which version if `requests` is in use, as well as perhaps | ||
+ # other parameters. | ||
+ response_mods = [ | ||
+ "requests.adapters.HTTPResponse.from_httplib", | ||
+ "urllib3.HTTPConnectionPool.urlopen", | ||
+ ] | ||
+ | ||
+ with ExitStack() as stack: | ||
+ for mod in response_mods: | ||
+ with suppress(ImportError, AttributeError): | ||
+ stack.enter_context(patch(mod, Mock(return_value=resp))) | ||
|
||
- with patch(response_mod, Mock(return_value=resp)): | ||
sess.get(etag_url) | ||
assert resp.read.called | ||
assert resp.release_conn.called | ||
Index: cachecontrol-0.12.12/tests/test_vary.py | ||
=================================================================== | ||
--- cachecontrol-0.12.12.orig/tests/test_vary.py | ||
+++ cachecontrol-0.12.12/tests/test_vary.py | ||
@@ -33,7 +33,6 @@ class TestVary(object): | ||
cached.status == resp.raw.status, | ||
cached.version == resp.raw.version, | ||
cached.reason == resp.raw.reason, | ||
- cached.strict == resp.raw.strict, | ||
cached.decode_content == resp.raw.decode_content, | ||
] | ||
|