Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RFE: please remove using six module #304

Closed
kloczek opened this issue Jul 9, 2022 · 4 comments
Closed

RFE: please remove using six module #304

kloczek opened this issue Jul 9, 2022 · 4 comments

Comments

@kloczek
Copy link

kloczek commented Jul 9, 2022

I think that ~2.5 yeaes after python 2.x has been EOSed it is time to start removing use six module.

[tkloczko@devel-g2v python-ecdsa-python-ecdsa-0.18.0]$ grep -rw six
.github/workflows/ci.yml:          - name: py2.7 with old six
.github/workflows/ci.yml:          wget https://files.pythonhosted.org/packages/65/26/32b8464df2a97e6dd1b656ed26b2c194606c16fe163c695a992b36c11cdf/six-1.13.0-py2.py3-none-any.whl
.github/workflows/ci.yml:          pip install pycparser-2.18.tar.gz importlib-1.0.4.zip Counter-1.0.0.tar.gz tox-2.9.1-py2.py3-none-any.whl inflect-0.3.0-py2.py3-none-any.whl pyOpenSSL-17.5.0-py2.py3-none-any.whl cffi-1.13.2.tar.gz idna-2.7-py2.py3-none-any.whl unittest2-1.1.0-py2.py3-none-any.whl hypothesis-2.0.0.tar.gz coverage-4.5.4.tar.gz mock-2.0.0-py2.py3-none-any.whl virtualenv-15.2.0-py2.py3-none-any.whl py-1.4.34-py2.py3-none-any.whl six-1.13.0-py2.py3-none-any.whl pluggy-0.5.2-py2.py3-none-any.whl cryptography-2.1.4.tar.gz docopt-0.6.2.tar.gz requests-2.19.1-py2.py3-none-any.whl traceback2-1.4.0-py2.py3-none-any.whl funcsigs-1.0.2-py2.py3-none-any.whl pbr-5.5.1-py2.py3-none-any.whl asn1crypto-1.4.0-py2.py3-none-any.whl enum34-1.1.10-py2-none-any.whl ipaddress-1.0.23-py2.py3-none-any.whl chardet-3.0.4-py2.py3-none-any.whl urllib3-1.23-py2.py3-none-any.whl certifi-2020.12.5-py2.py3-none-any.whl linecache2-1.0.0-py2.py3-none-any.whl ordereddict-1.1.tar.gz pytest-3.2.5-py2.py3-none-any.whl git+https://github.com/tomato42/coveralls-python.git@add-py26#egg=coveralls
.travis.yml:          - pip install six
NEWS:expected minimum version of `six` module (1.9.0) is now specified explicitly
NEWS:Remove the obsolete `six.py` file from wheel
NEWS:Stopped bundling `six`
README.md:This library uses only Python and the 'six' package. It is compatible with
docs/requirements.txt:six
docs/source/quickstart.rst:The library has just one mandatory dependency: ``six``.
docs/source/quickstart.rst:install ``six`` too.
setup.py:    install_requires=["six>=1.9.0"],
speed.py:import six
speed.py:    S1 = "import six; from ecdsa import SigningKey, %s" % curve
speed.py:    S3 = "msg = six.b('msg')"
speed.py:    sig = ecdsa.SigningKey.generate(c).sign(six.b("msg"))
src/ecdsa/__init__.pye:# while we don't use six in this file, we did bundle it for a long time, so
src/ecdsa/__init__.pye:import six
src/ecdsa/__init__.pye:    "six",
src/ecdsa/__init__.pye:    six.b(""),
src/ecdsa/__init__.py:# while we don't use six in this file, we did bundle it for a long time, so
src/ecdsa/__init__.py:import six
src/ecdsa/__init__.py:    "six",
src/ecdsa/__init__.py:    six.b(""),
src/ecdsa/_compat.pye:from six import integer_types
src/ecdsa/_compat.py:from six import integer_types
src/ecdsa/curves.pye:from six import PY2
src/ecdsa/curves.py:from six import PY2
src/ecdsa/der.pye:from six import int2byte, b, text_type
src/ecdsa/der.py:from six import int2byte, b, text_type
src/ecdsa/ecdsa.pye:from six import int2byte, b
src/ecdsa/ecdsa.py:from six import int2byte, b
src/ecdsa/ellipticcurve.pye:from six import python_2_unicode_compatible
src/ecdsa/ellipticcurve.py:from six import python_2_unicode_compatible
src/ecdsa/keys.pye:from six import PY2, b
src/ecdsa/keys.py:from six import PY2, b
src/ecdsa/numbertheory.pye:from six import integer_types, PY2
src/ecdsa/numbertheory.pye:from six.moves import reduce
src/ecdsa/numbertheory.py:from six import integer_types, PY2
src/ecdsa/numbertheory.py:from six.moves import reduce
src/ecdsa/test_der.pye:from six import b
src/ecdsa/test_der.py:from six import b
src/ecdsa/test_pyecdsa.pye:from six import b, print_, binary_type
src/ecdsa/test_pyecdsa.py:from six import b, print_, binary_type
src/ecdsa/util.pye:from six import PY2, int2byte, b, next
src/ecdsa/util.py:from six import PY2, int2byte, b, next
src/ecdsa.egg-info/PKG-INFO:This library uses only Python and the 'six' package. It is compatible with
src/ecdsa.egg-info/requires.txt:six>=1.9.0
tox.ini:# six==1.9.0 comes from setup.py install_requires
tox.ini:     py27_old_six: six==1.9.0
tox.ini:     six
@tomato42
Copy link
Member

tomato42 commented Jul 9, 2022

As I mentioned in #300, six is here because we support Python 2.6.
Just because upstream stopped the support of a particular version doesn't mean it's not supported.

@tomato42 tomato42 closed this as not planned Won't fix, can't repro, duplicate, stale Jul 9, 2022
@kloczek

This comment was marked as abuse.

@tomato42
Copy link
Member

tomato42 commented Jul 9, 2022

Since when maintaining two projects is easier than maintaining one project?

I'm maintaining and extending this project essentially alone. If I have no problem maintaining compatibility with old versions, why you're telling me to drop support for them?

Maybe I have some good reasons for keeping python2 compatibility in the first place? For example because after almost 10 years since the instrumental project was abandoned, there is still no support for measuring conditional coverage with coveragepy?

@kloczek

This comment was marked as abuse.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants