isar 1.23.4__py3-none-any.whl → 1.24.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.

Potentially problematic release.


This version of isar might be problematic. Click here for more details.

isar/config/settings.py CHANGED
@@ -144,9 +144,7 @@ class Settings(BaseSettings):
144
144
  UPLOAD_INSPECTIONS_ASYNC: bool = Field(default=False)
145
145
 
146
146
  # URL to storage account for Azure Blob Storage
147
- BLOB_STORAGE_ACCOUNT_URL: str = Field(
148
- default="https://eqrobotdevstorage.blob.core.windows.net"
149
- )
147
+ BLOB_STORAGE_ACCOUNT: str = Field(default="eqrobotdevstorage")
150
148
 
151
149
  # Name of blob container in Azure Blob Storage [slimm test]
152
150
  BLOB_CONTAINER: str = Field(default="test")
isar/script.py CHANGED
@@ -109,10 +109,10 @@ def start():
109
109
 
110
110
  if settings.UPLOAD_INSPECTIONS_ASYNC:
111
111
 
112
- def inspections_callback(inspection: Inspection):
112
+ def inspections_callback(inspection: Inspection, mission: Mission):
113
113
  message: Tuple[Inspection, Mission] = (
114
114
  inspection,
115
- state_machine.current_mission,
115
+ mission,
116
116
  )
117
117
  state_machine.queues.upload_queue.put(message)
118
118
 
@@ -71,7 +71,7 @@ class Idle(State):
71
71
  time.sleep(self.state_machine.sleep_time)
72
72
  continue
73
73
 
74
- except (RobotException,) as e:
74
+ except RobotException as e:
75
75
  self.logger.error(
76
76
  f"Failed to get robot status because: {e.error_description}"
77
77
  )
@@ -49,6 +49,7 @@ class Monitor(State):
49
49
  if self.task_status_thread:
50
50
  self.task_status_thread.wait_for_thread()
51
51
  self.task_status_thread = None
52
+ self.request_status_failure_counter = 0
52
53
 
53
54
  def _run(self) -> None:
54
55
  transition: Callable
@@ -48,7 +48,7 @@ class Offline(State):
48
48
  time.sleep(self.state_machine.sleep_time)
49
49
  continue
50
50
 
51
- except (RobotException,) as e:
51
+ except RobotException as e:
52
52
  self.logger.error(
53
53
  f"Failed to get robot status because: {e.error_description}"
54
54
  )
@@ -59,7 +59,7 @@ class BlobStorage(StorageInterface):
59
59
 
60
60
  absolute_inspection_path = {
61
61
  "source": "blob",
62
- "blob_storage_account_url": settings.BLOB_STORAGE_ACCOUNT_URL,
62
+ "storage_account": settings.BLOB_STORAGE_ACCOUNT,
63
63
  "blob_container": settings.BLOB_CONTAINER,
64
64
  "blob_name": blob_client.blob_name,
65
65
  }
isar/storage/uploader.py CHANGED
@@ -155,7 +155,8 @@ class Uploader:
155
155
  "robot_name": settings.ROBOT_NAME,
156
156
  "inspection_id": inspection.id,
157
157
  "inspection_path": inspection_path,
158
- "analysis_type": inspection.metadata.analysis_type,
158
+ "installation_code": settings.PLANT_SHORT_NAME,
159
+ "analysis_to_be_run": inspection.metadata.analysis_type,
159
160
  "timestamp": datetime.now(timezone.utc),
160
161
  },
161
162
  cls=EnhancedJSONEncoder,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: isar
3
- Version: 1.23.4
3
+ Version: 1.24.0
4
4
  Summary: Integration and Supervisory control of Autonomous Robots
5
5
  Author-email: Equinor ASA <fg_robots_dev@equinor.com>
6
6
  License: Eclipse Public License version 2.0
@@ -101,7 +101,7 @@ Classifier: Topic :: Software Development :: Libraries
101
101
  Requires-Python: >=3.9
102
102
  Description-Content-Type: text/markdown
103
103
  License-File: LICENSE
104
- Requires-Dist: alitra >=1.1.3
104
+ Requires-Dist: alitra>=1.1.3
105
105
  Requires-Dist: azure-identity
106
106
  Requires-Dist: azure-keyvault-secrets
107
107
  Requires-Dist: azure-storage-blob
@@ -116,7 +116,7 @@ Requires-Dist: opencensus-ext-azure
116
116
  Requires-Dist: opencensus-ext-logging
117
117
  Requires-Dist: opencensus-ext-requests
118
118
  Requires-Dist: paho-mqtt
119
- Requires-Dist: pydantic-settings
119
+ Requires-Dist: pydantic_settings
120
120
  Requires-Dist: pydantic
121
121
  Requires-Dist: PyJWT
122
122
  Requires-Dist: python-dotenv
@@ -126,18 +126,18 @@ Requires-Dist: requests
126
126
  Requires-Dist: transitions
127
127
  Requires-Dist: uvicorn
128
128
  Provides-Extra: dev
129
- Requires-Dist: black ; extra == 'dev'
130
- Requires-Dist: flake8 ; extra == 'dev'
131
- Requires-Dist: mypy ; extra == 'dev'
132
- Requires-Dist: myst-parser ; extra == 'dev'
133
- Requires-Dist: pip-tools ; extra == 'dev'
134
- Requires-Dist: pre-commit ; extra == 'dev'
135
- Requires-Dist: pytest-dotenv ; extra == 'dev'
136
- Requires-Dist: pytest-mock ; extra == 'dev'
137
- Requires-Dist: pytest-xdist ; extra == 'dev'
138
- Requires-Dist: pytest ; extra == 'dev'
139
- Requires-Dist: requests-mock ; extra == 'dev'
140
- Requires-Dist: sphinx ; extra == 'dev'
129
+ Requires-Dist: black; extra == "dev"
130
+ Requires-Dist: flake8; extra == "dev"
131
+ Requires-Dist: mypy; extra == "dev"
132
+ Requires-Dist: myst-parser; extra == "dev"
133
+ Requires-Dist: pip-tools; extra == "dev"
134
+ Requires-Dist: pre-commit; extra == "dev"
135
+ Requires-Dist: pytest-dotenv; extra == "dev"
136
+ Requires-Dist: pytest-mock; extra == "dev"
137
+ Requires-Dist: pytest-xdist; extra == "dev"
138
+ Requires-Dist: pytest; extra == "dev"
139
+ Requires-Dist: requests-mock; extra == "dev"
140
+ Requires-Dist: sphinx; extra == "dev"
141
141
 
142
142
  # ISAR
143
143
 
@@ -1,6 +1,6 @@
1
1
  isar/__init__.py,sha256=cH8p8bVveu3FUL6kBhldcSlLaoHgD82Kd0-SwSNfGXw,87
2
2
  isar/modules.py,sha256=aO8bLSC4i_Qo4bOJ6aFfwAZRTJAw8o9SOOfkceUGCiU,6708
3
- isar/script.py,sha256=UT-JVu25vOiGaTjGR7hESlfBBITZF6dCy4frtMSUc6Y,5969
3
+ isar/script.py,sha256=9cIRRTnuMbIAj435tGyoSpTkyGL4huCxfppvMtV2p4Y,5965
4
4
  isar/apis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
5
  isar/apis/api.py,sha256=PYJggz9Xh0alo2DWU3QD4lEBQY3PkEs335JE2qG87WQ,13170
6
6
  isar/apis/models/__init__.py,sha256=NI1BYyN__Ogr00Qqe0XJ-9gEVPva2brXo2RJsbrS4tM,52
@@ -15,7 +15,7 @@ isar/config/configuration_error.py,sha256=rO6WOhafX6xvVib8WxV-eY483Z0PpN-9PxGsq5
15
15
  isar/config/log.py,sha256=zHFLmGWQRn8TrcsxUS6KHpJt2JE86kYazU7b-bkcN9o,2285
16
16
  isar/config/logging.conf,sha256=mYO1xf27gAopEMHhGzY7-mwyfN16rwRLkPNMvy3zn2g,1127
17
17
  isar/config/settings.env,sha256=hJFfyl4S84nmcyf70Pz8nbGlPf4KTVx0UkgP3uf6T8E,534
18
- isar/config/settings.py,sha256=0FA0hXqfcJHcfbCJVbbGvSUJGfFX5a0PGTTq8TI6hnw,13539
18
+ isar/config/settings.py,sha256=lbpuXAyeSCHFcEuIQvbqwyJIOp23Rtdqpajf_HrUjbU,13491
19
19
  isar/config/certs/ca-cert.pem,sha256=ijutWtGOAnKx3xPydNLOVoCLip3tGkNKUpr6pTPQfJA,2179
20
20
  isar/config/keyvault/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
21
  isar/config/keyvault/keyvault_error.py,sha256=zvPCsZLjboxsxthYkxpRERCTFxYV8R5WmACewAUQLwk,41
@@ -70,23 +70,23 @@ isar/state_machine/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuF
70
70
  isar/state_machine/state_machine.py,sha256=A7qAaXEnErmPQ7--sM7w9VabceS0qJOProlmwMb9iaU,21299
71
71
  isar/state_machine/states_enum.py,sha256=BlrUcBWkM5K6D_UZXRwTaUgGpAagWmVZH6HhDBGzVU4,278
72
72
  isar/state_machine/states/__init__.py,sha256=kErbKPDTwNfCLijvdyN6_AuOqDwR23nu9F0Qovsnir4,218
73
- isar/state_machine/states/idle.py,sha256=iAKESjETKUt9x3inE7TAPIohVM1iRsYyJjOoBeB3sVw,3079
73
+ isar/state_machine/states/idle.py,sha256=TVUVtoFwe3-InO4tEupa1_MNG3bviLuMxmHV7FX7Js0,3076
74
74
  isar/state_machine/states/initialize.py,sha256=TVXV5Ps3N4_flM88j9pQiX88kZgLzLwzlJy_6hPbgcA,2359
75
75
  isar/state_machine/states/initiate.py,sha256=j1wvSC3zVODgRkKOVsQROiuWkjihSBtwCs5GsoivLvc,5655
76
- isar/state_machine/states/monitor.py,sha256=mQyJrmsjuMFwcit10SPmJFEbDAMRoSAtFUlooWb6vT0,9530
76
+ isar/state_machine/states/monitor.py,sha256=4gCSf_FpHcxPiaaAuOJ5Tqhw79kqcaY5e_fg0nmA83I,9578
77
77
  isar/state_machine/states/off.py,sha256=jjqN_oJMpBtWuY7hP-c9f0w3p2CYCfe-NpmYHHPnmyI,544
78
- isar/state_machine/states/offline.py,sha256=ur5wDo4NWRLn7n-p5IUY6aSYcGApmqe_0IbRRywA6qA,2169
78
+ isar/state_machine/states/offline.py,sha256=IfEZ6-kl6OfJSRT1eKHOey7AU23tKiSHqpwGqclmH_c,2166
79
79
  isar/state_machine/states/paused.py,sha256=TIg1iJvAxGUIfzE_qWp0wrq4Ka0a3zEf3GNwIWLIK0M,1177
80
80
  isar/state_machine/states/stop.py,sha256=WVyjhndHcccy7_P9bU7SXyZB3qphsGahdSymaghGc08,3348
81
81
  isar/storage/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
82
- isar/storage/blob_storage.py,sha256=oKdml1VVN8iTr-d_5H4Lz5E7zrhJRknCzOxHD-tO7m8,3230
82
+ isar/storage/blob_storage.py,sha256=8sfG1I23nPyVy6uZOq0O0FycZBjsSDIuAWdCVdVMEeM,3217
83
83
  isar/storage/local_storage.py,sha256=Bnmoi5gyN8r-oRh0aHrOdGqaH3JqRScFKMRXYojW5kY,1855
84
84
  isar/storage/slimm_storage.py,sha256=Hp7ZIgZgIR4KAFjzxDKfgMZjPZwP2kmdc1gG8zVcsMk,8966
85
85
  isar/storage/storage_interface.py,sha256=DYDry4I7aZpDHJhsBF6s8zrgokFAc7fdKJKfA8AvL7o,828
86
- isar/storage/uploader.py,sha256=_f-uIiL5ye6GLc7nYQxHrqDXrIquoL_t5tt9SSaYoDA,6440
86
+ isar/storage/uploader.py,sha256=JBlgaHYdFFUPlkx0eI0HBhP93fr9PIPTaYp6HG0iMeU,6509
87
87
  isar/storage/utilities.py,sha256=AGqOzhnyPXSStpJjBstqQ4QgUoHJioQB2DJ1NqeWn_w,3136
88
88
  robot_interface/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
89
- robot_interface/robot_interface.py,sha256=H1hsuiFDcB5tTfan3VsXQyWy2jArWeBkMTr1VvZ4vIs,9061
89
+ robot_interface/robot_interface.py,sha256=TJjB1FNXxkKxen5zwfXdAUqqlTZ1pAl6St9SuCiwv1E,9086
90
90
  robot_interface/test_robot_interface.py,sha256=FV1urn7SbsMyWBIcTKjsBwAG4IsXeZ6pLHE0mA9EGGs,692
91
91
  robot_interface/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
92
92
  robot_interface/models/exceptions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -108,9 +108,9 @@ robot_interface/telemetry/payloads.py,sha256=FafpIwsOvcTNtaBZqyOX7r5EjG7nZ2uLNhy
108
108
  robot_interface/utilities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
109
109
  robot_interface/utilities/json_service.py,sha256=nU2Q_3P9Fq9hs6F_wtUjWtHfl_g1Siy-yDhXXSKwHwg,1018
110
110
  robot_interface/utilities/uuid_string_factory.py,sha256=_NQIbBQ56w0qqO0MUDP6aPpHbxW7ATRhK8HnQiBSLkc,76
111
- isar-1.23.4.dist-info/LICENSE,sha256=3fc2-ebLwHWwzfQbulGNRdcNob3SBQeCfEVUDYxsuqw,14058
112
- isar-1.23.4.dist-info/METADATA,sha256=QffW0qReds1tlXA-Zb7bzrWkezchNIx2IiK1rkXhz6s,30674
113
- isar-1.23.4.dist-info/WHEEL,sha256=P9jw-gEje8ByB7_hXoICnHtVCrEwMQh-630tKvQWehc,91
114
- isar-1.23.4.dist-info/entry_points.txt,sha256=TFam7uNNw7J0iiDYzsH2gfG0u1eV1wh3JTw_HkhgKLk,49
115
- isar-1.23.4.dist-info/top_level.txt,sha256=UwIML2RtuQKCyJJkatcSnyp6-ldDjboB9k9JgKipO-U,21
116
- isar-1.23.4.dist-info/RECORD,,
111
+ isar-1.24.0.dist-info/LICENSE,sha256=3fc2-ebLwHWwzfQbulGNRdcNob3SBQeCfEVUDYxsuqw,14058
112
+ isar-1.24.0.dist-info/METADATA,sha256=qqbu0Z7e1Fs45oQLR1Cj4TokH5F5swLBwUuCfJVQulE,30661
113
+ isar-1.24.0.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
114
+ isar-1.24.0.dist-info/entry_points.txt,sha256=TFam7uNNw7J0iiDYzsH2gfG0u1eV1wh3JTw_HkhgKLk,49
115
+ isar-1.24.0.dist-info/top_level.txt,sha256=UwIML2RtuQKCyJJkatcSnyp6-ldDjboB9k9JgKipO-U,21
116
+ isar-1.24.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.3.0)
2
+ Generator: setuptools (75.6.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -182,14 +182,14 @@ class RobotInterface(metaclass=ABCMeta):
182
182
 
183
183
  @abstractmethod
184
184
  def register_inspection_callback(
185
- self, callback_function: Callable[[Inspection], None]
185
+ self, callback_function: Callable[[Inspection, Mission], None]
186
186
  ) -> None:
187
187
  """Register a function which should be run when inspection data is received
188
188
  asynchronously. This function should expect to receive an Inspection from.
189
189
 
190
190
  Parameters
191
191
  ----------
192
- callback_function : Callable[[Inspection]
192
+ callback_function : Callable[[Inspection, Mission], None]
193
193
 
194
194
  Returns
195
195
  -------
File without changes