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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Vote: Abandon py2? #1807

Open
asciimoo opened this issue Jan 13, 2020 · 5 comments
Open

Vote: Abandon py2? #1807

asciimoo opened this issue Jan 13, 2020 · 5 comments
Labels

Comments

@asciimoo
Copy link
Owner

@asciimoo asciimoo commented Jan 13, 2020

Py2 is no longer supported officially. Do you want to discontinue the support of py2 compatibility in searx?
Please vote with 馃憤 to abandon and 馃憥 to keep it

@return42 return42 added the python 3 label Jan 13, 2020
@rachmadaniHaryono

This comment has been minimized.

Copy link
Contributor

@rachmadaniHaryono rachmadaniHaryono commented Jan 13, 2020

which version does searx support?

setup.py's classifier doesn't mention this

travis.yml have 2.7, 3.5, & 3.6

@return42

This comment has been minimized.

Copy link
Collaborator

@return42 return42 commented Jan 16, 2020

which version does searx support?

ATM, more or less all py2 & py3 versions. 99% of all compatibility issues are enconding problems since the string type has changed from byte-string in Py2 to unicode-string in Py3.

Py3 versions started with 3.5 are downward compatible and only in very rare circumstances you will might see any version compatibility problems (I forecast we will see none).

I recommend to drop Py2 support and support all Python versions starting with 3.5.

See Status of Python branches

setup.py's classifier doesn't mention this

good point, if version support is clarified we have to add python_requires argument to setup call.

@MarcAbonce

This comment has been minimized.

Copy link
Contributor

@MarcAbonce MarcAbonce commented Jan 18, 2020

I'm pretty sure there are some instances that still run on py2, so it would be nice to release a final py2 supporting version with a very noticeable deprecation warning (both in the logs and in the release notes) so there's no surprises when we actually deprecate it.

@rachmadaniHaryono

This comment has been minimized.

Copy link
Contributor

@rachmadaniHaryono rachmadaniHaryono commented Jan 21, 2020

good point, if version support is clarified we have to add python_requires argument to setup call.

because nobody mentioned it yet, from that link given there is warning

Support for this feature is relatively recent. Your project鈥檚 source distributions and wheels (see Packaging your project) must be built using at least version 24.2.0 of setuptools in order for the python_requires argument to be recognized and the appropriate metadata generated.

In addition, only versions 9.0.0 and higher of pip recognize the python_requires metadata. Users with earlier versions of pip will be able to download & install projects on any Python version regardless of the projects鈥 python_requires values.

checking setuptools can be done before running setup. but checking if setup file run with pip is harder

other alternative to this method is just check python version before running setup and print warning (or quit) if python version don't meet minimum requirement

@return42

This comment has been minimized.

Copy link
Collaborator

@return42 return42 commented Jan 21, 2020

checking setuptools can be done before running setup. but checking if setup file run with pip is harder

In practice i guess this is nothing we need to handle. pip encourages its users to always use a recent version of pip (and setuptools).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants
You can鈥檛 perform that action at this time.