summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Fontein <felix@fontein.de>2023-05-05 17:39:31 +0200
committerGitHub <noreply@github.com>2023-05-05 11:39:31 -0400
commit3178c8d48b7e7414d1f864ba1fe77139f4e923eb (patch)
treebecedb0bb38d823969ec7074ff55e7aba817c723
parenta02ba743338c27fd9348af2cf7767b140501734d (diff)
downloaddocker-py-3178c8d48b7e7414d1f864ba1fe77139f4e923eb.tar.gz
deps: compatiblity with requests ≥ 2.29.0 and urllib3 2.x (#3116)6.1.0
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 <felix@fontein.de>
-rw-r--r--docker/transport/npipeconn.py10
-rw-r--r--docker/transport/sshconn.py10
-rw-r--r--docker/transport/ssladapter.py5
-rw-r--r--docker/transport/unixconn.py15
-rw-r--r--docker/types/daemon.py5
-rw-r--r--tests/unit/api_test.py2
6 files changed, 12 insertions, 35 deletions
diff --git a/docker/transport/npipeconn.py b/docker/transport/npipeconn.py
index 87033cf..45988b2 100644
--- a/docker/transport/npipeconn.py
+++ b/docker/transport/npipeconn.py
@@ -5,17 +5,13 @@ from docker.transport.basehttpadapter import BaseHTTPAdapter
from .. import constants
from .npipesocket import NpipeSocket
-import http.client as httplib
-
-try:
- import requests.packages.urllib3 as urllib3
-except ImportError:
- import urllib3
+import urllib3
+import urllib3.connection
RecentlyUsedContainer = urllib3._collections.RecentlyUsedContainer
-class NpipeHTTPConnection(httplib.HTTPConnection):
+class NpipeHTTPConnection(urllib3.connection.HTTPConnection):
def __init__(self, npipe_path, timeout=60):
super().__init__(
'localhost', timeout=timeout
diff --git a/docker/transport/sshconn.py b/docker/transport/sshconn.py
index 7421f33..a92beb6 100644
--- a/docker/transport/sshconn.py
+++ b/docker/transport/sshconn.py
@@ -11,12 +11,8 @@ import subprocess
from docker.transport.basehttpadapter import BaseHTTPAdapter
from .. import constants
-import http.client as httplib
-
-try:
- import requests.packages.urllib3 as urllib3
-except ImportError:
- import urllib3
+import urllib3
+import urllib3.connection
RecentlyUsedContainer = urllib3._collections.RecentlyUsedContainer
@@ -99,7 +95,7 @@ class SSHSocket(socket.socket):
self.proc.terminate()
-class SSHConnection(httplib.HTTPConnection):
+class SSHConnection(urllib3.connection.HTTPConnection):
def __init__(self, ssh_transport=None, timeout=60, host=None):
super().__init__(
'localhost', timeout=timeout
diff --git a/docker/transport/ssladapter.py b/docker/transport/ssladapter.py
index 6aa8003..69274bd 100644
--- a/docker/transport/ssladapter.py
+++ b/docker/transport/ssladapter.py
@@ -7,10 +7,7 @@ from requests.adapters import HTTPAdapter
from docker.transport.basehttpadapter import BaseHTTPAdapter
-try:
- import requests.packages.urllib3 as urllib3
-except ImportError:
- import urllib3
+import urllib3
PoolManager = urllib3.poolmanager.PoolManager
diff --git a/docker/transport/unixconn.py b/docker/transport/unixconn.py
index 1b00762..fae10f2 100644
--- a/docker/transport/unixconn.py
+++ b/docker/transport/unixconn.py
@@ -1,20 +1,17 @@
import requests.adapters
import socket
-import http.client as httplib
from docker.transport.basehttpadapter import BaseHTTPAdapter
from .. import constants
-try:
- import requests.packages.urllib3 as urllib3
-except ImportError:
- import urllib3
+import urllib3
+import urllib3.connection
RecentlyUsedContainer = urllib3._collections.RecentlyUsedContainer
-class UnixHTTPConnection(httplib.HTTPConnection):
+class UnixHTTPConnection(urllib3.connection.HTTPConnection):
def __init__(self, base_url, unix_socket, timeout=60):
super().__init__(
@@ -30,12 +27,6 @@ class UnixHTTPConnection(httplib.HTTPConnection):
sock.connect(self.unix_socket)
self.sock = sock
- def putheader(self, header, *values):
- super().putheader(header, *values)
-
- def response_class(self, sock, *args, **kwargs):
- return httplib.HTTPResponse(sock, *args, **kwargs)
-
class UnixHTTPConnectionPool(urllib3.connectionpool.HTTPConnectionPool):
def __init__(self, base_url, socket_path, timeout=60, maxsize=10):
diff --git a/docker/types/daemon.py b/docker/types/daemon.py
index 10e8101..096b2cc 100644
--- a/docker/types/daemon.py
+++ b/docker/types/daemon.py
@@ -1,9 +1,6 @@
import socket
-try:
- import requests.packages.urllib3 as urllib3
-except ImportError:
- import urllib3
+import urllib3
from ..errors import DockerException
diff --git a/tests/unit/api_test.py b/tests/unit/api_test.py
index a2348f0..4b6099c 100644
--- a/tests/unit/api_test.py
+++ b/tests/unit/api_test.py
@@ -16,9 +16,9 @@ import http.server
import docker
import pytest
import requests
+import urllib3
from docker.api import APIClient
from docker.constants import DEFAULT_DOCKER_API_VERSION
-from requests.packages import urllib3
from unittest import mock
from . import fake_api