Skip to content

Instantly share code, notes, and snippets.

@workingjubilee
Last active June 13, 2019 05:31
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save workingjubilee/e786c037e9d72cf1e658c6c8c33c3e97 to your computer and use it in GitHub Desktop.
Save workingjubilee/e786c037e9d72cf1e658c6c8c33c3e97 to your computer and use it in GitHub Desktop.
Python2 projects that need Python3 updates:

Python2 is about to die...

But a lot of modern Python code still depends on it. This is a problem because as the years drag on, we will begin to forget the differences. The data for conversions can become lost. It is important to update now while we still remember. While it'd be nice to just tell everyone to update their modules, transitions are not always simple (I should know). So the only way to resolve Python2 dependencies is to send PRs to projects. Then maintainers will become free to shed their Python2 support, or at least Python3 code can be completely forked if legacy support becomes a concern, and Python3 code can depend on Python3 code either way, which can be kept up to date and maintained by new developers who have never read a line of Python2 before.

This list focuses on Python modules that continue to support or are directly enmeshed with the Python3 ecosystem in some way. Excellent examples are RPython and Twisted: RPython uses 2.7 Python, but is critical to PyPy, which supports 3.x Pythons. Twisted supports 3.x Pythons, but only with a restricted set of features. Maintainers continue to support both ends because tossing their old code would simply be tantamount to ending the project entirely.

Please do not yell at maintainers to simply drop support for 2.7. Yes, it might force people to migrate, but this list is written with the belief that maintainers should have more options, not less.

Usually, the work is harder than simply running 2to3 on things. However, running 2to3 is a good start. Try here: http://python3porting.com/2to3.html

Big Libraries

Not a small job. Suggest forking and implementing in pieces.

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