opentrons 8.3.0a5__py2.py3-none-any.whl → 8.3.0a6__py2.py3-none-any.whl

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.
@@ -1,12 +1,17 @@
1
1
  """Drop tip in place command request, result, and implementation models."""
2
2
  from __future__ import annotations
3
3
 
4
- from typing import TYPE_CHECKING, Optional, Type, Any
4
+ from typing import TYPE_CHECKING, Optional, Type, Any, Union
5
5
 
6
6
  from pydantic import Field, BaseModel
7
7
  from pydantic.json_schema import SkipJsonSchema
8
8
  from typing_extensions import Literal
9
9
 
10
+ from opentrons_shared_data.errors.exceptions import (
11
+ PipetteOverpressureError,
12
+ StallOrCollisionDetectedError,
13
+ )
14
+
10
15
  from .command import (
11
16
  AbstractCommandImpl,
12
17
  BaseCommand,
@@ -14,7 +19,12 @@ from .command import (
14
19
  DefinedErrorData,
15
20
  SuccessData,
16
21
  )
17
- from .pipetting_common import PipetteIdMixin, TipPhysicallyAttachedError
22
+ from .movement_common import StallOrCollisionError
23
+ from .pipetting_common import (
24
+ PipetteIdMixin,
25
+ TipPhysicallyAttachedError,
26
+ OverpressureError,
27
+ )
18
28
  from ..errors.exceptions import TipAttachedError
19
29
  from ..errors.error_occurrence import ErrorOccurrence
20
30
  from ..resources.model_utils import ModelUtils
@@ -51,9 +61,12 @@ class DropTipInPlaceResult(BaseModel):
51
61
  pass
52
62
 
53
63
 
54
- _ExecuteReturn = (
55
- SuccessData[DropTipInPlaceResult] | DefinedErrorData[TipPhysicallyAttachedError]
56
- )
64
+ _ExecuteReturn = Union[
65
+ SuccessData[DropTipInPlaceResult]
66
+ | DefinedErrorData[TipPhysicallyAttachedError]
67
+ | DefinedErrorData[OverpressureError]
68
+ | DefinedErrorData[StallOrCollisionError]
69
+ ]
57
70
 
58
71
 
59
72
  class DropTipInPlaceImplementation(
@@ -105,6 +118,50 @@ class DropTipInPlaceImplementation(
105
118
  state_update=state_update,
106
119
  state_update_if_false_positive=state_update_if_false_positive,
107
120
  )
121
+ except PipetteOverpressureError as exception:
122
+ state_update_if_false_positive = update_types.StateUpdate()
123
+ state_update_if_false_positive.update_pipette_tip_state(
124
+ pipette_id=params.pipetteId, tip_geometry=None
125
+ )
126
+ state_update.set_fluid_unknown(pipette_id=params.pipetteId)
127
+ return DefinedErrorData(
128
+ public=OverpressureError(
129
+ id=self._model_utils.generate_id(),
130
+ createdAt=self._model_utils.get_timestamp(),
131
+ wrappedErrors=[
132
+ ErrorOccurrence.from_failed(
133
+ id=self._model_utils.generate_id(),
134
+ createdAt=self._model_utils.get_timestamp(),
135
+ error=exception,
136
+ )
137
+ ],
138
+ errorInfo={"retryLocation": retry_location},
139
+ ),
140
+ state_update=state_update,
141
+ state_update_if_false_positive=state_update_if_false_positive,
142
+ )
143
+ except StallOrCollisionDetectedError as exception:
144
+ state_update_if_false_positive = update_types.StateUpdate()
145
+ state_update_if_false_positive.update_pipette_tip_state(
146
+ pipette_id=params.pipetteId, tip_geometry=None
147
+ )
148
+ state_update.set_fluid_unknown(pipette_id=params.pipetteId)
149
+ return DefinedErrorData(
150
+ public=StallOrCollisionError(
151
+ id=self._model_utils.generate_id(),
152
+ createdAt=self._model_utils.get_timestamp(),
153
+ wrappedErrors=[
154
+ ErrorOccurrence.from_failed(
155
+ id=self._model_utils.generate_id(),
156
+ createdAt=self._model_utils.get_timestamp(),
157
+ error=exception,
158
+ )
159
+ ],
160
+ errorInfo={"retryLocation": retry_location},
161
+ ),
162
+ state_update=state_update,
163
+ state_update_if_false_positive=state_update_if_false_positive,
164
+ )
108
165
  else:
109
166
  state_update.set_fluid_unknown(pipette_id=params.pipetteId)
110
167
  state_update.update_pipette_tip_state(
@@ -114,7 +171,11 @@ class DropTipInPlaceImplementation(
114
171
 
115
172
 
116
173
  class DropTipInPlace(
117
- BaseCommand[DropTipInPlaceParams, DropTipInPlaceResult, TipPhysicallyAttachedError]
174
+ BaseCommand[
175
+ DropTipInPlaceParams,
176
+ DropTipInPlaceResult,
177
+ TipPhysicallyAttachedError | OverpressureError | StallOrCollisionError,
178
+ ]
118
179
  ):
119
180
  """Drop tip in place command model."""
120
181
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: opentrons
3
- Version: 8.3.0a5
3
+ Version: 8.3.0a6
4
4
  Summary: The Opentrons API is a simple framework designed to make writing automated biology lab protocols easy.
5
5
  Author: Opentrons
6
6
  Author-email: engineering@opentrons.com
@@ -21,7 +21,7 @@ Classifier: Programming Language :: Python :: 3.10
21
21
  Classifier: Topic :: Scientific/Engineering
22
22
  Requires-Python: >=3.10
23
23
  License-File: ../LICENSE
24
- Requires-Dist: opentrons-shared-data (==8.3.0a5)
24
+ Requires-Dist: opentrons-shared-data (==8.3.0a6)
25
25
  Requires-Dist: aionotify (==0.3.1)
26
26
  Requires-Dist: anyio (<4.0.0,>=3.6.1)
27
27
  Requires-Dist: jsonschema (<4.18.0,>=3.0.1)
@@ -35,9 +35,9 @@ Requires-Dist: pyusb (==1.2.1)
35
35
  Requires-Dist: packaging (>=21.0)
36
36
  Requires-Dist: importlib-metadata (>=1.0) ; python_version < "3.8"
37
37
  Provides-Extra: flex-hardware
38
- Requires-Dist: opentrons-hardware[flex] (==8.3.0a5) ; extra == 'flex-hardware'
38
+ Requires-Dist: opentrons-hardware[flex] (==8.3.0a6) ; extra == 'flex-hardware'
39
39
  Provides-Extra: ot2-hardware
40
- Requires-Dist: opentrons-hardware (==8.3.0a5) ; extra == 'ot2-hardware'
40
+ Requires-Dist: opentrons-hardware (==8.3.0a6) ; extra == 'ot2-hardware'
41
41
 
42
42
  .. _Full API Documentation: http://docs.opentrons.com
43
43
 
@@ -303,7 +303,7 @@ opentrons/protocol_engine/commands/custom.py,sha256=vOJc7QSNnYTpLvJm98OfDKjgcvVF
303
303
  opentrons/protocol_engine/commands/dispense.py,sha256=wbDBDpc80c14AudywUoFTQYWPL8EJHirtSfrEMDZyNY,6293
304
304
  opentrons/protocol_engine/commands/dispense_in_place.py,sha256=h2ASkZW-PlrJViN7ZNBDaaklIeF5n3sZkIAdrPcTqgA,6147
305
305
  opentrons/protocol_engine/commands/drop_tip.py,sha256=2L4tGsDFh8xQwro5FKiZ6onVgo5FRpGVe708vvhsDs4,6900
306
- opentrons/protocol_engine/commands/drop_tip_in_place.py,sha256=pVC0Yh_LkRTuTjzmFJufBWDlgRyMT8sJBl3TLAZFSUc,4497
306
+ opentrons/protocol_engine/commands/drop_tip_in_place.py,sha256=gwSNEKBwds7kOTucXKSK74ozrDe7Cqhta7NR6IqKV3g,7062
307
307
  opentrons/protocol_engine/commands/evotip_dispense.py,sha256=RKnItIOHJHTa0J_SioyWI2s4DuRrbnakA6lGp6UrPXI,4847
308
308
  opentrons/protocol_engine/commands/evotip_seal_pipette.py,sha256=N2vCLnH9TQ9AuRfikHk7StJ_LU1wQFd8U3ppP-0BcD4,11474
309
309
  opentrons/protocol_engine/commands/evotip_unseal_pipette.py,sha256=JBhG8Kbu5PFrDa5b_Q8n-O582oq55ZgPn65kUAZwh0A,5363
@@ -542,9 +542,9 @@ opentrons/util/helpers.py,sha256=3hr801bWGbxEcOFAS7f-iOhmnUhoK5qahbB8SIvaCfY,165
542
542
  opentrons/util/linal.py,sha256=IlKAP9HkNBBgULeSf4YVwSKHdx9jnCjSr7nvDvlRALg,5753
543
543
  opentrons/util/logging_config.py,sha256=UHoY7dyD6WMYNP5GKowbMxUSG_hlXeI5TaIwksR5u-U,6887
544
544
  opentrons/util/performance_helpers.py,sha256=ew7H8XD20iS6-2TJAzbQeyzStZkkE6PzHt_Adx3wbZQ,5172
545
- opentrons-8.3.0a5.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
546
- opentrons-8.3.0a5.dist-info/METADATA,sha256=075Ncjn22SffDSSPBIimlfK2Nk0MBEYlui7F7G91CTQ,5084
547
- opentrons-8.3.0a5.dist-info/WHEEL,sha256=qUzzGenXXuJTzyjFah76kDVqDvnk-YDzY00svnrl84w,109
548
- opentrons-8.3.0a5.dist-info/entry_points.txt,sha256=fTa6eGCYkvOtv0ov-KVE8LLGetgb35LQLF9x85OWPVw,106
549
- opentrons-8.3.0a5.dist-info/top_level.txt,sha256=wk6whpbMZdBQpcK0Fg0YVfUGrAgVOFON7oQAhOMGMW8,10
550
- opentrons-8.3.0a5.dist-info/RECORD,,
545
+ opentrons-8.3.0a6.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
546
+ opentrons-8.3.0a6.dist-info/METADATA,sha256=0ZetIpIpjcnrdK1c9_Av3ywG2PzAnBw7qfiHG_Yfi-c,5084
547
+ opentrons-8.3.0a6.dist-info/WHEEL,sha256=qUzzGenXXuJTzyjFah76kDVqDvnk-YDzY00svnrl84w,109
548
+ opentrons-8.3.0a6.dist-info/entry_points.txt,sha256=fTa6eGCYkvOtv0ov-KVE8LLGetgb35LQLF9x85OWPVw,106
549
+ opentrons-8.3.0a6.dist-info/top_level.txt,sha256=wk6whpbMZdBQpcK0Fg0YVfUGrAgVOFON7oQAhOMGMW8,10
550
+ opentrons-8.3.0a6.dist-info/RECORD,,