mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2026-03-16 19:12:34 +01:00
415 lines
16 KiB
Diff
415 lines
16 KiB
Diff
diff --git a/dev/profile/pyprof2calltree.py b/dev/profile/pyprof2calltree.py
|
|
index fc73a1d..668e602 100755
|
|
--- a/dev/profile/pyprof2calltree.py
|
|
+++ b/dev/profile/pyprof2calltree.py
|
|
@@ -38,3 +38,3 @@ import tempfile
|
|
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
|
|
diff --git a/lib/exabgp/application/bgp.py b/lib/exabgp/application/bgp.py
|
|
index 0780b47..275bc5c 100755
|
|
--- a/lib/exabgp/application/bgp.py
|
|
+++ b/lib/exabgp/application/bgp.py
|
|
@@ -24,3 +24,3 @@ from exabgp.reactor.loop import Reactor
|
|
|
|
-from exabgp.vendoring import docopt
|
|
+import docopt
|
|
|
|
@@ -39,3 +39,3 @@ def __exit(memory, code):
|
|
if memory:
|
|
- from exabgp.vendoring import objgraph
|
|
+ import objgraph
|
|
|
|
@@ -422,3 +422,3 @@ def run(env, comment, configurations, root, validate, pid=0):
|
|
finally:
|
|
- from exabgp.vendoring import lsprofcalltree
|
|
+ import lsprofcalltree
|
|
|
|
diff --git a/lib/exabgp/application/cli.py b/lib/exabgp/application/cli.py
|
|
index ab5a10d..e0ba811 100644
|
|
--- a/lib/exabgp/application/cli.py
|
|
+++ b/lib/exabgp/application/cli.py
|
|
@@ -26,3 +26,3 @@ from exabgp.reactor.api.response.answer import Answer
|
|
|
|
-from exabgp.vendoring import docopt
|
|
+import docopt
|
|
|
|
diff --git a/lib/exabgp/application/healthcheck.py b/lib/exabgp/application/healthcheck.py
|
|
index a2d0789..8705785 100644
|
|
--- a/lib/exabgp/application/healthcheck.py
|
|
+++ b/lib/exabgp/application/healthcheck.py
|
|
@@ -59,4 +59,4 @@ logger = logging.getLogger("healthcheck")
|
|
# Python 3.3+ or backport
|
|
-from exabgp.vendoring.ipaddress import ip_network # pylint: disable=F0401
|
|
-from exabgp.vendoring.ipaddress import ip_address # pylint: disable=F0401
|
|
+from ipaddress import ip_network # pylint: disable=F0401
|
|
+from ipaddress import ip_address # pylint: disable=F0401
|
|
|
|
diff --git a/lib/exabgp/bgp/message/open/capability/capabilities.py b/lib/exabgp/bgp/message/open/capability/capabilities.py
|
|
index 210542c..1a7962d 100644
|
|
--- a/lib/exabgp/bgp/message/open/capability/capabilities.py
|
|
+++ b/lib/exabgp/bgp/message/open/capability/capabilities.py
|
|
@@ -9,3 +9,3 @@ License: 3-clause BSD. (See the COPYRIGHT file)
|
|
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
|
|
diff --git a/lib/exabgp/bgp/message/open/capability/graceful.py b/lib/exabgp/bgp/message/open/capability/graceful.py
|
|
index 8f87693..2950ff1 100644
|
|
--- a/lib/exabgp/bgp/message/open/capability/graceful.py
|
|
+++ b/lib/exabgp/bgp/message/open/capability/graceful.py
|
|
@@ -12,3 +12,3 @@ from struct import unpack
|
|
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
|
|
diff --git a/lib/exabgp/bgp/message/update/attribute/attributes.py b/lib/exabgp/bgp/message/update/attribute/attributes.py
|
|
index d0f1a80..04c56e0 100644
|
|
--- a/lib/exabgp/bgp/message/update/attribute/attributes.py
|
|
+++ b/lib/exabgp/bgp/message/update/attribute/attributes.py
|
|
@@ -32,3 +32,3 @@ from exabgp.logger import LazyAttribute
|
|
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
|
|
diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/link/admingroup.py b/lib/exabgp/bgp/message/update/attribute/bgpls/link/admingroup.py
|
|
index c21b570..49bfc86 100644
|
|
--- a/lib/exabgp/bgp/message/update/attribute/bgpls/link/admingroup.py
|
|
+++ b/lib/exabgp/bgp/message/update/attribute/bgpls/link/admingroup.py
|
|
@@ -8,3 +8,3 @@ Copyright (c) 2014-2017 Exa Networks. All rights reserved.
|
|
|
|
-from exabgp.vendoring.bitstring import BitArray
|
|
+from bitstring import BitArray
|
|
from exabgp.bgp.message.notification import Notify
|
|
diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/link/igpmetric.py b/lib/exabgp/bgp/message/update/attribute/bgpls/link/igpmetric.py
|
|
index c57ba19..0fe5ba1 100644
|
|
--- a/lib/exabgp/bgp/message/update/attribute/bgpls/link/igpmetric.py
|
|
+++ b/lib/exabgp/bgp/message/update/attribute/bgpls/link/igpmetric.py
|
|
@@ -9,5 +9,5 @@ Copyright (c) 2014-2017 Exa Networks. All rights reserved.
|
|
from struct import unpack
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
|
|
-from exabgp.vendoring.bitstring import BitArray
|
|
+from bitstring import BitArray
|
|
from exabgp.bgp.message.notification import Notify
|
|
diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/link/sradj.py b/lib/exabgp/bgp/message/update/attribute/bgpls/link/sradj.py
|
|
index b6dc588..2276a09 100644
|
|
--- a/lib/exabgp/bgp/message/update/attribute/bgpls/link/sradj.py
|
|
+++ b/lib/exabgp/bgp/message/update/attribute/bgpls/link/sradj.py
|
|
@@ -10,6 +10,6 @@ import json
|
|
from struct import unpack
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
from exabgp.util import hexstring
|
|
|
|
-from exabgp.vendoring.bitstring import BitArray
|
|
+from bitstring import BitArray
|
|
from exabgp.bgp.message.update.attribute.bgpls.linkstate import LINKSTATE, LsGenericFlags
|
|
diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/link/sradjlan.py b/lib/exabgp/bgp/message/update/attribute/bgpls/link/sradjlan.py
|
|
index 4ec1b82..0d6255a 100644
|
|
--- a/lib/exabgp/bgp/message/update/attribute/bgpls/link/sradjlan.py
|
|
+++ b/lib/exabgp/bgp/message/update/attribute/bgpls/link/sradjlan.py
|
|
@@ -10,6 +10,6 @@ import json
|
|
from struct import unpack
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
from exabgp.util import hexstring
|
|
|
|
-from exabgp.vendoring.bitstring import BitArray
|
|
+from bitstring import BitArray
|
|
from exabgp.protocol.iso import ISO
|
|
diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/linkstate.py b/lib/exabgp/bgp/message/update/attribute/bgpls/linkstate.py
|
|
index c1ae183..d596a76 100644
|
|
--- a/lib/exabgp/bgp/message/update/attribute/bgpls/linkstate.py
|
|
+++ b/lib/exabgp/bgp/message/update/attribute/bgpls/linkstate.py
|
|
@@ -13,3 +13,3 @@ from struct import unpack
|
|
from exabgp.util import concat_strs
|
|
-from exabgp.vendoring.bitstring import BitArray
|
|
+from bitstring import BitArray
|
|
from exabgp.bgp.message.notification import Notify
|
|
diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/node/isisarea.py b/lib/exabgp/bgp/message/update/attribute/bgpls/node/isisarea.py
|
|
index 7644105..f4ba7d4 100644
|
|
--- a/lib/exabgp/bgp/message/update/attribute/bgpls/node/isisarea.py
|
|
+++ b/lib/exabgp/bgp/message/update/attribute/bgpls/node/isisarea.py
|
|
@@ -8,3 +8,3 @@ Copyright (c) 2014-2017 Exa Networks. All rights reserved.
|
|
|
|
-from exabgp.vendoring.bitstring import BitArray
|
|
+from bitstring import BitArray
|
|
|
|
diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/node/sralgo.py b/lib/exabgp/bgp/message/update/attribute/bgpls/node/sralgo.py
|
|
index 0afe8f5..572fd15 100644
|
|
--- a/lib/exabgp/bgp/message/update/attribute/bgpls/node/sralgo.py
|
|
+++ b/lib/exabgp/bgp/message/update/attribute/bgpls/node/sralgo.py
|
|
@@ -10,3 +10,3 @@ import json
|
|
from struct import unpack
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
|
|
diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/node/srcap.py b/lib/exabgp/bgp/message/update/attribute/bgpls/node/srcap.py
|
|
index c5ef17c..ab8662c 100644
|
|
--- a/lib/exabgp/bgp/message/update/attribute/bgpls/node/srcap.py
|
|
+++ b/lib/exabgp/bgp/message/update/attribute/bgpls/node/srcap.py
|
|
@@ -11,3 +11,3 @@ from struct import unpack
|
|
|
|
-from exabgp.vendoring.bitstring import BitArray
|
|
+from bitstring import BitArray
|
|
from exabgp.bgp.message.update.attribute.bgpls.linkstate import LINKSTATE, LsGenericFlags
|
|
diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/prefix/prefixmetric.py b/lib/exabgp/bgp/message/update/attribute/bgpls/prefix/prefixmetric.py
|
|
index be76423..686c009 100644
|
|
--- a/lib/exabgp/bgp/message/update/attribute/bgpls/prefix/prefixmetric.py
|
|
+++ b/lib/exabgp/bgp/message/update/attribute/bgpls/prefix/prefixmetric.py
|
|
@@ -10,3 +10,3 @@ from struct import unpack
|
|
|
|
-from exabgp.vendoring.bitstring import BitArray
|
|
+from bitstring import BitArray
|
|
from exabgp.bgp.message.notification import Notify
|
|
diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/prefix/srprefix.py b/lib/exabgp/bgp/message/update/attribute/bgpls/prefix/srprefix.py
|
|
index bb991e5..7f791dc 100644
|
|
--- a/lib/exabgp/bgp/message/update/attribute/bgpls/prefix/srprefix.py
|
|
+++ b/lib/exabgp/bgp/message/update/attribute/bgpls/prefix/srprefix.py
|
|
@@ -10,6 +10,6 @@ import json
|
|
from struct import unpack
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
from exabgp.util import hexstring
|
|
|
|
-from exabgp.vendoring.bitstring import BitArray
|
|
+from bitstring import BitArray
|
|
from exabgp.bgp.message.notification import Notify
|
|
diff --git a/lib/exabgp/bgp/message/update/attribute/mprnlri.py b/lib/exabgp/bgp/message/update/attribute/mprnlri.py
|
|
index 95b8da1..871f8a8 100644
|
|
--- a/lib/exabgp/bgp/message/update/attribute/mprnlri.py
|
|
+++ b/lib/exabgp/bgp/message/update/attribute/mprnlri.py
|
|
@@ -11,3 +11,3 @@ from struct import unpack
|
|
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
from exabgp.util import concat_bytes
|
|
diff --git a/lib/exabgp/bgp/message/update/attribute/sr/prefixsid.py b/lib/exabgp/bgp/message/update/attribute/sr/prefixsid.py
|
|
index 9d7c5a6..b529f2c 100644
|
|
--- a/lib/exabgp/bgp/message/update/attribute/sr/prefixsid.py
|
|
+++ b/lib/exabgp/bgp/message/update/attribute/sr/prefixsid.py
|
|
@@ -10,3 +10,3 @@ import binascii
|
|
from struct import unpack
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
|
|
diff --git a/lib/exabgp/bgp/message/update/attribute/sr/srgb.py b/lib/exabgp/bgp/message/update/attribute/sr/srgb.py
|
|
index 540d23e..c56ea59 100644
|
|
--- a/lib/exabgp/bgp/message/update/attribute/sr/srgb.py
|
|
+++ b/lib/exabgp/bgp/message/update/attribute/sr/srgb.py
|
|
@@ -11,3 +11,3 @@ from struct import pack
|
|
from exabgp.util import concat_bytes
|
|
-from exabgp.vendoring.bitstring import BitArray
|
|
+from bitstring import BitArray
|
|
from exabgp.bgp.message.notification import Notify
|
|
diff --git a/lib/exabgp/bgp/message/update/nlri/bgpls/tlvs/ipreach.py b/lib/exabgp/bgp/message/update/nlri/bgpls/tlvs/ipreach.py
|
|
index 706fe86..23d62b3 100644
|
|
--- a/lib/exabgp/bgp/message/update/nlri/bgpls/tlvs/ipreach.py
|
|
+++ b/lib/exabgp/bgp/message/update/nlri/bgpls/tlvs/ipreach.py
|
|
@@ -12,3 +12,3 @@ from struct import unpack
|
|
import math
|
|
-from exabgp.vendoring import ipaddress
|
|
+import ipaddress
|
|
|
|
diff --git a/lib/exabgp/bgp/message/update/nlri/vpls.py b/lib/exabgp/bgp/message/update/nlri/vpls.py
|
|
index 0c9e329..033d254 100644
|
|
--- a/lib/exabgp/bgp/message/update/nlri/vpls.py
|
|
+++ b/lib/exabgp/bgp/message/update/nlri/vpls.py
|
|
@@ -12,3 +12,3 @@ from struct import unpack
|
|
from struct import pack
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
from exabgp.util import concat_bytes
|
|
diff --git a/lib/exabgp/bgp/neighbor.py b/lib/exabgp/bgp/neighbor.py
|
|
index dd26570..461a25a 100644
|
|
--- a/lib/exabgp/bgp/neighbor.py
|
|
+++ b/lib/exabgp/bgp/neighbor.py
|
|
@@ -18,3 +18,3 @@ try:
|
|
except ImportError:
|
|
- from exabgp.vendoring.counter import Counter
|
|
+ from counter import Counter
|
|
|
|
diff --git a/lib/exabgp/configuration/configuration.py b/lib/exabgp/configuration/configuration.py
|
|
index f84a25d..0688be6 100644
|
|
--- a/lib/exabgp/configuration/configuration.py
|
|
+++ b/lib/exabgp/configuration/configuration.py
|
|
@@ -12,3 +12,3 @@ import sys
|
|
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
|
|
diff --git a/lib/exabgp/configuration/core/scope.py b/lib/exabgp/configuration/core/scope.py
|
|
index 70352b8..cb2aed7 100644
|
|
--- a/lib/exabgp/configuration/core/scope.py
|
|
+++ b/lib/exabgp/configuration/core/scope.py
|
|
@@ -13,3 +13,3 @@ import pprint
|
|
# from copy import deepcopy
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
from exabgp.protocol.ip import IP
|
|
diff --git a/lib/exabgp/configuration/core/tokeniser.py b/lib/exabgp/configuration/core/tokeniser.py
|
|
index 9164bba..90273c7 100644
|
|
--- a/lib/exabgp/configuration/core/tokeniser.py
|
|
+++ b/lib/exabgp/configuration/core/tokeniser.py
|
|
@@ -12,3 +12,3 @@ from exabgp.protocol.family import AFI
|
|
from collections import deque
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
|
|
diff --git a/lib/exabgp/configuration/environment.py b/lib/exabgp/configuration/environment.py
|
|
index 20e98d3..cde47fb 100644
|
|
--- a/lib/exabgp/configuration/environment.py
|
|
+++ b/lib/exabgp/configuration/environment.py
|
|
@@ -317,3 +317,3 @@ class environment(object):
|
|
|
|
-from exabgp.vendoring.six.moves import configparser as ConfigParser
|
|
+from six.moves import configparser as ConfigParser
|
|
from exabgp.util.hashtable import HashTable
|
|
diff --git a/lib/exabgp/protocol/iso/__init__.py b/lib/exabgp/protocol/iso/__init__.py
|
|
index fb483d3..fa6a5f2 100644
|
|
--- a/lib/exabgp/protocol/iso/__init__.py
|
|
+++ b/lib/exabgp/protocol/iso/__init__.py
|
|
@@ -12,3 +12,3 @@ Copyright (c) 2009-2017 Exa Networks. All rights reserved.
|
|
|
|
-from exabgp.vendoring.bitstring import BitArray
|
|
+from bitstring import BitArray
|
|
|
|
diff --git a/lib/exabgp/reactor/api/response/json.py b/lib/exabgp/reactor/api/response/json.py
|
|
index a1fb6e5..6467fa2 100755
|
|
--- a/lib/exabgp/reactor/api/response/json.py
|
|
+++ b/lib/exabgp/reactor/api/response/json.py
|
|
@@ -16,3 +16,3 @@ import signal
|
|
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
|
|
diff --git a/lib/exabgp/reactor/asynchronous.py b/lib/exabgp/reactor/asynchronous.py
|
|
index 837a4ff..6f5bcc2 100644
|
|
--- a/lib/exabgp/reactor/asynchronous.py
|
|
+++ b/lib/exabgp/reactor/asynchronous.py
|
|
@@ -12,3 +12,3 @@ from collections import deque
|
|
from exabgp.logger import Logger
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
|
|
diff --git a/lib/exabgp/reactor/keepalive.py b/lib/exabgp/reactor/keepalive.py
|
|
index 3ad9937..f986e9a 100644
|
|
--- a/lib/exabgp/reactor/keepalive.py
|
|
+++ b/lib/exabgp/reactor/keepalive.py
|
|
@@ -8,3 +8,3 @@ Copyright (c) 2017-2017 Exa Networks. All rights reserved.
|
|
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
|
|
diff --git a/lib/exabgp/reactor/network/outgoing.py b/lib/exabgp/reactor/network/outgoing.py
|
|
index 892342d..94d9180 100644
|
|
--- a/lib/exabgp/reactor/network/outgoing.py
|
|
+++ b/lib/exabgp/reactor/network/outgoing.py
|
|
@@ -2,3 +2,3 @@ import time
|
|
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
|
|
diff --git a/lib/exabgp/reactor/peer.py b/lib/exabgp/reactor/peer.py
|
|
index e1ffb7c..9ae1029 100644
|
|
--- a/lib/exabgp/reactor/peer.py
|
|
+++ b/lib/exabgp/reactor/peer.py
|
|
@@ -13,3 +13,3 @@ from collections import defaultdict
|
|
# import traceback
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
from exabgp.util import ordinal
|
|
diff --git a/lib/exabgp/reactor/protocol.py b/lib/exabgp/reactor/protocol.py
|
|
index 1c4b038..fef51ad 100644
|
|
--- a/lib/exabgp/reactor/protocol.py
|
|
+++ b/lib/exabgp/reactor/protocol.py
|
|
@@ -11,3 +11,3 @@ import os
|
|
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
import traceback
|
|
diff --git a/lib/exabgp/rib/outgoing.py b/lib/exabgp/rib/outgoing.py
|
|
index a360bad..90d3b93 100644
|
|
--- a/lib/exabgp/rib/outgoing.py
|
|
+++ b/lib/exabgp/rib/outgoing.py
|
|
@@ -23,3 +23,3 @@ if sys.version_info[0] >= 3 and sys.version_info[1] >= 6:
|
|
else:
|
|
- from exabgp.vendoring.ordereddict import OrderedDict as RIBdict
|
|
+ from ordereddict import OrderedDict as RIBdict
|
|
|
|
diff --git a/lib/exabgp/util/coroutine.py b/lib/exabgp/util/coroutine.py
|
|
index a54b0bd..7e6bbbb 100644
|
|
--- a/lib/exabgp/util/coroutine.py
|
|
+++ b/lib/exabgp/util/coroutine.py
|
|
@@ -10,3 +10,3 @@ License: 3-clause BSD. (See the COPYRIGHT file)
|
|
from functools import wraps
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
|
|
diff --git a/lib/exabgp/util/trace.py b/lib/exabgp/util/trace.py
|
|
index a5a3a91..f23acb2 100644
|
|
--- a/lib/exabgp/util/trace.py
|
|
+++ b/lib/exabgp/util/trace.py
|
|
@@ -11,3 +11,3 @@ import traceback
|
|
|
|
-from exabgp.vendoring.six.moves import StringIO
|
|
+from six.moves import StringIO
|
|
|
|
diff --git a/lib/exabgp/vendoring/cmd2.py b/lib/exabgp/vendoring/cmd2.py
|
|
index 9b179ec..d7e5c38 100644
|
|
--- a/lib/exabgp/vendoring/cmd2.py
|
|
+++ b/lib/exabgp/vendoring/cmd2.py
|
|
@@ -40,6 +40,6 @@ import platform
|
|
import copy
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
from code import InteractiveConsole, InteractiveInterpreter
|
|
from optparse import make_option
|
|
-from exabgp.vendoring import pyparsing
|
|
+import pyparsing
|
|
|
|
diff --git a/lib/exabgp/vendoring/six.py b/lib/exabgp/vendoring/six.py
|
|
index 20e866a..218e9d6 100644
|
|
--- a/lib/exabgp/vendoring/six.py
|
|
+++ b/lib/exabgp/vendoring/six.py
|
|
@@ -162,3 +162,3 @@ class _SixMetaPathImporter(object):
|
|
"""
|
|
- A meta path importer to from exabgp.vendoring import six.moves and its submodules.
|
|
+ A meta path importer to import six.moves and its submodules.
|
|
|
|
diff --git a/qa/tests/cache_test.py b/qa/tests/cache_test.py
|
|
index 3a8dc94..721f85c 100755
|
|
--- a/qa/tests/cache_test.py
|
|
+++ b/qa/tests/cache_test.py
|
|
@@ -14,5 +14,5 @@ import time
|
|
from exabgp.util.cache import Cache
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
|
|
-from exabgp.vendoring.six.moves import xrange
|
|
+from six.moves import xrange
|
|
|
|
diff --git a/qa/tests/connection.py b/qa/tests/connection.py
|
|
index 1586daf..8092ea5 100755
|
|
--- a/qa/tests/connection.py
|
|
+++ b/qa/tests/connection.py
|
|
@@ -17,3 +17,3 @@ import unittest
|
|
from exabgp.util.od import od
|
|
-from exabgp.vendoring import six
|
|
+import six
|
|
|
|
diff --git a/qa/tests/protocol.py b/qa/tests/protocol.py
|
|
index 67e8e21..31c8a03 100755
|
|
--- a/qa/tests/protocol.py
|
|
+++ b/qa/tests/protocol.py
|
|
@@ -25,4 +25,4 @@ from exabgp.bgp.neighbor import Neighbor
|
|
|
|
-from exabgp.vendoring import six
|
|
-from exabgp.vendoring.six.moves import StringIO
|
|
+import six
|
|
+from six.moves import StringIO
|
|
|