[GRASS-user] GRASS and Python3
Markus Neteler
neteler at osgeo.org
Mon Dec 28 03:58:29 PST 2020
On Mon, Dec 28, 2020 at 3:04 AM Rich Shepard <rshepard at appl-ecosys.com> wrote:
>
> Since GRASS now will use Python3 (and Python2 reaches EOL this coming
> Thursday) I'm trying to clean out all Python2 modules in favor of their
> Python3 versions.
Yes (and some distros already removed Python 2 entirely)
> A couple of days ago I removed the 'six' python module because
> python3-six-1.13.0-x86_64-1_SBo is installed here. But, grass7.9.dev isn't
> happy:
>
> $ grass79 -text
> Traceback (most recent call last):
> File "/usr/local/bin/grass79", line 52, in <module>
> import six
> ModuleNotFoundError: No module named 'six'
On my Fedora 33 box I have removed all python2-* packages [1]. The GUI
comes up as expected, using python3-six.
Another test:
python3
Python 3.9.0 (default, Oct 6 2020, 00:00:00)
[GCC 10.2.1 20200826 (Red Hat 10.2.1-3)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import six
>>>
... all fine.
> Guess I need to re-install python2's six.
I don't think so.
The question is what your Slackware (what you are using, AFAIK) six
packages actually contains.
Here the content of the Fedora python3-six package:
rpm -qil python3-six
[...]
Summary : Python 2 and 3 compatibility utilities
Description : python-six provides simple utilities for wrapping over
differences between Python 2 and Python 3. Python 3 version.
/usr/lib/python3.9/site-packages/__pycache__/six.cpython-39.opt-1.pyc
/usr/lib/python3.9/site-packages/__pycache__/six.cpython-39.pyc
/usr/lib/python3.9/site-packages/six-1.15.0.dist-info
/usr/lib/python3.9/site-packages/six-1.15.0.dist-info/INSTALLER
[...]
/usr/lib/python3.9/site-packages/six.py
[...]
The package which you need should show a similar structure.
Markus
[1] Annoyingly, GIMP still wants Python 2 (exception temporarily
granted in Fedora) but that's being worked on and off-topic here.
More information about the grass-user
mailing list