opentrons 8.5.0a1__tar.gz → 8.5.0a3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of opentrons might be problematic. Click here for more details.
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/PKG-INFO +4 -4
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/backends/flex_protocol.py +25 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/backends/ot3controller.py +76 -1
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/backends/ot3simulator.py +27 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/instruments/ot3/pipette_handler.py +1 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/ot3api.py +32 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/_liquid_properties.py +16 -4
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/_transfer_liquid_validation.py +2 -2
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/engine/protocol.py +2 -2
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/legacy/legacy_protocol_core.py +2 -2
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/protocol.py +2 -2
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/instrument_context.py +15 -6
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/protocol_context.py +9 -8
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/load_labware.py +0 -19
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/resources/labware_validation.py +7 -1
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/labware.py +12 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/liquid_level_detection.py +68 -8
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons.egg-info/PKG-INFO +4 -4
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons.egg-info/requires.txt +3 -3
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/MANIFEST.in +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/README.rst +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/setup.cfg +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/setup.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/_version.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/deck_configuration.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/encoder_decoder.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/file_operators.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/helpers.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/ot2/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/ot2/deck_attitude.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/ot2/mark_bad_calibration.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/ot2/models/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/ot2/models/v1.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/ot2/pipette_offset.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/ot2/tip_length.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/ot3/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/ot3/deck_attitude.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/ot3/gripper_offset.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/ot3/models/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/ot3/models/v1.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/ot3/module_offset.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/ot3/pipette_offset.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/calibration_storage/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/cli/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/cli/__main__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/cli/analyze.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/config/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/config/advanced_settings.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/config/defaults_ot2.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/config/defaults_ot3.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/config/feature_flags.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/config/gripper_config.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/config/reset.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/config/robot_configs.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/config/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/absorbance_reader/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/absorbance_reader/abstract.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/absorbance_reader/async_byonoy.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/absorbance_reader/driver.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/absorbance_reader/hid_protocol.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/absorbance_reader/simulator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/asyncio/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/asyncio/communication/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/asyncio/communication/async_serial.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/asyncio/communication/errors.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/asyncio/communication/serial_connection.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/command_builder.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/flex_stacker/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/flex_stacker/abstract.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/flex_stacker/driver.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/flex_stacker/errors.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/flex_stacker/simulator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/flex_stacker/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/flex_stacker/utils.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/heater_shaker/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/heater_shaker/abstract.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/heater_shaker/driver.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/heater_shaker/simulator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/mag_deck/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/mag_deck/abstract.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/mag_deck/driver.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/mag_deck/simulator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/rpi_drivers/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/rpi_drivers/dev_types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/rpi_drivers/gpio.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/rpi_drivers/gpio_simulator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/rpi_drivers/interfaces.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/rpi_drivers/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/rpi_drivers/usb.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/rpi_drivers/usb_simulator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/serial_communication.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/smoothie_drivers/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/smoothie_drivers/connection.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/smoothie_drivers/constants.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/smoothie_drivers/driver_3_0.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/smoothie_drivers/errors.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/smoothie_drivers/parse_utils.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/smoothie_drivers/simulator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/smoothie_drivers/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/temp_deck/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/temp_deck/abstract.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/temp_deck/driver.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/temp_deck/simulator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/thermocycler/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/thermocycler/abstract.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/thermocycler/driver.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/thermocycler/simulator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/drivers/utils.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/execute.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/__main__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/adapters.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/api.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/backends/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/backends/controller.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/backends/errors.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/backends/estop_state.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/backends/ot3utils.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/backends/simulator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/backends/status_bar_state.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/backends/subsystem_manager.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/backends/tip_presence_manager.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/backends/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/constants.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/dev_types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/abstract_emulator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/app.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/connection_handler.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/heater_shaker.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/magdeck.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/module_server/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/module_server/client.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/module_server/helpers.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/module_server/models.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/module_server/server.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/parser.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/proxy.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/run_emulator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/scripts/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/scripts/run_app.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/scripts/run_module_emulator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/scripts/run_smoothie.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/settings.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/simulations.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/smoothie.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/tempdeck.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/thermocycler.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/emulation/util.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/errors.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/execution_manager.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/instruments/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/instruments/instrument_abc.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/instruments/ot2/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/instruments/ot2/instrument_calibration.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/instruments/ot2/pipette.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/instruments/ot2/pipette_handler.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/instruments/ot3/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/instruments/ot3/gripper.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/instruments/ot3/gripper_handler.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/instruments/ot3/instrument_calibration.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/instruments/ot3/pipette.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/module_control.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/modules/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/modules/absorbance_reader.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/modules/errors.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/modules/flex_stacker.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/modules/heater_shaker.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/modules/lid_temp_status.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/modules/magdeck.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/modules/mod_abc.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/modules/module_calibration.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/modules/plate_temp_status.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/modules/tempdeck.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/modules/thermocycler.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/modules/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/modules/update.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/modules/utils.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/motion_utilities.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/nozzle_manager.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/ot3_calibration.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/pause_manager.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/poller.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/asyncio_configurable.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/calibratable.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/chassis_accessory_manager.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/configurable.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/event_sourcer.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/execution_controllable.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/flex_calibratable.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/flex_instrument_configurer.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/gripper_controller.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/hardware_manager.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/identifiable.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/instrument_configurer.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/liquid_handler.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/module_provider.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/motion_controller.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/position_estimator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/simulatable.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/stoppable.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/protocols/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/robot_calibration.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/scripts/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/scripts/gripper_control.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/scripts/repl.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/scripts/tc_control.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/simulator_setup.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/thread_manager.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/threaded_async_lock.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/util.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/legacy_broker.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/legacy_commands/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/legacy_commands/commands.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/legacy_commands/helpers.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/legacy_commands/module_commands.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/legacy_commands/protocol_commands.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/legacy_commands/publisher.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/legacy_commands/robot_commands.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/legacy_commands/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/motion_planning/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/motion_planning/adjacent_slots_getters.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/motion_planning/deck_conflict.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/motion_planning/errors.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/motion_planning/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/motion_planning/waypoints.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/ordered_set.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/_liquid.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/_nozzle_layout.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/_parameter_context.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/_parameters.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/_types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/config.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/common.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/core_map.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/engine/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/engine/deck_conflict.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/engine/exceptions.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/engine/instrument.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/engine/labware.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/engine/load_labware_params.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/engine/module_core.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/engine/overlap_versions.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/engine/pipette_movement_conflict.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/engine/point_calculations.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/engine/robot.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/engine/stringify.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/engine/transfer_components_executor.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/engine/well.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/instrument.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/labware.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/legacy/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/legacy/deck.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/legacy/labware_offset_provider.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/legacy/legacy_instrument_core.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/legacy/legacy_labware_core.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/legacy/legacy_module_core.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/legacy/legacy_well_core.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/legacy/load_info.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/legacy/module_geometry.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/legacy/well_geometry.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/legacy_simulator/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/legacy_simulator/legacy_instrument_core.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/legacy_simulator/legacy_protocol_core.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/module.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/robot.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/well.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/core/well_grid.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/create_protocol_context.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/deck.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/disposal_locations.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/labware.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/module_contexts.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/module_validation_and_errors.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/robot_context.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/validation.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/actions/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/actions/action_dispatcher.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/actions/action_handler.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/actions/actions.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/actions/get_state_update.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/clients/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/clients/sync_client.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/clients/transports.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/absorbance_reader/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/absorbance_reader/close_lid.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/absorbance_reader/initialize.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/absorbance_reader/open_lid.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/absorbance_reader/read.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/air_gap_in_place.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/aspirate.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/aspirate_in_place.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/aspirate_while_tracking.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/blow_out.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/blow_out_in_place.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/calibration/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/calibration/calibrate_gripper.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/calibration/calibrate_module.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/calibration/calibrate_pipette.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/calibration/move_to_maintenance_position.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/command.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/command_unions.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/comment.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/configure_for_volume.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/configure_nozzle_layout.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/custom.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/dispense.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/dispense_in_place.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/dispense_while_tracking.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/drop_tip.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/drop_tip_in_place.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/flex_stacker/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/flex_stacker/close_latch.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/flex_stacker/common.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/flex_stacker/empty.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/flex_stacker/fill.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/flex_stacker/open_latch.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/flex_stacker/prepare_shuttle.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/flex_stacker/retrieve.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/flex_stacker/set_stored_labware.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/flex_stacker/store.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/generate_command_schema.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/get_next_tip.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/get_tip_presence.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/hash_command_params.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/heater_shaker/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/heater_shaker/close_labware_latch.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/heater_shaker/deactivate_heater.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/heater_shaker/deactivate_shaker.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/heater_shaker/open_labware_latch.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/heater_shaker/set_and_wait_for_shake_speed.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/heater_shaker/set_target_temperature.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/heater_shaker/wait_for_temperature.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/home.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/labware_handling_common.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/liquid_probe.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/load_lid.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/load_lid_stack.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/load_liquid.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/load_liquid_class.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/load_module.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/load_pipette.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/magnetic_module/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/magnetic_module/disengage.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/magnetic_module/engage.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/move_labware.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/move_relative.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/move_to_addressable_area.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/move_to_addressable_area_for_drop_tip.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/move_to_coordinates.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/move_to_well.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/movement_common.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/pick_up_tip.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/pipetting_common.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/prepare_to_aspirate.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/pressure_dispense.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/reload_labware.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/retract_axis.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/robot/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/robot/close_gripper_jaw.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/robot/common.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/robot/move_axes_relative.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/robot/move_axes_to.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/robot/move_to.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/robot/open_gripper_jaw.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/save_position.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/seal_pipette_to_tip.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/set_rail_lights.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/set_status_bar.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/temperature_module/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/temperature_module/deactivate.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/temperature_module/set_target_temperature.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/temperature_module/wait_for_temperature.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/thermocycler/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/thermocycler/close_lid.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/thermocycler/deactivate_block.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/thermocycler/deactivate_lid.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/thermocycler/open_lid.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/thermocycler/run_extended_profile.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/thermocycler/run_profile.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/thermocycler/set_target_block_temperature.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/thermocycler/set_target_lid_temperature.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/thermocycler/wait_for_block_temperature.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/thermocycler/wait_for_lid_temperature.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/touch_tip.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/unsafe/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/unsafe/unsafe_blow_out_in_place.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/unsafe/unsafe_drop_tip_in_place.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/unsafe/unsafe_engage_axes.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/unsafe/unsafe_place_labware.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/unsafe/unsafe_ungrip_labware.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/unsafe/update_position_estimators.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/unseal_pipette_from_tip.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/verify_tip_presence.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/wait_for_duration.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/wait_for_resume.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/create_protocol_engine.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/engine_support.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/error_recovery_policy.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/errors/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/errors/error_occurrence.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/errors/exceptions.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/command_executor.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/create_queue_worker.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/door_watcher.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/equipment.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/error_recovery_hardware_state_synchronizer.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/gantry_mover.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/hardware_stopper.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/heater_shaker_movement_flagger.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/labware_movement.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/movement.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/pipetting.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/queue_worker.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/rail_lights.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/run_control.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/status_bar.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/thermocycler_movement_flagger.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/thermocycler_plate_lifter.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/execution/tip_handler.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/labware_offset_standardization.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/notes/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/notes/notes.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/plugins.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/protocol_engine.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/resources/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/resources/deck_configuration_provider.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/resources/deck_data_provider.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/resources/file_provider.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/resources/fixture_validation.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/resources/labware_data_provider.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/resources/model_utils.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/resources/module_data_provider.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/resources/ot3_validation.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/resources/pipette_data_provider.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/slot_standardization.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/_abstract_store.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/_move_types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/_well_math.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/addressable_areas.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/command_history.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/commands.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/config.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/files.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/fluid_stack.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/frustum_helpers.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/geometry.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/liquid_classes.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/liquids.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/module_substates/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/module_substates/absorbance_reader_substate.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/module_substates/flex_stacker_substate.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/module_substates/heater_shaker_module_substate.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/module_substates/magnetic_block_substate.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/module_substates/magnetic_module_substate.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/module_substates/temperature_module_substate.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/module_substates/thermocycler_module_substate.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/modules.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/motion.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/pipettes.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/state.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/state_summary.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/tips.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/update_types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/state/wells.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/automatic_tip_selection.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/command_annotations.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/deck_configuration.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/execution.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/hardware_passthrough.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/instrument.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/instrument_sensors.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/labware.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/labware_movement.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/labware_offset_location.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/labware_offset_vector.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/liquid.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/liquid_class.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/liquid_handling.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/location.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/module.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/partial_tip_configuration.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/run_time_parameters.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/tip.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/util.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/types/well_position.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_reader/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_reader/extract_labware_definitions.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_reader/file_format_validator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_reader/file_hasher.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_reader/file_identifier.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_reader/file_reader_writer.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_reader/input_file.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_reader/protocol_files_invalid_error.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_reader/protocol_reader.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_reader/protocol_source.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_reader/role_analyzer.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_runner/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_runner/create_simulating_orchestrator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_runner/json_file_reader.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_runner/json_translator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_runner/legacy_command_mapper.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_runner/legacy_context_plugin.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_runner/protocol_runner.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_runner/python_protocol_wrappers.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_runner/run_orchestrator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_runner/task_queue.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/advanced_control/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/advanced_control/common.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/advanced_control/mix.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/advanced_control/transfers/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/advanced_control/transfers/common.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/advanced_control/transfers/transfer.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/advanced_control/transfers/transfer_liquid_utils.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/api_support/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/api_support/constants.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/api_support/deck_type.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/api_support/definitions.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/api_support/instrument.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/api_support/labware_like.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/api_support/tip_tracker.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/api_support/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/api_support/util.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/bundle.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/duration/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/duration/errors.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/duration/estimator.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/execution/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/execution/dev_types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/execution/errors.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/execution/execute.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/execution/execute_json_v3.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/execution/execute_json_v4.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/execution/execute_json_v5.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/execution/execute_python.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/execution/json_dispatchers.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/execution/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/geometry/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/geometry/labware_geometry.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/geometry/planning.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/labware.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/models/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/models/json_protocol.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/parameters/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/parameters/csv_parameter_definition.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/parameters/csv_parameter_interface.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/parameters/exceptions.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/parameters/parameter_definition.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/parameters/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/parameters/validation.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/parse.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocols/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/py.typed +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/resources/scripts/lpc21isp +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/resources/smoothie-edge-8414642.hex +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/simulate.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/system/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/system/camera.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/system/log_control.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/system/nmcli.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/system/resin.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/system/smoothie_update.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/system/wifi.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/tools/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/tools/args_handler.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/tools/write_pipette_memory.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/types.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/util/__init__.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/util/async_helpers.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/util/broker.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/util/change_notifier.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/util/entrypoint_util.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/util/get_union_elements.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/util/helpers.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/util/linal.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/util/logging_config.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/util/logging_queue_handler.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/util/performance_helpers.py +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons.egg-info/SOURCES.txt +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons.egg-info/dependency_links.txt +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons.egg-info/entry_points.txt +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons.egg-info/not-zip-safe +0 -0
- {opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: opentrons
|
|
3
|
-
Version: 8.5.
|
|
3
|
+
Version: 8.5.0a3
|
|
4
4
|
Summary: The Opentrons API is a simple framework designed to make writing automated biology lab protocols easy.
|
|
5
5
|
Author: Opentrons
|
|
6
6
|
Author-email: engineering@opentrons.com
|
|
@@ -21,7 +21,7 @@ Classifier: Programming Language :: Python :: 3.10
|
|
|
21
21
|
Classifier: Topic :: Scientific/Engineering
|
|
22
22
|
Requires-Python: >=3.10
|
|
23
23
|
License-File: ../LICENSE
|
|
24
|
-
Requires-Dist: opentrons-shared-data==8.5.
|
|
24
|
+
Requires-Dist: opentrons-shared-data==8.5.0a3
|
|
25
25
|
Requires-Dist: aionotify==0.3.1
|
|
26
26
|
Requires-Dist: anyio<4.0.0,>=3.6.1
|
|
27
27
|
Requires-Dist: jsonschema<4.18.0,>=3.0.1
|
|
@@ -35,9 +35,9 @@ Requires-Dist: pyusb==1.2.1
|
|
|
35
35
|
Requires-Dist: importlib-metadata>=1.0; python_version < "3.8"
|
|
36
36
|
Requires-Dist: packaging>=21.0
|
|
37
37
|
Provides-Extra: ot2-hardware
|
|
38
|
-
Requires-Dist: opentrons-hardware==8.5.
|
|
38
|
+
Requires-Dist: opentrons-hardware==8.5.0a3; extra == "ot2-hardware"
|
|
39
39
|
Provides-Extra: flex-hardware
|
|
40
|
-
Requires-Dist: opentrons-hardware[FLEX]==8.5.
|
|
40
|
+
Requires-Dist: opentrons-hardware[FLEX]==8.5.0a3; extra == "flex-hardware"
|
|
41
41
|
|
|
42
42
|
.. _Full API Documentation: http://docs.opentrons.com
|
|
43
43
|
|
{opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/backends/flex_protocol.py
RENAMED
|
@@ -42,6 +42,7 @@ from opentrons.hardware_control.module_control import AttachedModulesControl
|
|
|
42
42
|
from ..dev_types import OT3AttachedInstruments
|
|
43
43
|
from .types import HWStopCondition
|
|
44
44
|
|
|
45
|
+
|
|
45
46
|
Cls = TypeVar("Cls")
|
|
46
47
|
|
|
47
48
|
|
|
@@ -466,3 +467,27 @@ class FlexBackend(Protocol):
|
|
|
466
467
|
async def increase_evo_disp_count(self, mount: OT3Mount) -> None:
|
|
467
468
|
"""Tell a pipette to increase it's evo-tip-dispense-count in eeprom."""
|
|
468
469
|
...
|
|
470
|
+
|
|
471
|
+
async def read_env_temp_sensor(
|
|
472
|
+
self, mount: OT3Mount, primary: bool
|
|
473
|
+
) -> Optional[float]:
|
|
474
|
+
"""Read and return the current sensor information."""
|
|
475
|
+
...
|
|
476
|
+
|
|
477
|
+
async def read_env_hum_sensor(
|
|
478
|
+
self, mount: OT3Mount, primary: bool
|
|
479
|
+
) -> Optional[float]:
|
|
480
|
+
"""Read and return the current sensor information."""
|
|
481
|
+
...
|
|
482
|
+
|
|
483
|
+
async def read_pressure_sensor(
|
|
484
|
+
self, mount: OT3Mount, primary: bool
|
|
485
|
+
) -> Optional[float]:
|
|
486
|
+
"""Read and return the current sensor information."""
|
|
487
|
+
...
|
|
488
|
+
|
|
489
|
+
async def read_capacitive_sensor(
|
|
490
|
+
self, mount: OT3Mount, primary: bool
|
|
491
|
+
) -> Optional[float]:
|
|
492
|
+
"""Read and return the current sensor information."""
|
|
493
|
+
...
|
{opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/backends/ot3controller.py
RENAMED
|
@@ -215,7 +215,13 @@ from ..types import HepaFanState, HepaUVState, StatusBarState
|
|
|
215
215
|
from .types import HWStopCondition
|
|
216
216
|
from .flex_protocol import FlexBackend
|
|
217
217
|
from .status_bar_state import StatusBarStateController
|
|
218
|
-
from opentrons_hardware.sensors.
|
|
218
|
+
from opentrons_hardware.sensors.sensor_types import (
|
|
219
|
+
EnvironmentSensor,
|
|
220
|
+
CapacitiveSensor,
|
|
221
|
+
PressureSensor,
|
|
222
|
+
)
|
|
223
|
+
from opentrons_hardware.sensors.types import SensorDataType, EnvironmentSensorDataType
|
|
224
|
+
from opentrons_hardware.sensors.sensor_driver import SensorDriver
|
|
219
225
|
from opentrons_hardware.sensors.utils import send_evo_dispense_count_increase
|
|
220
226
|
|
|
221
227
|
log = logging.getLogger(__name__)
|
|
@@ -1835,3 +1841,72 @@ class OT3Controller(FlexBackend):
|
|
|
1835
1841
|
await send_evo_dispense_count_increase(
|
|
1836
1842
|
self._messenger, sensor_node_for_pipette(OT3Mount(mount.value))
|
|
1837
1843
|
)
|
|
1844
|
+
|
|
1845
|
+
async def _read_env_sensor(
|
|
1846
|
+
self, mount: OT3Mount, primary: bool
|
|
1847
|
+
) -> Optional[EnvironmentSensorDataType]:
|
|
1848
|
+
"""Read and return the current sensor information."""
|
|
1849
|
+
sensor = EnvironmentSensor.build(
|
|
1850
|
+
sensor_id=SensorId.S0 if primary else SensorId.S1,
|
|
1851
|
+
node_id=sensor_node_for_mount(mount),
|
|
1852
|
+
)
|
|
1853
|
+
s_driver = SensorDriver()
|
|
1854
|
+
sensor_data = await s_driver.read(
|
|
1855
|
+
can_messenger=self._messenger,
|
|
1856
|
+
sensor=sensor,
|
|
1857
|
+
offset=False,
|
|
1858
|
+
)
|
|
1859
|
+
assert sensor_data is None or isinstance(sensor_data, EnvironmentSensorDataType)
|
|
1860
|
+
return sensor_data
|
|
1861
|
+
|
|
1862
|
+
async def read_env_temp_sensor(
|
|
1863
|
+
self, mount: OT3Mount, primary: bool
|
|
1864
|
+
) -> Optional[float]:
|
|
1865
|
+
"""Read and return the current sensor information."""
|
|
1866
|
+
s_data = await self._read_env_sensor(mount, primary)
|
|
1867
|
+
if s_data is None or s_data.temperature is None:
|
|
1868
|
+
return None
|
|
1869
|
+
return s_data.temperature.to_float()
|
|
1870
|
+
|
|
1871
|
+
async def read_env_hum_sensor(
|
|
1872
|
+
self, mount: OT3Mount, primary: bool
|
|
1873
|
+
) -> Optional[float]:
|
|
1874
|
+
"""Read and return the current sensor information."""
|
|
1875
|
+
s_data = await self._read_env_sensor(mount, primary)
|
|
1876
|
+
if s_data is None or s_data.humidity is None:
|
|
1877
|
+
return None
|
|
1878
|
+
return s_data.humidity.to_float()
|
|
1879
|
+
|
|
1880
|
+
async def read_pressure_sensor(
|
|
1881
|
+
self, mount: OT3Mount, primary: bool
|
|
1882
|
+
) -> Optional[float]:
|
|
1883
|
+
"""Read and return the current sensor information."""
|
|
1884
|
+
sensor = PressureSensor.build(
|
|
1885
|
+
sensor_id=SensorId.S0 if primary else SensorId.S1,
|
|
1886
|
+
node_id=sensor_node_for_mount(mount),
|
|
1887
|
+
)
|
|
1888
|
+
s_driver = SensorDriver()
|
|
1889
|
+
sensor_data = await s_driver.read(
|
|
1890
|
+
can_messenger=self._messenger,
|
|
1891
|
+
sensor=sensor,
|
|
1892
|
+
offset=False,
|
|
1893
|
+
)
|
|
1894
|
+
assert sensor_data is None or isinstance(sensor_data, SensorDataType)
|
|
1895
|
+
return sensor_data.to_float() if sensor_data else None
|
|
1896
|
+
|
|
1897
|
+
async def read_capacitive_sensor(
|
|
1898
|
+
self, mount: OT3Mount, primary: bool
|
|
1899
|
+
) -> Optional[float]:
|
|
1900
|
+
"""Read and return the current sensor information."""
|
|
1901
|
+
sensor = CapacitiveSensor.build(
|
|
1902
|
+
sensor_id=SensorId.S0 if primary else SensorId.S1,
|
|
1903
|
+
node_id=sensor_node_for_mount(mount),
|
|
1904
|
+
)
|
|
1905
|
+
s_driver = SensorDriver()
|
|
1906
|
+
sensor_data = await s_driver.read(
|
|
1907
|
+
can_messenger=self._messenger,
|
|
1908
|
+
sensor=sensor,
|
|
1909
|
+
offset=False,
|
|
1910
|
+
)
|
|
1911
|
+
assert sensor_data is None or isinstance(sensor_data, SensorDataType)
|
|
1912
|
+
return sensor_data.to_float() if sensor_data else None
|
{opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/hardware_control/backends/ot3simulator.py
RENAMED
|
@@ -67,6 +67,7 @@ from .flex_protocol import (
|
|
|
67
67
|
FlexBackend,
|
|
68
68
|
)
|
|
69
69
|
|
|
70
|
+
|
|
70
71
|
log = logging.getLogger(__name__)
|
|
71
72
|
|
|
72
73
|
AXIS_TO_SUBSYSTEM = {
|
|
@@ -874,3 +875,29 @@ class OT3Simulator(FlexBackend):
|
|
|
874
875
|
|
|
875
876
|
async def increase_evo_disp_count(self, mount: OT3Mount) -> None:
|
|
876
877
|
pass
|
|
878
|
+
|
|
879
|
+
async def read_env_temp_sensor(
|
|
880
|
+
self, mount: OT3Mount, primary: bool
|
|
881
|
+
) -> Optional[float]:
|
|
882
|
+
"""Read and return the current sensor information."""
|
|
883
|
+
|
|
884
|
+
return 0.0
|
|
885
|
+
|
|
886
|
+
async def read_env_hum_sensor(
|
|
887
|
+
self, mount: OT3Mount, primary: bool
|
|
888
|
+
) -> Optional[float]:
|
|
889
|
+
"""Read and return the current sensor information."""
|
|
890
|
+
|
|
891
|
+
return 0.0
|
|
892
|
+
|
|
893
|
+
async def read_pressure_sensor(
|
|
894
|
+
self, mount: OT3Mount, primary: bool
|
|
895
|
+
) -> Optional[float]:
|
|
896
|
+
"""Read and return the current sensor information."""
|
|
897
|
+
return 0.0
|
|
898
|
+
|
|
899
|
+
async def read_capacitive_sensor(
|
|
900
|
+
self, mount: OT3Mount, primary: bool
|
|
901
|
+
) -> Optional[float]:
|
|
902
|
+
"""Read and return the current sensor information."""
|
|
903
|
+
return 0.0
|
|
@@ -3140,3 +3140,35 @@ class OT3API(
|
|
|
3140
3140
|
"""Tell a pipette to increase its evo-tip-dispense-count in eeprom."""
|
|
3141
3141
|
realmount = OT3Mount.from_mount(mount)
|
|
3142
3142
|
await self._backend.increase_evo_disp_count(realmount)
|
|
3143
|
+
|
|
3144
|
+
async def read_stem_temperature(
|
|
3145
|
+
self, mount: Union[top_types.Mount, OT3Mount], primary: bool = True
|
|
3146
|
+
) -> float:
|
|
3147
|
+
"""Read and return the current stem temperature."""
|
|
3148
|
+
realmount = OT3Mount.from_mount(mount)
|
|
3149
|
+
s_data = await self._backend.read_env_temp_sensor(realmount, primary)
|
|
3150
|
+
return s_data if s_data else 0.0
|
|
3151
|
+
|
|
3152
|
+
async def read_stem_humidity(
|
|
3153
|
+
self, mount: Union[top_types.Mount, OT3Mount], primary: bool = True
|
|
3154
|
+
) -> float:
|
|
3155
|
+
"""Read and return the current primary stem humidity."""
|
|
3156
|
+
realmount = OT3Mount.from_mount(mount)
|
|
3157
|
+
s_data = await self._backend.read_env_hum_sensor(realmount, primary)
|
|
3158
|
+
return s_data if s_data else 0.0
|
|
3159
|
+
|
|
3160
|
+
async def read_stem_pressure(
|
|
3161
|
+
self, mount: Union[top_types.Mount, OT3Mount], primary: bool = True
|
|
3162
|
+
) -> float:
|
|
3163
|
+
"""Read and return the current primary stem pressure."""
|
|
3164
|
+
realmount = OT3Mount.from_mount(mount)
|
|
3165
|
+
s_data = await self._backend.read_pressure_sensor(realmount, primary)
|
|
3166
|
+
return s_data if s_data else 0.0
|
|
3167
|
+
|
|
3168
|
+
async def read_stem_capacitance(
|
|
3169
|
+
self, mount: Union[top_types.Mount, OT3Mount], primary: bool = True
|
|
3170
|
+
) -> float:
|
|
3171
|
+
"""Read and return the current primary stem capacitance."""
|
|
3172
|
+
realmount = OT3Mount.from_mount(mount)
|
|
3173
|
+
s_data = await self._backend.read_capacitive_sensor(realmount, primary)
|
|
3174
|
+
return s_data if s_data else 0.0
|
|
@@ -115,16 +115,28 @@ class TipPosition:
|
|
|
115
115
|
return self._position_reference
|
|
116
116
|
|
|
117
117
|
@position_reference.setter
|
|
118
|
-
def position_reference(self, new_position: str) -> None:
|
|
119
|
-
self._position_reference =
|
|
118
|
+
def position_reference(self, new_position: Union[str, PositionReference]) -> None:
|
|
119
|
+
self._position_reference = (
|
|
120
|
+
new_position
|
|
121
|
+
if isinstance(new_position, PositionReference)
|
|
122
|
+
else PositionReference(new_position)
|
|
123
|
+
)
|
|
120
124
|
|
|
121
125
|
@property
|
|
122
126
|
def offset(self) -> Coordinate:
|
|
123
127
|
return self._offset
|
|
124
128
|
|
|
125
129
|
@offset.setter
|
|
126
|
-
def offset(self, new_offset: Sequence[float]) -> None:
|
|
127
|
-
|
|
130
|
+
def offset(self, new_offset: Union[Sequence[float], Coordinate]) -> None:
|
|
131
|
+
if isinstance(new_offset, Coordinate):
|
|
132
|
+
new_coordinate: Sequence[Union[int, float]] = [
|
|
133
|
+
new_offset.x,
|
|
134
|
+
new_offset.y,
|
|
135
|
+
new_offset.z,
|
|
136
|
+
]
|
|
137
|
+
else:
|
|
138
|
+
new_coordinate = new_offset
|
|
139
|
+
x, y, z = validation.validate_coordinates(new_coordinate)
|
|
128
140
|
self._offset = Coordinate(x=x, y=y, z=z)
|
|
129
141
|
|
|
130
142
|
def as_shared_data_model(self) -> SharedDataTipPosition:
|
{opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_api/_transfer_liquid_validation.py
RENAMED
|
@@ -33,7 +33,7 @@ def verify_and_normalize_transfer_args(
|
|
|
33
33
|
last_tip_picked_up_from: Optional[Well],
|
|
34
34
|
tip_racks: List[Labware],
|
|
35
35
|
nozzle_map: NozzleMapInterface,
|
|
36
|
-
|
|
36
|
+
group_wells_for_multi_channel: bool,
|
|
37
37
|
current_volume: float,
|
|
38
38
|
trash_location: Union[Location, Well, Labware, TrashBin, WasteChute],
|
|
39
39
|
) -> TransferInfo:
|
|
@@ -43,7 +43,7 @@ def verify_and_normalize_transfer_args(
|
|
|
43
43
|
else:
|
|
44
44
|
# If trash bin or waste chute, set this to empty to have less isinstance checks after this
|
|
45
45
|
flat_dests_list = []
|
|
46
|
-
if
|
|
46
|
+
if group_wells_for_multi_channel and nozzle_map.tip_count > 1:
|
|
47
47
|
flat_sources_list = tx_liquid_utils.group_wells_for_multi_channel_transfer(
|
|
48
48
|
flat_sources_list, nozzle_map
|
|
49
49
|
)
|
|
@@ -1094,8 +1094,8 @@ class ProtocolCore(
|
|
|
1094
1094
|
display_color=(liquid.displayColor.root if liquid.displayColor else None),
|
|
1095
1095
|
)
|
|
1096
1096
|
|
|
1097
|
-
def
|
|
1098
|
-
"""
|
|
1097
|
+
def get_liquid_class(self, name: str, version: int) -> LiquidClass:
|
|
1098
|
+
"""Get an instance of a built-in liquid class."""
|
|
1099
1099
|
try:
|
|
1100
1100
|
# Check if we have already loaded this liquid class' definition
|
|
1101
1101
|
liquid_class_def = self._liquid_class_def_cache[(name, version)]
|
|
@@ -599,8 +599,8 @@ class LegacyProtocolCore(
|
|
|
599
599
|
"""Define a liquid to load into a well."""
|
|
600
600
|
assert False, "define_liquid only supported on engine core"
|
|
601
601
|
|
|
602
|
-
def
|
|
603
|
-
"""
|
|
602
|
+
def get_liquid_class(self, name: str, version: int) -> LiquidClass:
|
|
603
|
+
"""Get an instance of a built-in liquid class."""
|
|
604
604
|
assert False, "define_liquid_class is only supported on engine core"
|
|
605
605
|
|
|
606
606
|
def get_labware_location(
|
|
@@ -311,8 +311,8 @@ class AbstractProtocol(
|
|
|
311
311
|
"""Define a liquid to load into a well."""
|
|
312
312
|
|
|
313
313
|
@abstractmethod
|
|
314
|
-
def
|
|
315
|
-
"""
|
|
314
|
+
def get_liquid_class(self, name: str, version: int) -> LiquidClass:
|
|
315
|
+
"""Get an instance of a built-in liquid class."""
|
|
316
316
|
|
|
317
317
|
@abstractmethod
|
|
318
318
|
def get_labware_location(
|
|
@@ -1794,7 +1794,7 @@ class InstrumentContext(publisher.CommandPublisher):
|
|
|
1794
1794
|
Union[types.Location, labware.Well, TrashBin, WasteChute]
|
|
1795
1795
|
] = None,
|
|
1796
1796
|
return_tip: bool = False,
|
|
1797
|
-
|
|
1797
|
+
group_wells: bool = True,
|
|
1798
1798
|
) -> InstrumentContext:
|
|
1799
1799
|
"""Move a particular type of liquid from one well or group of wells to another.
|
|
1800
1800
|
|
|
@@ -1827,6 +1827,9 @@ class InstrumentContext(publisher.CommandPublisher):
|
|
|
1827
1827
|
tips. Depending on the liquid class, the pipette may also blow out liquid here.
|
|
1828
1828
|
:param return_tip: Whether to drop used tips in their original locations
|
|
1829
1829
|
in the tip rack, instead of the trash.
|
|
1830
|
+
:param group_wells: For multi-channel transfers only. If set to ``True``, group together contiguous wells
|
|
1831
|
+
given into a single transfer step, taking into account the tip configuration. If ``False``, target
|
|
1832
|
+
each well given with the primary nozzle. Defaults to ``True``.
|
|
1830
1833
|
|
|
1831
1834
|
:meta private:
|
|
1832
1835
|
"""
|
|
@@ -1844,7 +1847,7 @@ class InstrumentContext(publisher.CommandPublisher):
|
|
|
1844
1847
|
last_tip_picked_up_from=self._last_tip_picked_up_from,
|
|
1845
1848
|
tip_racks=self._tip_racks,
|
|
1846
1849
|
nozzle_map=self._core.get_nozzle_map(),
|
|
1847
|
-
|
|
1850
|
+
group_wells_for_multi_channel=group_wells,
|
|
1848
1851
|
current_volume=self.current_volume,
|
|
1849
1852
|
trash_location=(
|
|
1850
1853
|
trash_location if trash_location is not None else self.trash_container
|
|
@@ -1913,7 +1916,7 @@ class InstrumentContext(publisher.CommandPublisher):
|
|
|
1913
1916
|
Union[types.Location, labware.Well, TrashBin, WasteChute]
|
|
1914
1917
|
] = None,
|
|
1915
1918
|
return_tip: bool = False,
|
|
1916
|
-
|
|
1919
|
+
group_wells: bool = True,
|
|
1917
1920
|
) -> InstrumentContext:
|
|
1918
1921
|
"""
|
|
1919
1922
|
Distribute a particular type of liquid from one well to a group of wells.
|
|
@@ -1943,6 +1946,9 @@ class InstrumentContext(publisher.CommandPublisher):
|
|
|
1943
1946
|
tips. Depending on the liquid class, the pipette may also blow out liquid here.
|
|
1944
1947
|
:param return_tip: Whether to drop used tips in their original locations
|
|
1945
1948
|
in the tip rack, instead of the trash.
|
|
1949
|
+
:param group_wells: For multi-channel transfers only. If set to ``True``, group together contiguous wells
|
|
1950
|
+
given into a single transfer step, taking into account the tip configuration. If ``False``, target
|
|
1951
|
+
each well given with the primary nozzle. Defaults to ``True``.
|
|
1946
1952
|
|
|
1947
1953
|
:meta private:
|
|
1948
1954
|
"""
|
|
@@ -1960,7 +1966,7 @@ class InstrumentContext(publisher.CommandPublisher):
|
|
|
1960
1966
|
last_tip_picked_up_from=self._last_tip_picked_up_from,
|
|
1961
1967
|
tip_racks=self._tip_racks,
|
|
1962
1968
|
nozzle_map=self._core.get_nozzle_map(),
|
|
1963
|
-
|
|
1969
|
+
group_wells_for_multi_channel=group_wells,
|
|
1964
1970
|
current_volume=self.current_volume,
|
|
1965
1971
|
trash_location=(
|
|
1966
1972
|
trash_location if trash_location is not None else self.trash_container
|
|
@@ -2035,7 +2041,7 @@ class InstrumentContext(publisher.CommandPublisher):
|
|
|
2035
2041
|
Union[types.Location, labware.Well, TrashBin, WasteChute]
|
|
2036
2042
|
] = None,
|
|
2037
2043
|
return_tip: bool = False,
|
|
2038
|
-
|
|
2044
|
+
group_wells: bool = True,
|
|
2039
2045
|
) -> InstrumentContext:
|
|
2040
2046
|
"""
|
|
2041
2047
|
Consolidate a particular type of liquid from a group of wells to one well.
|
|
@@ -2066,6 +2072,9 @@ class InstrumentContext(publisher.CommandPublisher):
|
|
|
2066
2072
|
tips. Depending on the liquid class, the pipette may also blow out liquid here.
|
|
2067
2073
|
:param return_tip: Whether to drop used tips in their original locations
|
|
2068
2074
|
in the tip rack, instead of the trash.
|
|
2075
|
+
:param group_wells: For multi-channel transfers only. If set to ``True``, group together contiguous wells
|
|
2076
|
+
given into a single transfer step, taking into account the tip configuration. If ``False``, target
|
|
2077
|
+
each well given with the primary nozzle. Defaults to ``True``.
|
|
2069
2078
|
|
|
2070
2079
|
:meta private:
|
|
2071
2080
|
"""
|
|
@@ -2083,7 +2092,7 @@ class InstrumentContext(publisher.CommandPublisher):
|
|
|
2083
2092
|
last_tip_picked_up_from=self._last_tip_picked_up_from,
|
|
2084
2093
|
tip_racks=self._tip_racks,
|
|
2085
2094
|
nozzle_map=self._core.get_nozzle_map(),
|
|
2086
|
-
|
|
2095
|
+
group_wells_for_multi_channel=group_wells,
|
|
2087
2096
|
current_volume=self.current_volume,
|
|
2088
2097
|
trash_location=(
|
|
2089
2098
|
trash_location if trash_location is not None else self.trash_container
|
|
@@ -1371,22 +1371,23 @@ class ProtocolContext(CommandPublisher):
|
|
|
1371
1371
|
display_color=display_color,
|
|
1372
1372
|
)
|
|
1373
1373
|
|
|
1374
|
-
@requires_version(2,
|
|
1375
|
-
def
|
|
1374
|
+
@requires_version(2, 24)
|
|
1375
|
+
def get_liquid_class(
|
|
1376
1376
|
self,
|
|
1377
1377
|
name: str,
|
|
1378
1378
|
) -> LiquidClass:
|
|
1379
1379
|
"""
|
|
1380
|
-
|
|
1381
|
-
..
|
|
1382
|
-
This is intended for Opentrons internal use only and is not a guaranteed API.
|
|
1380
|
+
Get an instance of a built-in liquid class for use in the protocol.
|
|
1383
1381
|
|
|
1384
|
-
:
|
|
1382
|
+
Args:
|
|
1383
|
+
name: Name of an Opentrons-defined liquid class.
|
|
1384
|
+
|
|
1385
|
+
:raises: ``LiquidClassDefinitionDoesNotExist``: if the specified liquid class does not exist.
|
|
1385
1386
|
"""
|
|
1386
|
-
return self._core.
|
|
1387
|
+
return self._core.get_liquid_class(name=name, version=DEFAULT_LC_VERSION)
|
|
1387
1388
|
|
|
1388
1389
|
@requires_version(2, 24)
|
|
1389
|
-
def
|
|
1390
|
+
def define_liquid_class(
|
|
1390
1391
|
self,
|
|
1391
1392
|
name: str,
|
|
1392
1393
|
properties: Dict[str, Dict[str, TransferPropertiesDict]],
|
{opentrons-8.5.0a1 → opentrons-8.5.0a3}/src/opentrons/protocol_engine/commands/load_labware.py
RENAMED
|
@@ -165,25 +165,6 @@ class LoadLabwareImplementation(
|
|
|
165
165
|
top_labware_definition=loaded_labware.definition,
|
|
166
166
|
bottom_labware_id=verified_location.labwareId,
|
|
167
167
|
)
|
|
168
|
-
# Validate load location is valid for lids
|
|
169
|
-
if labware_validation.validate_definition_is_lid(
|
|
170
|
-
definition=loaded_labware.definition
|
|
171
|
-
):
|
|
172
|
-
# This parent is assumed to be compatible, unless the lid enumerates
|
|
173
|
-
# all its compatible parents and this parent is missing from the list.
|
|
174
|
-
parent_is_incompatible = (
|
|
175
|
-
loaded_labware.definition.compatibleParentLabware is not None
|
|
176
|
-
and self._state_view.labware.get_load_name(
|
|
177
|
-
verified_location.labwareId
|
|
178
|
-
)
|
|
179
|
-
not in loaded_labware.definition.compatibleParentLabware
|
|
180
|
-
)
|
|
181
|
-
|
|
182
|
-
if parent_is_incompatible:
|
|
183
|
-
raise ValueError(
|
|
184
|
-
f"Labware Lid {params.loadName} may not be loaded on parent labware"
|
|
185
|
-
f" {self._state_view.labware.get_display_name(verified_location.labwareId)}."
|
|
186
|
-
)
|
|
187
168
|
|
|
188
169
|
# Validate labware for the absorbance reader
|
|
189
170
|
if self._is_loading_to_module(
|
|
@@ -48,7 +48,13 @@ def validate_labware_can_be_stacked(
|
|
|
48
48
|
top_labware_definition: LabwareDefinition, below_labware_load_name: str
|
|
49
49
|
) -> bool:
|
|
50
50
|
"""Validate that the labware being loaded onto is in the above labware's stackingOffsetWithLabware definition."""
|
|
51
|
-
return
|
|
51
|
+
return (
|
|
52
|
+
below_labware_load_name in top_labware_definition.stackingOffsetWithLabware
|
|
53
|
+
or (
|
|
54
|
+
"default" in top_labware_definition.stackingOffsetWithLabware
|
|
55
|
+
and top_labware_definition.compatibleParentLabware is None
|
|
56
|
+
)
|
|
57
|
+
)
|
|
52
58
|
|
|
53
59
|
|
|
54
60
|
def validate_labware_can_be_ondeck(definition: LabwareDefinition) -> bool:
|
|
@@ -1131,6 +1131,18 @@ class LabwareView:
|
|
|
1131
1131
|
raise errors.LabwareCannotBeStackedError(
|
|
1132
1132
|
f"Labware {top_labware_definition.parameters.loadName} cannot be loaded onto labware {below_labware.loadName}"
|
|
1133
1133
|
)
|
|
1134
|
+
elif (
|
|
1135
|
+
labware_validation.validate_definition_is_lid(top_labware_definition)
|
|
1136
|
+
and top_labware_definition.compatibleParentLabware is not None
|
|
1137
|
+
and self.get_load_name(bottom_labware_id)
|
|
1138
|
+
not in top_labware_definition.compatibleParentLabware
|
|
1139
|
+
):
|
|
1140
|
+
# This parent is assumed to be compatible, unless the lid enumerates
|
|
1141
|
+
# all its compatible parents and this parent is missing from the list.
|
|
1142
|
+
raise ValueError(
|
|
1143
|
+
f"Labware Lid {top_labware_definition.parameters.loadName} may not be loaded on parent labware"
|
|
1144
|
+
f" {self.get_display_name(bottom_labware_id)}."
|
|
1145
|
+
)
|
|
1134
1146
|
elif isinstance(below_labware.location, ModuleLocation):
|
|
1135
1147
|
below_definition = self.get_definition(labware_id=below_labware.id)
|
|
1136
1148
|
if not labware_validation.validate_definition_is_adapter(
|
|
@@ -27,42 +27,102 @@ class SimulatedProbeResult(BaseModel):
|
|
|
27
27
|
return data
|
|
28
28
|
|
|
29
29
|
def __add__(
|
|
30
|
-
self, other: float | SimulatedProbeResult
|
|
30
|
+
self, other: float | int | SimulatedProbeResult
|
|
31
31
|
) -> float | SimulatedProbeResult:
|
|
32
32
|
"""Bypass addition and just return self."""
|
|
33
33
|
return self
|
|
34
34
|
|
|
35
35
|
def __sub__(
|
|
36
|
-
self, other: float | SimulatedProbeResult
|
|
36
|
+
self, other: float | int | SimulatedProbeResult
|
|
37
37
|
) -> float | SimulatedProbeResult:
|
|
38
38
|
"""Bypass subtraction and just return self."""
|
|
39
39
|
return self
|
|
40
40
|
|
|
41
41
|
def __radd__(
|
|
42
|
-
self, other: float | SimulatedProbeResult
|
|
42
|
+
self, other: float | int | SimulatedProbeResult
|
|
43
43
|
) -> float | SimulatedProbeResult:
|
|
44
44
|
"""Bypass addition and just return self."""
|
|
45
45
|
return self
|
|
46
46
|
|
|
47
47
|
def __rsub__(
|
|
48
|
-
self, other: float | SimulatedProbeResult
|
|
48
|
+
self, other: float | int | SimulatedProbeResult
|
|
49
49
|
) -> float | SimulatedProbeResult:
|
|
50
50
|
"""Bypass subtraction and just return self."""
|
|
51
51
|
return self
|
|
52
52
|
|
|
53
|
-
def
|
|
53
|
+
def __mul__(
|
|
54
|
+
self, other: float | int | SimulatedProbeResult
|
|
55
|
+
) -> float | SimulatedProbeResult:
|
|
56
|
+
"""Bypass multiplication and just return self."""
|
|
57
|
+
return self
|
|
58
|
+
|
|
59
|
+
def __rmul__(
|
|
60
|
+
self, other: float | int | SimulatedProbeResult
|
|
61
|
+
) -> float | SimulatedProbeResult:
|
|
62
|
+
"""Bypass multiplication and just return self."""
|
|
63
|
+
return self
|
|
64
|
+
|
|
65
|
+
def __truediv__(
|
|
66
|
+
self, other: float | int | SimulatedProbeResult
|
|
67
|
+
) -> float | SimulatedProbeResult:
|
|
68
|
+
"""Bypass division and just return self."""
|
|
69
|
+
return self
|
|
70
|
+
|
|
71
|
+
def __rtruediv__(
|
|
72
|
+
self, other: float | int | SimulatedProbeResult
|
|
73
|
+
) -> float | SimulatedProbeResult:
|
|
74
|
+
"""Bypass division and just return self."""
|
|
75
|
+
return self
|
|
76
|
+
|
|
77
|
+
def __pow__(
|
|
78
|
+
self, other: float | int | SimulatedProbeResult
|
|
79
|
+
) -> float | SimulatedProbeResult:
|
|
80
|
+
"""Bypass exponent math and just return self."""
|
|
81
|
+
return self
|
|
82
|
+
|
|
83
|
+
def __rpow__(
|
|
84
|
+
self, other: float | int | SimulatedProbeResult
|
|
85
|
+
) -> float | SimulatedProbeResult:
|
|
86
|
+
"""Bypass exponent math and just return self."""
|
|
87
|
+
return self
|
|
88
|
+
|
|
89
|
+
def __mod__(
|
|
90
|
+
self, other: float | int | SimulatedProbeResult
|
|
91
|
+
) -> float | SimulatedProbeResult:
|
|
92
|
+
"""Bypass modulus and just return self."""
|
|
93
|
+
return self
|
|
94
|
+
|
|
95
|
+
def __rmod__(
|
|
96
|
+
self, other: float | int | SimulatedProbeResult
|
|
97
|
+
) -> float | SimulatedProbeResult:
|
|
98
|
+
"""Bypass modulus and just return self."""
|
|
99
|
+
return self
|
|
100
|
+
|
|
101
|
+
def __floordiv__(
|
|
102
|
+
self, other: float | int | SimulatedProbeResult
|
|
103
|
+
) -> float | SimulatedProbeResult:
|
|
104
|
+
"""Bypass floor division and just return self."""
|
|
105
|
+
return self
|
|
106
|
+
|
|
107
|
+
def __rfloordiv__(
|
|
108
|
+
self, other: float | int | SimulatedProbeResult
|
|
109
|
+
) -> float | SimulatedProbeResult:
|
|
110
|
+
"""Bypass floor division and just return self."""
|
|
111
|
+
return self
|
|
112
|
+
|
|
113
|
+
def __gt__(self, other: float | int | SimulatedProbeResult) -> bool:
|
|
54
114
|
"""Bypass 'greater than' and just return self."""
|
|
55
115
|
return True
|
|
56
116
|
|
|
57
|
-
def __lt__(self, other: float | SimulatedProbeResult) -> bool:
|
|
117
|
+
def __lt__(self, other: float | int | SimulatedProbeResult) -> bool:
|
|
58
118
|
"""Bypass 'less than' and just return self."""
|
|
59
119
|
return False
|
|
60
120
|
|
|
61
|
-
def __ge__(self, other: float | SimulatedProbeResult) -> bool:
|
|
121
|
+
def __ge__(self, other: float | int | SimulatedProbeResult) -> bool:
|
|
62
122
|
"""Bypass 'greater than or eaqual to' and just return self."""
|
|
63
123
|
return True
|
|
64
124
|
|
|
65
|
-
def __le__(self, other: float | SimulatedProbeResult) -> bool:
|
|
125
|
+
def __le__(self, other: float | int | SimulatedProbeResult) -> bool:
|
|
66
126
|
"""Bypass 'less than or equal to' and just return self."""
|
|
67
127
|
return False
|
|
68
128
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: opentrons
|
|
3
|
-
Version: 8.5.
|
|
3
|
+
Version: 8.5.0a3
|
|
4
4
|
Summary: The Opentrons API is a simple framework designed to make writing automated biology lab protocols easy.
|
|
5
5
|
Author: Opentrons
|
|
6
6
|
Author-email: engineering@opentrons.com
|
|
@@ -21,7 +21,7 @@ Classifier: Programming Language :: Python :: 3.10
|
|
|
21
21
|
Classifier: Topic :: Scientific/Engineering
|
|
22
22
|
Requires-Python: >=3.10
|
|
23
23
|
License-File: ../LICENSE
|
|
24
|
-
Requires-Dist: opentrons-shared-data==8.5.
|
|
24
|
+
Requires-Dist: opentrons-shared-data==8.5.0a3
|
|
25
25
|
Requires-Dist: aionotify==0.3.1
|
|
26
26
|
Requires-Dist: anyio<4.0.0,>=3.6.1
|
|
27
27
|
Requires-Dist: jsonschema<4.18.0,>=3.0.1
|
|
@@ -35,9 +35,9 @@ Requires-Dist: pyusb==1.2.1
|
|
|
35
35
|
Requires-Dist: importlib-metadata>=1.0; python_version < "3.8"
|
|
36
36
|
Requires-Dist: packaging>=21.0
|
|
37
37
|
Provides-Extra: ot2-hardware
|
|
38
|
-
Requires-Dist: opentrons-hardware==8.5.
|
|
38
|
+
Requires-Dist: opentrons-hardware==8.5.0a3; extra == "ot2-hardware"
|
|
39
39
|
Provides-Extra: flex-hardware
|
|
40
|
-
Requires-Dist: opentrons-hardware[FLEX]==8.5.
|
|
40
|
+
Requires-Dist: opentrons-hardware[FLEX]==8.5.0a3; extra == "flex-hardware"
|
|
41
41
|
|
|
42
42
|
.. _Full API Documentation: http://docs.opentrons.com
|
|
43
43
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
opentrons-shared-data==8.5.
|
|
1
|
+
opentrons-shared-data==8.5.0a3
|
|
2
2
|
aionotify==0.3.1
|
|
3
3
|
anyio<4.0.0,>=3.6.1
|
|
4
4
|
jsonschema<4.18.0,>=3.0.1
|
|
@@ -15,7 +15,7 @@ packaging>=21.0
|
|
|
15
15
|
importlib-metadata>=1.0
|
|
16
16
|
|
|
17
17
|
[flex-hardware]
|
|
18
|
-
opentrons-hardware[FLEX]==8.5.
|
|
18
|
+
opentrons-hardware[FLEX]==8.5.0a3
|
|
19
19
|
|
|
20
20
|
[ot2-hardware]
|
|
21
|
-
opentrons-hardware==8.5.
|
|
21
|
+
opentrons-hardware==8.5.0a3
|
|
File without changes
|