isar 1.23.5__py3-none-any.whl → 1.24.1__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.

@@ -1,35 +1,35 @@
1
1
  -----BEGIN CERTIFICATE-----
2
- MIIGGzCCBAOgAwIBAgIUPvXRCWJJPVHgWWm0TR2bOIwBJv0wDQYJKoZIhvcNAQEL
2
+ MIIGGzCCBAOgAwIBAgIUSYiMjuwMgyqwMJ50grQRj92s7tEwDQYJKoZIhvcNAQEL
3
3
  BQAwgZwxCzAJBgNVBAYTAk5PMQ8wDQYDVQQIDAZCZXJnZW4xDzANBgNVBAcMBkJl
4
4
  cmdlbjEUMBIGA1UECgwLRXFfUm9ib3RpY3MxETAPBgNVBAsMCFJvYm90aWNzMRww
5
5
  GgYDVQQDDBNSb2JvdGljc19TZWxmU2lnbmVkMSQwIgYJKoZIhvcNAQkBFhVmZ19y
6
- b2JvdHNAZXF1aW5vci5jb20wHhcNMjQxMDAyMTMxNjA3WhcNMjUxMDAyMTMxNjA3
6
+ b2JvdHNAZXF1aW5vci5jb20wHhcNMjQxMTI5MTIwODA3WhcNMjUxMTI5MTIwODA3
7
7
  WjCBnDELMAkGA1UEBhMCTk8xDzANBgNVBAgMBkJlcmdlbjEPMA0GA1UEBwwGQmVy
8
8
  Z2VuMRQwEgYDVQQKDAtFcV9Sb2JvdGljczERMA8GA1UECwwIUm9ib3RpY3MxHDAa
9
9
  BgNVBAMME1JvYm90aWNzX1NlbGZTaWduZWQxJDAiBgkqhkiG9w0BCQEWFWZnX3Jv
10
10
  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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- CyppZCJoQakeyNTBdHJBsF/yRJ22j1PoTOqbQNLErTwrhQrre+N+GsuCmBVUM/Xa
27
- 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
- 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
- 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
- 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
- FHxszLjhoMYapE8QA8j3eOnkku6TwmlRXRnpHT85WW4gRHWcww/Cr4MVlFQ0LcPL
32
- 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
- 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
- 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
35
35
  -----END CERTIFICATE-----
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")
@@ -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
@@ -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.5
3
+ Version: 1.24.1
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
 
@@ -15,8 +15,8 @@ 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
19
- isar/config/certs/ca-cert.pem,sha256=ijutWtGOAnKx3xPydNLOVoCLip3tGkNKUpr6pTPQfJA,2179
18
+ isar/config/settings.py,sha256=lbpuXAyeSCHFcEuIQvbqwyJIOp23Rtdqpajf_HrUjbU,13491
19
+ isar/config/certs/ca-cert.pem,sha256=3X9NO4qzvA55PMXPyOwOCcXw33YVbF7tjPU5cX7vO5I,2179
20
20
  isar/config/keyvault/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
21
  isar/config/keyvault/keyvault_error.py,sha256=zvPCsZLjboxsxthYkxpRERCTFxYV8R5WmACewAUQLwk,41
22
22
  isar/config/keyvault/keyvault_service.py,sha256=b2EWNiNQmZ-FUWjZidNg5KXRcVH-U8CsiqcBf1devNw,3124
@@ -73,24 +73,24 @@ isar/state_machine/states/__init__.py,sha256=kErbKPDTwNfCLijvdyN6_AuOqDwR23nu9F0
73
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
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
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
93
- robot_interface/models/exceptions/robot_exceptions.py,sha256=tL3Pf45Nuh9dc9QDRt43SF4qZT3f2NVaRpYj1POVjsA,10093
93
+ robot_interface/models/exceptions/robot_exceptions.py,sha256=7s9X7GaQVhQiTnXLi-a51qRUX9CU7F4rEUMoRBiWF_I,10548
94
94
  robot_interface/models/initialize/__init__.py,sha256=rz5neEDr59GDbzzI_FF0DId-C-I-50l113P-h-C_QBY,48
95
95
  robot_interface/models/initialize/initialize_params.py,sha256=2eG5Aq5bDKU6tVkaUMAoc46GERBgyaKkqv6yLupdRLc,164
96
96
  robot_interface/models/inspection/__init__.py,sha256=14wfuj4XZazrigKD7fL98khFKz-eckIpEgPcYRj40Kg,227
@@ -103,14 +103,14 @@ robot_interface/models/robots/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5N
103
103
  robot_interface/models/robots/robot_model.py,sha256=pZQsqhn9hh6XE3EjMZhWMzYqg5oJ4CJ4CXeOASKvEf8,452
104
104
  robot_interface/telemetry/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
105
105
  robot_interface/telemetry/media_connection_type.py,sha256=Z8Jayi5SjBJh_xEd5KdS__A6bM-nofbSAedc6u41iAY,91
106
- robot_interface/telemetry/mqtt_client.py,sha256=RoXJFQ4YiaSQpHTlZ2LD-ICRPtfUhylEwgyt_3NE4xM,2916
106
+ robot_interface/telemetry/mqtt_client.py,sha256=DkzYZNWFaJkG3AVc0dM4Bj52hZEQj-14Q75zqzQcv9A,2988
107
107
  robot_interface/telemetry/payloads.py,sha256=FafpIwsOvcTNtaBZqyOX7r5EjG7nZ2uLNhyJo2l5GiI,1767
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.5.dist-info/LICENSE,sha256=3fc2-ebLwHWwzfQbulGNRdcNob3SBQeCfEVUDYxsuqw,14058
112
- isar-1.23.5.dist-info/METADATA,sha256=pI3vaDeWSZzgyf8DX-bUu2jWw4ReGlKykCUtDgZr6F0,30674
113
- isar-1.23.5.dist-info/WHEEL,sha256=R06PA3UVYHThwHvxuRWMqaGcr-PuniXahwjmQRFMEkY,91
114
- isar-1.23.5.dist-info/entry_points.txt,sha256=TFam7uNNw7J0iiDYzsH2gfG0u1eV1wh3JTw_HkhgKLk,49
115
- isar-1.23.5.dist-info/top_level.txt,sha256=UwIML2RtuQKCyJJkatcSnyp6-ldDjboB9k9JgKipO-U,21
116
- isar-1.23.5.dist-info/RECORD,,
111
+ isar-1.24.1.dist-info/LICENSE,sha256=3fc2-ebLwHWwzfQbulGNRdcNob3SBQeCfEVUDYxsuqw,14058
112
+ isar-1.24.1.dist-info/METADATA,sha256=pwUuwsVvZLQpkRAeB0Fp4pN57jatvgLN58n4JgLLWDA,30661
113
+ isar-1.24.1.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
114
+ isar-1.24.1.dist-info/entry_points.txt,sha256=TFam7uNNw7J0iiDYzsH2gfG0u1eV1wh3JTw_HkhgKLk,49
115
+ isar-1.24.1.dist-info/top_level.txt,sha256=UwIML2RtuQKCyJJkatcSnyp6-ldDjboB9k9JgKipO-U,21
116
+ isar-1.24.1.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.5.0)
2
+ Generator: setuptools (75.6.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -16,6 +16,7 @@ class ErrorReason(str, Enum):
16
16
  RobotRetrieveDataException: str = "robot_retrieve_data_exception"
17
17
  RobotRetrieveInspectionException: str = "robot_retrieve_inspection_exception"
18
18
  RobotTelemetryException: str = "robot_telemetry_exception"
19
+ RobotTelemetryNoUpdateException: str = "robot_telemetry_no_update_exception"
19
20
  RobotTelemetryPoseException: str = "robot_telemetry_pose_exception"
20
21
  RobotMapException: str = "robot_map_exception"
21
22
  RobotTransformException: str = "robot_transform_exception"
@@ -202,6 +203,17 @@ class RobotTelemetryPoseException(RobotException):
202
203
  pass
203
204
 
204
205
 
206
+ # An exception which should be thrown by the robot package if there is no new telemetry update.
207
+ class RobotTelemetryNoUpdateException(RobotException):
208
+ def __init__(self, error_description: str) -> None:
209
+ super().__init__(
210
+ error_reason=ErrorReason.RobotTelemetryNoUpdateException,
211
+ error_description=error_description,
212
+ )
213
+
214
+ pass
215
+
216
+
205
217
  # An exception which should be thrown by the robot package if it is unable to load the
206
218
  # configuration for maps and transformations. This could be caused by faulty
207
219
  # configuration and this exception will cause ISAR to crash as further execution is not
@@ -7,6 +7,7 @@ from typing import Callable, Tuple
7
7
 
8
8
  from robot_interface.models.exceptions.robot_exceptions import (
9
9
  RobotTelemetryException,
10
+ RobotTelemetryNoUpdateException,
10
11
  RobotTelemetryPoseException,
11
12
  )
12
13
  from robot_interface.telemetry.payloads import CloudHealthPayload
@@ -74,7 +75,7 @@ class MqttTelemetryPublisher(MqttClientInterface):
74
75
  try:
75
76
  payload = self.telemetry_method(isar_id=isar_id, robot_name=robot_name)
76
77
  topic = self.topic
77
- except RobotTelemetryPoseException:
78
+ except (RobotTelemetryPoseException, RobotTelemetryNoUpdateException):
78
79
  time.sleep(self.interval)
79
80
  continue
80
81
  except RobotTelemetryException:
File without changes