I’m highly motivated, as a Pythonista who loves Python 3 and all of the new features, syntax, and improvements, to help the rest of the community upgrade to Python 3 and enjoy all of its benefits.
To that end, I would like to end the dependence of Python 2 in the general community. Since I feel I am a fairly average power user of Gentoo, I figured I would start with the packages on my own system, and this is what I found:
dev-lang/python-2.7.10 pulled in by:
app-emulation/qemu-2.3.0-r2
app-emulation/virtualbox-4.3.28
app-misc/ca-certificates-20141019.3.19
app-text/gnome-doc-utils-0.20.10-r1
dev-lang/spidermonkey-1.8.5-r4
dev-lang/spidermonkey-17.0.0-r3
dev-lang/spidermonkey-24.2.0-r2
dev-lang/yasm-1.3.0
dev-libs/glib-2.44.1
dev-libs/gobject-introspection-1.44.0
dev-libs/libevdev-1.4
dev-libs/libgamin-0.1.10-r5
dev-libs/libnatspec-0.2.6-r1
dev-libs/libxslt-1.1.28-r4
dev-libs/protobuf-2.6.1-r3
dev-libs/zziplib-0.13.62
dev-python/google-apputils-0.4.0
dev-python/ipaddress-1.0.7
dev-python/librsvg-python-2.32.0-r1
dev-python/m2crypto-0.22.3-r3
dev-python/ndg-httpsclient-0.3.2
dev-python/pygobject-2.28.6-r55
dev-python/pygoocanvas-0.14.1-r1
dev-python/python-gflags-2.0
dev-python/twisted-core-15.2.1
dev-python/wxpython-3.0.2.0
dev-util/boost-build-1.56.0
dev-util/scons-2.3.4
dev-vcs/git-2.4.3
dev-vcs/mercurial-3.4.1
games-emulation/m64py-0.2.1-r1
gnome-base/gconf-3.2.6-r3
gnome-base/libglade-2.6.4-r2
kde-apps/kajongg-4.14.3
kde-base/krosspython-4.14.3
kde-base/plasma-workspace-4.11.20
media-gfx/gimp-2.8.14
media-libs/alsa-lib-1.0.29
media-libs/avidemux-plugins-2.6.8
media-libs/libcaca-0.99_beta19
media-libs/libgpod-0.8.3
media-video/openshot-1.4.3
net-analyzer/nmap-6.49_beta1
net-dns/avahi-0.6.31-r7
net-libs/farstream-0.1.2-r2
net-libs/gupnp-0.20.14
net-libs/libproxy-0.4.11-r2
net-print/cups-2.0.2-r2
net-wireless/crda-3.18
sys-apps/usbutils-008-r1
sys-devel/llvm-3.5.2
sys-process/audit-2.4.1-r1
sys-process/htop-1.0.3
www-client/firefox-38.0.1
x11-libs/xpyb-1.3.1-r3
x11-plugins/purple-plugin_pack-2.7.0-r1
Not terrible for a world that has 1,277 packages. Now, we can wipe some of those off:
- dev-lang/spidermonkey, www-client/firefox
- The Mozilla build system…
- dev-libs/protobuf, dev-python/google-apputils, dev-python/ipaddress, dev-python/python-gflags-2.0
- I can’t make Google care about Python 3. I’m just a lone fox.
- dev-python/ndg-httpsclient
- This is apparently only pulled in because I have 2.7 compatibility enabled on other packages, and it also appears abandoned upstream.
- dev-python/m2crypto
- All but deprecated upstream. dev-python/cryptography pretty cleanly replaces it. I simply need to change dependencies to use that instead.
- dev-python/twisted-*
- The Twisted project is large, and already has a Python 3 objective. No need to worry about that until later, since they have others working on it.
- dev-python/wxpython
- They, too, are working on an official Python 3 port already. I’ve even used it; though it is ridiculously unstable, there has been a lot of progress made.
- dev-util/scons
- As of August 2014, they are officially porting to Python 3. Same as Twisted, then.
- dev-vcs/mercurial
- This is a very large codebase with a lot of issues related to 2->3. Not something one fox can help with either, I’m afraid.
- any gnome package
- Not really interested in contributing to the ever-dying and unmaintained GTK 2, and definitely not interested in contributing to the abomination of GTK 3.
- KDE 4
- As KDE 5 nears stability, this will become less and less maintained, so it probably isn’t worth it either.
- net-print/cups, sys-devel/llvm
- I doubt there is any hope of getting Python 3 code into Apple projects, since they seem to enjoy clinging to 1990-era development tech 😦
After doing some sorting to show the order I’d like to work on these, this leaves us with:
app-misc/ca-certificates-20141019.3.19
app-emulation/virtualbox-4.3.28
dev-libs/libevdev-1.4
media-libs/libcaca-0.99_beta19
media-libs/libgpod-0.8.3
media-libs/alsa-lib-1.0.29
dev-libs/libxslt-1.1.28-r4
net-wireless/crda-3.18
dev-vcs/git-2.4.3
sys-apps/usbutils-008-r1
dev-lang/yasm-1.3.0
x11-plugins/purple-plugin_pack-2.7.0-r1
sys-process/audit-2.4.1-r1
net-dns/avahi-0.6.31-r7
sys-process/htop-1.0.3
games-emulation/m64py-0.2.1-r1
net-libs/libproxy-0.4.11-r2
dev-libs/zziplib-0.13.62
dev-libs/libnatspec-0.2.6-r1
app-emulation/qemu-2.3.0-r2
net-analyzer/nmap-6.49_beta1
dev-util/boost-build-1.56.0
media-video/openshot-1.4.3
media-libs/avidemux-plugins-2.6.8
x11-libs/xpyb-1.3.1-r3
I would really like to do at least one per week, but there’s no guarantees of course. Wish me luck!


