isar 1.33.4__tar.gz → 1.33.5__tar.gz

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.

Files changed (215) hide show
  1. {isar-1.33.4 → isar-1.33.5}/PKG-INFO +1 -1
  2. {isar-1.33.4 → isar-1.33.5}/requirements.txt +38 -38
  3. {isar-1.33.4 → isar-1.33.5}/src/isar/apis/robot_control/robot_controller.py +5 -0
  4. {isar-1.33.4 → isar-1.33.5}/src/isar/apis/schedule/scheduling_controller.py +11 -0
  5. {isar-1.33.4 → isar-1.33.5}/src/isar/config/settings.py +1 -1
  6. {isar-1.33.4 → isar-1.33.5}/src/isar.egg-info/PKG-INFO +1 -1
  7. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/models/exceptions/robot_exceptions.py +11 -0
  8. {isar-1.33.4 → isar-1.33.5}/.dockerignore +0 -0
  9. {isar-1.33.4 → isar-1.33.5}/.env.test +0 -0
  10. {isar-1.33.4 → isar-1.33.5}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  11. {isar-1.33.4 → isar-1.33.5}/.github/ISSUE_TEMPLATE/feature.md +0 -0
  12. {isar-1.33.4 → isar-1.33.5}/.github/ISSUE_TEMPLATE/improvement.md +0 -0
  13. {isar-1.33.4 → isar-1.33.5}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  14. {isar-1.33.4 → isar-1.33.5}/.github/release.yml +0 -0
  15. {isar-1.33.4 → isar-1.33.5}/.github/workflows/compile_requirements.yml +0 -0
  16. {isar-1.33.4 → isar-1.33.5}/.github/workflows/project_automations.yml +0 -0
  17. {isar-1.33.4 → isar-1.33.5}/.github/workflows/pythonpackage.yml +0 -0
  18. {isar-1.33.4 → isar-1.33.5}/.github/workflows/pythonpublish.yml +0 -0
  19. {isar-1.33.4 → isar-1.33.5}/.github/workflows/stale.yml +0 -0
  20. {isar-1.33.4 → isar-1.33.5}/.gitignore +0 -0
  21. {isar-1.33.4 → isar-1.33.5}/.pre-commit-config.yaml +0 -0
  22. {isar-1.33.4 → isar-1.33.5}/LICENSE +0 -0
  23. {isar-1.33.4 → isar-1.33.5}/README.md +0 -0
  24. {isar-1.33.4 → isar-1.33.5}/SECURITY.md +0 -0
  25. {isar-1.33.4 → isar-1.33.5}/docs/Makefile +0 -0
  26. {isar-1.33.4 → isar-1.33.5}/docs/full_state_machine_diagram.png +0 -0
  27. {isar-1.33.4 → isar-1.33.5}/docs/make.bat +0 -0
  28. {isar-1.33.4 → isar-1.33.5}/docs/mission_state_machine_diagram.png +0 -0
  29. {isar-1.33.4 → isar-1.33.5}/docs/robot_status_state_machine_diagram.png +0 -0
  30. {isar-1.33.4 → isar-1.33.5}/docs/rst_processing.py +0 -0
  31. {isar-1.33.4 → isar-1.33.5}/docs/source/conf.py +0 -0
  32. {isar-1.33.4 → isar-1.33.5}/docs/source/index.rst +0 -0
  33. {isar-1.33.4 → isar-1.33.5}/docs/source/readme_link.md +0 -0
  34. {isar-1.33.4 → isar-1.33.5}/docs/update_state_diagram.py +0 -0
  35. {isar-1.33.4 → isar-1.33.5}/main.py +0 -0
  36. {isar-1.33.4 → isar-1.33.5}/pyproject.toml +0 -0
  37. {isar-1.33.4 → isar-1.33.5}/radixconfig.yml +0 -0
  38. {isar-1.33.4 → isar-1.33.5}/setup.cfg +0 -0
  39. {isar-1.33.4 → isar-1.33.5}/src/isar/__init__.py +0 -0
  40. {isar-1.33.4 → isar-1.33.5}/src/isar/apis/__init__.py +0 -0
  41. {isar-1.33.4 → isar-1.33.5}/src/isar/apis/api.py +0 -0
  42. {isar-1.33.4 → isar-1.33.5}/src/isar/apis/models/__init__.py +0 -0
  43. {isar-1.33.4 → isar-1.33.5}/src/isar/apis/models/models.py +0 -0
  44. {isar-1.33.4 → isar-1.33.5}/src/isar/apis/models/start_mission_definition.py +0 -0
  45. {isar-1.33.4 → isar-1.33.5}/src/isar/apis/schedule/__init__.py +0 -0
  46. {isar-1.33.4 → isar-1.33.5}/src/isar/apis/security/__init__.py +0 -0
  47. {isar-1.33.4 → isar-1.33.5}/src/isar/apis/security/authentication.py +0 -0
  48. {isar-1.33.4 → isar-1.33.5}/src/isar/config/__init__.py +0 -0
  49. {isar-1.33.4 → isar-1.33.5}/src/isar/config/certs/ca-cert.pem +0 -0
  50. {isar-1.33.4 → isar-1.33.5}/src/isar/config/configuration_error.py +0 -0
  51. {isar-1.33.4 → isar-1.33.5}/src/isar/config/keyvault/__init__.py +0 -0
  52. {isar-1.33.4 → isar-1.33.5}/src/isar/config/keyvault/keyvault_error.py +0 -0
  53. {isar-1.33.4 → isar-1.33.5}/src/isar/config/keyvault/keyvault_service.py +0 -0
  54. {isar-1.33.4 → isar-1.33.5}/src/isar/config/log.py +0 -0
  55. {isar-1.33.4 → isar-1.33.5}/src/isar/config/logging.conf +0 -0
  56. {isar-1.33.4 → isar-1.33.5}/src/isar/config/maps/JSP1_intermediate_deck.json +0 -0
  57. {isar-1.33.4 → isar-1.33.5}/src/isar/config/maps/JSP1_weather_deck.json +0 -0
  58. {isar-1.33.4 → isar-1.33.5}/src/isar/config/maps/default_map.json +0 -0
  59. {isar-1.33.4 → isar-1.33.5}/src/isar/config/maps/klab_b.json +0 -0
  60. {isar-1.33.4 → isar-1.33.5}/src/isar/config/maps/klab_compressor.json +0 -0
  61. {isar-1.33.4 → isar-1.33.5}/src/isar/config/maps/klab_turtlebot.json +0 -0
  62. {isar-1.33.4 → isar-1.33.5}/src/isar/config/maps/turtleworld.json +0 -0
  63. {isar-1.33.4 → isar-1.33.5}/src/isar/config/open_telemetry.py +0 -0
  64. {isar-1.33.4 → isar-1.33.5}/src/isar/config/predefined_mission_definition/__init__.py +0 -0
  65. {isar-1.33.4 → isar-1.33.5}/src/isar/config/predefined_mission_definition/default_exr.json +0 -0
  66. {isar-1.33.4 → isar-1.33.5}/src/isar/config/predefined_mission_definition/default_mission.json +0 -0
  67. {isar-1.33.4 → isar-1.33.5}/src/isar/config/predefined_mission_definition/default_turtlebot.json +0 -0
  68. {isar-1.33.4 → isar-1.33.5}/src/isar/config/predefined_missions/__init__.py +0 -0
  69. {isar-1.33.4 → isar-1.33.5}/src/isar/config/predefined_missions/default.json +0 -0
  70. {isar-1.33.4 → isar-1.33.5}/src/isar/config/predefined_missions/default_turtlebot.json +0 -0
  71. {isar-1.33.4 → isar-1.33.5}/src/isar/eventhandlers/eventhandler.py +0 -0
  72. {isar-1.33.4 → isar-1.33.5}/src/isar/mission_planner/__init__.py +0 -0
  73. {isar-1.33.4 → isar-1.33.5}/src/isar/mission_planner/local_planner.py +0 -0
  74. {isar-1.33.4 → isar-1.33.5}/src/isar/mission_planner/mission_planner_interface.py +0 -0
  75. {isar-1.33.4 → isar-1.33.5}/src/isar/mission_planner/sequential_task_selector.py +0 -0
  76. {isar-1.33.4 → isar-1.33.5}/src/isar/mission_planner/task_selector_interface.py +0 -0
  77. {isar-1.33.4 → isar-1.33.5}/src/isar/models/__init__.py +0 -0
  78. {isar-1.33.4 → isar-1.33.5}/src/isar/models/events.py +0 -0
  79. {isar-1.33.4 → isar-1.33.5}/src/isar/modules.py +0 -0
  80. {isar-1.33.4 → isar-1.33.5}/src/isar/robot/robot.py +0 -0
  81. {isar-1.33.4 → isar-1.33.5}/src/isar/robot/robot_start_mission.py +0 -0
  82. {isar-1.33.4 → isar-1.33.5}/src/isar/robot/robot_status.py +0 -0
  83. {isar-1.33.4 → isar-1.33.5}/src/isar/robot/robot_stop_mission.py +0 -0
  84. {isar-1.33.4 → isar-1.33.5}/src/isar/robot/robot_task_status.py +0 -0
  85. {isar-1.33.4 → isar-1.33.5}/src/isar/script.py +0 -0
  86. {isar-1.33.4 → isar-1.33.5}/src/isar/services/__init__.py +0 -0
  87. {isar-1.33.4 → isar-1.33.5}/src/isar/services/auth/__init__.py +0 -0
  88. {isar-1.33.4 → isar-1.33.5}/src/isar/services/auth/azure_credentials.py +0 -0
  89. {isar-1.33.4 → isar-1.33.5}/src/isar/services/service_connections/__init__.py +0 -0
  90. {isar-1.33.4 → isar-1.33.5}/src/isar/services/service_connections/mqtt/__init__.py +0 -0
  91. {isar-1.33.4 → isar-1.33.5}/src/isar/services/service_connections/mqtt/mqtt_client.py +0 -0
  92. {isar-1.33.4 → isar-1.33.5}/src/isar/services/service_connections/mqtt/robot_heartbeat_publisher.py +0 -0
  93. {isar-1.33.4 → isar-1.33.5}/src/isar/services/service_connections/mqtt/robot_info_publisher.py +0 -0
  94. {isar-1.33.4 → isar-1.33.5}/src/isar/services/service_connections/request_handler.py +0 -0
  95. {isar-1.33.4 → isar-1.33.5}/src/isar/services/utilities/__init__.py +0 -0
  96. {isar-1.33.4 → isar-1.33.5}/src/isar/services/utilities/robot_utilities.py +0 -0
  97. {isar-1.33.4 → isar-1.33.5}/src/isar/services/utilities/scheduling_utilities.py +0 -0
  98. {isar-1.33.4 → isar-1.33.5}/src/isar/services/utilities/threaded_request.py +0 -0
  99. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/__init__.py +0 -0
  100. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/state_machine.py +0 -0
  101. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/states/__init__.py +0 -0
  102. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/states/await_next_mission.py +0 -0
  103. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/states/blocked_protective_stop.py +0 -0
  104. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/states/home.py +0 -0
  105. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/states/intervention_needed.py +0 -0
  106. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/states/monitor.py +0 -0
  107. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/states/offline.py +0 -0
  108. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/states/paused.py +0 -0
  109. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/states/recharging.py +0 -0
  110. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/states/return_home_paused.py +0 -0
  111. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/states/returning_home.py +0 -0
  112. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/states/stopping.py +0 -0
  113. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/states/stopping_return_home.py +0 -0
  114. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/states/unknown_status.py +0 -0
  115. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/states_enum.py +0 -0
  116. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/transitions/functions/fail_mission.py +0 -0
  117. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/transitions/functions/finish_mission.py +0 -0
  118. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/transitions/functions/pause.py +0 -0
  119. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/transitions/functions/resume.py +0 -0
  120. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/transitions/functions/return_home.py +0 -0
  121. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/transitions/functions/robot_status.py +0 -0
  122. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/transitions/functions/start_mission.py +0 -0
  123. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/transitions/functions/stop.py +0 -0
  124. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/transitions/functions/utils.py +0 -0
  125. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/transitions/mission.py +0 -0
  126. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/transitions/return_home.py +0 -0
  127. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/transitions/robot_status.py +0 -0
  128. {isar-1.33.4 → isar-1.33.5}/src/isar/state_machine/utils/common_event_handlers.py +0 -0
  129. {isar-1.33.4 → isar-1.33.5}/src/isar/storage/__init__.py +0 -0
  130. {isar-1.33.4 → isar-1.33.5}/src/isar/storage/blob_storage.py +0 -0
  131. {isar-1.33.4 → isar-1.33.5}/src/isar/storage/local_storage.py +0 -0
  132. {isar-1.33.4 → isar-1.33.5}/src/isar/storage/storage_interface.py +0 -0
  133. {isar-1.33.4 → isar-1.33.5}/src/isar/storage/uploader.py +0 -0
  134. {isar-1.33.4 → isar-1.33.5}/src/isar/storage/utilities.py +0 -0
  135. {isar-1.33.4 → isar-1.33.5}/src/isar.egg-info/SOURCES.txt +0 -0
  136. {isar-1.33.4 → isar-1.33.5}/src/isar.egg-info/dependency_links.txt +0 -0
  137. {isar-1.33.4 → isar-1.33.5}/src/isar.egg-info/entry_points.txt +0 -0
  138. {isar-1.33.4 → isar-1.33.5}/src/isar.egg-info/requires.txt +0 -0
  139. {isar-1.33.4 → isar-1.33.5}/src/isar.egg-info/top_level.txt +0 -0
  140. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/__init__.py +0 -0
  141. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/models/__init__.py +0 -0
  142. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/models/exceptions/__init__.py +0 -0
  143. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/models/initialize/__init__.py +0 -0
  144. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/models/inspection/__init__.py +0 -0
  145. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/models/inspection/inspection.py +0 -0
  146. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/models/mission/__init__.py +0 -0
  147. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/models/mission/mission.py +0 -0
  148. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/models/mission/status.py +0 -0
  149. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/models/mission/task.py +0 -0
  150. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/models/robots/__init__.py +0 -0
  151. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/models/robots/battery_state.py +0 -0
  152. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/models/robots/media.py +0 -0
  153. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/models/robots/robot_model.py +0 -0
  154. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/robot_interface.py +0 -0
  155. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/telemetry/__init__.py +0 -0
  156. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/telemetry/mqtt_client.py +0 -0
  157. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/telemetry/payloads.py +0 -0
  158. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/test_robot_interface.py +0 -0
  159. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/utilities/__init__.py +0 -0
  160. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/utilities/json_service.py +0 -0
  161. {isar-1.33.4 → isar-1.33.5}/src/robot_interface/utilities/uuid_string_factory.py +0 -0
  162. {isar-1.33.4 → isar-1.33.5}/tests/__init__.py +0 -0
  163. {isar-1.33.4 → isar-1.33.5}/tests/conftest.py +0 -0
  164. {isar-1.33.4 → isar-1.33.5}/tests/integration/__init__.py +0 -0
  165. {isar-1.33.4 → isar-1.33.5}/tests/integration/turtlebot/__init__.py +0 -0
  166. {isar-1.33.4 → isar-1.33.5}/tests/integration/turtlebot/config/__init__.py +0 -0
  167. {isar-1.33.4 → isar-1.33.5}/tests/integration/turtlebot/config/maps/__init__.py +0 -0
  168. {isar-1.33.4 → isar-1.33.5}/tests/integration/turtlebot/config/maps/turtleworld.json +0 -0
  169. {isar-1.33.4 → isar-1.33.5}/tests/integration/turtlebot/config/missions/__init__.py +0 -0
  170. {isar-1.33.4 → isar-1.33.5}/tests/integration/turtlebot/config/missions/default.json +0 -0
  171. {isar-1.33.4 → isar-1.33.5}/tests/integration/turtlebot/test_successful_mission.py +0 -0
  172. {isar-1.33.4 → isar-1.33.5}/tests/isar/__init__.py +0 -0
  173. {isar-1.33.4 → isar-1.33.5}/tests/isar/apis/__init__.py +0 -0
  174. {isar-1.33.4 → isar-1.33.5}/tests/isar/apis/models/__init__.py +0 -0
  175. {isar-1.33.4 → isar-1.33.5}/tests/isar/apis/models/example_mission_definition.json +0 -0
  176. {isar-1.33.4 → isar-1.33.5}/tests/isar/apis/models/test_start_mission_definition.py +0 -0
  177. {isar-1.33.4 → isar-1.33.5}/tests/isar/apis/scheduler/__init__.py +0 -0
  178. {isar-1.33.4 → isar-1.33.5}/tests/isar/apis/scheduler/test_scheduler_router.py +0 -0
  179. {isar-1.33.4 → isar-1.33.5}/tests/isar/apis/security/__init__.py +0 -0
  180. {isar-1.33.4 → isar-1.33.5}/tests/isar/apis/security/test_authentication.py +0 -0
  181. {isar-1.33.4 → isar-1.33.5}/tests/isar/mission/__init__.py +0 -0
  182. {isar-1.33.4 → isar-1.33.5}/tests/isar/mission/test_mission.py +0 -0
  183. {isar-1.33.4 → isar-1.33.5}/tests/isar/models/__init__.py +0 -0
  184. {isar-1.33.4 → isar-1.33.5}/tests/isar/models/communication/__init__.py +0 -0
  185. {isar-1.33.4 → isar-1.33.5}/tests/isar/models/communication/test_events.py +0 -0
  186. {isar-1.33.4 → isar-1.33.5}/tests/isar/services/__init__.py +0 -0
  187. {isar-1.33.4 → isar-1.33.5}/tests/isar/services/readers/__init__.py +0 -0
  188. {isar-1.33.4 → isar-1.33.5}/tests/isar/services/readers/test_mission_reader.py +0 -0
  189. {isar-1.33.4 → isar-1.33.5}/tests/isar/services/service_connections/__init__.py +0 -0
  190. {isar-1.33.4 → isar-1.33.5}/tests/isar/services/service_connections/echo/__init__.py +0 -0
  191. {isar-1.33.4 → isar-1.33.5}/tests/isar/services/service_connections/test_base_request_handler.py +0 -0
  192. {isar-1.33.4 → isar-1.33.5}/tests/isar/services/utilities/__init__.py +0 -0
  193. {isar-1.33.4 → isar-1.33.5}/tests/isar/services/utilities/test_queue_utilities.py +0 -0
  194. {isar-1.33.4 → isar-1.33.5}/tests/isar/services/utilities/test_scheduling_utilities.py +0 -0
  195. {isar-1.33.4 → isar-1.33.5}/tests/isar/state_machine/__init__.py +0 -0
  196. {isar-1.33.4 → isar-1.33.5}/tests/isar/state_machine/states/__init__.py +0 -0
  197. {isar-1.33.4 → isar-1.33.5}/tests/isar/state_machine/states/test_monitor.py +0 -0
  198. {isar-1.33.4 → isar-1.33.5}/tests/isar/state_machine/test_state_machine.py +0 -0
  199. {isar-1.33.4 → isar-1.33.5}/tests/isar/storage/test_blob_storage.py +0 -0
  200. {isar-1.33.4 → isar-1.33.5}/tests/isar/storage/test_uploader.py +0 -0
  201. {isar-1.33.4 → isar-1.33.5}/tests/test_data/test_map_config/test_map_config.json +0 -0
  202. {isar-1.33.4 → isar-1.33.5}/tests/test_data/test_mission_not_working.json +0 -0
  203. {isar-1.33.4 → isar-1.33.5}/tests/test_data/test_mission_working.json +0 -0
  204. {isar-1.33.4 → isar-1.33.5}/tests/test_data/test_mission_working_no_tasks.json +0 -0
  205. {isar-1.33.4 → isar-1.33.5}/tests/test_data/test_thermal_image_mission.json +0 -0
  206. {isar-1.33.4 → isar-1.33.5}/tests/test_double/__init__.py +0 -0
  207. {isar-1.33.4 → isar-1.33.5}/tests/test_double/blob_storage.py +0 -0
  208. {isar-1.33.4 → isar-1.33.5}/tests/test_double/mission_definition.py +0 -0
  209. {isar-1.33.4 → isar-1.33.5}/tests/test_double/mqtt_client.py +0 -0
  210. {isar-1.33.4 → isar-1.33.5}/tests/test_double/pose.py +0 -0
  211. {isar-1.33.4 → isar-1.33.5}/tests/test_double/request.py +0 -0
  212. {isar-1.33.4 → isar-1.33.5}/tests/test_double/robot_interface.py +0 -0
  213. {isar-1.33.4 → isar-1.33.5}/tests/test_double/status.py +0 -0
  214. {isar-1.33.4 → isar-1.33.5}/tests/test_double/task.py +0 -0
  215. {isar-1.33.4 → isar-1.33.5}/tests/test_double/token.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: isar
3
- Version: 1.33.4
3
+ Version: 1.33.5
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
@@ -8,13 +8,13 @@ alitra==1.1.5
8
8
  # via isar (pyproject.toml)
9
9
  annotated-types==0.7.0
10
10
  # via pydantic
11
- anyio==4.9.0
11
+ anyio==4.10.0
12
12
  # via
13
13
  # httpx
14
14
  # starlette
15
15
  asgiref==3.9.1
16
16
  # via opentelemetry-instrumentation-asgi
17
- azure-core==1.35.0
17
+ azure-core==1.35.1
18
18
  # via
19
19
  # azure-core-tracing-opentelemetry
20
20
  # azure-identity
@@ -25,15 +25,15 @@ azure-core==1.35.0
25
25
  # msrest
26
26
  azure-core-tracing-opentelemetry==1.0.0b12
27
27
  # via azure-monitor-opentelemetry
28
- azure-identity==1.23.1
28
+ azure-identity==1.25.0
29
29
  # via
30
30
  # azure-monitor-opentelemetry-exporter
31
31
  # isar (pyproject.toml)
32
32
  azure-keyvault-secrets==4.10.0
33
33
  # via isar (pyproject.toml)
34
- azure-monitor-opentelemetry==1.6.13
34
+ azure-monitor-opentelemetry==1.6.7
35
35
  # via isar (pyproject.toml)
36
- azure-monitor-opentelemetry-exporter==1.0.0b40
36
+ azure-monitor-opentelemetry-exporter==1.0.0b41
37
37
  # via
38
38
  # azure-monitor-opentelemetry
39
39
  # isar (pyproject.toml)
@@ -41,21 +41,21 @@ azure-storage-blob==12.26.0
41
41
  # via isar (pyproject.toml)
42
42
  backoff==2.2.1
43
43
  # via isar (pyproject.toml)
44
- certifi==2025.7.14
44
+ certifi==2025.8.3
45
45
  # via
46
46
  # httpcore
47
47
  # httpx
48
48
  # msrest
49
49
  # requests
50
- cffi==1.17.1
50
+ cffi==2.0.0
51
51
  # via cryptography
52
- charset-normalizer==3.4.2
52
+ charset-normalizer==3.4.3
53
53
  # via requests
54
54
  click==8.2.1
55
55
  # via
56
56
  # isar (pyproject.toml)
57
57
  # uvicorn
58
- cryptography==45.0.5
58
+ cryptography==45.0.7
59
59
  # via
60
60
  # azure-identity
61
61
  # azure-storage-blob
@@ -110,14 +110,14 @@ msal-extensions==1.3.1
110
110
  # via azure-identity
111
111
  msrest==0.7.1
112
112
  # via azure-monitor-opentelemetry-exporter
113
- numpy==2.3.2
113
+ numpy==2.3.3
114
114
  # via
115
115
  # alitra
116
116
  # isar (pyproject.toml)
117
117
  # scipy
118
118
  oauthlib==3.3.1
119
119
  # via requests-oauthlib
120
- opentelemetry-api==1.36.0
120
+ opentelemetry-api==1.37.0
121
121
  # via
122
122
  # azure-core-tracing-opentelemetry
123
123
  # azure-monitor-opentelemetry-exporter
@@ -137,17 +137,17 @@ opentelemetry-api==1.36.0
137
137
  # opentelemetry-instrumentation-wsgi
138
138
  # opentelemetry-sdk
139
139
  # opentelemetry-semantic-conventions
140
- opentelemetry-exporter-otlp==1.36.0
140
+ opentelemetry-exporter-otlp==1.37.0
141
141
  # via isar (pyproject.toml)
142
- opentelemetry-exporter-otlp-proto-common==1.36.0
142
+ opentelemetry-exporter-otlp-proto-common==1.37.0
143
143
  # via
144
144
  # opentelemetry-exporter-otlp-proto-grpc
145
145
  # opentelemetry-exporter-otlp-proto-http
146
- opentelemetry-exporter-otlp-proto-grpc==1.36.0
146
+ opentelemetry-exporter-otlp-proto-grpc==1.37.0
147
147
  # via opentelemetry-exporter-otlp
148
- opentelemetry-exporter-otlp-proto-http==1.36.0
148
+ opentelemetry-exporter-otlp-proto-http==1.37.0
149
149
  # via opentelemetry-exporter-otlp
150
- opentelemetry-instrumentation==0.57b0
150
+ opentelemetry-instrumentation==0.58b0
151
151
  # via
152
152
  # opentelemetry-instrumentation-asgi
153
153
  # opentelemetry-instrumentation-dbapi
@@ -159,38 +159,38 @@ opentelemetry-instrumentation==0.57b0
159
159
  # opentelemetry-instrumentation-urllib
160
160
  # opentelemetry-instrumentation-urllib3
161
161
  # opentelemetry-instrumentation-wsgi
162
- opentelemetry-instrumentation-asgi==0.57b0
162
+ opentelemetry-instrumentation-asgi==0.58b0
163
163
  # via opentelemetry-instrumentation-fastapi
164
- opentelemetry-instrumentation-dbapi==0.57b0
164
+ opentelemetry-instrumentation-dbapi==0.58b0
165
165
  # via opentelemetry-instrumentation-psycopg2
166
- opentelemetry-instrumentation-django==0.57b0
166
+ opentelemetry-instrumentation-django==0.58b0
167
167
  # via azure-monitor-opentelemetry
168
- opentelemetry-instrumentation-fastapi==0.57b0
168
+ opentelemetry-instrumentation-fastapi==0.58b0
169
169
  # via
170
170
  # azure-monitor-opentelemetry
171
171
  # isar (pyproject.toml)
172
- opentelemetry-instrumentation-flask==0.57b0
172
+ opentelemetry-instrumentation-flask==0.58b0
173
173
  # via azure-monitor-opentelemetry
174
- opentelemetry-instrumentation-psycopg2==0.57b0
174
+ opentelemetry-instrumentation-psycopg2==0.58b0
175
175
  # via azure-monitor-opentelemetry
176
- opentelemetry-instrumentation-requests==0.57b0
176
+ opentelemetry-instrumentation-requests==0.58b0
177
177
  # via azure-monitor-opentelemetry
178
- opentelemetry-instrumentation-urllib==0.57b0
178
+ opentelemetry-instrumentation-urllib==0.58b0
179
179
  # via azure-monitor-opentelemetry
180
- opentelemetry-instrumentation-urllib3==0.57b0
180
+ opentelemetry-instrumentation-urllib3==0.58b0
181
181
  # via azure-monitor-opentelemetry
182
- opentelemetry-instrumentation-wsgi==0.57b0
182
+ opentelemetry-instrumentation-wsgi==0.58b0
183
183
  # via
184
184
  # opentelemetry-instrumentation-django
185
185
  # opentelemetry-instrumentation-flask
186
- opentelemetry-proto==1.36.0
186
+ opentelemetry-proto==1.37.0
187
187
  # via
188
188
  # opentelemetry-exporter-otlp-proto-common
189
189
  # opentelemetry-exporter-otlp-proto-grpc
190
190
  # opentelemetry-exporter-otlp-proto-http
191
191
  opentelemetry-resource-detector-azure==0.1.5
192
192
  # via azure-monitor-opentelemetry
193
- opentelemetry-sdk==1.36.0
193
+ opentelemetry-sdk==1.37.0
194
194
  # via
195
195
  # azure-monitor-opentelemetry
196
196
  # azure-monitor-opentelemetry-exporter
@@ -198,7 +198,7 @@ opentelemetry-sdk==1.36.0
198
198
  # opentelemetry-exporter-otlp-proto-grpc
199
199
  # opentelemetry-exporter-otlp-proto-http
200
200
  # opentelemetry-resource-detector-azure
201
- opentelemetry-semantic-conventions==0.57b0
201
+ opentelemetry-semantic-conventions==0.58b0
202
202
  # via
203
203
  # opentelemetry-instrumentation
204
204
  # opentelemetry-instrumentation-asgi
@@ -211,7 +211,7 @@ opentelemetry-semantic-conventions==0.57b0
211
211
  # opentelemetry-instrumentation-urllib3
212
212
  # opentelemetry-instrumentation-wsgi
213
213
  # opentelemetry-sdk
214
- opentelemetry-util-http==0.57b0
214
+ opentelemetry-util-http==0.58b0
215
215
  # via
216
216
  # opentelemetry-instrumentation-asgi
217
217
  # opentelemetry-instrumentation-django
@@ -227,15 +227,15 @@ packaging==25.0
227
227
  # opentelemetry-instrumentation-flask
228
228
  paho-mqtt==2.1.0
229
229
  # via isar (pyproject.toml)
230
- protobuf==6.31.1
230
+ protobuf==6.32.1
231
231
  # via
232
232
  # googleapis-common-protos
233
233
  # opentelemetry-proto
234
234
  psutil==7.0.0
235
235
  # via azure-monitor-opentelemetry-exporter
236
- pycparser==2.22
236
+ pycparser==2.23
237
237
  # via cffi
238
- pydantic==2.11.7
238
+ pydantic==2.11.9
239
239
  # via
240
240
  # fastapi
241
241
  # isar (pyproject.toml)
@@ -255,7 +255,7 @@ python-dotenv==1.1.1
255
255
  # pydantic-settings
256
256
  pyyaml==6.0.2
257
257
  # via isar (pyproject.toml)
258
- requests==2.32.4
258
+ requests==2.32.5
259
259
  # via
260
260
  # azure-core
261
261
  # isar (pyproject.toml)
@@ -268,7 +268,7 @@ requests-oauthlib==2.0.0
268
268
  # via msrest
269
269
  requests-toolbelt==1.0.0
270
270
  # via isar (pyproject.toml)
271
- scipy==1.16.1
271
+ scipy==1.16.2
272
272
  # via alitra
273
273
  six==1.17.0
274
274
  # via
@@ -276,11 +276,11 @@ six==1.17.0
276
276
  # transitions
277
277
  sniffio==1.3.1
278
278
  # via anyio
279
- starlette==0.47.2
279
+ starlette==0.47.3
280
280
  # via fastapi
281
281
  transitions==0.9.3
282
282
  # via isar (pyproject.toml)
283
- typing-extensions==4.14.1
283
+ typing-extensions==4.15.0
284
284
  # via
285
285
  # azure-core
286
286
  # azure-identity
@@ -303,7 +303,7 @@ urllib3==2.5.0
303
303
  # via requests
304
304
  uvicorn==0.35.0
305
305
  # via isar (pyproject.toml)
306
- wrapt==1.17.2
306
+ wrapt==1.17.3
307
307
  # via
308
308
  # opentelemetry-instrumentation
309
309
  # opentelemetry-instrumentation-dbapi
@@ -1,12 +1,15 @@
1
1
  import logging
2
2
 
3
3
  from fastapi import HTTPException
4
+ from opentelemetry import trace
4
5
 
5
6
  from isar.apis.models.models import RobotInfoResponse
6
7
  from isar.config.settings import robot_settings, settings
7
8
  from isar.services.utilities.robot_utilities import RobotUtilities
8
9
  from robot_interface.models.robots.media import MediaConfig
9
10
 
11
+ tracer = trace.get_tracer(__name__)
12
+
10
13
 
11
14
  class RobotController:
12
15
  def __init__(
@@ -16,6 +19,7 @@ class RobotController:
16
19
  self.robot_utilities: RobotUtilities = robot_utilities
17
20
  self.logger = logging.getLogger("api")
18
21
 
22
+ @tracer.start_as_current_span("generate_media_config")
19
23
  def generate_media_config(self) -> MediaConfig:
20
24
  media_config: MediaConfig = self.robot_utilities.generate_media_config()
21
25
  if media_config is None:
@@ -25,6 +29,7 @@ class RobotController:
25
29
  )
26
30
  return media_config
27
31
 
32
+ @tracer.start_as_current_span("get_info")
28
33
  def get_info(self) -> RobotInfoResponse:
29
34
  return RobotInfoResponse(
30
35
  robot_package=settings.ROBOT_PACKAGE,
@@ -2,6 +2,7 @@ import logging
2
2
  from http import HTTPStatus
3
3
 
4
4
  from fastapi import Body, HTTPException, Path
5
+ from opentelemetry import trace
5
6
 
6
7
  from isar.apis.models.models import (
7
8
  ControlMissionResponse,
@@ -20,6 +21,8 @@ from isar.state_machine.states_enum import States
20
21
  from robot_interface.models.mission.mission import Mission
21
22
  from robot_interface.models.mission.task import TASKS, InspectionTask, MoveArm
22
23
 
24
+ tracer = trace.get_tracer(__name__)
25
+
23
26
 
24
27
  class SchedulingController:
25
28
  def __init__(
@@ -29,6 +32,7 @@ class SchedulingController:
29
32
  self.scheduling_utilities: SchedulingUtilities = scheduling_utilities
30
33
  self.logger = logging.getLogger("api")
31
34
 
35
+ @tracer.start_as_current_span("start_mission_by_id")
32
36
  def start_mission_by_id(
33
37
  self,
34
38
  mission_id: str = Path(
@@ -54,6 +58,7 @@ class SchedulingController:
54
58
 
55
59
  return self._api_response(mission)
56
60
 
61
+ @tracer.start_as_current_span("start_mission")
57
62
  def start_mission(
58
63
  self,
59
64
  mission_definition: StartMissionDefinition = Body(
@@ -98,6 +103,7 @@ class SchedulingController:
98
103
  self.scheduling_utilities.start_mission(mission=mission)
99
104
  return self._api_response(mission)
100
105
 
106
+ @tracer.start_as_current_span("return_home")
101
107
  def return_home(self) -> None:
102
108
  self.logger.info("Received request to return home")
103
109
 
@@ -108,6 +114,7 @@ class SchedulingController:
108
114
 
109
115
  self.scheduling_utilities.return_home()
110
116
 
117
+ @tracer.start_as_current_span("pause_mission")
111
118
  def pause_mission(self) -> ControlMissionResponse:
112
119
  self.logger.info("Received request to pause current mission")
113
120
 
@@ -131,6 +138,7 @@ class SchedulingController:
131
138
  )
132
139
  return pause_mission_response
133
140
 
141
+ @tracer.start_as_current_span("resume_mission")
134
142
  def resume_mission(self) -> ControlMissionResponse:
135
143
  self.logger.info("Received request to resume current mission")
136
144
 
@@ -148,6 +156,7 @@ class SchedulingController:
148
156
  )
149
157
  return resume_mission_response
150
158
 
159
+ @tracer.start_as_current_span("stop_mission")
151
160
  def stop_mission(
152
161
  self,
153
162
  mission_id: StopMissionDefinition = Body(
@@ -181,6 +190,7 @@ class SchedulingController:
181
190
  )
182
191
  return stop_mission_response
183
192
 
193
+ @tracer.start_as_current_span("start_move_arm_mission")
184
194
  def start_move_arm_mission(
185
195
  self,
186
196
  arm_pose_literal: str = Path(
@@ -227,6 +237,7 @@ class SchedulingController:
227
237
  self.scheduling_utilities.start_mission(mission=mission)
228
238
  return self._api_response(mission)
229
239
 
240
+ @tracer.start_as_current_span("release_intervention_needed")
230
241
  def release_intervention_needed(self) -> None:
231
242
  self.logger.info("Received request to release intervention needed state")
232
243
 
@@ -30,7 +30,7 @@ class Settings(BaseSettings):
30
30
  REQUEST_TIMEOUT: int = Field(default=30)
31
31
 
32
32
  # Timeout in seconds for checking whether there is a message on a queue
33
- QUEUE_TIMEOUT: int = Field(default=3)
33
+ QUEUE_TIMEOUT: int = Field(default=10)
34
34
 
35
35
  # Sleep time for while loops in the finite state machine in seconds
36
36
  # The sleep is used to throttle the system on every iteration in the loop
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: isar
3
- Version: 1.33.4
3
+ Version: 1.33.5
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
@@ -8,6 +8,7 @@ class ErrorReason(str, Enum):
8
8
  RobotCommunicationTimeoutException = "robot_communication_timeout_exception"
9
9
  RobotInfeasibleTaskException = "robot_infeasible_task_exception"
10
10
  RobotInfeasibleMissionException = "robot_infeasible_mission_exception"
11
+ RobotUnreliableDockingStatusException = "robot_unreliable_docking_status_exception"
11
12
  RobotMissionStatusException = "robot_mission_status_exception"
12
13
  RobotTaskStatusException = "robot_task_status_exception"
13
14
  RobotAPIException = "robot_api_exception"
@@ -88,6 +89,16 @@ class RobotInfeasibleMissionException(RobotException):
88
89
  pass
89
90
 
90
91
 
92
+ class RobotUnreliableDockingStatusException(RobotException):
93
+ def __init__(self, error_description: str) -> None:
94
+ super().__init__(
95
+ error_reason=ErrorReason.RobotUnreliableDockingStatusException,
96
+ error_description=error_description,
97
+ )
98
+
99
+ pass
100
+
101
+
91
102
  # An exception which should be thrown by the robot package if it is unable to collect
92
103
  # the status of the current mission.
93
104
  class RobotMissionStatusException(RobotException):
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes