iqm-station-control-client 9.4.0__py3-none-any.whl → 9.5.0__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.
- iqm/station_control/interface/models/jobs.py +32 -5
- iqm/station_control/interface/models/observation.py +3 -3
- iqm/station_control/interface/models/observation_set.py +3 -3
- {iqm_station_control_client-9.4.0.dist-info → iqm_station_control_client-9.5.0.dist-info}/METADATA +1 -1
- {iqm_station_control_client-9.4.0.dist-info → iqm_station_control_client-9.5.0.dist-info}/RECORD +8 -8
- {iqm_station_control_client-9.4.0.dist-info → iqm_station_control_client-9.5.0.dist-info}/LICENSE.txt +0 -0
- {iqm_station_control_client-9.4.0.dist-info → iqm_station_control_client-9.5.0.dist-info}/WHEEL +0 -0
- {iqm_station_control_client-9.4.0.dist-info → iqm_station_control_client-9.5.0.dist-info}/top_level.txt +0 -0
|
@@ -46,51 +46,78 @@ class JobError(PydanticBase):
|
|
|
46
46
|
|
|
47
47
|
|
|
48
48
|
class JobData(PydanticBase):
|
|
49
|
-
"""
|
|
49
|
+
"""Status, artifacts and metadata of a job."""
|
|
50
50
|
|
|
51
51
|
job_id: UUID
|
|
52
|
+
"""Unique ID of the job."""
|
|
52
53
|
job_status: JobExecutorStatus
|
|
54
|
+
"""Current job status."""
|
|
53
55
|
job_result: JobResult
|
|
56
|
+
"""Progress information for the job.""" # FIXME why is it called JobResult? can it be None?
|
|
57
|
+
# job_result: The output of a progressing or a successful job. This includes progress indicators.
|
|
54
58
|
job_error: JobError | None
|
|
59
|
+
"""Error message(s) for a failed job."""
|
|
55
60
|
position: int | None
|
|
61
|
+
"""If the job is not completed, its position in the current queue.
|
|
62
|
+
1 means this task will be executed next. In other cases the value is 0."""
|
|
56
63
|
|
|
57
64
|
|
|
58
65
|
@functools.total_ordering
|
|
59
66
|
class JobExecutorStatus(Enum):
|
|
60
|
-
"""
|
|
61
|
-
|
|
67
|
+
"""Different states a job can be in.
|
|
68
|
+
|
|
69
|
+
The ordering of these statuses is important, and execution logic relies on it.
|
|
70
|
+
Thus, if a new status is added, ensure that it is slotted
|
|
62
71
|
in at the appropriate place. See the :meth:`__lt__` implementation for further details.
|
|
63
72
|
"""
|
|
64
73
|
|
|
65
74
|
# Received by the server
|
|
66
75
|
RECEIVED = "received"
|
|
76
|
+
"""The job has been received by the server."""
|
|
67
77
|
|
|
68
78
|
# Validating the job
|
|
69
79
|
VALIDATION_STARTED = "validation_started"
|
|
80
|
+
"""The job is being validated."""
|
|
70
81
|
VALIDATION_ENDED = "validation_ended"
|
|
82
|
+
"""The job passed validation."""
|
|
71
83
|
|
|
72
84
|
# Running PulLA
|
|
73
85
|
FETCH_CALIBRATION_STARTED = "fetch_calibration_started"
|
|
86
|
+
"""Calibration data for the job is being fetched."""
|
|
74
87
|
FETCH_CALIBRATION_ENDED = "fetch_calibration_ended"
|
|
88
|
+
"""Calibration data for the job has been fetched."""
|
|
75
89
|
COMPILATION_STARTED = "compilation_started"
|
|
90
|
+
"""The job is being compiled."""
|
|
76
91
|
COMPILATION_ENDED = "compilation_ended"
|
|
92
|
+
"""The job has been succesfully compiled."""
|
|
77
93
|
|
|
78
94
|
# Executing sweep
|
|
79
95
|
SAVE_SWEEP_METADATA_STARTED = "save_sweep_metadata_started"
|
|
96
|
+
"""Metadata about the sweep is being stored to database."""
|
|
80
97
|
SAVE_SWEEP_METADATA_ENDED = "save_sweep_metadata_ended"
|
|
98
|
+
"""Metadata about the sweep has been stored to database."""
|
|
81
99
|
PENDING_EXECUTION = "pending_execution"
|
|
100
|
+
"""The job is ready for execution and is waiting for its turn in the queue."""
|
|
82
101
|
EXECUTION_STARTED = "execution_started"
|
|
102
|
+
"""The job has started executing on the instruments."""
|
|
83
103
|
EXECUTION_ENDED = "execution_ended"
|
|
104
|
+
"""The job has finished execution on the instruments."""
|
|
84
105
|
POST_PROCESSING_PENDING = "post_processing_pending"
|
|
106
|
+
"""The job has finished execution and is awaiting further processing."""
|
|
85
107
|
POST_PROCESSING_STARTED = "post_processing_started"
|
|
108
|
+
"""Execution artifacts are being constructed and persisted."""
|
|
86
109
|
POST_PROCESSING_ENDED = "post_processing_ended"
|
|
110
|
+
"""Execution artifacts have been constructed and persisted."""
|
|
111
|
+
|
|
87
112
|
READY = "ready"
|
|
113
|
+
"""The job has completed."""
|
|
88
114
|
|
|
89
115
|
# Job failed, can happen at any stage
|
|
90
116
|
FAILED = "failed"
|
|
117
|
+
"""The job has failed. Error message(s) may be available."""
|
|
91
118
|
|
|
92
|
-
# Job aborted
|
|
93
119
|
ABORTED = "aborted"
|
|
120
|
+
"""The job has been aborted."""
|
|
94
121
|
|
|
95
122
|
def __str__(self):
|
|
96
123
|
return self.name.lower()
|
|
@@ -109,7 +136,7 @@ class JobExecutorStatus(Enum):
|
|
|
109
136
|
return self.name == other.name
|
|
110
137
|
|
|
111
138
|
def __lt__(self, other):
|
|
112
|
-
"""
|
|
139
|
+
"""Comparison according to definition order.
|
|
113
140
|
|
|
114
141
|
:meta public:
|
|
115
142
|
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
12
|
# See the License for the specific language governing permissions and
|
|
13
13
|
# limitations under the License.
|
|
14
|
-
"""Observation related
|
|
14
|
+
"""Observation related Station Control interface models."""
|
|
15
15
|
|
|
16
16
|
from datetime import datetime
|
|
17
17
|
from typing import Any
|
|
@@ -35,7 +35,7 @@ class ObservationBase(PydanticBase):
|
|
|
35
35
|
uncertainty: Uncertainty | None = None
|
|
36
36
|
"""Uncertainty of the observation value. ``None`` means unknown."""
|
|
37
37
|
invalid: bool = False
|
|
38
|
-
"""Flag indicating if the
|
|
38
|
+
"""Flag indicating if the observation is invalid. Automated systems must not use invalid observations."""
|
|
39
39
|
|
|
40
40
|
|
|
41
41
|
class ObservationDefinition(ObservationBase):
|
|
@@ -92,4 +92,4 @@ class ObservationUpdate(PydanticBase):
|
|
|
92
92
|
observation_id: int
|
|
93
93
|
"""Unique identifier of the observation."""
|
|
94
94
|
invalid: bool
|
|
95
|
-
"""Flag indicating if the
|
|
95
|
+
"""Flag indicating if the observation is invalid. Automated systems must not use invalid observations."""
|
|
@@ -33,7 +33,7 @@ class ObservationSetBase(PydanticBase):
|
|
|
33
33
|
describes_id: uuid.UUID | None = Field(default=None)
|
|
34
34
|
"""Unique identifier of the observation set this observation set describes."""
|
|
35
35
|
invalid: bool = Field(default=False)
|
|
36
|
-
"""Flag indicating if the
|
|
36
|
+
"""Flag indicating if the set is invalid. Automated systems must not use invalid sets."""
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
class ObservationSetDefinition(ObservationSetBase):
|
|
@@ -71,10 +71,10 @@ class ObservationSetUpdate(PydanticBase):
|
|
|
71
71
|
"""Database IDs of the observations belonging to the observation set.
|
|
72
72
|
|
|
73
73
|
This will only add new observations to the observation set, deleting existing ones is not possible.
|
|
74
|
-
Setting this to
|
|
74
|
+
Setting this to ``None`` or omitting it will leave existing :attr:`observation_ids` as is with no changes.
|
|
75
75
|
"""
|
|
76
76
|
invalid: bool
|
|
77
|
-
"""Flag indicating if the
|
|
77
|
+
"""Flag indicating if the set is invalid. Automated systems must not use invalid sets."""
|
|
78
78
|
|
|
79
79
|
|
|
80
80
|
class ObservationSetWithObservations(ObservationSetData):
|
{iqm_station_control_client-9.4.0.dist-info → iqm_station_control_client-9.5.0.dist-info}/RECORD
RENAMED
|
@@ -40,17 +40,17 @@ iqm/station_control/interface/station_control.py,sha256=Uh9bDEZjc9M5KOYsGjPMYVhn
|
|
|
40
40
|
iqm/station_control/interface/models/__init__.py,sha256=Kg-XRLuU7G4Zjtu8LhYD-v3zkCYHzLFaNvC_nukezlQ,1968
|
|
41
41
|
iqm/station_control/interface/models/dut.py,sha256=Hc_0XllXeIPGWhHsY7PC_jMpi7swpqo3jQQEQVnF3AM,1216
|
|
42
42
|
iqm/station_control/interface/models/dynamic_quantum_architecture.py,sha256=3YlI9e1XxdbkBzlOdxmzYTccJ8AJRnRSIp-JoBf8Yyw,4698
|
|
43
|
-
iqm/station_control/interface/models/jobs.py,sha256
|
|
43
|
+
iqm/station_control/interface/models/jobs.py,sha256=-e_mW66vD3FMqQAPFuSwwn9YSTuqIrw-ZqEzlDBFoAc,6547
|
|
44
44
|
iqm/station_control/interface/models/monitor.py,sha256=ItlgxtBup1hHg64uKeMKiFE7MaRRqSYdVRttsFD_XeU,1352
|
|
45
|
-
iqm/station_control/interface/models/observation.py,sha256=
|
|
46
|
-
iqm/station_control/interface/models/observation_set.py,sha256=
|
|
45
|
+
iqm/station_control/interface/models/observation.py,sha256=IblYdzJN88BNlyxUVR_dIx7BgD_GHGLhHUwy89Fib-I,3281
|
|
46
|
+
iqm/station_control/interface/models/observation_set.py,sha256=EPNv-V_LIHRfJw3PS3kpTECcWqLcDiDFwxf5kuxLFXI,3580
|
|
47
47
|
iqm/station_control/interface/models/run.py,sha256=uEuAMryG-AjAIBTchftw94GpoSBE5SQK2qmlZZ4tq5k,4097
|
|
48
48
|
iqm/station_control/interface/models/sequence.py,sha256=boWlMfP3woVgVObW3OaNbxsUV_qHYP1DA-oIBWj6XIo,2723
|
|
49
49
|
iqm/station_control/interface/models/static_quantum_architecture.py,sha256=gsfJKlYsfZVEK3dqEKXkBSIHiY14DGwNbhPJdNHMtNM,1435
|
|
50
50
|
iqm/station_control/interface/models/sweep.py,sha256=HFoFIrKhlYmHIBfGltY2O9_J28OvkkZILRbDHuqR0wc,2509
|
|
51
51
|
iqm/station_control/interface/models/type_aliases.py,sha256=gEYJ8zOpV1m0NVyYUbAL43psp9Lxw_0t68mYlI65Sds,1262
|
|
52
|
-
iqm_station_control_client-9.
|
|
53
|
-
iqm_station_control_client-9.
|
|
54
|
-
iqm_station_control_client-9.
|
|
55
|
-
iqm_station_control_client-9.
|
|
56
|
-
iqm_station_control_client-9.
|
|
52
|
+
iqm_station_control_client-9.5.0.dist-info/LICENSE.txt,sha256=R6Q7eUrLyoCQgWYorQ8WJmVmWKYU3dxA3jYUp0wwQAw,11332
|
|
53
|
+
iqm_station_control_client-9.5.0.dist-info/METADATA,sha256=kQPo_DNjdBnZCaAYr4mxXduU2M04_fFKvu1LSoRRy1I,14010
|
|
54
|
+
iqm_station_control_client-9.5.0.dist-info/WHEEL,sha256=y4mX-SOX4fYIkonsAGA5N0Oy-8_gI4FXw5HNI1xqvWg,91
|
|
55
|
+
iqm_station_control_client-9.5.0.dist-info/top_level.txt,sha256=NB4XRfyDS6_wG9gMsyX-9LTU7kWnTQxNvkbzIxGv3-c,4
|
|
56
|
+
iqm_station_control_client-9.5.0.dist-info/RECORD,,
|
|
File without changes
|
{iqm_station_control_client-9.4.0.dist-info → iqm_station_control_client-9.5.0.dist-info}/WHEEL
RENAMED
|
File without changes
|
|
File without changes
|