Browse Source

Removed Python2 support

Closes: #6890

Signed-off-by: Bastian Venthur <[email protected]>
Bastian Venthur 6 years ago
parent
commit
e8424d5ae0
80 changed files with 18 additions and 378 deletions
  1. 2 5
      .pre-commit-config.yaml
  2. 0 3
      Dockerfile
  3. 0 3
      bin/docker-compose
  4. 0 2
      compose/__init__.py
  5. 0 3
      compose/__main__.py
  6. 0 3
      compose/cli/colors.py
  7. 0 3
      compose/cli/command.py
  8. 0 3
      compose/cli/docker_client.py
  9. 0 3
      compose/cli/docopt_command.py
  10. 0 3
      compose/cli/errors.py
  11. 0 3
      compose/cli/formatter.py
  12. 3 6
      compose/cli/log_printer.py
  13. 0 4
      compose/cli/main.py
  14. 0 3
      compose/cli/signals.py
  15. 0 4
      compose/cli/utils.py
  16. 0 3
      compose/cli/verbose_proxy.py
  17. 0 3
      compose/config/__init__.py
  18. 0 3
      compose/config/config.py
  19. 2 3
      compose/config/environment.py
  20. 0 2
      compose/config/errors.py
  21. 0 3
      compose/config/interpolation.py
  22. 0 3
      compose/config/serialize.py
  23. 0 3
      compose/config/sort_services.py
  24. 0 3
      compose/config/types.py
  25. 0 3
      compose/config/validation.py
  26. 0 3
      compose/const.py
  27. 0 3
      compose/container.py
  28. 0 2
      compose/errors.py
  29. 0 3
      compose/network.py
  30. 3 6
      compose/parallel.py
  31. 0 3
      compose/progress_stream.py
  32. 1 4
      compose/project.py
  33. 1 4
      compose/service.py
  34. 0 3
      compose/timeparse.py
  35. 0 3
      compose/utils.py
  36. 0 3
      compose/version.py
  37. 0 3
      compose/volume.py
  38. 0 3
      contrib/migration/migrate-compose-file-v1-to-v2.py
  39. 0 1
      requirements.txt
  40. 0 126
      script/release/release.py
  41. 0 3
      script/release/utils.py
  42. 2 2
      script/test/all
  43. 0 4
      script/test/versions.py
  44. 0 6
      setup.py
  45. 0 3
      tests/__init__.py
  46. 0 3
      tests/acceptance/cli_test.py
  47. 0 4
      tests/helpers.py
  48. 0 3
      tests/integration/environment_test.py
  49. 0 3
      tests/integration/network_test.py
  50. 0 3
      tests/integration/project_test.py
  51. 0 3
      tests/integration/resilience_test.py
  52. 1 4
      tests/integration/service_test.py
  53. 0 3
      tests/integration/state_test.py
  54. 0 3
      tests/integration/testcases.py
  55. 0 3
      tests/integration/volume_test.py
  56. 0 3
      tests/unit/cli/command_test.py
  57. 0 3
      tests/unit/cli/docker_client_test.py
  58. 0 3
      tests/unit/cli/errors_test.py
  59. 0 3
      tests/unit/cli/formatter_test.py
  60. 1 4
      tests/unit/cli/log_printer_test.py
  61. 0 3
      tests/unit/cli/main_test.py
  62. 0 3
      tests/unit/cli/utils_test.py
  63. 0 3
      tests/unit/cli/verbose_proxy_test.py
  64. 0 3
      tests/unit/cli_test.py
  65. 0 4
      tests/unit/config/config_test.py
  66. 0 4
      tests/unit/config/environment_test.py
  67. 0 3
      tests/unit/config/interpolation_test.py
  68. 0 3
      tests/unit/config/sort_services_test.py
  69. 0 3
      tests/unit/config/types_test.py
  70. 0 3
      tests/unit/container_test.py
  71. 0 3
      tests/unit/network_test.py
  72. 0 3
      tests/unit/parallel_test.py
  73. 1 5
      tests/unit/progress_stream_test.py
  74. 0 3
      tests/unit/project_test.py
  75. 0 3
      tests/unit/service_test.py
  76. 0 3
      tests/unit/split_buffer_test.py
  77. 0 3
      tests/unit/timeparse_test.py
  78. 0 3
      tests/unit/utils_test.py
  79. 0 3
      tests/unit/volume_test.py
  80. 1 1
      tox.ini

+ 2 - 5
.pre-commit-config.yaml

@@ -17,9 +17,6 @@
   sha: v1.3.4
   sha: v1.3.4
   hooks:
   hooks:
     - id: reorder-python-imports
     - id: reorder-python-imports
-      language_version: 'python2.7'
+      language_version: 'python3.7'
       args:
       args:
-        - --add-import
-        - from __future__ import absolute_import
-        - --add-import
-        - from __future__ import unicode_literals
+         - --py3-plus

+ 0 - 3
Dockerfile

@@ -24,8 +24,6 @@ RUN apk add --no-cache \
     musl-dev \
     musl-dev \
     openssl \
     openssl \
     openssl-dev \
     openssl-dev \
-    python2 \
-    python2-dev \
     zlib-dev
     zlib-dev
 ENV BUILD_BOOTLOADER=1
 ENV BUILD_BOOTLOADER=1
 
 
@@ -40,7 +38,6 @@ RUN apt-get update && apt-get install --no-install-recommends -y \
     libssl-dev \
     libssl-dev \
     make \
     make \
     openssl \
     openssl \
-    python2.7-dev \
     zlib1g-dev
     zlib1g-dev
 
 
 FROM build-${BUILD_PLATFORM} AS build
 FROM build-${BUILD_PLATFORM} AS build

+ 0 - 3
bin/docker-compose

@@ -1,6 +1,3 @@
 #!/usr/bin/env python
 #!/usr/bin/env python
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 from compose.cli.main import main
 from compose.cli.main import main
 main()
 main()

+ 0 - 2
compose/__init__.py

@@ -1,4 +1,2 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
 
 
 __version__ = '1.26.0dev'
 __version__ = '1.26.0dev'

+ 0 - 3
compose/__main__.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 from compose.cli.main import main
 from compose.cli.main import main
 
 
 main()
 main()

+ 0 - 3
compose/cli/colors.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 from ..const import IS_WINDOWS_PLATFORM
 from ..const import IS_WINDOWS_PLATFORM
 
 
 NAMES = [
 NAMES = [

+ 0 - 3
compose/cli/command.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import logging
 import logging
 import os
 import os
 import re
 import re

+ 0 - 3
compose/cli/docker_client.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import logging
 import logging
 import os.path
 import os.path
 import ssl
 import ssl

+ 0 - 3
compose/cli/docopt_command.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 from inspect import getdoc
 from inspect import getdoc
 
 
 from docopt import docopt
 from docopt import docopt

+ 0 - 3
compose/cli/errors.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import contextlib
 import contextlib
 import logging
 import logging
 import socket
 import socket

+ 0 - 3
compose/cli/formatter.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import logging
 import logging
 import shutil
 import shutil
 
 

+ 3 - 6
compose/cli/log_printer.py

@@ -1,15 +1,12 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
+import _thread as thread
 import sys
 import sys
 from collections import namedtuple
 from collections import namedtuple
 from itertools import cycle
 from itertools import cycle
+from queue import Empty
+from queue import Queue
 from threading import Thread
 from threading import Thread
 
 
 from docker.errors import APIError
 from docker.errors import APIError
-from six.moves import _thread as thread
-from six.moves.queue import Empty
-from six.moves.queue import Queue
 
 
 from . import colors
 from . import colors
 from compose import utils
 from compose import utils

+ 0 - 4
compose/cli/main.py

@@ -1,7 +1,3 @@
-from __future__ import absolute_import
-from __future__ import print_function
-from __future__ import unicode_literals
-
 import contextlib
 import contextlib
 import functools
 import functools
 import json
 import json

+ 0 - 3
compose/cli/signals.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import signal
 import signal
 
 
 from ..const import IS_WINDOWS_PLATFORM
 from ..const import IS_WINDOWS_PLATFORM

+ 0 - 4
compose/cli/utils.py

@@ -1,7 +1,3 @@
-from __future__ import absolute_import
-from __future__ import division
-from __future__ import unicode_literals
-
 import math
 import math
 import os
 import os
 import platform
 import platform

+ 0 - 3
compose/cli/verbose_proxy.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import functools
 import functools
 import logging
 import logging
 import pprint
 import pprint

+ 0 - 3
compose/config/__init__.py

@@ -1,7 +1,4 @@
 # flake8: noqa
 # flake8: noqa
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 from . import environment
 from . import environment
 from .config import ConfigurationError
 from .config import ConfigurationError
 from .config import DOCKER_CONFIG_KEYS
 from .config import DOCKER_CONFIG_KEYS

+ 0 - 3
compose/config/config.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import functools
 import functools
 import io
 import io
 import logging
 import logging

+ 2 - 3
compose/config/environment.py

@@ -1,6 +1,5 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
+import codecs
+import contextlib
 import logging
 import logging
 import os
 import os
 import re
 import re

+ 0 - 2
compose/config/errors.py

@@ -1,5 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
 
 
 
 
 VERSION_EXPLANATION = (
 VERSION_EXPLANATION = (

+ 0 - 3
compose/config/interpolation.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import logging
 import logging
 import re
 import re
 from string import Template
 from string import Template

+ 0 - 3
compose/config/serialize.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import six
 import six
 import yaml
 import yaml
 
 

+ 0 - 3
compose/config/sort_services.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 from compose.config.errors import DependencyError
 from compose.config.errors import DependencyError
 
 
 
 

+ 0 - 3
compose/config/types.py

@@ -1,9 +1,6 @@
 """
 """
 Types for objects parsed from the configuration.
 Types for objects parsed from the configuration.
 """
 """
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import json
 import json
 import ntpath
 import ntpath
 import os
 import os

+ 0 - 3
compose/config/validation.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import json
 import json
 import logging
 import logging
 import os
 import os

+ 0 - 3
compose/const.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import sys
 import sys
 
 
 from .version import ComposeVersion
 from .version import ComposeVersion

+ 0 - 3
compose/container.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 from functools import reduce
 from functools import reduce
 
 
 import six
 import six

+ 0 - 2
compose/errors.py

@@ -1,5 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
 
 
 
 
 class OperationFailedError(Exception):
 class OperationFailedError(Exception):

+ 0 - 3
compose/network.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import logging
 import logging
 import re
 import re
 from collections import OrderedDict
 from collections import OrderedDict

+ 3 - 6
compose/parallel.py

@@ -1,18 +1,15 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
+import _thread as thread
 import logging
 import logging
 import operator
 import operator
 import sys
 import sys
+from queue import Empty
+from queue import Queue
 from threading import Lock
 from threading import Lock
 from threading import Semaphore
 from threading import Semaphore
 from threading import Thread
 from threading import Thread
 
 
 from docker.errors import APIError
 from docker.errors import APIError
 from docker.errors import ImageNotFound
 from docker.errors import ImageNotFound
-from six.moves import _thread as thread
-from six.moves.queue import Empty
-from six.moves.queue import Queue
 
 
 from compose.cli.colors import green
 from compose.cli.colors import green
 from compose.cli.colors import red
 from compose.cli.colors import red

+ 0 - 3
compose/progress_stream.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 from compose import utils
 from compose import utils
 
 
 
 

+ 1 - 4
compose/project.py

@@ -1,14 +1,11 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import datetime
 import datetime
+import enum
 import logging
 import logging
 import operator
 import operator
 import re
 import re
 from functools import reduce
 from functools import reduce
 from os import path
 from os import path
 
 
-import enum
 import six
 import six
 from docker.errors import APIError
 from docker.errors import APIError
 from docker.errors import ImageNotFound
 from docker.errors import ImageNotFound

+ 1 - 4
compose/service.py

@@ -1,6 +1,4 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
+import enum
 import itertools
 import itertools
 import json
 import json
 import logging
 import logging
@@ -12,7 +10,6 @@ from collections import namedtuple
 from collections import OrderedDict
 from collections import OrderedDict
 from operator import attrgetter
 from operator import attrgetter
 
 
-import enum
 import six
 import six
 from docker.errors import APIError
 from docker.errors import APIError
 from docker.errors import ImageNotFound
 from docker.errors import ImageNotFound

+ 0 - 3
compose/timeparse.py

@@ -31,9 +31,6 @@ https://golang.org/pkg/time/#ParseDuration
 # ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 # ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 # SOFTWARE.
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import re
 import re
 
 
 HOURS = r'(?P<hours>[\d.]+)h'
 HOURS = r'(?P<hours>[\d.]+)h'

+ 0 - 3
compose/utils.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import codecs
 import codecs
 import hashlib
 import hashlib
 import json.decoder
 import json.decoder

+ 0 - 3
compose/version.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 from distutils.version import LooseVersion
 from distutils.version import LooseVersion
 
 
 
 

+ 0 - 3
compose/volume.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import logging
 import logging
 import re
 import re
 
 

+ 0 - 3
contrib/migration/migrate-compose-file-v1-to-v2.py

@@ -3,9 +3,6 @@
 Migrate a Compose file from the V1 format in Compose 1.5 to the V2 format
 Migrate a Compose file from the V1 format in Compose 1.5 to the V2 format
 supported by Compose 1.6+
 supported by Compose 1.6+
 """
 """
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import argparse
 import argparse
 import logging
 import logging
 import sys
 import sys

+ 0 - 1
requirements.txt

@@ -1,5 +1,4 @@
 backports.shutil_get_terminal_size==1.0.0
 backports.shutil_get_terminal_size==1.0.0
-backports.ssl-match-hostname==3.5.0.1; python_version < '3'
 cached-property==1.5.1
 cached-property==1.5.1
 certifi==2020.4.5.1
 certifi==2020.4.5.1
 chardet==3.0.4
 chardet==3.0.4

+ 0 - 126
script/release/release.py

@@ -1,126 +0,0 @@
-#!/usr/bin/env python3
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
-import re
-
-import click
-from git import Repo
-from utils import update_init_py_version
-from utils import update_run_sh_version
-from utils import yesno
-
-VALID_VERSION_PATTERN = re.compile(r"^\d+\.\d+\.\d+(-rc\d+)?$")
-
-
-class Version(str):
-    def matching_groups(self):
-        match = VALID_VERSION_PATTERN.match(self)
-        if not match:
-            return False
-
-        return match.groups()
-
-    def is_ga_version(self):
-        groups = self.matching_groups()
-        if not groups:
-            return False
-
-        rc_suffix = groups[1]
-        return not rc_suffix
-
-    def validate(self):
-        return len(self.matching_groups()) > 0
-
-    def branch_name(self):
-        if not self.validate():
-            return None
-
-        rc_part = self.matching_groups()[0]
-        ver = self
-        if rc_part:
-            ver = ver[:-len(rc_part)]
-
-        tokens = ver.split(".")
-        tokens[-1] = 'x'
-
-        return ".".join(tokens)
-
-
-def create_bump_commit(repository, version):
-    print('Creating bump commit...')
-    repository.commit('-a', '-s', '-m "Bump {}"'.format(version), '--no-verify')
-
-
-def validate_environment(version, repository):
-    if not version.validate():
-        print('Version "{}" has an invalid format. This should follow D+.D+.D+(-rcD+). '
-              'Like: 1.26.0 or 1.26.0-rc1'.format(version))
-        return False
-
-    expected_branch = version.branch_name()
-    if str(repository.active_branch) != expected_branch:
-        print('Cannot tag in this branch with version "{}". '
-              'Please checkout "{}" to tag'.format(version, version.branch_name()))
-        return False
-    return True
-
-
[email protected]()
-def cli():
-    pass
-
-
[email protected]()
[email protected]('version')
-def tag(version):
-    """
-    Updates the version related files and tag
-    """
-    repo = Repo(".")
-    version = Version(version)
-    if not validate_environment(version, repo):
-        return
-
-    update_init_py_version(version)
-    update_run_sh_version(version)
-
-    input('Please add the release notes to the CHANGELOG.md file, then press Enter to continue.')
-    proceed = False
-    while not proceed:
-        print(repo.git.diff())
-        proceed = yesno('Are these changes ok? y/N ', default=False)
-
-    if repo.git.diff():
-        create_bump_commit(repo.git, version)
-    else:
-        print('No changes to commit. Exiting...')
-        return
-
-    repo.create_tag(version)
-
-    print('Please, check the changes. If everything is OK, you just need to push with:\n'
-          '$ git push --tags upstream {}'.format(version.branch_name()))
-
-
[email protected]()
[email protected]('version')
-def push_latest(version):
-    """
-    TODO Pushes the latest tag pointing to a certain GA version
-    """
-    raise NotImplementedError
-
-
[email protected]()
[email protected]('version')
-def ghtemplate(version):
-    """
-    TODO Generates the github release page content
-    """
-    version = Version(version)
-    raise NotImplementedError
-
-
-if __name__ == '__main__':
-    cli()

+ 0 - 3
script/release/utils.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import os
 import os
 import re
 import re
 
 

+ 2 - 2
script/test/all

@@ -11,7 +11,7 @@ docker run --rm \
   "$TAG" tox -e pre-commit
   "$TAG" tox -e pre-commit
 
 
 get_versions="docker run --rm
 get_versions="docker run --rm
-    --entrypoint=/code/.tox/py27/bin/python
+    --entrypoint=/code/.tox/py37/bin/python
     $TAG
     $TAG
     /code/script/test/versions.py docker/docker-ce,moby/moby"
     /code/script/test/versions.py docker/docker-ce,moby/moby"
 
 
@@ -23,7 +23,7 @@ fi
 
 
 
 
 BUILD_NUMBER=${BUILD_NUMBER-$USER}
 BUILD_NUMBER=${BUILD_NUMBER-$USER}
-PY_TEST_VERSIONS=${PY_TEST_VERSIONS:-py27,py37}
+PY_TEST_VERSIONS=${PY_TEST_VERSIONS:-py37}
 
 
 for version in $DOCKER_VERSIONS; do
 for version in $DOCKER_VERSIONS; do
   >&2 echo "Running tests against Docker $version"
   >&2 echo "Running tests against Docker $version"

+ 0 - 4
script/test/versions.py

@@ -21,10 +21,6 @@ For example, if the list of versions is:
 `default` would return `1.7.1` and
 `default` would return `1.7.1` and
 `recent -n 3` would return `1.8.0-rc2 1.7.1 1.6.2`
 `recent -n 3` would return `1.8.0-rc2 1.7.1 1.6.2`
 """
 """
-from __future__ import absolute_import
-from __future__ import print_function
-from __future__ import unicode_literals
-
 import argparse
 import argparse
 import itertools
 import itertools
 import operator
 import operator

+ 0 - 6
setup.py

@@ -1,9 +1,5 @@
 #!/usr/bin/env python
 #!/usr/bin/env python
 # -*- coding: utf-8 -*-
 # -*- coding: utf-8 -*-
-from __future__ import absolute_import
-from __future__ import print_function
-from __future__ import unicode_literals
-
 import codecs
 import codecs
 import os
 import os
 import re
 import re
@@ -108,8 +104,6 @@ setup(
         'Environment :: Console',
         'Environment :: Console',
         'Intended Audience :: Developers',
         'Intended Audience :: Developers',
         'License :: OSI Approved :: Apache Software License',
         'License :: OSI Approved :: Apache Software License',
-        'Programming Language :: Python :: 2',
-        'Programming Language :: Python :: 2.7',
         'Programming Language :: Python :: 3',
         'Programming Language :: Python :: 3',
         'Programming Language :: Python :: 3.4',
         'Programming Language :: Python :: 3.4',
         'Programming Language :: Python :: 3.6',
         'Programming Language :: Python :: 3.6',

+ 0 - 3
tests/__init__.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import sys
 import sys
 
 
 if sys.version_info >= (2, 7):
 if sys.version_info >= (2, 7):

+ 0 - 3
tests/acceptance/cli_test.py

@@ -1,7 +1,4 @@
 # -*- coding: utf-8 -*-
 # -*- coding: utf-8 -*-
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import datetime
 import datetime
 import json
 import json
 import os.path
 import os.path

+ 0 - 4
tests/helpers.py

@@ -1,7 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
-import contextlib
 import os
 import os
 
 
 from compose.config.config import ConfigDetails
 from compose.config.config import ConfigDetails

+ 0 - 3
tests/integration/environment_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import tempfile
 import tempfile
 
 
 from ddt import data
 from ddt import data

+ 0 - 3
tests/integration/network_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import pytest
 import pytest
 
 
 from .testcases import DockerClientTestCase
 from .testcases import DockerClientTestCase

+ 0 - 3
tests/integration/project_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import copy
 import copy
 import json
 import json
 import os
 import os

+ 0 - 3
tests/integration/resilience_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import pytest
 import pytest
 
 
 from .. import mock
 from .. import mock

+ 1 - 4
tests/integration/service_test.py

@@ -1,17 +1,14 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import os
 import os
 import re
 import re
 import shutil
 import shutil
 import tempfile
 import tempfile
 from distutils.spawn import find_executable
 from distutils.spawn import find_executable
+from io import StringIO
 from os import path
 from os import path
 
 
 import pytest
 import pytest
 from docker.errors import APIError
 from docker.errors import APIError
 from docker.errors import ImageNotFound
 from docker.errors import ImageNotFound
-from six import StringIO
 from six import text_type
 from six import text_type
 
 
 from .. import mock
 from .. import mock

+ 0 - 3
tests/integration/state_test.py

@@ -2,9 +2,6 @@
 Integration tests which cover state convergence (aka smart recreate) performed
 Integration tests which cover state convergence (aka smart recreate) performed
 by `docker-compose up`.
 by `docker-compose up`.
 """
 """
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import copy
 import copy
 import os
 import os
 import shutil
 import shutil

+ 0 - 3
tests/integration/testcases.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import functools
 import functools
 import os
 import os
 
 

+ 0 - 3
tests/integration/volume_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import six
 import six
 from docker.errors import DockerException
 from docker.errors import DockerException
 
 

+ 0 - 3
tests/unit/cli/command_test.py

@@ -1,7 +1,4 @@
 # ~*~ encoding: utf-8 ~*~
 # ~*~ encoding: utf-8 ~*~
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import os
 import os
 
 
 import pytest
 import pytest

+ 0 - 3
tests/unit/cli/docker_client_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import os
 import os
 import platform
 import platform
 import ssl
 import ssl

+ 0 - 3
tests/unit/cli/errors_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import pytest
 import pytest
 from docker.errors import APIError
 from docker.errors import APIError
 from requests.exceptions import ConnectionError
 from requests.exceptions import ConnectionError

+ 0 - 3
tests/unit/cli/formatter_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import logging
 import logging
 
 
 from compose.cli import colors
 from compose.cli import colors

+ 1 - 4
tests/unit/cli/log_printer_test.py

@@ -1,13 +1,10 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import itertools
 import itertools
+from queue import Queue
 
 
 import pytest
 import pytest
 import requests
 import requests
 import six
 import six
 from docker.errors import APIError
 from docker.errors import APIError
-from six.moves.queue import Queue
 
 
 from compose.cli.log_printer import build_log_generator
 from compose.cli.log_printer import build_log_generator
 from compose.cli.log_printer import build_log_presenters
 from compose.cli.log_printer import build_log_presenters

+ 0 - 3
tests/unit/cli/main_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import logging
 import logging
 
 
 import docker
 import docker

+ 0 - 3
tests/unit/cli/utils_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import unittest
 import unittest
 
 
 from compose.cli.utils import human_readable_file_size
 from compose.cli.utils import human_readable_file_size

+ 0 - 3
tests/unit/cli/verbose_proxy_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import six
 import six
 
 
 from compose.cli import verbose_proxy
 from compose.cli import verbose_proxy

+ 0 - 3
tests/unit/cli_test.py

@@ -1,7 +1,4 @@
 # encoding: utf-8
 # encoding: utf-8
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import os
 import os
 import shutil
 import shutil
 import tempfile
 import tempfile

+ 0 - 4
tests/unit/config/config_test.py

@@ -1,8 +1,4 @@
 # encoding: utf-8
 # encoding: utf-8
-from __future__ import absolute_import
-from __future__ import print_function
-from __future__ import unicode_literals
-
 import codecs
 import codecs
 import os
 import os
 import shutil
 import shutil

+ 0 - 4
tests/unit/config/environment_test.py

@@ -1,8 +1,4 @@
 # encoding: utf-8
 # encoding: utf-8
-from __future__ import absolute_import
-from __future__ import print_function
-from __future__ import unicode_literals
-
 import codecs
 import codecs
 import os
 import os
 import shutil
 import shutil

+ 0 - 3
tests/unit/config/interpolation_test.py

@@ -1,7 +1,4 @@
 # encoding: utf-8
 # encoding: utf-8
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import pytest
 import pytest
 
 
 from compose.config.environment import Environment
 from compose.config.environment import Environment

+ 0 - 3
tests/unit/config/sort_services_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import pytest
 import pytest
 
 
 from compose.config.errors import DependencyError
 from compose.config.errors import DependencyError

+ 0 - 3
tests/unit/config/types_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import pytest
 import pytest
 
 
 from compose.config.errors import ConfigurationError
 from compose.config.errors import ConfigurationError

+ 0 - 3
tests/unit/container_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import docker
 import docker
 
 
 from .. import mock
 from .. import mock

+ 0 - 3
tests/unit/network_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import pytest
 import pytest
 
 
 from .. import mock
 from .. import mock

+ 0 - 3
tests/unit/parallel_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import unittest
 import unittest
 from threading import Lock
 from threading import Lock
 
 

+ 1 - 5
tests/unit/progress_stream_test.py

@@ -1,14 +1,10 @@
 # ~*~ encoding: utf-8 ~*~
 # ~*~ encoding: utf-8 ~*~
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import io
 import io
 import os
 import os
 import random
 import random
 import shutil
 import shutil
 import tempfile
 import tempfile
-
-from six import StringIO
+from io import StringIO
 
 
 from compose import progress_stream
 from compose import progress_stream
 from tests import unittest
 from tests import unittest

+ 0 - 3
tests/unit/project_test.py

@@ -1,7 +1,4 @@
 # encoding: utf-8
 # encoding: utf-8
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import datetime
 import datetime
 import os
 import os
 import tempfile
 import tempfile

+ 0 - 3
tests/unit/service_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import docker
 import docker
 import pytest
 import pytest
 from docker.constants import DEFAULT_DOCKER_API_VERSION
 from docker.constants import DEFAULT_DOCKER_API_VERSION

+ 0 - 3
tests/unit/split_buffer_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 from .. import unittest
 from .. import unittest
 from compose.utils import split_buffer
 from compose.utils import split_buffer
 
 

+ 0 - 3
tests/unit/timeparse_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 from compose import timeparse
 from compose import timeparse
 
 
 
 

+ 0 - 3
tests/unit/utils_test.py

@@ -1,7 +1,4 @@
 # encoding: utf-8
 # encoding: utf-8
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 from compose import utils
 from compose import utils
 
 
 
 

+ 0 - 3
tests/unit/volume_test.py

@@ -1,6 +1,3 @@
-from __future__ import absolute_import
-from __future__ import unicode_literals
-
 import docker
 import docker
 import pytest
 import pytest
 
 

+ 1 - 1
tox.ini

@@ -1,5 +1,5 @@
 [tox]
 [tox]
-envlist = py27,py37,pre-commit
+envlist = py37,pre-commit
 
 
 [testenv]
 [testenv]
 usedevelop=True
 usedevelop=True