#4018: GRASS ctypes fail with Python 3.7.6+ ---------------------------+--------------------------------- Reporter: mmetz | Owner: grass-dev@… Type: defect | Status: new Priority: critical | Milestone: 7.8.3 Component: Python ctypes | Version: git-releasebranch78 Keywords: ctypes | CPU: All Platform: All | ---------------------------+--------------------------------- GRASS ctypes generated with the GRASS internal [https://github.com/OSGeo/grass/tree/master/lib/python/ctypes ctypes generator] are no longer accepted by Python 3.7.6+, see also [https://github.com/davidjamesca/ctypesgen/issues/77#issuecomment-569820931 ctypesgen issue 77]. Tested with Debian testing (Python 3.7.6) and Alpine edge (Python 3.8.1). Both distro versions are development versions, but they use released Python versions.
The errors are that a union is no longer accepted as a function argument, affecting e.g. the [https://github.com/OSGeo/grass/blob/master/lib/python/ctypes/preamble.py#L289 class string], and that strings consisting of of any number of characters terminated by the '\0' character are sometimes truncated to the first character. Unfortunately, the main maintainer of ctypesgen does not test [https://github.com/davidjamesca/ctypesgen/issues/77#issuecomment-570145399 python versions > 3.6]. We need to fix the GRASS-internal ctypes generator to work with Python < 3.7.6 as well as Python >= 3.7.6. -- Ticket URL: <https://trac.osgeo.org/grass/ticket/4018> GRASS GIS <https://grass.osgeo.org>
_______________________________________________ grass-dev mailing list grass-dev@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-dev