MrYsLab / pymata4

A High Performance Python Client For Arduino Firmata
GNU Affero General Public License v3.0
76 stars 30 forks source link

Python 3.6 backward compatibility #40

Closed michaellee8 closed 2 years ago

michaellee8 commented 2 years ago

Hey there. Big thx for writing this library and the FirmataExpress scratch. It has saved me tens of hours trying to debugging some unmaintained implementation with broken StandardFirmata.

However, I am currently working on a Jetson Nano project and it seems that it only has Python 3.6 support. Trying to install Python 3.7 on it and all those dependencies is not really an option since it would mean a lot of things has to be built from source. So i tried to get away from Python 3.7 by changing https://github.com/MrYsLab/pymata4/blob/master/pymata4/pymata4.py#L125 to 6, and it looks working nicely on Python 3.6 since then. However, how would you comment the compatibility of this package, along with the pymata-express package you wrote? I really need it to work in Python 3.6. thx for help.

MrYsLab commented 2 years ago

Python 3.6 caused some issues for some operating systems. Python 3.7 solved those issues. Therefore, I will maintain the Python 3.7 requirement.

I understand that updating the Jetson Nano to Python 3.7 is very difficult, if not impossible. However, there is one potential solution. There is a tool that allows Python 3.6 to stay intact yet provides a separate environment to run Python 3.7 (or any other version of Python) applications. The tool is called pyenv. There is an excellent tutorial that shows how to use pyenv. Here is a link to that article.

I will close this issue, but you may still comment here, and I will see your comments. If necessary, the issue can be reopened.