Metadata-Version: 2.4
Name: pioreactor
Version: 25.8.12rc0
Summary: The core Python app of the Pioreactor. Control your bioreactor through Python.
Home-page: https://github.com/pioreactor/pioreactor
Author: Pioreactor
Author-email: hello@pioreactor.com
License: MIT
Keywords: microbiology,bioreactor,turbidostat,raspberry pi,education,research
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: System :: Hardware
Classifier: Intended Audience :: Science/Research
Classifier: Intended Audience :: Education
Classifier: Development Status :: 5 - Production/Stable
Requires-Python: >=3.11
Description-Content-Type: text/markdown
Requires-Dist: click==8.1.7
Requires-Dist: paho-mqtt==2.1.0
Requires-Dist: JSON-log-formatter==0.5.1
Requires-Dist: colorlog==6.7.0
Requires-Dist: msgspec==0.19.0
Requires-Dist: crudini==0.9.5
Requires-Dist: iniparse==0.5
Requires-Dist: blinker==1.9.0
Requires-Dist: Flask==3.1.0
Requires-Dist: flup6==1.1.1
Requires-Dist: huey==2.5.2
Requires-Dist: itsdangerous==2.2.0
Requires-Dist: Jinja2==3.1.4
Requires-Dist: MarkupSafe==2.1.5
Requires-Dist: python-dotenv==1.0.1
Requires-Dist: Werkzeug==3.1.0
Requires-Dist: packaging==24.1
Requires-Dist: pydantic==2.10.6
Requires-Dist: pydantic-core==2.27.2
Requires-Dist: mcp-utils==1.0.0
Provides-Extra: worker
Requires-Dist: grpredict==25.6.1; extra == "worker"
Requires-Dist: Adafruit-Blinka==8.58.1; extra == "worker"
Requires-Dist: adafruit-circuitpython-ads1x15==2.2.23; extra == "worker"
Requires-Dist: adafruit-circuitpython-busdevice==5.2.9; extra == "worker"
Requires-Dist: adafruit-circuitpython-connectionmanager==3.1.1; extra == "worker"
Requires-Dist: adafruit-circuitpython-requests==4.1.3; extra == "worker"
Requires-Dist: adafruit-circuitpython-typing==1.10.3; extra == "worker"
Requires-Dist: Adafruit-PlatformDetect==3.78.0; extra == "worker"
Requires-Dist: Adafruit-PureIO==1.1.11; extra == "worker"
Requires-Dist: plotext==5.2.8; extra == "worker"
Requires-Dist: pyftdi==0.55.4; extra == "worker"
Requires-Dist: pyserial==3.5; extra == "worker"
Requires-Dist: pyusb==1.2.1; extra == "worker"
Requires-Dist: rpi_hardware_pwm==0.3.0; extra == "worker"
Provides-Extra: leader-worker
Requires-Dist: grpredict==25.6.1; extra == "leader-worker"
Requires-Dist: Adafruit-Blinka==8.58.1; extra == "leader-worker"
Requires-Dist: adafruit-circuitpython-ads1x15==2.2.23; extra == "leader-worker"
Requires-Dist: adafruit-circuitpython-busdevice==5.2.9; extra == "leader-worker"
Requires-Dist: adafruit-circuitpython-connectionmanager==3.1.1; extra == "leader-worker"
Requires-Dist: adafruit-circuitpython-requests==4.1.3; extra == "leader-worker"
Requires-Dist: adafruit-circuitpython-typing==1.10.3; extra == "leader-worker"
Requires-Dist: Adafruit-PlatformDetect==3.78.0; extra == "leader-worker"
Requires-Dist: Adafruit-PureIO==1.1.11; extra == "leader-worker"
Requires-Dist: plotext==5.2.8; extra == "leader-worker"
Requires-Dist: pyftdi==0.55.4; extra == "leader-worker"
Requires-Dist: pyserial==3.5; extra == "leader-worker"
Requires-Dist: pyusb==1.2.1; extra == "leader-worker"
Requires-Dist: rpi_hardware_pwm==0.3.0; extra == "leader-worker"
Provides-Extra: leader
Requires-Dist: grpredict==25.6.1; extra == "leader"
Requires-Dist: Adafruit-Blinka==8.58.1; extra == "leader"
Requires-Dist: adafruit-circuitpython-ads1x15==2.2.23; extra == "leader"
Requires-Dist: adafruit-circuitpython-busdevice==5.2.9; extra == "leader"
Requires-Dist: adafruit-circuitpython-connectionmanager==3.1.1; extra == "leader"
Requires-Dist: adafruit-circuitpython-requests==4.1.3; extra == "leader"
Requires-Dist: adafruit-circuitpython-typing==1.10.3; extra == "leader"
Requires-Dist: Adafruit-PlatformDetect==3.78.0; extra == "leader"
Requires-Dist: Adafruit-PureIO==1.1.11; extra == "leader"
Requires-Dist: plotext==5.2.8; extra == "leader"
Requires-Dist: pyftdi==0.55.4; extra == "leader"
Requires-Dist: pyserial==3.5; extra == "leader"
Requires-Dist: pyusb==1.2.1; extra == "leader"
Requires-Dist: rpi_hardware_pwm==0.3.0; extra == "leader"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
Dynamic: license
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary
