lcm-proj / lcm

Lightweight Communications and Marshalling
GNU Lesser General Public License v2.1
949 stars 388 forks source link

Python 3.8 deprecation warnings: PY_SSIZE_T_CLEAN will be required for '#' formats #358

Closed 5yler closed 2 years ago

5yler commented 3 years ago

Example:

Python 3.8.5 (default, Jan 27 2021, 15:41:15) 
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import lcm
>>> from robot_msgs import double_t
>>> lcm = lcm.LCM("udpm://239.255.76.67:7667?ttl=2")
>>> double_msg = double_t()
>>> channel = "TEST"
>>> lcm.publish(channel, double_msg.encode())
<stdin>:1: DeprecationWarning: PY_SSIZE_T_CLEAN will be required for '#' formats

this runs fine on Python 3.6.9

EricCousineau-TRI commented 2 years ago

Seeing this on Python 3.8.10 (Ubuntu 20.04)

EricCousineau-TRI commented 2 years ago

Related fix: https://github.com/python-pillow/Pillow/pull/3749

Changelog for Python 3.8: https://docs.python.org/3/whatsnew/3.8.html#changes-in-the-c-api

EricCousineau-TRI commented 2 years ago

Submitted #363