Hi,
Python 3.11 was released almost a year ago. Could someone from Opentrons provide some insight into when this version will be supported by Opentrons?
The main issue seems to be with the aionotify dependency, for which I created a 3.11 compatible fork back in January: GitHub - rickwierenga/aionotify: Simple, asyncio-based inotify library for Python .
opened 10:49PM - 14 Jan 23 UTC
bug
### Overview
`opentrons_simulate` on python3.11 does not work due to coroutines… being updated.
### Steps to reproduce
- Install python3.11
- Install opentrons (`pip install opentrons`)
- Run `opentrons_simulate`
### Current behavior
[koeng@nuci3 pcr_bottleneck]$ opentrons_simulate
Traceback (most recent call last):
File "/home/koeng/.local/bin/opentrons_simulate", line 5, in <module>
from opentrons.simulate import main
File "/home/koeng/.local/lib/python3.11/site-packages/opentrons/__init__.py", line 11, in <module>
from opentrons.hardware_control import (
File "/home/koeng/.local/lib/python3.11/site-packages/opentrons/hardware_control/__init__.py", line 14, in <module>
from .api import API
File "/home/koeng/.local/lib/python3.11/site-packages/opentrons/hardware_control/api.py", line 33, in <module>
from .backends import Controller, Simulator
File "/home/koeng/.local/lib/python3.11/site-packages/opentrons/hardware_control/backends/__init__.py", line 1, in <module>
from .controller import Controller
File "/home/koeng/.local/lib/python3.11/site-packages/opentrons/hardware_control/backends/controller.py", line 20, in <module>
import aionotify # type: ignore[import]
^^^^^^^^^^^^^^^^
File "/home/koeng/.local/lib/python3.11/site-packages/aionotify/__init__.py", line 5, in <module>
from .base import Watcher
File "/home/koeng/.local/lib/python3.11/site-packages/aionotify/base.py", line 10, in <module>
from . import aioutils
File "/home/koeng/.local/lib/python3.11/site-packages/aionotify/aioutils.py", line 122, in <module>
@asyncio.coroutine
^^^^^^^^^^^^^^^^^
AttributeError: module 'asyncio' has no attribute 'coroutine'. Did you mean: 'coroutines'?
### Expected behavior
Dependencies should be updated.
### Operating system
Linux
### System and robot setup or anything else?
_No response_
5 Likes
@rickwierenga
Thanks for bringing this up and providing additional details on the ticket! We are aware of the bug, and it is ticketed in our internal system. I cannot commit to an exact date on when this will be resolved, but I will make sure the ticket is brought to the attention of our engineering and product teams.
1 Like
Have there been any updates on this?
2 Likes
@rickwierenga We do not have an exact timeline, but we are actively working on it. The implementation is taking a bit longer than expected. I appreciate your patience and understand this is a blocking issue for many people.
The PR to make aionotify 3.11-compatible was just merged: Upgrade python by rbarrois · Pull Request #23 · rbarrois/aionotify · GitHub
What’s the next thing I can do to help make OT 3.11 compatible?
4 Likes