From 159a42ad5f1bdc004c143219d9e34bdd393dd80b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Gra=C3=B1a?= Date: Fri, 14 Mar 2014 17:12:25 -0300 Subject: [PATCH 1/2] Fix API version comparison --- docker/utils/utils.py | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/docker/utils/utils.py b/docker/utils/utils.py index 2b5343985c..a4c8778577 100644 --- a/docker/utils/utils.py +++ b/docker/utils/utils.py @@ -15,6 +15,7 @@ import io import tarfile import tempfile +from distutils.version import StrictVersion import requests import six @@ -51,7 +52,25 @@ def tar(path): def compare_version(v1, v2): - return float(v2) - float(v1) + """Compare docker versions + + >>> v1 = '1.9' + >>> v2 = '1.10' + >>> compare_version(v1, v2) + 1 + >>> compare_version(v2, v1) + -1 + >>> compare_version(v2, v2) + 0 + """ + s1 = StrictVersion(v1) + s2 = StrictVersion(v2) + if s1 == s2: + return 0 + elif s1 > s2: + return -1 + else: + return 1 def ping(url): From b1f1e363a49753c8801b54480b01efe14c2c21f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Gra=C3=B1a?= Date: Tue, 18 Mar 2014 10:05:04 -0300 Subject: [PATCH 2/2] remove reference to uninitialized variable and extra parameter in function call --- docker/client.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docker/client.py b/docker/client.py index c11980f286..d8f79c9206 100644 --- a/docker/client.py +++ b/docker/client.py @@ -312,7 +312,7 @@ def stream_result(): if line: yield line - return stream and stream_result(response) or \ + return stream_result() if stream else \ self._result(response, binary=True) return stream and self._multiplexed_socket_stream_helper(response) or \ @@ -651,7 +651,7 @@ def push(self, repository, stream=False): response = self._post_json(u, None, headers=headers, stream=stream) else: - response = self._post_json(u, authcfg, stream=stream) + response = self._post_json(u, None, stream=stream) return stream and self._stream_helper(response) \ or self._result(response)