geodynamics/spatialdata

Python-3 support

Closed this issue · 3 comments

Python2 EOL is fast approaching and the present codebase is python2-only. futurize is a useful tool for converting a python2 codebase to Python3.

I have some experience using futurize, but I can't currently run the test suite. My system has the default /usr/bin/python as python3. While the autoconf script finds python2 correctly, it seems to be running pytest rather than pytest2, thus tests fail to import the python2 module. I'm not sure what is intended here and haven't dug in to debug yet.

Yes, we discussed this at the meeting and put it as a high development priority. I directed everyone to the PETSc PR with the Python-3 upgrade. Our only real stumbling block here is Pyre.

I'd be happy to help with futurize, but these packages aren't familiar to me and I'd need a working test suite. (I suppose it would probably work if I ran inside an older container.)

Needs to be coordinated with updating Python 3 for Pythia, nemesis, and PyLith. See geodynamics/pylith#31, geodynamics/nemesis#2, geodynamics/pythia#4.