diff options
-rw-r--r-- | README.rst | 1 | ||||
-rw-r--r-- | docs/ext/docstrings.py | 3 | ||||
-rw-r--r-- | gitlab/__init__.py | 5 | ||||
-rw-r--r-- | gitlab/config.py | 3 | ||||
-rw-r--r-- | gitlab/tests/test_cli.py | 7 | ||||
-rw-r--r-- | gitlab/tests/test_config.py | 22 | ||||
-rw-r--r-- | gitlab/utils.py | 4 | ||||
-rw-r--r-- | gitlab/v4/cli.py | 6 | ||||
-rw-r--r-- | requirements.txt | 1 | ||||
-rw-r--r-- | setup.py | 2 | ||||
-rwxr-xr-x | tools/generate_token.py | 2 |
11 files changed, 24 insertions, 32 deletions
@@ -32,7 +32,6 @@ Requirements python-gitlab depends on: * `python-requests <http://docs.python-requests.org/en/latest/>`_ -* `six <https://six.readthedocs.io/>`_ Install with pip ---------------- diff --git a/docs/ext/docstrings.py b/docs/ext/docstrings.py index e42bb60..754da27 100644 --- a/docs/ext/docstrings.py +++ b/docs/ext/docstrings.py @@ -3,7 +3,6 @@ import itertools import os import jinja2 -import six import sphinx import sphinx.ext.napoleon as napoleon from sphinx.ext.napoleon.docstring import GoogleDocstring @@ -25,7 +24,7 @@ def setup(app): conf = napoleon.Config._config_values - for name, (default, rebuild) in six.iteritems(conf): + for name, (default, rebuild) in conf.items(): app.add_config_value(name, default, rebuild) return {"version": sphinx.__display_version__, "parallel_read_safe": True} diff --git a/gitlab/__init__.py b/gitlab/__init__.py index be9e01f..2824131 100644 --- a/gitlab/__init__.py +++ b/gitlab/__init__.py @@ -23,7 +23,6 @@ import time import warnings import requests -import six import gitlab.config from gitlab.const import * # noqa @@ -47,8 +46,8 @@ REDIRECT_MSG = ( def _sanitize(value): if isinstance(value, dict): - return dict((k, _sanitize(v)) for k, v in six.iteritems(value)) - if isinstance(value, six.string_types): + return dict((k, _sanitize(v)) for k, v in value.items()) + if isinstance(value, str): return value.replace("/", "%2F") return value diff --git a/gitlab/config.py b/gitlab/config.py index 4b4d6fd..b2c0dbf 100644 --- a/gitlab/config.py +++ b/gitlab/config.py @@ -16,8 +16,7 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. import os - -from six.moves import configparser +import configparser _DEFAULT_FILES = ["/etc/python-gitlab.cfg", os.path.expanduser("~/.python-gitlab.cfg")] diff --git a/gitlab/tests/test_cli.py b/gitlab/tests/test_cli.py index 04a1961..4820103 100644 --- a/gitlab/tests/test_cli.py +++ b/gitlab/tests/test_cli.py @@ -20,6 +20,7 @@ import argparse import os import tempfile import unittest +import io try: from contextlib import redirect_stderr # noqa: H302 @@ -34,8 +35,6 @@ except ImportError: sys.stderr = old_target -import six - from gitlab import cli import gitlab.v4.cli @@ -56,7 +55,7 @@ class TestCLI(unittest.TestCase): self.assertEqual("class", cli.cls_to_what(Class)) def test_die(self): - fl = six.StringIO() + fl = io.StringIO() with redirect_stderr(fl): with self.assertRaises(SystemExit) as test: cli.die("foobar") @@ -83,7 +82,7 @@ class TestCLI(unittest.TestCase): self.assertEqual(ret, "content") os.unlink(temp_path) - fl = six.StringIO() + fl = io.StringIO() with redirect_stderr(fl): with self.assertRaises(SystemExit) as exc: cli._parse_value("@/thisfileprobablydoesntexist") diff --git a/gitlab/tests/test_config.py b/gitlab/tests/test_config.py index a43f977..65bd300 100644 --- a/gitlab/tests/test_config.py +++ b/gitlab/tests/test_config.py @@ -18,7 +18,7 @@ import unittest import mock -import six +import io from gitlab import config @@ -80,16 +80,16 @@ class TestConfigParser(unittest.TestCase): config.GitlabConfigParser("test") @mock.patch("os.path.exists") - @mock.patch("six.moves.builtins.open") + @mock.patch("builtins.open") def test_invalid_id(self, m_open, path_exists): - fd = six.StringIO(no_default_config) + fd = io.StringIO(no_default_config) fd.close = mock.Mock(return_value=None) m_open.return_value = fd path_exists.return_value = True config.GitlabConfigParser("there") self.assertRaises(config.GitlabIDError, config.GitlabConfigParser) - fd = six.StringIO(valid_config) + fd = io.StringIO(valid_config) fd.close = mock.Mock(return_value=None) m_open.return_value = fd self.assertRaises( @@ -97,9 +97,9 @@ class TestConfigParser(unittest.TestCase): ) @mock.patch("os.path.exists") - @mock.patch("six.moves.builtins.open") + @mock.patch("builtins.open") def test_invalid_data(self, m_open, path_exists): - fd = six.StringIO(missing_attr_config) + fd = io.StringIO(missing_attr_config) fd.close = mock.Mock(return_value=None, side_effect=lambda: fd.seek(0)) m_open.return_value = fd path_exists.return_value = True @@ -117,9 +117,9 @@ class TestConfigParser(unittest.TestCase): self.assertEqual("Unsupported per_page number: 200", emgr.exception.args[0]) @mock.patch("os.path.exists") - @mock.patch("six.moves.builtins.open") + @mock.patch("builtins.open") def test_valid_data(self, m_open, path_exists): - fd = six.StringIO(valid_config) + fd = io.StringIO(valid_config) fd.close = mock.Mock(return_value=None) m_open.return_value = fd path_exists.return_value = True @@ -133,7 +133,7 @@ class TestConfigParser(unittest.TestCase): self.assertEqual(True, cp.ssl_verify) self.assertIsNone(cp.per_page) - fd = six.StringIO(valid_config) + fd = io.StringIO(valid_config) fd.close = mock.Mock(return_value=None) m_open.return_value = fd cp = config.GitlabConfigParser(gitlab_id="two") @@ -144,7 +144,7 @@ class TestConfigParser(unittest.TestCase): self.assertEqual(10, cp.timeout) self.assertEqual(False, cp.ssl_verify) - fd = six.StringIO(valid_config) + fd = io.StringIO(valid_config) fd.close = mock.Mock(return_value=None) m_open.return_value = fd cp = config.GitlabConfigParser(gitlab_id="three") @@ -156,7 +156,7 @@ class TestConfigParser(unittest.TestCase): self.assertEqual("/path/to/CA/bundle.crt", cp.ssl_verify) self.assertEqual(50, cp.per_page) - fd = six.StringIO(valid_config) + fd = io.StringIO(valid_config) fd.close = mock.Mock(return_value=None) m_open.return_value = fd cp = config.GitlabConfigParser(gitlab_id="four") diff --git a/gitlab/utils.py b/gitlab/utils.py index 94528e1..0992ed7 100644 --- a/gitlab/utils.py +++ b/gitlab/utils.py @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Lesser General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. -import six +from urllib.parse import urlparse class _StdoutStream(object): @@ -52,6 +52,6 @@ def clean_str_id(id): def sanitized_url(url): - parsed = six.moves.urllib.parse.urlparse(url) + parsed = urlparse(url) new_path = parsed.path.replace(".", "%2E") return parsed._replace(path=new_path).geturl() diff --git a/gitlab/v4/cli.py b/gitlab/v4/cli.py index 6fc41ac..a875261 100644 --- a/gitlab/v4/cli.py +++ b/gitlab/v4/cli.py @@ -21,8 +21,6 @@ import inspect import operator import sys -import six - import gitlab import gitlab.base from gitlab import cli @@ -321,7 +319,7 @@ def extend_parser(parser): def get_dict(obj, fields): - if isinstance(obj, six.string_types): + if isinstance(obj, str): return obj if fields: @@ -441,7 +439,7 @@ def run(gl, what, action, args, verbose, output, fields): printer.display_list(data, fields, verbose=verbose) elif isinstance(data, gitlab.base.RESTObject): printer.display(get_dict(data, fields), verbose=verbose, obj=data) - elif isinstance(data, six.string_types): + elif isinstance(data, str): print(data) elif hasattr(data, "decode"): print(data.decode()) diff --git a/requirements.txt b/requirements.txt index ae7524b..d5c2bc9 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,2 +1 @@ requests>=2.22.0 -six @@ -25,7 +25,7 @@ setup( license="LGPLv3", url="https://github.com/python-gitlab/python-gitlab", packages=find_packages(), - install_requires=["requests>=2.22.0", "six"], + install_requires=["requests>=2.22.0"], entry_points={"console_scripts": ["gitlab = gitlab.cli:main"]}, classifiers=[ "Development Status :: 5 - Production/Stable", diff --git a/tools/generate_token.py b/tools/generate_token.py index 10ca891..89909bd 100755 --- a/tools/generate_token.py +++ b/tools/generate_token.py @@ -1,6 +1,6 @@ #!/usr/bin/env python -from six.moves.urllib.parse import urljoin +from urllib.parse import urljoin from requests_html import HTMLSession ENDPOINT = "http://localhost:8080" |