Skip to content

Commit 3178c8d

Browse files
authored
deps: compatiblity with requests ≥ 2.29.0 and urllib3 2.x (#3116)
Requirements are the same, so it's still possible to use `urllib3 < 2` or `requests == 2.28.2` for example. Signed-off-by: Felix Fontein <[email protected]>
1 parent a02ba74 commit 3178c8d

File tree

6 files changed

+12
-35
lines changed

6 files changed

+12
-35
lines changed

docker/transport/npipeconn.py

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,13 @@
55
from .. import constants
66
from .npipesocket import NpipeSocket
77

8-
import http.client as httplib
9-
10-
try:
11-
import requests.packages.urllib3 as urllib3
12-
except ImportError:
13-
import urllib3
8+
import urllib3
9+
import urllib3.connection
1410

1511
RecentlyUsedContainer = urllib3._collections.RecentlyUsedContainer
1612

1713

18-
class NpipeHTTPConnection(httplib.HTTPConnection):
14+
class NpipeHTTPConnection(urllib3.connection.HTTPConnection):
1915
def __init__(self, npipe_path, timeout=60):
2016
super().__init__(
2117
'localhost', timeout=timeout

docker/transport/sshconn.py

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,8 @@
1111
from docker.transport.basehttpadapter import BaseHTTPAdapter
1212
from .. import constants
1313

14-
import http.client as httplib
15-
16-
try:
17-
import requests.packages.urllib3 as urllib3
18-
except ImportError:
19-
import urllib3
14+
import urllib3
15+
import urllib3.connection
2016

2117
RecentlyUsedContainer = urllib3._collections.RecentlyUsedContainer
2218

@@ -99,7 +95,7 @@ def close(self):
9995
self.proc.terminate()
10096

10197

102-
class SSHConnection(httplib.HTTPConnection):
98+
class SSHConnection(urllib3.connection.HTTPConnection):
10399
def __init__(self, ssh_transport=None, timeout=60, host=None):
104100
super().__init__(
105101
'localhost', timeout=timeout

docker/transport/ssladapter.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,7 @@
77

88
from docker.transport.basehttpadapter import BaseHTTPAdapter
99

10-
try:
11-
import requests.packages.urllib3 as urllib3
12-
except ImportError:
13-
import urllib3
10+
import urllib3
1411

1512

1613
PoolManager = urllib3.poolmanager.PoolManager

docker/transport/unixconn.py

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,17 @@
11
import requests.adapters
22
import socket
3-
import http.client as httplib
43

54
from docker.transport.basehttpadapter import BaseHTTPAdapter
65
from .. import constants
76

8-
try:
9-
import requests.packages.urllib3 as urllib3
10-
except ImportError:
11-
import urllib3
7+
import urllib3
8+
import urllib3.connection
129

1310

1411
RecentlyUsedContainer = urllib3._collections.RecentlyUsedContainer
1512

1613

17-
class UnixHTTPConnection(httplib.HTTPConnection):
14+
class UnixHTTPConnection(urllib3.connection.HTTPConnection):
1815

1916
def __init__(self, base_url, unix_socket, timeout=60):
2017
super().__init__(
@@ -30,12 +27,6 @@ def connect(self):
3027
sock.connect(self.unix_socket)
3128
self.sock = sock
3229

33-
def putheader(self, header, *values):
34-
super().putheader(header, *values)
35-
36-
def response_class(self, sock, *args, **kwargs):
37-
return httplib.HTTPResponse(sock, *args, **kwargs)
38-
3930

4031
class UnixHTTPConnectionPool(urllib3.connectionpool.HTTPConnectionPool):
4132
def __init__(self, base_url, socket_path, timeout=60, maxsize=10):

docker/types/daemon.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
import socket
22

3-
try:
4-
import requests.packages.urllib3 as urllib3
5-
except ImportError:
6-
import urllib3
3+
import urllib3
74

85
from ..errors import DockerException
96

tests/unit/api_test.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@
1616
import docker
1717
import pytest
1818
import requests
19+
import urllib3
1920
from docker.api import APIClient
2021
from docker.constants import DEFAULT_DOCKER_API_VERSION
21-
from requests.packages import urllib3
2222
from unittest import mock
2323

2424
from . import fake_api

0 commit comments

Comments
 (0)