-
Notifications
You must be signed in to change notification settings - Fork 180
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
bug: Python library conflict: python-pandas-opentrons #17715
Comments
Hi @danolson1 Here's the breakdown and the solution: Analysis of the Problem The Solution You have two primary options:
Best Practice: Development Environments The ideal approach for protocol development is to maintain a more modern development environment (with updated pandas) on your computer. Focus on writing protocols that are compatible with a range of Opentrons and pandas versions by avoiding reliance on very specific version features. This makes your protocols more robust and maintainable. Use virtual environments (conda or venv) to isolate your projects and manage dependencies effectively. |
Initially I tried your option 1, but had errors reading Excel files due to slightly different versions of Pandas. The protocol would work when I simulated it on my environment, but then failed when I ran it on the robot. Then I tried your option 2, but it would not install due to the dependency conflict you identified. How does version 8.3.0 of the opentrons software use both Python 3.10 and Pandas 1.0.5? Yes, I am using conda environments, but I would like at least one of those environments to match the robot environment exactly to ensure that the protocol I develop will work on the robot. I occasionally do troubleshooting by debugging remotely on the robot itself, but this is only possible when the robot is not in use, since I don't want to disrupt a running protocol. |
Overview
I just upgraded my robot to version 8.3.0 and ran into a problem with a python protocol that reads an excel file. To troubleshoot this issue, I tried to re-create my OT2 robot python environment on my computer. This does not seem to be possible.
My OT2 robot has the following libraries:
The python version is:
Steps to reproduce
I am trying to recreate this environment on my computer using the following yaml file:
This results in the following error message:
The key libraries that seem to be incompatible are:
python 3.10
pandas 1.0.5
opentrons 8.3.0
Current behavior
It seems like version 8.3.0 of the robot software (which requires python >= 3.10) is not compatible with pandas version 1.0.5 (which requires python <= 3.8).
Expected behavior
The OT2 robot has a python environment that can be re-created on another computer.
It would be convenient if there was an automated way to do this, maybe a yaml file for venv or conda.
Operating system
None
System and robot setup or anything else?
I'm using an OT2 robot. I just upgraded it to app version 8.3.0.
The text was updated successfully, but these errors were encountered: