@opentrons/shared-data 0.0.1-alpha.1 → 0.0.1-alpha.17
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.
- package/lib/bundle.673284981fd97184260c.js +3 -0
- package/lib/bundle.673284981fd97184260c.js.map +1 -0
- package/package.json +1 -1
- package/LICENSE +0 -202
- package/lib/build/labware.json +0 -1
- package/lib/command/schemas/.json +0 -0
- package/lib/js/helpers/__tests__/getRobotTypeFromLoadedLabware.test.d.ts +0 -1
- package/lib/js/helpers/__tests__/schemaV6Adapter.test.d.ts +0 -0
- package/lib/js/helpers/getAddressableAreasInProtocol.d.ts +0 -3
- package/lib/js/helpers/schemaV6Adapter.d.ts +0 -10
- package/lib/labware/definitions/2/opentrons_calibration_adapter_magnetic_module/1.json +0 -62
- package/lib/labware/definitions/2/opentrons_ot3_96_tiprack_1000ul/1.json +0 -1017
- package/lib/labware/definitions/2/opentrons_ot3_96_tiprack_200ul/1.json +0 -1017
- package/lib/labware/definitions/2/opentrons_ot3_96_tiprack_50ul/1.json +0 -1017
- package/lib/opentrons-shared-data.js +0 -3
- package/lib/opentrons-shared-data.js.map +0 -1
- package/lib/pipette/definitions/2/liquid/eight_channel/p10/1_0.json +0 -58
- package/lib/pipette/definitions/2/liquid/eight_channel/p10/1_3.json +0 -58
- package/lib/pipette/definitions/2/liquid/eight_channel/p10/1_4.json +0 -58
- package/lib/pipette/definitions/2/liquid/eight_channel/p10/1_5.json +0 -49
- package/lib/pipette/definitions/2/liquid/eight_channel/p10/1_6.json +0 -57
- package/lib/pipette/definitions/2/liquid/eight_channel/p1000/1_0.json +0 -374
- package/lib/pipette/definitions/2/liquid/eight_channel/p1000/3_0.json +0 -374
- package/lib/pipette/definitions/2/liquid/eight_channel/p1000/3_3.json +0 -374
- package/lib/pipette/definitions/2/liquid/eight_channel/p1000/3_4.json +0 -374
- package/lib/pipette/definitions/2/liquid/eight_channel/p1000/3_5.json +0 -374
- package/lib/pipette/definitions/2/liquid/eight_channel/p20/2_0.json +0 -323
- package/lib/pipette/definitions/2/liquid/eight_channel/p20/2_1.json +0 -203
- package/lib/pipette/definitions/2/liquid/eight_channel/p300/1_0.json +0 -75
- package/lib/pipette/definitions/2/liquid/eight_channel/p300/1_3.json +0 -75
- package/lib/pipette/definitions/2/liquid/eight_channel/p300/1_4.json +0 -75
- package/lib/pipette/definitions/2/liquid/eight_channel/p300/1_5.json +0 -75
- package/lib/pipette/definitions/2/liquid/eight_channel/p300/2_0.json +0 -202
- package/lib/pipette/definitions/2/liquid/eight_channel/p300/2_1.json +0 -202
- package/lib/pipette/definitions/2/liquid/eight_channel/p50/1_0.json +0 -128
- package/lib/pipette/definitions/2/liquid/eight_channel/p50/1_3.json +0 -128
- package/lib/pipette/definitions/2/liquid/eight_channel/p50/1_4.json +0 -128
- package/lib/pipette/definitions/2/liquid/eight_channel/p50/1_5.json +0 -118
- package/lib/pipette/definitions/2/liquid/eight_channel/p50/3_0.json +0 -98
- package/lib/pipette/definitions/2/liquid/eight_channel/p50/3_3.json +0 -98
- package/lib/pipette/definitions/2/liquid/eight_channel/p50/3_4.json +0 -98
- package/lib/pipette/definitions/2/liquid/eight_channel/p50/3_5.json +0 -98
- package/lib/pipette/definitions/2/liquid/ninety_six_channel/p1000/1_0.json +0 -374
- package/lib/pipette/definitions/2/liquid/ninety_six_channel/p1000/3_0.json +0 -374
- package/lib/pipette/definitions/2/liquid/ninety_six_channel/p1000/3_3.json +0 -374
- package/lib/pipette/definitions/2/liquid/ninety_six_channel/p1000/3_4.json +0 -374
- package/lib/pipette/definitions/2/liquid/ninety_six_channel/p1000/3_5.json +0 -374
- package/lib/pipette/definitions/2/liquid/single_channel/p10/1_0.json +0 -59
- package/lib/pipette/definitions/2/liquid/single_channel/p10/1_3.json +0 -59
- package/lib/pipette/definitions/2/liquid/single_channel/p10/1_4.json +0 -59
- package/lib/pipette/definitions/2/liquid/single_channel/p10/1_5.json +0 -58
- package/lib/pipette/definitions/2/liquid/single_channel/p1000/1_0.json +0 -50
- package/lib/pipette/definitions/2/liquid/single_channel/p1000/1_3.json +0 -52
- package/lib/pipette/definitions/2/liquid/single_channel/p1000/1_4.json +0 -52
- package/lib/pipette/definitions/2/liquid/single_channel/p1000/1_5.json +0 -50
- package/lib/pipette/definitions/2/liquid/single_channel/p1000/2_0.json +0 -114
- package/lib/pipette/definitions/2/liquid/single_channel/p1000/2_1.json +0 -116
- package/lib/pipette/definitions/2/liquid/single_channel/p1000/2_2.json +0 -116
- package/lib/pipette/definitions/2/liquid/single_channel/p1000/3_0.json +0 -374
- package/lib/pipette/definitions/2/liquid/single_channel/p1000/3_3.json +0 -374
- package/lib/pipette/definitions/2/liquid/single_channel/p1000/3_4.json +0 -300
- package/lib/pipette/definitions/2/liquid/single_channel/p1000/3_5.json +0 -300
- package/lib/pipette/definitions/2/liquid/single_channel/p20/2_0.json +0 -449
- package/lib/pipette/definitions/2/liquid/single_channel/p20/2_1.json +0 -269
- package/lib/pipette/definitions/2/liquid/single_channel/p20/2_2.json +0 -329
- package/lib/pipette/definitions/2/liquid/single_channel/p300/1_0.json +0 -99
- package/lib/pipette/definitions/2/liquid/single_channel/p300/1_3.json +0 -99
- package/lib/pipette/definitions/2/liquid/single_channel/p300/1_4.json +0 -99
- package/lib/pipette/definitions/2/liquid/single_channel/p300/1_5.json +0 -83
- package/lib/pipette/definitions/2/liquid/single_channel/p300/2_0.json +0 -206
- package/lib/pipette/definitions/2/liquid/single_channel/p300/2_1.json +0 -206
- package/lib/pipette/definitions/2/liquid/single_channel/p50/1_0.json +0 -128
- package/lib/pipette/definitions/2/liquid/single_channel/p50/1_3.json +0 -128
- package/lib/pipette/definitions/2/liquid/single_channel/p50/1_4.json +0 -128
- package/lib/pipette/definitions/2/liquid/single_channel/p50/1_5.json +0 -116
- package/lib/pipette/definitions/2/liquid/single_channel/p50/3_0.json +0 -98
- package/lib/pipette/definitions/2/liquid/single_channel/p50/3_3.json +0 -98
- package/lib/pipette/definitions/2/liquid/single_channel/p50/3_4.json +0 -100
- package/lib/pipette/definitions/2/liquid/single_channel/p50/3_5.json +0 -100
- package/lib/pipette/definitions/pipetteModelSpecs.json +0 -8073
- package/lib/pipette/definitions/pipetteNameSpecs.json +0 -665
- package/lib/pipette/schemas/pipetteModelSpecsSchema.json +0 -153
- package/lib/pipette/schemas/pipetteNameSpecsSchema.json +0 -89
- package/python/.coverage +0 -0
- package/python/build/lib/opentrons_shared_data/__init__.py +0 -17
- package/python/build/lib/opentrons_shared_data/_version.py +0 -20
- package/python/build/lib/opentrons_shared_data/command/__init__.py +0 -26
- package/python/build/lib/opentrons_shared_data/data/deck/definitions/3/ot2_short_trash.json +0 -477
- package/python/build/lib/opentrons_shared_data/data/deck/definitions/3/ot2_standard.json +0 -477
- package/python/build/lib/opentrons_shared_data/data/deck/definitions/3/ot3_standard.json +0 -989
- package/python/build/lib/opentrons_shared_data/data/deck/schemas/1.json +0 -240
- package/python/build/lib/opentrons_shared_data/data/deck/schemas/2.json +0 -249
- package/python/build/lib/opentrons_shared_data/data/deck/schemas/3.json +0 -296
- package/python/build/lib/opentrons_shared_data/data/errors/definitions/1/errors.json +0 -198
- package/python/build/lib/opentrons_shared_data/data/errors/schemas/1.json +0 -50
- package/python/build/lib/opentrons_shared_data/data/gripper/definitions/1/gripperV1.1.json +0 -28
- package/python/build/lib/opentrons_shared_data/data/gripper/definitions/1/gripperV1.2.json +0 -28
- package/python/build/lib/opentrons_shared_data/data/gripper/definitions/1/gripperV1.json +0 -27
- package/python/build/lib/opentrons_shared_data/data/gripper/schemas/1.json +0 -181
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/12-well-plate.json +0 -147
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/24-vial-rack.json +0 -281
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/24-well-plate.json +0 -281
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/384-plate.json +0 -4667
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/48-vial-plate.json +0 -547
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/48-well-plate.json +0 -547
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/5ml-3x4.json +0 -147
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/6-well-plate.json +0 -80
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/96-PCR-flat.json +0 -1079
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/96-PCR-tall.json +0 -1079
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/96-deep-well.json +0 -1079
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/96-flat.json +0 -1079
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/96-well-plate-20mm.json +0 -1079
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/MALDI-plate.json +0 -4282
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/PCR-strip-tall.json +0 -1079
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/T25-flask.json +0 -20
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/T75-flask.json +0 -20
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/alum-block-pcr-strips.json +0 -188
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/biorad-hardshell-96-PCR.json +0 -1079
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/e-gelgol.json +0 -1078
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/fixed-trash.json +0 -19
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/hampton-1ml-deep-block.json +0 -1078
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-aluminum-block-2ml-eppendorf.json +0 -281
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-aluminum-block-2ml-screwcap.json +0 -281
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-aluminum-block-96-PCR-plate.json +0 -1079
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-aluminum-block-PCR-strips-200ul.json +0 -1079
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-tiprack-10ul.json +0 -986
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-tiprack-300ul.json +0 -986
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-tuberack-1.5ml-eppendorf.json +0 -281
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-tuberack-15_50ml.json +0 -125
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-tuberack-15ml.json +0 -181
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-tuberack-2ml-eppendorf.json +0 -281
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-tuberack-2ml-screwcap.json +0 -281
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-tuberack-50ml.json +0 -80
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/point.json +0 -18
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/rigaku-compact-crystallization-plate.json +0 -2146
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/small_vial_rack_16x45.json +0 -280
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tall-fixed-trash.json +0 -19
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tiprack-1000ul-H.json +0 -503
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tiprack-1000ul-chem.json +0 -1034
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tiprack-1000ul.json +0 -986
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tiprack-10ul-H.json +0 -503
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tiprack-10ul.json +0 -986
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tiprack-200ul.json +0 -986
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/trash-box.json +0 -20
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/trough-12row-short.json +0 -143
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/trough-12row.json +0 -143
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/trough-1row-25ml.json +0 -21
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tube-rack-.75ml.json +0 -281
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tube-rack-15_50ml.json +0 -125
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tube-rack-2ml-9x9.json +0 -911
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tube-rack-2ml.json +0 -281
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tube-rack-5ml-96.json +0 -1079
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tube-rack-80well.json +0 -907
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/wheaton_vial_rack.json +0 -565
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/agilent_1_reservoir_290ml/1.json +0 -54
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/appliedbiosystemsmicroamp_384_wellplate_40ul/1.json +0 -4320
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/armadillo_96_wellplate_200ul_pcr_full_skirt/1.json +0 -1019
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/armadillo_96_wellplate_200ul_pcr_full_skirt/2.json +0 -1045
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/axygen_1_reservoir_90ml/1.json +0 -56
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/biorad_384_wellplate_50ul/1.json +0 -4329
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/biorad_384_wellplate_50ul/2.json +0 -4331
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/biorad_96_wellplate_200ul_pcr/1.json +0 -1020
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/biorad_96_wellplate_200ul_pcr/2.json +0 -1036
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_12_wellplate_6.9ml_flat/1.json +0 -171
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_12_wellplate_6.9ml_flat/2.json +0 -180
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_24_wellplate_3.4ml_flat/1.json +0 -293
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_24_wellplate_3.4ml_flat/2.json +0 -300
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_384_wellplate_112ul_flat/1.json +0 -4703
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_384_wellplate_112ul_flat/2.json +0 -4717
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_48_wellplate_1.6ml_flat/1.json +0 -535
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_48_wellplate_1.6ml_flat/2.json +0 -544
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_6_wellplate_16.8ml_flat/1.json +0 -103
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_6_wellplate_16.8ml_flat/2.json +0 -110
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_96_wellplate_360ul_flat/1.json +0 -1049
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_96_wellplate_360ul_flat/2.json +0 -1063
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/eppendorf_96_tiprack_1000ul_eptips/1.json +0 -1019
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/eppendorf_96_tiprack_10ul_eptips/1.json +0 -1019
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/geb_96_tiprack_1000ul/1.json +0 -1017
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/geb_96_tiprack_10ul/1.json +0 -1017
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_12_reservoir_15ml/1.json +0 -190
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_1_reservoir_195ml/1.json +0 -54
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_1_reservoir_195ml/2.json +0 -56
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_1_reservoir_290ml/1.json +0 -54
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_96_wellplate_100ul_pcr_full_skirt/1.json +0 -1018
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_96_wellplate_100ul_pcr_full_skirt/2.json +0 -1039
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_96_wellplate_200ul_flat/1.json +0 -1017
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_96_wellplate_200ul_flat/2.json +0 -1031
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_96_wellplate_2ml_deep/1.json +0 -1121
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_96_wellplate_2ml_deep/2.json +0 -1137
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical/1.json +0 -164
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical_acrylic/1.json +0 -162
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_10_tuberack_nest_4x50ml_6x15ml_conical/1.json +0 -160
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_15_tuberack_falcon_15ml_conical/1.json +0 -211
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_15_tuberack_nest_15ml_conical/1.json +0 -209
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_1_trash_1100ml_fixed/1.json +0 -50
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_1_trash_3200ml_fixed/1.json +0 -50
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_1_trash_850ml_fixed/1.json +0 -50
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_aluminumblock_generic_2ml_screwcap/1.json +0 -300
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_aluminumblock_generic_2ml_screwcap/2.json +0 -301
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_aluminumblock_nest_0.5ml_screwcap/1.json +0 -299
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_aluminumblock_nest_1.5ml_screwcap/1.json +0 -299
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_aluminumblock_nest_1.5ml_snapcap/1.json +0 -301
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_aluminumblock_nest_2ml_screwcap/1.json +0 -299
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_aluminumblock_nest_2ml_snapcap/1.json +0 -301
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_eppendorf_1.5ml_safelock_snapcap/1.json +0 -312
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_eppendorf_2ml_safelock_snapcap/1.json +0 -311
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_eppendorf_2ml_safelock_snapcap_acrylic/1.json +0 -309
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_generic_0.75ml_snapcap_acrylic/1.json +0 -298
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_generic_2ml_screwcap/1.json +0 -300
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_nest_0.5ml_screwcap/1.json +0 -300
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_nest_1.5ml_screwcap/1.json +0 -300
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_nest_1.5ml_snapcap/1.json +0 -302
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_nest_2ml_screwcap/1.json +0 -300
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_nest_2ml_snapcap/1.json +0 -302
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_40_aluminumblock_eppendorf_24x2ml_safelock_snapcap_generic_16x0.2ml_pcr_strip/1.json +0 -481
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_6_tuberack_falcon_50ml_conical/1.json +0 -112
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_6_tuberack_nest_50ml_conical/1.json +0 -110
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_aluminumblock_biorad_wellplate_200ul/1.json +0 -1029
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_aluminumblock_generic_pcr_strip_200ul/1.json +0 -1026
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_aluminumblock_generic_pcr_strip_200ul/2.json +0 -1027
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_aluminumblock_nest_wellplate_100ul/1.json +0 -1027
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_deep_well_adapter/1.json +0 -41
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_deep_well_adapter_nest_wellplate_2ml_deep/1.json +0 -1121
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_filtertiprack_1000ul/1.json +0 -1017
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_filtertiprack_10ul/1.json +0 -1017
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_filtertiprack_200ul/1.json +0 -1017
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_filtertiprack_20ul/1.json +0 -1017
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_flat_bottom_adapter/1.json +0 -41
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_flat_bottom_adapter_nest_wellplate_200ul_flat/1.json +0 -1027
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_pcr_adapter/1.json +0 -1018
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_pcr_adapter_armadillo_wellplate_200ul/1.json +0 -1027
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_pcr_adapter_nest_wellplate_100ul_pcr_full_skirt/1.json +0 -1025
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_tiprack_1000ul/1.json +0 -1019
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_tiprack_10ul/1.json +0 -1019
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_tiprack_20ul/1.json +0 -1019
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_tiprack_300ul/1.json +0 -1019
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_well_aluminum_block/1.json +0 -1018
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_wellplate_200ul_pcr_full_skirt/1.json +0 -1019
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_wellplate_200ul_pcr_full_skirt/2.json +0 -1045
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_aluminum_flat_bottom_plate/1.json +0 -41
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_calibration_adapter_heatershaker_module/1.json +0 -62
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_calibration_adapter_magnetic_module/1.json +0 -62
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_calibration_adapter_temperature_module/1.json +0 -62
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_calibration_adapter_thermocycler_module/1.json +0 -69
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_calibrationblock_short_side_left/1.json +0 -71
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_calibrationblock_short_side_right/1.json +0 -71
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_flex_96_filtertiprack_1000ul/1.json +0 -1026
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_flex_96_filtertiprack_200ul/1.json +0 -1026
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_flex_96_filtertiprack_50ul/1.json +0 -1026
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_flex_96_tiprack_1000ul/1.json +0 -1026
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_flex_96_tiprack_200ul/1.json +0 -1026
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_flex_96_tiprack_50ul/1.json +0 -1026
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_flex_96_tiprack_adapter/1.json +0 -41
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_ot3_96_tiprack_1000ul/1.json +0 -1017
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_ot3_96_tiprack_200ul/1.json +0 -1017
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_ot3_96_tiprack_50ul/1.json +0 -1017
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_universal_flat_adapter/1.json +0 -151
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_universal_flat_adapter_corning_384_wellplate_112ul_flat/1.json +0 -4710
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/thermoscientificnunc_96_wellplate_1300ul/1.json +0 -1019
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/thermoscientificnunc_96_wellplate_2000ul/1.json +0 -1019
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/tipone_96_tiprack_200ul/1.json +0 -1017
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/usascientific_12_reservoir_22ml/1.json +0 -192
- package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/usascientific_96_wellplate_2.4ml_deep/1.json +0 -1116
- package/python/build/lib/opentrons_shared_data/data/labware/schemas/2.json +0 -372
- package/python/build/lib/opentrons_shared_data/data/module/definitions/1.json +0 -57
- package/python/build/lib/opentrons_shared_data/data/module/definitions/2/magneticModuleV1.json +0 -22
- package/python/build/lib/opentrons_shared_data/data/module/definitions/2/magneticModuleV2.json +0 -69
- package/python/build/lib/opentrons_shared_data/data/module/definitions/2/temperatureModuleV1.json +0 -22
- package/python/build/lib/opentrons_shared_data/data/module/definitions/2/temperatureModuleV2.json +0 -69
- package/python/build/lib/opentrons_shared_data/data/module/definitions/2/thermocyclerModuleV1.json +0 -23
- package/python/build/lib/opentrons_shared_data/data/module/definitions/3/heaterShakerModuleV1.json +0 -521
- package/python/build/lib/opentrons_shared_data/data/module/definitions/3/magneticBlockV1.json +0 -199
- package/python/build/lib/opentrons_shared_data/data/module/definitions/3/magneticModuleV1.json +0 -435
- package/python/build/lib/opentrons_shared_data/data/module/definitions/3/magneticModuleV2.json +0 -488
- package/python/build/lib/opentrons_shared_data/data/module/definitions/3/temperatureModuleV1.json +0 -190
- package/python/build/lib/opentrons_shared_data/data/module/definitions/3/temperatureModuleV2.json +0 -315
- package/python/build/lib/opentrons_shared_data/data/module/definitions/3/thermocyclerModuleV1.json +0 -1380
- package/python/build/lib/opentrons_shared_data/data/module/definitions/3/thermocyclerModuleV2.json +0 -3686
- package/python/build/lib/opentrons_shared_data/data/module/schemas/1.json +0 -55
- package/python/build/lib/opentrons_shared_data/data/module/schemas/2.json +0 -112
- package/python/build/lib/opentrons_shared_data/data/module/schemas/3.json +0 -206
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/1/pipetteModelSpecs.json +0 -10214
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/1/pipetteNameSpecs.json +0 -679
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p10/1_0.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p10/1_3.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p10/1_4.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p10/1_5.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p10/1_6.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p1000/1_0.json +0 -39
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p1000/3_0.json +0 -39
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p1000/3_3.json +0 -39
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p1000/3_4.json +0 -39
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p1000/3_5.json +0 -39
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p20/2_0.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p20/2_1.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p300/1_0.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p300/1_3.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p300/1_4.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p300/1_5.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p300/2_0.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p300/2_1.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p50/1_0.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p50/1_3.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p50/1_4.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p50/1_5.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p50/3_0.json +0 -45
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p50/3_3.json +0 -45
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p50/3_4.json +0 -45
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p50/3_5.json +0 -45
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/ninety_six_channel/p1000/1_0.json +0 -39
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/ninety_six_channel/p1000/3_0.json +0 -39
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/ninety_six_channel/p1000/3_3.json +0 -39
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/ninety_six_channel/p1000/3_4.json +0 -46
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/ninety_six_channel/p1000/3_5.json +0 -46
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p10/1_0.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p10/1_3.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p10/1_4.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p10/1_5.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/1_0.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/1_3.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/1_4.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/1_5.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/2_0.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/2_1.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/2_2.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/3_0.json +0 -36
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/3_3.json +0 -36
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/3_4.json +0 -36
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/3_5.json +0 -36
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p20/2_0.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p20/2_1.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p20/2_2.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p300/1_0.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p300/1_3.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p300/1_4.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p300/1_5.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p300/2_0.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p300/2_1.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p50/1_0.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p50/1_3.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p50/1_4.json +0 -40
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p50/1_5.json +0 -42
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p50/3_0.json +0 -42
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p50/3_3.json +0 -42
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p50/3_4.json +0 -42
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p50/3_5.json +0 -42
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p10/1_0.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p10/1_3.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p10/1_4.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p10/1_5.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p10/1_6.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p1000/1_0.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p1000/3_0.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p1000/3_3.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p1000/3_4.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p1000/3_5.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p20/2_0.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p20/2_1.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p300/1_0.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p300/1_3.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p300/1_4.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p300/1_5.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p300/2_0.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p300/2_1.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p50/1_0.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p50/1_3.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p50/1_4.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p50/1_5.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p50/3_0.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p50/3_3.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p50/3_4.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p50/3_5.json +0 -15
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/ninety_six_channel/p1000/1_0.json +0 -103
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_0.json +0 -103
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_3.json +0 -103
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_4.json +0 -103
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_5.json +0 -103
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p10/1_0.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p10/1_3.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p10/1_4.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p10/1_5.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/1_0.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/1_3.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/1_4.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/1_5.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/2_0.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/2_1.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/2_2.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/3_0.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/3_3.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/3_4.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/3_5.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p20/2_0.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p20/2_1.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p20/2_2.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p300/1_0.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p300/1_3.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p300/1_4.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p300/1_5.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p300/2_0.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p300/2_1.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p50/1_0.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p50/1_3.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p50/1_4.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p50/1_5.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p50/3_0.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p50/3_3.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p50/3_4.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p50/3_5.json +0 -8
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/1_0.json +0 -72
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/1_3.json +0 -72
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/1_4.json +0 -72
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/1_5.json +0 -77
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/1_6.json +0 -117
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/default/1_0.json +0 -58
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/default/1_3.json +0 -58
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/default/1_4.json +0 -58
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/default/1_5.json +0 -47
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/default/1_6.json +0 -55
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/1_0.json +0 -311
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/3_0.json +0 -311
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/3_3.json +0 -311
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/3_4.json +0 -311
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/default/1_0.json +0 -356
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/default/3_0.json +0 -359
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/default/3_3.json +0 -359
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/default/3_4.json +0 -359
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/default/3_5.json +0 -239
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p20/2_0.json +0 -440
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p20/2_1.json +0 -530
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p20/default/2_0.json +0 -311
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p20/default/2_1.json +0 -191
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/1_0.json +0 -70
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/1_3.json +0 -75
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/1_4.json +0 -75
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/1_5.json +0 -75
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/2_0.json +0 -260
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/2_1.json +0 -291
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/default/1_0.json +0 -67
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/default/1_3.json +0 -67
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/default/1_4.json +0 -67
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/default/1_5.json +0 -67
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/default/2_0.json +0 -190
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/default/2_1.json +0 -190
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/1_0.json +0 -71
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/1_3.json +0 -66
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/1_4.json +0 -67
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/1_5.json +0 -86
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/3_0.json +0 -81
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/3_3.json +0 -81
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/3_4.json +0 -81
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/default/1_0.json +0 -128
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/default/1_3.json +0 -128
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/default/1_4.json +0 -128
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/default/1_5.json +0 -110
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/default/3_0.json +0 -99
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/default/3_3.json +0 -99
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/default/3_4.json +0 -99
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/default/3_5.json +0 -91
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/lowVolumeDefault/3_0.json +0 -94
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/lowVolumeDefault/3_3.json +0 -89
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/lowVolumeDefault/3_4.json +0 -89
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/lowVolumeDefault/3_5.json +0 -89
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/1_0.json +0 -311
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/3_0.json +0 -311
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/3_3.json +0 -311
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/3_4.json +0 -311
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/1_0.json +0 -356
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_0.json +0 -356
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_3.json +0 -356
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_4.json +0 -356
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_5.json +0 -356
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p10/1_0.json +0 -73
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p10/1_3.json +0 -73
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p10/1_4.json +0 -70
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p10/1_5.json +0 -73
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p10/default/1_0.json +0 -59
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p10/default/1_3.json +0 -59
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p10/default/1_4.json +0 -56
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p10/default/1_5.json +0 -54
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/1_0.json +0 -80
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/1_3.json +0 -80
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/1_4.json +0 -80
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/1_5.json +0 -80
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/2_0.json +0 -278
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/2_1.json +0 -286
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/2_2.json +0 -286
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/3_0.json +0 -311
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/3_3.json +0 -311
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/3_4.json +0 -237
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/1_0.json +0 -48
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/1_3.json +0 -48
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/1_4.json +0 -48
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/1_5.json +0 -48
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/2_0.json +0 -105
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/2_1.json +0 -107
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/2_2.json +0 -107
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/3_0.json +0 -356
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/3_3.json +0 -356
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/3_4.json +0 -282
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/3_5.json +0 -204
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p20/2_0.json +0 -530
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p20/2_1.json +0 -469
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p20/2_2.json +0 -469
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p20/default/2_0.json +0 -431
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p20/default/2_1.json +0 -251
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p20/default/2_2.json +0 -311
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/1_0.json +0 -90
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/1_3.json +0 -90
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/1_4.json +0 -90
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/1_5.json +0 -95
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/2_0.json +0 -291
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/2_1.json +0 -291
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/default/1_0.json +0 -99
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/default/1_3.json +0 -99
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/default/1_4.json +0 -99
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/default/1_5.json +0 -75
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/default/2_0.json +0 -188
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/default/2_1.json +0 -188
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/1_0.json +0 -74
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/1_3.json +0 -66
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/1_4.json +0 -71
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/1_5.json +0 -91
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/3_0.json +0 -81
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/3_3.json +0 -81
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/3_4.json +0 -83
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/default/1_0.json +0 -119
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/default/1_3.json +0 -128
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/default/1_4.json +0 -128
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/default/1_5.json +0 -104
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/default/3_0.json +0 -98
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/default/3_3.json +0 -98
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/default/3_4.json +0 -100
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/default/3_5.json +0 -80
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_0.json +0 -78
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_3.json +0 -78
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_4.json +0 -78
- package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_5.json +0 -76
- package/python/build/lib/opentrons_shared_data/data/pipette/schemas/1/pipetteModelSpecsSchema.json +0 -155
- package/python/build/lib/opentrons_shared_data/data/pipette/schemas/1/pipetteNameSpecsSchema.json +0 -91
- package/python/build/lib/opentrons_shared_data/data/pipette/schemas/2/pipetteGeometrySchema.json +0 -35
- package/python/build/lib/opentrons_shared_data/data/pipette/schemas/2/pipetteLiquidPropertiesSchema.json +0 -120
- package/python/build/lib/opentrons_shared_data/data/pipette/schemas/2/pipettePropertiesSchema.json +0 -189
- package/python/build/lib/opentrons_shared_data/data/protocol/schemas/1.json +0 -389
- package/python/build/lib/opentrons_shared_data/data/protocol/schemas/2.json +0 -416
- package/python/build/lib/opentrons_shared_data/data/protocol/schemas/3.json +0 -360
- package/python/build/lib/opentrons_shared_data/data/protocol/schemas/4.json +0 -662
- package/python/build/lib/opentrons_shared_data/data/protocol/schemas/5.json +0 -701
- package/python/build/lib/opentrons_shared_data/data/protocol/schemas/6.json +0 -1225
- package/python/build/lib/opentrons_shared_data/data/protocol/schemas/7-draft.json +0 -285
- package/python/build/lib/opentrons_shared_data/data/protocol/schemas/7.json +0 -290
- package/python/build/lib/opentrons_shared_data/data/robot/definitions/1/ot2.json +0 -5
- package/python/build/lib/opentrons_shared_data/data/robot/definitions/1/ot3.json +0 -5
- package/python/build/lib/opentrons_shared_data/data/robot/schemas/1.json +0 -30
- package/python/build/lib/opentrons_shared_data/deck/__init__.py +0 -84
- package/python/build/lib/opentrons_shared_data/deck/dev_types.py +0 -127
- package/python/build/lib/opentrons_shared_data/errors/__init__.py +0 -30
- package/python/build/lib/opentrons_shared_data/errors/categories.py +0 -60
- package/python/build/lib/opentrons_shared_data/errors/codes.py +0 -102
- package/python/build/lib/opentrons_shared_data/errors/exceptions.py +0 -799
- package/python/build/lib/opentrons_shared_data/gripper/__init__.py +0 -63
- package/python/build/lib/opentrons_shared_data/gripper/constants.py +0 -5
- package/python/build/lib/opentrons_shared_data/gripper/gripper_definition.py +0 -101
- package/python/build/lib/opentrons_shared_data/labware/__init__.py +0 -22
- package/python/build/lib/opentrons_shared_data/labware/constants.py +0 -7
- package/python/build/lib/opentrons_shared_data/labware/dev_types.py +0 -140
- package/python/build/lib/opentrons_shared_data/labware/labware_definition.py +0 -328
- package/python/build/lib/opentrons_shared_data/load.py +0 -57
- package/python/build/lib/opentrons_shared_data/module/__init__.py +0 -74
- package/python/build/lib/opentrons_shared_data/module/dev_types.py +0 -141
- package/python/build/lib/opentrons_shared_data/pipette/__init__.py +0 -107
- package/python/build/lib/opentrons_shared_data/pipette/dev_types.py +0 -177
- package/python/build/lib/opentrons_shared_data/pipette/file_operation_helpers.py +0 -37
- package/python/build/lib/opentrons_shared_data/pipette/load_data.py +0 -256
- package/python/build/lib/opentrons_shared_data/pipette/model_constants.py +0 -151
- package/python/build/lib/opentrons_shared_data/pipette/mutable_configurations.py +0 -402
- package/python/build/lib/opentrons_shared_data/pipette/pipette_definition.py +0 -389
- package/python/build/lib/opentrons_shared_data/pipette/pipette_load_name_conversions.py +0 -236
- package/python/build/lib/opentrons_shared_data/pipette/scripts/__init__.py +0 -0
- package/python/build/lib/opentrons_shared_data/pipette/scripts/build_json_script.py +0 -454
- package/python/build/lib/opentrons_shared_data/pipette/scripts/update_configuration_files.py +0 -453
- package/python/build/lib/opentrons_shared_data/pipette/types.py +0 -193
- package/python/build/lib/opentrons_shared_data/protocol/__init__.py +0 -13
- package/python/build/lib/opentrons_shared_data/protocol/constants.py +0 -98
- package/python/build/lib/opentrons_shared_data/protocol/dev_types.py +0 -436
- package/python/build/lib/opentrons_shared_data/protocol/models/__init__.py +0 -45
- package/python/build/lib/opentrons_shared_data/protocol/models/protocol_schema_v6.py +0 -145
- package/python/build/lib/opentrons_shared_data/protocol/models/protocol_schema_v7.py +0 -93
- package/python/build/lib/opentrons_shared_data/protocol/models/shared_models.py +0 -104
- package/python/build/lib/opentrons_shared_data/py.typed +0 -0
- package/python/build/lib/opentrons_shared_data/robot/__init__.py +0 -25
- package/python/build/lib/opentrons_shared_data/robot/dev_types.py +0 -37
- package/python/build/lib/tests/deck/__init__.py +0 -18
- package/python/build/lib/tests/deck/test_typechecks.py +0 -21
- package/python/build/lib/tests/errors/__init__.py +0 -1
- package/python/build/lib/tests/errors/test_error_completeness.py +0 -19
- package/python/build/lib/tests/errors/test_exceptions.py +0 -74
- package/python/build/lib/tests/gripper/__init__.py +0 -0
- package/python/build/lib/tests/gripper/test_definition.py +0 -30
- package/python/build/lib/tests/gripper/test_load.py +0 -16
- package/python/build/lib/tests/labware/__init__.py +0 -13
- package/python/build/lib/tests/labware/test_typechecks.py +0 -21
- package/python/build/lib/tests/module/__init__.py +0 -20
- package/python/build/lib/tests/module/test_load.py +0 -49
- package/python/build/lib/tests/module/test_typechecks.py +0 -34
- package/python/build/lib/tests/pipette/__init__.py +0 -0
- package/python/build/lib/tests/pipette/test_load_data.py +0 -102
- package/python/build/lib/tests/pipette/test_mutable_configurations.py +0 -266
- package/python/build/lib/tests/pipette/test_pipette_definition.py +0 -183
- package/python/build/lib/tests/pipette/test_pipette_load_name_conversions.py +0 -222
- package/python/build/lib/tests/pipette/test_typechecks.py +0 -50
- package/python/build/lib/tests/pipette/test_validate_schema.py +0 -36
- package/python/build/lib/tests/protocol/__init__.py +0 -15
- package/python/build/lib/tests/protocol/test_protocol_schema_v6.py +0 -107
- package/python/build/lib/tests/protocol/test_protocol_schema_v7.py +0 -34
- package/python/build/lib/tests/protocol/test_typechecks.py +0 -36
- package/python/build/lib/tests/robot/__init__.py +0 -0
- package/python/build/lib/tests/robot/test_typechecks.py +0 -20
- package/python/coverage.xml +0 -1549
- package/python/opentrons_shared_data/__pycache__/__init__.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/__pycache__/_version.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/__pycache__/load.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/command/__pycache__/__init__.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/deck/__pycache__/__init__.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/deck/__pycache__/deck_definitions.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/deck/__pycache__/dev_types.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/errors/__pycache__/__init__.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/errors/__pycache__/categories.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/errors/__pycache__/codes.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/errors/__pycache__/exceptions.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/gripper/__pycache__/__init__.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/gripper/__pycache__/constants.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/gripper/__pycache__/dev_types.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/gripper/__pycache__/gripper_definition.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/labware/__pycache__/__init__.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/labware/__pycache__/constants.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/labware/__pycache__/dev_types.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/labware/__pycache__/labware_definition.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/module/__pycache__/__init__.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/module/__pycache__/dev_types.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/pipette/__pycache__/__init__.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/pipette/__pycache__/dev_types.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/pipette/__pycache__/file_operation_helpers.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/pipette/__pycache__/load_data.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/pipette/__pycache__/model_constants.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/pipette/__pycache__/mutable_configurations.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/pipette/__pycache__/pipette_definition.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/pipette/__pycache__/pipette_load_name_conversions.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/pipette/__pycache__/types.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/protocol/__pycache__/__init__.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/protocol/__pycache__/constants.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/protocol/__pycache__/dev_types.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/protocol/models/__pycache__/__init__.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/protocol/models/__pycache__/protocol_schema_v6.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/protocol/models/__pycache__/protocol_schema_v7.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/protocol/models/__pycache__/protocol_schema_v8.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/protocol/models/__pycache__/shared_models.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/robot/__pycache__/__init__.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data/robot/__pycache__/dev_types.cpython-37.pyc +0 -0
- package/python/opentrons_shared_data.egg-info/PKG-INFO +0 -26
- package/python/opentrons_shared_data.egg-info/SOURCES.txt +0 -81
- package/python/opentrons_shared_data.egg-info/dependency_links.txt +0 -1
- package/python/opentrons_shared_data.egg-info/not-zip-safe +0 -1
- package/python/opentrons_shared_data.egg-info/requires.txt +0 -3
- package/python/opentrons_shared_data.egg-info/top_level.txt +0 -2
- package/python/pyproject.toml +0 -3
- /package/lib/{opentrons-shared-data.js.LICENSE.txt → bundle.673284981fd97184260c.js.LICENSE.txt} +0 -0
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import json
|
|
2
|
-
import pytest
|
|
3
|
-
|
|
4
|
-
from opentrons_shared_data.module import (
|
|
5
|
-
load_definition,
|
|
6
|
-
load_schema,
|
|
7
|
-
ModuleNotFoundError,
|
|
8
|
-
)
|
|
9
|
-
from opentrons_shared_data import load_shared_data
|
|
10
|
-
|
|
11
|
-
from . import list_v2_defs, list_v3_defs
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
@pytest.mark.parametrize("def_name", list_v3_defs())
|
|
15
|
-
def test_load_v3_defs(def_name: str) -> None:
|
|
16
|
-
"""Test that all v3 definitions load correctly."""
|
|
17
|
-
assert load_definition("3", def_name) == json.loads(
|
|
18
|
-
load_shared_data(f"module/definitions/3/{def_name}.json")
|
|
19
|
-
)
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
@pytest.mark.parametrize("def_name", list_v2_defs())
|
|
23
|
-
def test_load_v2_defs(def_name: str) -> None:
|
|
24
|
-
assert load_definition("2", def_name) == json.loads( # type: ignore [call-overload]
|
|
25
|
-
load_shared_data(f"module/definitions/2/{def_name}.json")
|
|
26
|
-
)
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
@pytest.mark.parametrize("def_name", ["magdeck", "tempdeck", "thermocycler"])
|
|
30
|
-
def test_load_v1_defs(def_name: str) -> None:
|
|
31
|
-
assert (
|
|
32
|
-
load_definition("1", def_name)
|
|
33
|
-
== json.loads(load_shared_data("module/definitions/1.json"))[def_name]
|
|
34
|
-
)
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
def test_bad_module_name_throws() -> None:
|
|
38
|
-
with pytest.raises(ModuleNotFoundError):
|
|
39
|
-
load_definition("1", "alsjdag")
|
|
40
|
-
|
|
41
|
-
with pytest.raises(ModuleNotFoundError):
|
|
42
|
-
load_definition("2", "asdasda") # type: ignore[call-overload]
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
@pytest.mark.parametrize("schema_name", ["1", "2", "3"])
|
|
46
|
-
def test_load_schema(schema_name: str) -> None:
|
|
47
|
-
assert load_schema(schema_name) == json.loads( # type: ignore[arg-type]
|
|
48
|
-
load_shared_data(f"module/schemas/{schema_name}.json")
|
|
49
|
-
)
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import sys
|
|
2
|
-
|
|
3
|
-
import pytest
|
|
4
|
-
import typeguard
|
|
5
|
-
|
|
6
|
-
from opentrons_shared_data import module
|
|
7
|
-
from opentrons_shared_data.module import dev_types
|
|
8
|
-
|
|
9
|
-
from . import list_v2_defs, list_v3_defs
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
pytestmark = pytest.mark.xfail(
|
|
13
|
-
condition=sys.version_info >= (3, 10),
|
|
14
|
-
reason="https://github.com/agronholm/typeguard/issues/242",
|
|
15
|
-
)
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
@pytest.mark.parametrize("defname", list_v3_defs())
|
|
19
|
-
def test_v3_definitions_match_types(defname: str) -> None:
|
|
20
|
-
"""Test that V3 module definitions match ModuleDefinitionV3."""
|
|
21
|
-
def_dict = module.load_definition("3", defname)
|
|
22
|
-
typeguard.check_type("def_dict", def_dict, dev_types.ModuleDefinitionV3)
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
@pytest.mark.parametrize("defname", list_v2_defs())
|
|
26
|
-
def test_v2_definitions_match_types(defname: str) -> None:
|
|
27
|
-
defdict = module.load_definition("2", defname) # type: ignore [call-overload]
|
|
28
|
-
typeguard.check_type("defdict", defdict, dev_types.ModuleDefinitionV2)
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
@pytest.mark.parametrize("defname", ["magdeck", "tempdeck", "thermocycler"])
|
|
32
|
-
def test_v1_definitions_match_types(defname: str) -> None:
|
|
33
|
-
defdict = module.load_definition("1", defname)
|
|
34
|
-
typeguard.check_type("defdict", defdict, dev_types.ModuleDefinitionV1)
|
|
File without changes
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import pytest
|
|
2
|
-
from typing import Dict, Any, cast
|
|
3
|
-
from opentrons_shared_data.pipette import (
|
|
4
|
-
load_data,
|
|
5
|
-
pipette_load_name_conversions,
|
|
6
|
-
dev_types,
|
|
7
|
-
)
|
|
8
|
-
from opentrons_shared_data.pipette.types import (
|
|
9
|
-
PipetteChannelType,
|
|
10
|
-
PipetteModelType,
|
|
11
|
-
PipetteVersionType,
|
|
12
|
-
PipetteTipType,
|
|
13
|
-
Quirks,
|
|
14
|
-
LiquidClasses,
|
|
15
|
-
)
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
def test_load_pipette_definition() -> None:
|
|
19
|
-
pipette_config_one = load_data.load_definition(
|
|
20
|
-
PipetteModelType.p50,
|
|
21
|
-
PipetteChannelType.SINGLE_CHANNEL,
|
|
22
|
-
PipetteVersionType(major=3, minor=3),
|
|
23
|
-
)
|
|
24
|
-
|
|
25
|
-
assert pipette_config_one.channels == 1
|
|
26
|
-
assert pipette_config_one.pipette_type.value == "p50"
|
|
27
|
-
assert pipette_config_one.nozzle_offset == [-8.0, -22.0, -259.15]
|
|
28
|
-
|
|
29
|
-
assert (
|
|
30
|
-
pipette_config_one.liquid_properties[LiquidClasses.default]
|
|
31
|
-
.supported_tips[PipetteTipType.t50]
|
|
32
|
-
.default_aspirate_flowrate.default
|
|
33
|
-
== 8.0
|
|
34
|
-
)
|
|
35
|
-
|
|
36
|
-
assert pipette_config_one.quirks == []
|
|
37
|
-
pipette_config_two = load_data.load_definition(
|
|
38
|
-
PipetteModelType.p50,
|
|
39
|
-
PipetteChannelType.SINGLE_CHANNEL,
|
|
40
|
-
PipetteVersionType(major=1, minor=0),
|
|
41
|
-
)
|
|
42
|
-
|
|
43
|
-
assert pipette_config_two.channels == 1
|
|
44
|
-
assert pipette_config_two.pipette_type.value == "p50"
|
|
45
|
-
assert pipette_config_two.nozzle_offset == [0.0, 0.0, 25.0]
|
|
46
|
-
assert (
|
|
47
|
-
pipette_config_two.liquid_properties[LiquidClasses.default]
|
|
48
|
-
.supported_tips[PipetteTipType.t200]
|
|
49
|
-
.default_aspirate_flowrate.default
|
|
50
|
-
== 25.0
|
|
51
|
-
)
|
|
52
|
-
assert pipette_config_two.quirks == [Quirks.dropTipShake]
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
@pytest.mark.parametrize(
|
|
56
|
-
argnames=["key_spot_check", "value_spot_check"],
|
|
57
|
-
argvalues=[
|
|
58
|
-
["P1KSV10", "p1000_single_v1.0"],
|
|
59
|
-
["P1KHV33", "p1000_96_v3.3"],
|
|
60
|
-
["P20MV21", "p20_multi_v2.1"],
|
|
61
|
-
["P300MV10", "p300_multi_v1.0"],
|
|
62
|
-
["P3HMV14", "p300_multi_v1.4"],
|
|
63
|
-
],
|
|
64
|
-
)
|
|
65
|
-
def test_build_serial_number_lookup(key_spot_check: str, value_spot_check: str) -> None:
|
|
66
|
-
lookup_table = load_data.load_serial_lookup_table()
|
|
67
|
-
assert lookup_table[key_spot_check] == value_spot_check
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
@pytest.mark.parametrize(
|
|
71
|
-
argnames=["pipette_model", "v1_configuration_changes"],
|
|
72
|
-
argvalues=[
|
|
73
|
-
["p300_multi_v1.4", {"max_volume": 200, "min_volume": 10}],
|
|
74
|
-
["p1000_96_v3.3", {"tip_length": 40, "min_volume": 300}],
|
|
75
|
-
],
|
|
76
|
-
)
|
|
77
|
-
def test_update_pipette_configuration(
|
|
78
|
-
pipette_model: str, v1_configuration_changes: Dict[str, Any]
|
|
79
|
-
) -> None:
|
|
80
|
-
|
|
81
|
-
liquid_class = LiquidClasses.default
|
|
82
|
-
model_name = pipette_load_name_conversions.convert_pipette_model(
|
|
83
|
-
cast(dev_types.PipetteModel, pipette_model)
|
|
84
|
-
)
|
|
85
|
-
base_configurations = load_data.load_definition(
|
|
86
|
-
model_name.pipette_type, model_name.pipette_channels, model_name.pipette_version
|
|
87
|
-
)
|
|
88
|
-
updated_configurations = load_data.update_pipette_configuration(
|
|
89
|
-
base_configurations, v1_configuration_changes, liquid_class
|
|
90
|
-
)
|
|
91
|
-
|
|
92
|
-
updated_configurations_dict = updated_configurations.dict()
|
|
93
|
-
for k, v in v1_configuration_changes.items():
|
|
94
|
-
if k == "tip_length":
|
|
95
|
-
for i in updated_configurations_dict["liquid_properties"][liquid_class][
|
|
96
|
-
"supported_tips"
|
|
97
|
-
].values():
|
|
98
|
-
assert i["default_tip_length"] == v
|
|
99
|
-
else:
|
|
100
|
-
assert (
|
|
101
|
-
updated_configurations_dict["liquid_properties"][liquid_class][k] == v
|
|
102
|
-
)
|
|
@@ -1,266 +0,0 @@
|
|
|
1
|
-
import json
|
|
2
|
-
import os
|
|
3
|
-
from pathlib import Path
|
|
4
|
-
from typing import Dict, Any, cast, Union, Generator
|
|
5
|
-
|
|
6
|
-
import pytest
|
|
7
|
-
|
|
8
|
-
from opentrons_shared_data.pipette import (
|
|
9
|
-
mutable_configurations,
|
|
10
|
-
types,
|
|
11
|
-
pipette_definition,
|
|
12
|
-
pipette_load_name_conversions as pip_conversions,
|
|
13
|
-
load_data,
|
|
14
|
-
dev_types,
|
|
15
|
-
)
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
TEST_SERIAL_NUMBER = "P50MV1520200304"
|
|
19
|
-
TestOverrideType = Dict[str, Union[float, int, bool]]
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
@pytest.fixture
|
|
23
|
-
def TMPFILE_DATA() -> Dict[str, Any]:
|
|
24
|
-
return {
|
|
25
|
-
"dropTipShake": True,
|
|
26
|
-
"doubleDropTip": True,
|
|
27
|
-
"model": "p50_multi_v1.5",
|
|
28
|
-
"quirks": {"pickUpPresses": True, "dropTipShake": True, "doubleDropTip": True},
|
|
29
|
-
"pickUpSpeed": {
|
|
30
|
-
"value": 5.0,
|
|
31
|
-
"min": 1,
|
|
32
|
-
"max": 100,
|
|
33
|
-
"units": "mm/s",
|
|
34
|
-
"type": "float",
|
|
35
|
-
"default": 30,
|
|
36
|
-
},
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
@pytest.fixture
|
|
41
|
-
def override_configuration_path(tmp_path: Path) -> Generator[Path, None, None]:
|
|
42
|
-
os.environ["OT_API_CONFIG_DIR"] = str(tmp_path)
|
|
43
|
-
|
|
44
|
-
tmp_path.mkdir(parents=True, exist_ok=True)
|
|
45
|
-
with_pip_path = tmp_path / Path("pipettes")
|
|
46
|
-
with_pip_path.mkdir(parents=True, exist_ok=True)
|
|
47
|
-
yield with_pip_path
|
|
48
|
-
|
|
49
|
-
del os.environ["OT_API_CONFIG_DIR"]
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
@pytest.fixture
|
|
53
|
-
def overrides_fixture(
|
|
54
|
-
override_configuration_path: Path, TMPFILE_DATA: Dict[str, Any]
|
|
55
|
-
) -> types.MutableConfig:
|
|
56
|
-
with open(override_configuration_path / f"{TEST_SERIAL_NUMBER}.json", "w") as f:
|
|
57
|
-
json.dump(TMPFILE_DATA, f)
|
|
58
|
-
return types.MutableConfig.build(**TMPFILE_DATA["pickUpSpeed"], name="pickUpSpeed")
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
def test_list_mutable_configs_unknown_pipette_id(
|
|
62
|
-
override_configuration_path: Path,
|
|
63
|
-
) -> None:
|
|
64
|
-
"""Test unknown pipette id mutable configs.
|
|
65
|
-
|
|
66
|
-
Test that a user receives a list of all possible mutable configurations
|
|
67
|
-
with the default value equal to the regular value.
|
|
68
|
-
"""
|
|
69
|
-
|
|
70
|
-
found_configurations = mutable_configurations.list_mutable_configs(
|
|
71
|
-
TEST_SERIAL_NUMBER, override_configuration_path
|
|
72
|
-
)
|
|
73
|
-
for c in found_configurations:
|
|
74
|
-
if isinstance(c, str):
|
|
75
|
-
# model string, ignore
|
|
76
|
-
continue
|
|
77
|
-
if isinstance(c, types.QuirkConfig):
|
|
78
|
-
assert isinstance(c.value, bool)
|
|
79
|
-
else:
|
|
80
|
-
assert c.default == c.value
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
def test_list_mutable_configs_known_pipette_id(
|
|
84
|
-
overrides_fixture: types.MutableConfig, override_configuration_path: Path
|
|
85
|
-
) -> None:
|
|
86
|
-
"""Test known pipette id mutable configs.
|
|
87
|
-
|
|
88
|
-
Test that a user receives a list of all possible mutable configurations
|
|
89
|
-
with the expected overrides also listed.
|
|
90
|
-
"""
|
|
91
|
-
found_configurations = mutable_configurations.list_mutable_configs(
|
|
92
|
-
TEST_SERIAL_NUMBER, override_configuration_path
|
|
93
|
-
)
|
|
94
|
-
|
|
95
|
-
for c in found_configurations:
|
|
96
|
-
if isinstance(c, str):
|
|
97
|
-
# model string, ignore
|
|
98
|
-
continue
|
|
99
|
-
if overrides_fixture.name == c.name:
|
|
100
|
-
assert c.value == overrides_fixture.value
|
|
101
|
-
elif isinstance(c, types.QuirkConfig):
|
|
102
|
-
assert isinstance(c.value, bool)
|
|
103
|
-
else:
|
|
104
|
-
assert c.default == c.value
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
@pytest.mark.parametrize(
|
|
108
|
-
argnames=["overrides_dict", "saved_dict"],
|
|
109
|
-
argvalues=[
|
|
110
|
-
[
|
|
111
|
-
{"pickUpCurrent": 0.5, "dropTipSpeed": 5, "dropTipShake": False},
|
|
112
|
-
{
|
|
113
|
-
"quirks": {"dropTipShake": False},
|
|
114
|
-
"pickUpCurrent": {
|
|
115
|
-
"value": 0.5,
|
|
116
|
-
"default": 0.8,
|
|
117
|
-
"units": "amps",
|
|
118
|
-
"type": "float",
|
|
119
|
-
"min": 0.1,
|
|
120
|
-
"max": 2.0,
|
|
121
|
-
},
|
|
122
|
-
"model": "p50_multi_v1.5",
|
|
123
|
-
"dropTipSpeed": {
|
|
124
|
-
"value": 5,
|
|
125
|
-
"default": 5.0,
|
|
126
|
-
"units": "mm/s",
|
|
127
|
-
"type": "float",
|
|
128
|
-
"min": 0.01,
|
|
129
|
-
"max": 30,
|
|
130
|
-
},
|
|
131
|
-
},
|
|
132
|
-
]
|
|
133
|
-
],
|
|
134
|
-
)
|
|
135
|
-
def test_save_new_overrides_new_file(
|
|
136
|
-
override_configuration_path: Path,
|
|
137
|
-
overrides_dict: TestOverrideType,
|
|
138
|
-
saved_dict: Dict[str, Any],
|
|
139
|
-
) -> None:
|
|
140
|
-
mutable_configurations.save_overrides(
|
|
141
|
-
TEST_SERIAL_NUMBER, overrides_dict, override_configuration_path
|
|
142
|
-
)
|
|
143
|
-
with open(override_configuration_path / f"{TEST_SERIAL_NUMBER}.json") as f:
|
|
144
|
-
new_file = json.load(f)
|
|
145
|
-
assert saved_dict == new_file
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
@pytest.mark.parametrize(
|
|
149
|
-
argnames=["overrides_dict"],
|
|
150
|
-
argvalues=[
|
|
151
|
-
[{"pickUpCurrent": 1, "pickUpSpeed": 10, "dropTipShake": False}],
|
|
152
|
-
[{"pickUpCurrent": 2}],
|
|
153
|
-
],
|
|
154
|
-
)
|
|
155
|
-
def test_save_new_overrides_update_file(
|
|
156
|
-
override_configuration_path: Path,
|
|
157
|
-
overrides_fixture: types.MutableConfig,
|
|
158
|
-
overrides_dict: TestOverrideType,
|
|
159
|
-
TMPFILE_DATA: Dict[str, Any],
|
|
160
|
-
) -> None:
|
|
161
|
-
mutable_configurations.save_overrides(
|
|
162
|
-
TEST_SERIAL_NUMBER, overrides_dict, override_configuration_path
|
|
163
|
-
)
|
|
164
|
-
with open(override_configuration_path / f"{TEST_SERIAL_NUMBER}.json") as f:
|
|
165
|
-
new_file = json.load(f)
|
|
166
|
-
|
|
167
|
-
for k, v in overrides_dict.items():
|
|
168
|
-
if isinstance(v, bool):
|
|
169
|
-
TMPFILE_DATA["quirks"][k] = v
|
|
170
|
-
elif TMPFILE_DATA.get(k):
|
|
171
|
-
TMPFILE_DATA[k]["value"] = v
|
|
172
|
-
|
|
173
|
-
TMPFILE_DATA["pickUpCurrent"] = {
|
|
174
|
-
"default": 0.8,
|
|
175
|
-
"max": 2.0,
|
|
176
|
-
"min": 0.1,
|
|
177
|
-
"type": "float",
|
|
178
|
-
"units": "amps",
|
|
179
|
-
"value": overrides_dict["pickUpCurrent"],
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
del TMPFILE_DATA["quirks"]["pickUpPresses"]
|
|
183
|
-
assert TMPFILE_DATA == new_file
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
@pytest.mark.parametrize(
|
|
187
|
-
argnames=["overrides_dict"],
|
|
188
|
-
argvalues=[
|
|
189
|
-
[{"pickUpCurrent": 1231.213, "dropTipSpeed": 121, "dropTipShake": False}],
|
|
190
|
-
[{"quirk123": True}],
|
|
191
|
-
],
|
|
192
|
-
)
|
|
193
|
-
def test_save_invalid_overrides(
|
|
194
|
-
overrides_fixture: types.MutableConfig,
|
|
195
|
-
override_configuration_path: Path,
|
|
196
|
-
overrides_dict: TestOverrideType,
|
|
197
|
-
TMPFILE_DATA: Dict[str, Any],
|
|
198
|
-
) -> None:
|
|
199
|
-
with pytest.raises(ValueError):
|
|
200
|
-
mutable_configurations.save_overrides(
|
|
201
|
-
TEST_SERIAL_NUMBER, overrides_dict, override_configuration_path
|
|
202
|
-
)
|
|
203
|
-
with open(override_configuration_path / f"{TEST_SERIAL_NUMBER}.json") as f:
|
|
204
|
-
new_file = json.load(f)
|
|
205
|
-
assert TMPFILE_DATA == new_file
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
@pytest.mark.parametrize(
|
|
209
|
-
argnames=["pipette_model", "serial_number"],
|
|
210
|
-
argvalues=[
|
|
211
|
-
[
|
|
212
|
-
pip_conversions.convert_pipette_model(
|
|
213
|
-
cast(dev_types.PipetteModel, "p1000_96_v3.3")
|
|
214
|
-
),
|
|
215
|
-
"P1KHV3320230629",
|
|
216
|
-
],
|
|
217
|
-
[
|
|
218
|
-
pip_conversions.convert_pipette_model(
|
|
219
|
-
cast(dev_types.PipetteModel, "p50_multi_v1.5")
|
|
220
|
-
),
|
|
221
|
-
TEST_SERIAL_NUMBER,
|
|
222
|
-
],
|
|
223
|
-
],
|
|
224
|
-
)
|
|
225
|
-
def test_load_with_overrides(
|
|
226
|
-
overrides_fixture: types.MutableConfig,
|
|
227
|
-
pipette_model: pipette_definition.PipetteModelVersionType,
|
|
228
|
-
serial_number: str,
|
|
229
|
-
override_configuration_path: Path,
|
|
230
|
-
) -> None:
|
|
231
|
-
"""Test that you can load configurations both with pre-existing overrides and non-pre-existing overrides."""
|
|
232
|
-
updated_configurations = mutable_configurations.load_with_mutable_configurations(
|
|
233
|
-
pipette_model, override_configuration_path, serial_number
|
|
234
|
-
)
|
|
235
|
-
|
|
236
|
-
loaded_base_configurations = load_data.load_definition(
|
|
237
|
-
pipette_model.pipette_type,
|
|
238
|
-
pipette_model.pipette_channels,
|
|
239
|
-
pipette_model.pipette_version,
|
|
240
|
-
)
|
|
241
|
-
|
|
242
|
-
if serial_number == TEST_SERIAL_NUMBER:
|
|
243
|
-
dict_loaded_configs = loaded_base_configurations.dict(by_alias=True)
|
|
244
|
-
dict_loaded_configs["pickUpTipConfigurations"]["speed"] = 5.0
|
|
245
|
-
updated_configurations_dict = updated_configurations.dict(by_alias=True)
|
|
246
|
-
assert set(dict_loaded_configs.pop("quirks")) == set(
|
|
247
|
-
updated_configurations_dict.pop("quirks")
|
|
248
|
-
)
|
|
249
|
-
assert updated_configurations_dict == dict_loaded_configs
|
|
250
|
-
else:
|
|
251
|
-
assert updated_configurations == loaded_base_configurations
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
def test_build_mutable_config_using_old_units() -> None:
|
|
255
|
-
"""Test that MutableConfigs can build with old units."""
|
|
256
|
-
old_units_config = {
|
|
257
|
-
"value": 5,
|
|
258
|
-
"default": 5.0,
|
|
259
|
-
"units": "mm/s",
|
|
260
|
-
"type": "float",
|
|
261
|
-
"min": 0.01,
|
|
262
|
-
"max": 30,
|
|
263
|
-
}
|
|
264
|
-
assert (
|
|
265
|
-
types.MutableConfig.build(**old_units_config, name="dropTipSpeed") is not None # type: ignore
|
|
266
|
-
)
|
|
@@ -1,183 +0,0 @@
|
|
|
1
|
-
import pytest
|
|
2
|
-
from typing import cast, List
|
|
3
|
-
from opentrons_shared_data.pipette.types import (
|
|
4
|
-
PipetteChannelType,
|
|
5
|
-
PipetteModelType,
|
|
6
|
-
PipetteVersionType,
|
|
7
|
-
PipetteModelMajorVersionType,
|
|
8
|
-
PipetteModelMinorVersionType,
|
|
9
|
-
LiquidClasses,
|
|
10
|
-
)
|
|
11
|
-
from opentrons_shared_data.pipette.pipette_definition import (
|
|
12
|
-
liquid_class_for_volume_between_default_and_defaultlowvolume,
|
|
13
|
-
PipetteLiquidPropertiesDefinition,
|
|
14
|
-
SupportedTipsDefinition,
|
|
15
|
-
)
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
def get_liquid_definition_for(
|
|
19
|
-
liquid_class: LiquidClasses,
|
|
20
|
-
) -> PipetteLiquidPropertiesDefinition:
|
|
21
|
-
if liquid_class == LiquidClasses.lowVolumeDefault:
|
|
22
|
-
return PipetteLiquidPropertiesDefinition.parse_obj(
|
|
23
|
-
{
|
|
24
|
-
"supportedTips": {
|
|
25
|
-
"t50": SupportedTipsDefinition.parse_obj(
|
|
26
|
-
{
|
|
27
|
-
"defaultAspirateFlowRate": {
|
|
28
|
-
"default": 5,
|
|
29
|
-
"valuesByApiLevel": {"2.0": 5},
|
|
30
|
-
},
|
|
31
|
-
"defaultDispenseFlowRate": {
|
|
32
|
-
"default": 5,
|
|
33
|
-
"valuesByApiLevel": {"2.0": 5},
|
|
34
|
-
},
|
|
35
|
-
"defaultBlowOutFlowRate": {
|
|
36
|
-
"default": 10,
|
|
37
|
-
"valuesByApiLevel": {"2.0": 10},
|
|
38
|
-
},
|
|
39
|
-
"defaultFlowAcceleration": 100,
|
|
40
|
-
"defaultTipLength": 100,
|
|
41
|
-
"defaultReturnTipHeight": 0.5,
|
|
42
|
-
"defaultPushOutVolume": 5,
|
|
43
|
-
"aspirate": {"default": {"1": [[1, 2, 3]]}},
|
|
44
|
-
"dispense": {"default": {"1": [[1, 2, 3]]}},
|
|
45
|
-
}
|
|
46
|
-
)
|
|
47
|
-
},
|
|
48
|
-
"defaultTipOverlapDictionary": {},
|
|
49
|
-
"maxVolume": 30,
|
|
50
|
-
"minVolume": 1,
|
|
51
|
-
"defaultTipracks": [],
|
|
52
|
-
}
|
|
53
|
-
)
|
|
54
|
-
else:
|
|
55
|
-
return PipetteLiquidPropertiesDefinition.parse_obj(
|
|
56
|
-
{
|
|
57
|
-
"supportedTips": {
|
|
58
|
-
"t50": SupportedTipsDefinition.parse_obj(
|
|
59
|
-
{
|
|
60
|
-
"defaultAspirateFlowRate": {
|
|
61
|
-
"default": 5,
|
|
62
|
-
"valuesByApiLevel": {"2.0": 5},
|
|
63
|
-
},
|
|
64
|
-
"defaultDispenseFlowRate": {
|
|
65
|
-
"default": 5,
|
|
66
|
-
"valuesByApiLevel": {"2.0": 5},
|
|
67
|
-
},
|
|
68
|
-
"defaultBlowOutFlowRate": {
|
|
69
|
-
"default": 10,
|
|
70
|
-
"valuesByApiLevel": {"2.0": 10},
|
|
71
|
-
},
|
|
72
|
-
"defaultFlowAcceleration": 100,
|
|
73
|
-
"defaultTipLength": 100,
|
|
74
|
-
"defaultReturnTipHeight": 0.5,
|
|
75
|
-
"defaultPushOutVolume": 5,
|
|
76
|
-
"aspirate": {"default": {"1": [[1, 2, 3]]}},
|
|
77
|
-
"dispense": {"default": {"1": [[1, 2, 3]]}},
|
|
78
|
-
}
|
|
79
|
-
)
|
|
80
|
-
},
|
|
81
|
-
"defaultTipOverlapDictionary": {},
|
|
82
|
-
"maxVolume": 100,
|
|
83
|
-
"minVolume": 5,
|
|
84
|
-
"defaultTipracks": [],
|
|
85
|
-
}
|
|
86
|
-
)
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
@pytest.mark.parametrize(
|
|
90
|
-
argnames=["model", "expected_enum"],
|
|
91
|
-
argvalues=[["p50", PipetteModelType.p50], ["p1000", PipetteModelType.p1000]],
|
|
92
|
-
)
|
|
93
|
-
def test_model_enum(model: str, expected_enum: PipetteModelType) -> None:
|
|
94
|
-
assert expected_enum == PipetteModelType(model)
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
@pytest.mark.parametrize(argnames="channels", argvalues=[1, 8, 96])
|
|
98
|
-
def test_channel_enum(channels: int) -> None:
|
|
99
|
-
channel_type = PipetteChannelType(channels)
|
|
100
|
-
assert channels == channel_type
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
def test_incorrect_values() -> None:
|
|
104
|
-
with pytest.raises(ValueError):
|
|
105
|
-
PipetteModelType("p100")
|
|
106
|
-
|
|
107
|
-
with pytest.raises(ValueError):
|
|
108
|
-
PipetteChannelType(99)
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
@pytest.mark.parametrize(
|
|
112
|
-
argnames=["major", "minor"],
|
|
113
|
-
argvalues=[[1, 0], [1, 3], [3, 9]],
|
|
114
|
-
)
|
|
115
|
-
def test_version_enum(major: int, minor: int) -> None:
|
|
116
|
-
version_type = PipetteVersionType(
|
|
117
|
-
cast(PipetteModelMajorVersionType, major),
|
|
118
|
-
cast(PipetteModelMinorVersionType, minor),
|
|
119
|
-
)
|
|
120
|
-
assert version_type.as_tuple == (major, minor)
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
@pytest.mark.parametrize(
|
|
124
|
-
argnames=[
|
|
125
|
-
"all_liquid_classes",
|
|
126
|
-
"volume",
|
|
127
|
-
"current_liquid_class",
|
|
128
|
-
"expected_liquid_class",
|
|
129
|
-
],
|
|
130
|
-
argvalues=[
|
|
131
|
-
[
|
|
132
|
-
[LiquidClasses.default],
|
|
133
|
-
1,
|
|
134
|
-
LiquidClasses.lowVolumeDefault,
|
|
135
|
-
LiquidClasses.default,
|
|
136
|
-
],
|
|
137
|
-
[
|
|
138
|
-
[LiquidClasses.lowVolumeDefault, LiquidClasses.default],
|
|
139
|
-
1,
|
|
140
|
-
LiquidClasses.lowVolumeDefault,
|
|
141
|
-
LiquidClasses.lowVolumeDefault,
|
|
142
|
-
],
|
|
143
|
-
[
|
|
144
|
-
[LiquidClasses.lowVolumeDefault, LiquidClasses.default],
|
|
145
|
-
1,
|
|
146
|
-
LiquidClasses.default,
|
|
147
|
-
LiquidClasses.lowVolumeDefault,
|
|
148
|
-
],
|
|
149
|
-
[
|
|
150
|
-
[LiquidClasses.lowVolumeDefault, LiquidClasses.default],
|
|
151
|
-
5,
|
|
152
|
-
LiquidClasses.default,
|
|
153
|
-
LiquidClasses.default,
|
|
154
|
-
],
|
|
155
|
-
[
|
|
156
|
-
[LiquidClasses.lowVolumeDefault, LiquidClasses.default],
|
|
157
|
-
5,
|
|
158
|
-
LiquidClasses.lowVolumeDefault,
|
|
159
|
-
LiquidClasses.default,
|
|
160
|
-
],
|
|
161
|
-
[
|
|
162
|
-
[LiquidClasses.lowVolumeDefault, LiquidClasses.default],
|
|
163
|
-
100,
|
|
164
|
-
LiquidClasses.lowVolumeDefault,
|
|
165
|
-
LiquidClasses.default,
|
|
166
|
-
],
|
|
167
|
-
],
|
|
168
|
-
)
|
|
169
|
-
def test_liquid_class_for_volume_between_default_and_defaultlowvolume(
|
|
170
|
-
all_liquid_classes: List[LiquidClasses],
|
|
171
|
-
volume: float,
|
|
172
|
-
current_liquid_class: LiquidClasses,
|
|
173
|
-
expected_liquid_class: LiquidClasses,
|
|
174
|
-
) -> None:
|
|
175
|
-
available_liquid_classes = {
|
|
176
|
-
lc: get_liquid_definition_for(lc) for lc in all_liquid_classes
|
|
177
|
-
}
|
|
178
|
-
assert (
|
|
179
|
-
liquid_class_for_volume_between_default_and_defaultlowvolume(
|
|
180
|
-
volume, current_liquid_class, available_liquid_classes
|
|
181
|
-
)
|
|
182
|
-
== expected_liquid_class
|
|
183
|
-
)
|