#2708: Run GRASS with Python3 --------------------------+------------------------- Reporter: zarch | Owner: grass-dev@… Type: defect | Status: new Priority: normal | Milestone: 7.0.1 Component: Default | Version: unspecified Resolution: | Keywords: CPU: Unspecified | Platform: Unspecified --------------------------+-------------------------
Comment (by zarch): Replying to [comment:3 glynn]: > {{{ > args.append(opt.encode('ascii') + b'=' + _make_val(val) > }}} > > To be honest, converting grass.script to Python 3 isn't going to be much fun, > as a scripting library fundamentally revolves around dealing with byte > strings (command-line arguments, environment variables, stdin/stdout), > while Python 3 tries to pretend that byte strings are some kind of low- level > implementation detail in a world where everything is Unicode. ok, I've followed your approach, now the make_command it is working only with bytes and return a list of bytes. Do you think that I could commit these changes in trunk? Other things that should be change before? I've also started fixing several GRASS scripts to be parsed also with python3. However I don't know how to fix the ctypes binding of GRASS, at the moment I get: {{{ In [1]: from grass.lib import gis --------------------------------------------------------------------------- ImportError Traceback (most recent call last) <ipython-input-1-9c20dc5e4f67> in <module>() ----> 1 from grass.lib import gis /home/pietro/docdat/src/gis/grass71/dist.x86_64-unknown-linux- gnu/etc/python/grass/lib/gis.py in <module>() 13 _libdirs = [] 14 ---> 15 from ctypes_preamble import * 16 from ctypes_preamble import _variadic_function 17 from ctypes_loader import * ImportError: No module named 'ctypes_preamble' }}} the problem here is that the gis.py file should start with: {{{ from __future__ import absolute_import ... from .ctypes_preamble import * from .ctypes_preamble import _variadic_function from .ctypes_loader import * }}} But these files are generated with make and I don't understand where should I change the code. Any hint? -- Ticket URL: <https://trac.osgeo.org/grass/ticket/2708#comment:4> GRASS GIS <http://grass.osgeo.org> _______________________________________________ grass-dev mailing list grass-dev@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/grass-dev