cgse 0.16.1__tar.gz → 0.16.2__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.
Files changed (539) hide show
  1. {cgse-0.16.1 → cgse-0.16.2}/PKG-INFO +1 -1
  2. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/pyproject.toml +1 -1
  3. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/env.py +9 -1
  4. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/system.py +24 -0
  5. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/pyproject.toml +1 -1
  6. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/pyproject.toml +1 -1
  7. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/cgse_core/_start.py +8 -7
  8. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/cgse_core/_stop.py +8 -6
  9. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/pyproject.toml +1 -1
  10. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/cgse-tools/pyproject.toml +1 -1
  11. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/pyproject.toml +1 -1
  12. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/src/keithley_tempcontrol/cgse_services.py +6 -4
  13. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/lakeshore-tempcontrol/pyproject.toml +1 -1
  14. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/lakeshore-tempcontrol/src/lakeshore_tempcontrol/cgse_services.py +1 -1
  15. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/pyproject.toml +1 -1
  16. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/symetrie_hexapod/cgse_services.py +5 -20
  17. {cgse-0.16.1 → cgse-0.16.2}/projects/plato/plato-fits/pyproject.toml +1 -1
  18. {cgse-0.16.1 → cgse-0.16.2}/projects/plato/plato-hdf5/pyproject.toml +1 -1
  19. {cgse-0.16.1 → cgse-0.16.2}/projects/plato/plato-spw/pyproject.toml +1 -1
  20. {cgse-0.16.1 → cgse-0.16.2}/pyproject.toml +1 -1
  21. {cgse-0.16.1 → cgse-0.16.2}/service_registry.db +0 -0
  22. {cgse-0.16.1 → cgse-0.16.2}/service_registry.db-shm +0 -0
  23. {cgse-0.16.1 → cgse-0.16.2}/service_registry.db-wal +0 -0
  24. {cgse-0.16.1 → cgse-0.16.2}/.github/workflows/ruff-format-check.yaml +0 -0
  25. {cgse-0.16.1 → cgse-0.16.2}/.gitignore +0 -0
  26. {cgse-0.16.1 → cgse-0.16.2}/README.md +0 -0
  27. {cgse-0.16.1 → cgse-0.16.2}/buffer_vat.log +0 -0
  28. {cgse-0.16.1 → cgse-0.16.2}/buffer_vat.png +0 -0
  29. {cgse-0.16.1 → cgse-0.16.2}/bump.py +0 -0
  30. {cgse-0.16.1 → cgse-0.16.2}/conftest.py +0 -0
  31. {cgse-0.16.1 → cgse-0.16.2}/docs/api/bits.md +0 -0
  32. {cgse-0.16.1 → cgse-0.16.2}/docs/api/calibration.md +0 -0
  33. {cgse-0.16.1 → cgse-0.16.2}/docs/api/command.md +0 -0
  34. {cgse-0.16.1 → cgse-0.16.2}/docs/api/config.md +0 -0
  35. {cgse-0.16.1 → cgse-0.16.2}/docs/api/control.md +0 -0
  36. {cgse-0.16.1 → cgse-0.16.2}/docs/api/counter.md +0 -0
  37. {cgse-0.16.1 → cgse-0.16.2}/docs/api/decorators.md +0 -0
  38. {cgse-0.16.1 → cgse-0.16.2}/docs/api/device.md +0 -0
  39. {cgse-0.16.1 → cgse-0.16.2}/docs/api/dicts.md +0 -0
  40. {cgse-0.16.1 → cgse-0.16.2}/docs/api/dummy.md +0 -0
  41. {cgse-0.16.1 → cgse-0.16.2}/docs/api/env.md +0 -0
  42. {cgse-0.16.1 → cgse-0.16.2}/docs/api/exceptions.md +0 -0
  43. {cgse-0.16.1 → cgse-0.16.2}/docs/api/heartbeat.md +0 -0
  44. {cgse-0.16.1 → cgse-0.16.2}/docs/api/hk.md +0 -0
  45. {cgse-0.16.1 → cgse-0.16.2}/docs/api/index.md +0 -0
  46. {cgse-0.16.1 → cgse-0.16.2}/docs/api/listener.md +0 -0
  47. {cgse-0.16.1 → cgse-0.16.2}/docs/api/metrics.md +0 -0
  48. {cgse-0.16.1 → cgse-0.16.2}/docs/api/mixin.md +0 -0
  49. {cgse-0.16.1 → cgse-0.16.2}/docs/api/monitoring.md +0 -0
  50. {cgse-0.16.1 → cgse-0.16.2}/docs/api/observer.md +0 -0
  51. {cgse-0.16.1 → cgse-0.16.2}/docs/api/obsid.md +0 -0
  52. {cgse-0.16.1 → cgse-0.16.2}/docs/api/persistence.md +0 -0
  53. {cgse-0.16.1 → cgse-0.16.2}/docs/api/plugin.md +0 -0
  54. {cgse-0.16.1 → cgse-0.16.2}/docs/api/process.md +0 -0
  55. {cgse-0.16.1 → cgse-0.16.2}/docs/api/reload.md +0 -0
  56. {cgse-0.16.1 → cgse-0.16.2}/docs/api/settings.md +0 -0
  57. {cgse-0.16.1 → cgse-0.16.2}/docs/api/setup.md +0 -0
  58. {cgse-0.16.1 → cgse-0.16.2}/docs/api/system.md +0 -0
  59. {cgse-0.16.1 → cgse-0.16.2}/docs/custom_theme/main.html +0 -0
  60. {cgse-0.16.1 → cgse-0.16.2}/docs/dev_guide/coding_style.md +0 -0
  61. {cgse-0.16.1 → cgse-0.16.2}/docs/dev_guide/docs.md +0 -0
  62. {cgse-0.16.1 → cgse-0.16.2}/docs/dev_guide/index.md +0 -0
  63. {cgse-0.16.1 → cgse-0.16.2}/docs/dev_guide/installation.md +0 -0
  64. {cgse-0.16.1 → cgse-0.16.2}/docs/dev_guide/monitoring.md +0 -0
  65. {cgse-0.16.1 → cgse-0.16.2}/docs/dev_guide/monorepo.md +0 -0
  66. {cgse-0.16.1 → cgse-0.16.2}/docs/dev_guide/nox.md +0 -0
  67. {cgse-0.16.1 → cgse-0.16.2}/docs/dev_guide/plugins.md +0 -0
  68. {cgse-0.16.1 → cgse-0.16.2}/docs/dev_guide/project-configuration.md +0 -0
  69. {cgse-0.16.1 → cgse-0.16.2}/docs/dev_guide/unit_testing.md +0 -0
  70. {cgse-0.16.1 → cgse-0.16.2}/docs/dev_guide/uv.md +0 -0
  71. {cgse-0.16.1 → cgse-0.16.2}/docs/dev_guide/versioning.md +0 -0
  72. {cgse-0.16.1 → cgse-0.16.2}/docs/getting_started.md +0 -0
  73. {cgse-0.16.1 → cgse-0.16.2}/docs/help.md +0 -0
  74. {cgse-0.16.1 → cgse-0.16.2}/docs/images/cli-cgse.png +0 -0
  75. {cgse-0.16.1 → cgse-0.16.2}/docs/images/github-fork-clone-dark.png +0 -0
  76. {cgse-0.16.1 → cgse-0.16.2}/docs/images/github-fork-clone.png +0 -0
  77. {cgse-0.16.1 → cgse-0.16.2}/docs/images/grafana-queries.png +0 -0
  78. {cgse-0.16.1 → cgse-0.16.2}/docs/images/icons/cgse-logo-blue.svg +0 -0
  79. {cgse-0.16.1 → cgse-0.16.2}/docs/images/icons/cgse-logo.svg +0 -0
  80. {cgse-0.16.1 → cgse-0.16.2}/docs/index.md +0 -0
  81. {cgse-0.16.1 → cgse-0.16.2}/docs/initialize.md +0 -0
  82. {cgse-0.16.1 → cgse-0.16.2}/docs/libs/cgse-common/images/load_methods.png +0 -0
  83. {cgse-0.16.1 → cgse-0.16.2}/docs/libs/cgse-common/index.md +0 -0
  84. {cgse-0.16.1 → cgse-0.16.2}/docs/libs/cgse-common/settings.md +0 -0
  85. {cgse-0.16.1 → cgse-0.16.2}/docs/libs/cgse-common/setup.md +0 -0
  86. {cgse-0.16.1 → cgse-0.16.2}/docs/libs/cgse-coordinates/index.md +0 -0
  87. {cgse-0.16.1 → cgse-0.16.2}/docs/libs/cgse-core/index.md +0 -0
  88. {cgse-0.16.1 → cgse-0.16.2}/docs/libs/cgse-core/notifyhub.md +0 -0
  89. {cgse-0.16.1 → cgse-0.16.2}/docs/libs/cgse-core/registry.md +0 -0
  90. {cgse-0.16.1 → cgse-0.16.2}/docs/libs/cgse-gui/index.md +0 -0
  91. {cgse-0.16.1 → cgse-0.16.2}/docs/libs/index.md +0 -0
  92. {cgse-0.16.1 → cgse-0.16.2}/docs/package_list.md +0 -0
  93. {cgse-0.16.1 → cgse-0.16.2}/docs/projects/cgse-tools.md +0 -0
  94. {cgse-0.16.1 → cgse-0.16.2}/docs/projects/index.md +0 -0
  95. {cgse-0.16.1 → cgse-0.16.2}/docs/projects/symetrie-hexapod.md +0 -0
  96. {cgse-0.16.1 → cgse-0.16.2}/docs/roadmap.md +0 -0
  97. {cgse-0.16.1 → cgse-0.16.2}/docs/stylesheets/custom.css +0 -0
  98. {cgse-0.16.1 → cgse-0.16.2}/docs/stylesheets/extra.css +0 -0
  99. {cgse-0.16.1 → cgse-0.16.2}/docs/tutorial.md +0 -0
  100. {cgse-0.16.1 → cgse-0.16.2}/docs/user_guide/cli.md +0 -0
  101. {cgse-0.16.1 → cgse-0.16.2}/docs/user_guide/index.md +0 -0
  102. {cgse-0.16.1 → cgse-0.16.2}/duckdb_metrics.db +0 -0
  103. {cgse-0.16.1 → cgse-0.16.2}/duckdb_metrics.db.wal +0 -0
  104. {cgse-0.16.1 → cgse-0.16.2}/identifier.sqlite +0 -0
  105. {cgse-0.16.1 → cgse-0.16.2}/justfile +0 -0
  106. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/README.md +0 -0
  107. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/justfile +0 -0
  108. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/noxfile.py +0 -0
  109. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/service_registry.db +0 -0
  110. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/cgse_common/__init__.py +0 -0
  111. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/cgse_common/cgse.py +0 -0
  112. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/cgse_common/settings.yaml +0 -0
  113. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/bits.py +0 -0
  114. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/calibration.py +0 -0
  115. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/config.py +0 -0
  116. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/counter.py +0 -0
  117. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/decorators.py +0 -0
  118. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/device.py +0 -0
  119. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/dicts.py +0 -0
  120. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/exceptions.py +0 -0
  121. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/heartbeat.py +0 -0
  122. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/hk.py +0 -0
  123. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/log.py +0 -0
  124. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/metrics.py +0 -0
  125. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/observer.py +0 -0
  126. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/obsid.py +0 -0
  127. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/persistence.py +0 -0
  128. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/plugin.py +0 -0
  129. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/plugins/metrics/duckdb.py +0 -0
  130. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/plugins/metrics/influxdb.py +0 -0
  131. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/plugins/metrics/timescaledb.py +0 -0
  132. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/process.py +0 -0
  133. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/py.typed +0 -0
  134. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/randomwalk.py +0 -0
  135. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/ratelimit.py +0 -0
  136. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/reload.py +0 -0
  137. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/resource.py +0 -0
  138. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/response.py +0 -0
  139. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/scpi.py +0 -0
  140. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/settings.py +0 -0
  141. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/settings.yaml +0 -0
  142. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/setup.py +0 -0
  143. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/signal.py +0 -0
  144. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/socketdevice.py +0 -0
  145. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/state.py +0 -0
  146. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/task.py +0 -0
  147. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/version.py +0 -0
  148. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/src/egse/zmq_ser.py +0 -0
  149. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/conftest.py +0 -0
  150. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/COPYING +0 -0
  151. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00028_201028_155259.yaml +0 -0
  152. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00029_201028_155331.yaml +0 -0
  153. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00030_210311_134043.yaml +0 -0
  154. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00080_210917_105245.yaml +0 -0
  155. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00081_210922_142259.yaml +0 -0
  156. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00082_210923_094458.yaml +0 -0
  157. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/CSL1/README.md +0 -0
  158. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/CSL2/README.md +0 -0
  159. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/IAS/README.md +0 -0
  160. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/INTA/README.md +0 -0
  161. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/LAB23/README.md +0 -0
  162. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/SRON/conf/SETUP_SRON_00027_211119_140441.yaml +0 -0
  163. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/SRON/conf/SETUP_SRON_00028_211119_160406.yaml +0 -0
  164. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/SRON/conf/SETUP_SRON_00029_211119_172918.yaml +0 -0
  165. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/SRON/conf/SETUP_SRON_00030_211122_103604.yaml +0 -0
  166. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/SRON/conf/SETUP_SRON_00031_211123_124900.yaml +0 -0
  167. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/common/telemetry/tm-dictionary-default.csv +0 -0
  168. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/conf/SETUP_20250114_1519.yaml +0 -0
  169. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/conf/config-file.toml +0 -0
  170. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/data/cal_coeff_1234.csv +0 -0
  171. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/data/calibration.csv +0 -0
  172. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/data/calibration.yaml +0 -0
  173. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/data/command.yaml +0 -0
  174. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/data/corrupt.yaml +0 -0
  175. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/data/data-file.txt +0 -0
  176. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/data/empty_data_file.txt +0 -0
  177. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/data/empty_yaml_file.yaml +0 -0
  178. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/data/local_settings.yaml +0 -0
  179. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/data/new_local_settings.yaml +0 -0
  180. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/data/test_setup.yaml +0 -0
  181. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/icons/hourglass.svg +0 -0
  182. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/icons/keyboard.png +0 -0
  183. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/icons/soap_sponge.svg +0 -0
  184. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/lib/dev1/shared-lib.so +0 -0
  185. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/data/lib/dev2/shared-lib.so +0 -0
  186. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/fixtures/default_env.py +0 -0
  187. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/fixtures/helpers.py +0 -0
  188. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/scripts/empty_process.py +0 -0
  189. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/scripts/handle_sigterm.py +0 -0
  190. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/scripts/process_with_children.py +0 -0
  191. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/scripts/raise_value_error.py +0 -0
  192. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/scripts/void-0.py +0 -0
  193. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/scripts/void-1.py +0 -0
  194. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_bits.py +0 -0
  195. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_config.py +0 -0
  196. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_decorators.py +0 -0
  197. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_device.py +0 -0
  198. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_env.py +0 -0
  199. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_fixtures.py +0 -0
  200. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_hk.py +0 -0
  201. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_influxdb_plugin.py +0 -0
  202. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_log.py +0 -0
  203. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_metrics.py +0 -0
  204. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_plugin.py +0 -0
  205. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_process.py +0 -0
  206. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_ratelimit.py +0 -0
  207. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_resource.py +0 -0
  208. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_response.py +0 -0
  209. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_settings.py +0 -0
  210. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_setup.py +0 -0
  211. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_signal.py +0 -0
  212. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_state.py +0 -0
  213. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_system.py +0 -0
  214. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_task.py +0 -0
  215. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-common/tests/test_zmq_ser.py +0 -0
  216. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/README.md +0 -0
  217. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/src/cgse_coordinates/__init__.py +0 -0
  218. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/src/cgse_coordinates/settings.yaml +0 -0
  219. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/src/egse/coordinates/__init__.py +0 -0
  220. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/src/egse/coordinates/avoidance.py +0 -0
  221. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/src/egse/coordinates/cslmodel.py +0 -0
  222. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/src/egse/coordinates/laser_tracker_to_dict.py +0 -0
  223. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/src/egse/coordinates/point.py +0 -0
  224. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/src/egse/coordinates/pyplot.py +0 -0
  225. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/src/egse/coordinates/referenceFrame.py +0 -0
  226. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/src/egse/coordinates/refmodel.py +0 -0
  227. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/src/egse/coordinates/rotationMatrix.py +0 -0
  228. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/src/egse/coordinates/transform3d_addon.py +0 -0
  229. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/tests/test_avoidance.py +0 -0
  230. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/tests/test_coordinates_plot.py +0 -0
  231. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/tests/test_coordinates_serialize.py +0 -0
  232. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/tests/test_point.py +0 -0
  233. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/tests/test_ref_model.py +0 -0
  234. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/tests/test_reference_frames.py +0 -0
  235. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-coordinates/tests/test_refmodel.py +0 -0
  236. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/.envrc.disabled +0 -0
  237. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/README.md +0 -0
  238. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/service_registry.db +0 -0
  239. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/cgse_core/__init__.py +0 -0
  240. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/cgse_core/_status.py +0 -0
  241. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/cgse_core/cgse_explore.py +0 -0
  242. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/cgse_core/services.py +0 -0
  243. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/cgse_core/settings.yaml +0 -0
  244. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/_setup_core.py +0 -0
  245. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/async_control.py +0 -0
  246. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/async_control_claude.py +0 -0
  247. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/command.py +0 -0
  248. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/confman/__init__.py +0 -0
  249. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/confman/__main__.py +0 -0
  250. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/confman/confman.yaml +0 -0
  251. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/confman/confman_cs.py +0 -0
  252. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/connect.py +0 -0
  253. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/control.py +0 -0
  254. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/dummy.py +0 -0
  255. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/icons/busy.svg +0 -0
  256. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/icons/operational-mode.svg +0 -0
  257. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/icons/pm_ui.svg +0 -0
  258. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/icons/simulator-mode.svg +0 -0
  259. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/icons/start-process-button.svg +0 -0
  260. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/icons/stop-process-button.svg +0 -0
  261. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/icons/user-interface.svg +0 -0
  262. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/listener.py +0 -0
  263. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/logger/__init__.py +0 -0
  264. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/logger/__main__.py +0 -0
  265. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/logger/log_cs.py +0 -0
  266. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/metricshub/__init__.py +0 -0
  267. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/metricshub/server.py +0 -0
  268. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/mixin.py +0 -0
  269. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/monitoring.py +0 -0
  270. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/notifyhub/__init__.py +0 -0
  271. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/notifyhub/client.py +0 -0
  272. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/notifyhub/event.py +0 -0
  273. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/notifyhub/server.py +0 -0
  274. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/notifyhub/services.py +0 -0
  275. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/notifyhub/test.py +0 -0
  276. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/procman/__init__.py +0 -0
  277. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/procman/procman.yaml +0 -0
  278. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/procman/procman_cs.py +0 -0
  279. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/procman/procman_protocol.py +0 -0
  280. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/procman/procman_ui.py +0 -0
  281. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/protocol.py +0 -0
  282. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/proxy.py +0 -0
  283. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/registry/__init__.py +0 -0
  284. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/registry/backend.py +0 -0
  285. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/registry/client.py +0 -0
  286. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/registry/server.py +0 -0
  287. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/registry/service.py +0 -0
  288. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/services.py +0 -0
  289. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/services.yaml +0 -0
  290. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/storage/__init__.py +0 -0
  291. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/storage/__main__.py +0 -0
  292. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/storage/persistence.py +0 -0
  293. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/storage/storage.yaml +0 -0
  294. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/src/egse/storage/storage_cs.py +0 -0
  295. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/conftest.py +0 -0
  296. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/data/local_settings.yaml +0 -0
  297. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/fixtures/default_env.py +0 -0
  298. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/fixtures/helpers.py +0 -0
  299. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/fixtures/services.py +0 -0
  300. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/script_subscribe_to_notifyhub.py +0 -0
  301. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/script_test_async_registry_client.py +0 -0
  302. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/script_test_registry_client_server.py +0 -0
  303. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/script_test_service_registry_server.py +0 -0
  304. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/script_test_sync_registry_client.py +0 -0
  305. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/services.py +0 -0
  306. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/stress_test_registry_server.py +0 -0
  307. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_async_control.py +0 -0
  308. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_client_server_interaction.py +0 -0
  309. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_cm_cs.py +0 -0
  310. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_command.py +0 -0
  311. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_confman_setups.py +0 -0
  312. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_connect.py +0 -0
  313. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_control.py +0 -0
  314. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_dummy.py +0 -0
  315. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_event_notification.py +0 -0
  316. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_extensions.py +0 -0
  317. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_listener.py +0 -0
  318. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_logger.py +0 -0
  319. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_mixin.py +0 -0
  320. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_notify_hub.py +0 -0
  321. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_protocol.py +0 -0
  322. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_registry_backend.py +0 -0
  323. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_registry_service.py +0 -0
  324. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_server_running.py +0 -0
  325. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_server_running_with_fixture.py +0 -0
  326. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_settings_core.py +0 -0
  327. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-core/tests/test_zmq_microservice.py +0 -0
  328. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/README.md +0 -0
  329. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/__init__.py +0 -0
  330. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/buttons.py +0 -0
  331. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/aeu-cs-start.svg +0 -0
  332. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/aeu-cs-stop.svg +0 -0
  333. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/aeu-cs.svg +0 -0
  334. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/aeu_cs-started.svg +0 -0
  335. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/aeu_cs-stopped.svg +0 -0
  336. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/aeu_cs.svg +0 -0
  337. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/alert.svg +0 -0
  338. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/arrow-double-left.png +0 -0
  339. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/arrow-double-right.png +0 -0
  340. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/arrow-up.svg +0 -0
  341. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/backward.svg +0 -0
  342. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/busy.svg +0 -0
  343. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/cleaning.svg +0 -0
  344. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/color-scheme.svg +0 -0
  345. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/cs-connected-alert.svg +0 -0
  346. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/cs-connected-disabled.svg +0 -0
  347. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/cs-connected.svg +0 -0
  348. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/cs-not-connected.svg +0 -0
  349. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/double-left-arrow.svg +0 -0
  350. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/double-right-arrow.svg +0 -0
  351. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/erase-disabled.svg +0 -0
  352. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/erase.svg +0 -0
  353. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/fitsgen-start.svg +0 -0
  354. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/fitsgen-stop.svg +0 -0
  355. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/fitsgen.svg +0 -0
  356. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/forward.svg +0 -0
  357. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/fov-hk-start.svg +0 -0
  358. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/fov-hk-stop.svg +0 -0
  359. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/fov-hk.svg +0 -0
  360. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/front-desk.svg +0 -0
  361. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/home-actioned.svg +0 -0
  362. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/home-disabled.svg +0 -0
  363. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/home.svg +0 -0
  364. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/info.svg +0 -0
  365. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/invalid.png +0 -0
  366. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/led-green.svg +0 -0
  367. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/led-grey.svg +0 -0
  368. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/led-orange.svg +0 -0
  369. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/led-red.svg +0 -0
  370. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/led-square-green.svg +0 -0
  371. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/led-square-grey.svg +0 -0
  372. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/led-square-orange.svg +0 -0
  373. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/led-square-red.svg +0 -0
  374. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/limit-switch-all-green.svg +0 -0
  375. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/limit-switch-all-red.svg +0 -0
  376. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/limit-switch-el+.svg +0 -0
  377. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/limit-switch-el-.svg +0 -0
  378. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/location-marker.svg +0 -0
  379. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/logo-dpu.svg +0 -0
  380. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/logo-gimbal.svg +0 -0
  381. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/logo-huber.svg +0 -0
  382. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/logo-ogse.svg +0 -0
  383. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/logo-puna.svg +0 -0
  384. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/logo-tcs.svg +0 -0
  385. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/logo-zonda.svg +0 -0
  386. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/maximize.svg +0 -0
  387. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/meter.svg +0 -0
  388. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/more.svg +0 -0
  389. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/n-fee-hk-start.svg +0 -0
  390. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/n-fee-hk-stop.svg +0 -0
  391. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/n-fee-hk.svg +0 -0
  392. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/observing-off.svg +0 -0
  393. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/observing-on.svg +0 -0
  394. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/open-document-hdf5.png +0 -0
  395. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/open-document-hdf5.svg +0 -0
  396. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/ops-mode.svg +0 -0
  397. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/play-green.svg +0 -0
  398. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/plugged-disabled.svg +0 -0
  399. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/plugged.svg +0 -0
  400. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/pm_ui.svg +0 -0
  401. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/power-button-green.svg +0 -0
  402. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/power-button-red.svg +0 -0
  403. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/power-button.svg +0 -0
  404. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/radar.svg +0 -0
  405. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/radioactive.svg +0 -0
  406. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/reload.svg +0 -0
  407. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/remote-control-off.svg +0 -0
  408. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/remote-control-on.svg +0 -0
  409. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/repeat-blue.svg +0 -0
  410. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/repeat.svg +0 -0
  411. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/settings.svg +0 -0
  412. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/shrink.svg +0 -0
  413. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/shutter.svg +0 -0
  414. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/sign-off.svg +0 -0
  415. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/sign-on.svg +0 -0
  416. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/sim-mode.svg +0 -0
  417. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/small-buttons-go.svg +0 -0
  418. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/small-buttons-minus.svg +0 -0
  419. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/small-buttons-plus.svg +0 -0
  420. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/sponge.svg +0 -0
  421. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/start-button-disabled.svg +0 -0
  422. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/start-button.svg +0 -0
  423. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/stop-button-disabled.svg +0 -0
  424. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/stop-button.svg +0 -0
  425. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/stop-red.svg +0 -0
  426. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/stop.svg +0 -0
  427. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/switch-disabled-square.svg +0 -0
  428. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/switch-disabled.svg +0 -0
  429. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/switch-off-square.svg +0 -0
  430. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/switch-off.svg +0 -0
  431. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/switch-on-square.svg +0 -0
  432. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/switch-on.svg +0 -0
  433. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/temperature-control.svg +0 -0
  434. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/th_ui_logo.svg +0 -0
  435. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/unplugged.svg +0 -0
  436. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/unvalid.png +0 -0
  437. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/user-interface.svg +0 -0
  438. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/vacuum.svg +0 -0
  439. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/valid.png +0 -0
  440. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/zoom-to-pixel-dark.svg +0 -0
  441. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/icons/zoom-to-pixel-white.svg +0 -0
  442. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/led.py +0 -0
  443. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/limitswitch.py +0 -0
  444. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/states.py +0 -0
  445. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/styles/dark.qss +0 -0
  446. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/styles/default.qss +0 -0
  447. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/styles.qss +0 -0
  448. {cgse-0.16.1 → cgse-0.16.2}/libs/cgse-gui/src/egse/gui/switch.py +0 -0
  449. {cgse-0.16.1 → cgse-0.16.2}/mkdocs.yml +0 -0
  450. {cgse-0.16.1 → cgse-0.16.2}/noxfile.py +0 -0
  451. {cgse-0.16.1 → cgse-0.16.2}/overrides/.icons/custom/dbend-dark.svg +0 -0
  452. {cgse-0.16.1 → cgse-0.16.2}/overrides/.icons/custom/dbend-light.svg +0 -0
  453. {cgse-0.16.1 → cgse-0.16.2}/overrides/.icons/custom/gear.svg +0 -0
  454. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/cgse-tools/README.md +0 -0
  455. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/cgse-tools/src/cgse_tools/__init__.py +0 -0
  456. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/cgse-tools/src/cgse_tools/cgse_clock.py +0 -0
  457. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/cgse-tools/src/cgse_tools/cgse_commands.py +0 -0
  458. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/cgse-tools/src/cgse_tools/cgse_services.py +0 -0
  459. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/cgse-tools/src/egse/tools/status.py +0 -0
  460. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/README.md +0 -0
  461. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/justfile +0 -0
  462. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/noxfile.py +0 -0
  463. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/service_registry.db +0 -0
  464. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/__init__.py +0 -0
  465. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510.py +0 -0
  466. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510.yaml +0 -0
  467. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_acs.py +0 -0
  468. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_adev.py +0 -0
  469. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_cs.py +0 -0
  470. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_dev.py +0 -0
  471. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_mon.py +0 -0
  472. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_protocol.py +0 -0
  473. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_sim.py +0 -0
  474. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/src/keithley_tempcontrol/__init__.py +0 -0
  475. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/src/keithley_tempcontrol/cgse_explore.py +0 -0
  476. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/src/keithley_tempcontrol/settings.yaml +0 -0
  477. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/temperature_readings.log +0 -0
  478. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/tests/script_daq6510_central_heating.py +0 -0
  479. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/tests/script_daq6510_mon.py +0 -0
  480. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/tests/script_plot_readings.py +0 -0
  481. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/tests/test_adev.py +0 -0
  482. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/keithley-tempcontrol/tests/test_dev.py +0 -0
  483. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/lakeshore-tempcontrol/README.md +0 -0
  484. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/lakeshore-tempcontrol/src/egse/tempcontrol/lakeshore/lakeshore336.py +0 -0
  485. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/lakeshore-tempcontrol/src/egse/tempcontrol/lakeshore/lakeshore336.yaml +0 -0
  486. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/lakeshore-tempcontrol/src/egse/tempcontrol/lakeshore/lakeshore336_cs.py +0 -0
  487. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/lakeshore-tempcontrol/src/egse/tempcontrol/lakeshore/lakeshore336_devif.py +0 -0
  488. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/lakeshore-tempcontrol/src/egse/tempcontrol/lakeshore/lakeshore336_protocol.py +0 -0
  489. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/lakeshore-tempcontrol/src/lakeshore_tempcontrol/__init__.py +0 -0
  490. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/lakeshore-tempcontrol/src/lakeshore_tempcontrol/cgse_explore.py +0 -0
  491. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/lakeshore-tempcontrol/src/lakeshore_tempcontrol/settings.yaml +0 -0
  492. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/lakeshore-tempcontrol/tests/test_lakeshore336_simulator.py +0 -0
  493. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/README.md +0 -0
  494. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/__init__.py +0 -0
  495. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/__init__.py +0 -0
  496. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/alpha.py +0 -0
  497. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/dynalpha.py +0 -0
  498. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/hexapod.py +0 -0
  499. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/hexapod_ui.py +0 -0
  500. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran.py +0 -0
  501. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran.yaml +0 -0
  502. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran_cs.py +0 -0
  503. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran_protocol.py +0 -0
  504. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran_ui.py +0 -0
  505. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/pmac.py +0 -0
  506. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/pmac_regex.py +0 -0
  507. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna.py +0 -0
  508. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna.yaml +0 -0
  509. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna_cs.py +0 -0
  510. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna_protocol.py +0 -0
  511. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna_sim.py +0 -0
  512. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna_ui.py +0 -0
  513. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/punaplus.py +0 -0
  514. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda.py +0 -0
  515. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda.yaml +0 -0
  516. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda_cs.py +0 -0
  517. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda_devif.py +0 -0
  518. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda_protocol.py +0 -0
  519. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda_ui.py +0 -0
  520. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/symetrie_hexapod/__init__.py +0 -0
  521. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/symetrie_hexapod/cgse_explore.py +0 -0
  522. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/src/symetrie_hexapod/settings.yaml +0 -0
  523. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/tests/test_puna.py +0 -0
  524. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/tests/test_puna_cs.py +0 -0
  525. {cgse-0.16.1 → cgse-0.16.2}/projects/generic/symetrie-hexapod/tests/test_puna_simulator.py +0 -0
  526. {cgse-0.16.1 → cgse-0.16.2}/projects/plato/plato-fits/README.md +0 -0
  527. {cgse-0.16.1 → cgse-0.16.2}/projects/plato/plato-fits/src/egse/plugins/storage/fits.py +0 -0
  528. {cgse-0.16.1 → cgse-0.16.2}/projects/plato/plato-hdf5/README.md +0 -0
  529. {cgse-0.16.1 → cgse-0.16.2}/projects/plato/plato-hdf5/src/egse/plugins/storage/hdf5.py +0 -0
  530. {cgse-0.16.1 → cgse-0.16.2}/projects/plato/plato-spw/README.md +0 -0
  531. {cgse-0.16.1 → cgse-0.16.2}/projects/plato/plato-spw/src/egse/spw.py +0 -0
  532. {cgse-0.16.1 → cgse-0.16.2}/ruff.toml +0 -0
  533. {cgse-0.16.1 → cgse-0.16.2}/scratch/advanced-process-monitoring.py +0 -0
  534. {cgse-0.16.1 → cgse-0.16.2}/scratch/live-process-monitoring.py +0 -0
  535. {cgse-0.16.1 → cgse-0.16.2}/scratch/match-case.py +0 -0
  536. {cgse-0.16.1 → cgse-0.16.2}/scratch/processes.json +0 -0
  537. {cgse-0.16.1 → cgse-0.16.2}/scratch/simple-process-monitoring.py +0 -0
  538. {cgse-0.16.1 → cgse-0.16.2}/temperature_readings.log +0 -0
  539. {cgse-0.16.1 → cgse-0.16.2}/test_service_registry.db +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cgse
3
- Version: 0.16.1
3
+ Version: 0.16.2
4
4
  Summary: Generic Common-EGSE: Commanding and monitoring lab equipment
5
5
  Author: IvS KU Leuven
6
6
  Maintainer-email: Rik Huygen <rik.huygen@kuleuven.be>, Sara Regibo <sara.regibo@kuleuven.be>
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "cgse-common"
3
- version = "0.16.1"
3
+ version = "0.16.2"
4
4
  description = "Software framework to support hardware testing"
5
5
  authors = [
6
6
  {name = "IvS KU Leuven"}
@@ -384,7 +384,7 @@ def set_log_file_location(location: str | Path | None):
384
384
  _env.set("LOG_FILE_LOCATION", location)
385
385
 
386
386
 
387
- def get_log_file_location(site_id: str = None) -> str:
387
+ def get_log_file_location(site_id: str = None, check_exists: bool = False) -> str:
388
388
  """
389
389
  Returns the full path of the location of the log files. The log file location is read from the environment
390
390
  variable `${PROJECT}_LOG_FILE_LOCATION`. The location shall be independent of any setting that is subject to change.
@@ -392,8 +392,12 @@ def get_log_file_location(site_id: str = None) -> str:
392
392
  If the environment variable is not set, a default log file location is created from the data storage location as
393
393
  follows: `<PROJECT>_DATA_STORAGE_LOCATION/<SITE_ID>/log`.
394
394
 
395
+ There is no check for the existence of the returned location. The caller function shall check if the
396
+ returned value is a directory and if it exists.
397
+
395
398
  Args:
396
399
  site_id: the site identifier
400
+ check_exists: check if the location that will be returned is a directory and exists
397
401
 
398
402
  Returns:
399
403
  The full path of location of the log files as a string.
@@ -417,6 +421,10 @@ def get_log_file_location(site_id: str = None) -> str:
417
421
  data_root = data_root.rstrip("/")
418
422
  log_data_root = f"{data_root}/log"
419
423
 
424
+ if check_exists:
425
+ if not Path(log_data_root).is_dir():
426
+ raise ValueError(f"The location that was constructed doesn't exist: {log_data_root}")
427
+
420
428
  return log_data_root
421
429
 
422
430
 
@@ -48,6 +48,7 @@ from typing import Callable
48
48
  from typing import Iterable
49
49
  from typing import List
50
50
  from typing import Optional
51
+ from typing import TextIO
51
52
  from typing import Tuple
52
53
  from typing import Type
53
54
  from typing import Union
@@ -60,6 +61,7 @@ from rich.tree import Tree
60
61
  from typer.core import TyperCommand
61
62
 
62
63
  import signal
64
+ from egse.env import get_log_file_location
63
65
  from egse.log import logger
64
66
 
65
67
  EPOCH_1958_1970 = 378691200
@@ -2307,6 +2309,28 @@ def caffeinate(pid: int = None):
2307
2309
  subprocess.Popen([shutil.which("caffeinate"), "-i", "-w", str(pid)])
2308
2310
 
2309
2311
 
2312
+ def redirect_output_to_log(output_fn: str, append: bool = False) -> TextIO:
2313
+ """
2314
+ Open file in the log folder where process output will be redirected.
2315
+
2316
+ When no location can be determined, the user's home directory will be used.
2317
+
2318
+ The file is opened in text mode at the given location and the stream (file descriptor) will be returned.
2319
+ """
2320
+
2321
+ try:
2322
+ location = get_log_file_location()
2323
+ output_path = Path(location, output_fn).expanduser()
2324
+ except ValueError:
2325
+ output_path = Path.home() / output_fn
2326
+
2327
+ out = open(output_path, "a" if append else "w")
2328
+
2329
+ logger.info(f"Output will be redirected to {output_path!s}")
2330
+
2331
+ return out
2332
+
2333
+
2310
2334
  ignore_m_warning("egse.system")
2311
2335
 
2312
2336
  if __name__ == "__main__":
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "cgse-coordinates"
3
- version = "0.16.1"
3
+ version = "0.16.2"
4
4
  description = "Reference Frames and Coordinate Transofrmations for CGSE"
5
5
  authors = [
6
6
  {name = "IvS KU Leuven"}
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "cgse-core"
3
- version = "0.16.1"
3
+ version = "0.16.2"
4
4
  description = "Core services for the CGSE framework"
5
5
  authors = [
6
6
  {name = "IvS KU Leuven"}
@@ -1,14 +1,15 @@
1
1
  import subprocess
2
2
  import sys
3
- from pathlib import Path
4
3
 
5
4
  import rich
6
5
 
6
+ from egse.system import redirect_output_to_log
7
+
7
8
 
8
9
  def start_rm_cs(log_level: str):
9
10
  rich.print("Starting the service registry manager core service...")
10
11
 
11
- out = open(Path("~/.rm_cs.start.out").expanduser(), "w")
12
+ out = redirect_output_to_log(".rm_cs.start.log")
12
13
 
13
14
  subprocess.Popen(
14
15
  [sys.executable, "-m", "egse.registry.server", "start", "--log-level", log_level],
@@ -22,7 +23,7 @@ def start_rm_cs(log_level: str):
22
23
  def start_log_cs():
23
24
  rich.print("Starting the logging core service...")
24
25
 
25
- out = open(Path("~/.log_cs.start.out").expanduser(), "w")
26
+ out = redirect_output_to_log(".log_cs.start.log")
26
27
 
27
28
  subprocess.Popen(
28
29
  [sys.executable, "-m", "egse.logger.log_cs", "start"],
@@ -36,7 +37,7 @@ def start_log_cs():
36
37
  def start_sm_cs():
37
38
  rich.print("Starting the storage manager core service...")
38
39
 
39
- out = open(Path("~/.sm_cs.start.out").expanduser(), "w")
40
+ out = redirect_output_to_log(".sm_cs.start.log")
40
41
 
41
42
  subprocess.Popen(
42
43
  [sys.executable, "-m", "egse.storage.storage_cs", "start"],
@@ -50,7 +51,7 @@ def start_sm_cs():
50
51
  def start_cm_cs():
51
52
  rich.print("Starting the configuration manager core service...")
52
53
 
53
- out = open(Path("~/.cm_cs.start.out").expanduser(), "w")
54
+ out = redirect_output_to_log(".cm_cs.start.log")
54
55
 
55
56
  subprocess.Popen(
56
57
  [sys.executable, "-m", "egse.confman.confman_cs", "start"],
@@ -64,7 +65,7 @@ def start_cm_cs():
64
65
  def start_pm_cs():
65
66
  rich.print("Starting the process manager core service...")
66
67
 
67
- out = open(Path("~/.pm_cs.start.out").expanduser(), "w")
68
+ out = redirect_output_to_log(".pm_cs.start.log")
68
69
 
69
70
  subprocess.Popen(
70
71
  [sys.executable, "-m", "egse.procman.procman_cs", "start"],
@@ -78,7 +79,7 @@ def start_pm_cs():
78
79
  def start_notifyhub():
79
80
  rich.print("Starting the notification hub core service...")
80
81
 
81
- out = open(Path("~/.notifyhub.start.out").expanduser(), "w")
82
+ out = redirect_output_to_log(".nh_cs.start.log")
82
83
 
83
84
  subprocess.Popen(
84
85
  [sys.executable, "-m", "egse.notifyhub.server", "start"],
@@ -8,13 +8,14 @@ import rich
8
8
  from egse.log import logger
9
9
  from egse.process import is_process_running
10
10
  from egse.system import Timer
11
+ from egse.system import redirect_output_to_log
11
12
  from egse.system import waiting_for
12
13
 
13
14
 
14
15
  def stop_rm_cs():
15
16
  rich.print("Terminating the service registry manager core service...")
16
17
 
17
- out = open(Path("~/.rm_cs.stop.out").expanduser(), "w")
18
+ out = redirect_output_to_log(".rm_cs.stop.log")
18
19
 
19
20
  subprocess.Popen(
20
21
  [sys.executable, "-m", "egse.registry.server", "stop"],
@@ -34,7 +35,7 @@ def stop_rm_cs():
34
35
  def stop_log_cs():
35
36
  rich.print("Terminating the logging core service...")
36
37
 
37
- out = open(Path("~/.log_cs.stop.out").expanduser(), "w")
38
+ out = redirect_output_to_log(".log_cs.stop.log")
38
39
 
39
40
  subprocess.Popen(
40
41
  [sys.executable, "-m", "egse.logger.log_cs", "stop"],
@@ -48,7 +49,7 @@ def stop_log_cs():
48
49
  def stop_sm_cs():
49
50
  rich.print("Terminating the storage manager core service...")
50
51
 
51
- out = open(Path("~/.sm_cs.stop.out").expanduser(), "w")
52
+ out = redirect_output_to_log(".sm_cs.stop.log")
52
53
 
53
54
  subprocess.Popen(
54
55
  [sys.executable, "-m", "egse.storage.storage_cs", "stop"],
@@ -68,7 +69,7 @@ def stop_sm_cs():
68
69
  def stop_cm_cs():
69
70
  rich.print("Terminating the configuration manager core service...")
70
71
 
71
- out = open(Path("~/.cm_cs.stop.out").expanduser(), "w")
72
+ out = redirect_output_to_log(".cm_cs.stop.log")
72
73
 
73
74
  subprocess.Popen(
74
75
  [sys.executable, "-m", "egse.confman.confman_cs", "stop"],
@@ -88,7 +89,8 @@ def stop_cm_cs():
88
89
  def stop_pm_cs():
89
90
  rich.print("Terminating the process manager core service...")
90
91
 
91
- out = open(Path("~/.pm_cs.stop.out").expanduser(), "w")
92
+ out = redirect_output_to_log(".pm_cs.stop.log")
93
+
92
94
 
93
95
  subprocess.Popen(
94
96
  [sys.executable, "-m", "egse.procman.procman_cs", "stop"],
@@ -108,7 +110,7 @@ def stop_pm_cs():
108
110
  def stop_notifyhub():
109
111
  rich.print("Terminating the notification hub core service...")
110
112
 
111
- out = open(Path("~/.notifyhub.stop.out").expanduser(), "w")
113
+ out = redirect_output_to_log(".nh_cs.stop.log")
112
114
 
113
115
  subprocess.Popen(
114
116
  [sys.executable, "-m", "egse.notifyhub.server", "stop"],
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "cgse-gui"
3
- version = "0.16.1"
3
+ version = "0.16.2"
4
4
  description = "GUI components for CGSE"
5
5
  authors = [
6
6
  {name = "Rik Huygen", email = "rik.huygen@kuleuven.be"},
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "cgse-tools"
3
- version = "0.16.1"
3
+ version = "0.16.2"
4
4
  description = "Tools for CGSE"
5
5
  authors = [
6
6
  {name = "IvS KU Leuven"}
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "keithley-tempcontrol"
3
- version = "0.16.1"
3
+ version = "0.16.2"
4
4
  description = "Keithley Temperature Control for CGSE"
5
5
  authors = [
6
6
  {name = "IvS KU Leuven"}
@@ -7,6 +7,8 @@ from pathlib import Path
7
7
  import rich
8
8
  import typer
9
9
 
10
+ from egse.system import redirect_output_to_log
11
+
10
12
  daq6510 = typer.Typer(name="daq6510", help="DAQ6510 Data Acquisition Unit, Keithley, temperature monitoring")
11
13
 
12
14
 
@@ -15,7 +17,7 @@ def start_daq6510():
15
17
  """Start the daq6510 service."""
16
18
  rich.print("Starting service daq6510")
17
19
 
18
- out = open(Path("~/.daq6510_cs.start.out").expanduser(), "w")
20
+ out = redirect_output_to_log(".daq6510_cs.start.log")
19
21
 
20
22
  subprocess.Popen(
21
23
  [sys.executable, "-m", "egse.tempcontrol.keithley.daq6510_cs", "start"],
@@ -31,7 +33,7 @@ def stop_daq6510():
31
33
  """Stop the daq6510 service."""
32
34
  rich.print("Terminating service daq6510")
33
35
 
34
- out = open(Path("~/.daq6510_cs.stop.out").expanduser(), "w")
36
+ out = redirect_output_to_log(".daq6510_cs.stop.log")
35
37
 
36
38
  subprocess.Popen(
37
39
  [sys.executable, "-m", "egse.tempcontrol.keithley.daq6510_cs", "stop"],
@@ -65,7 +67,7 @@ def start_daq6510_sim():
65
67
  """Start the DAQ6510 Simulator."""
66
68
  rich.print("Starting service DAQ6510 Simulator")
67
69
 
68
- out = open(Path("~/.daq6510_sim.start.out").expanduser(), "w")
70
+ out = redirect_output_to_log(".daq6510_sim.start.log")
69
71
 
70
72
  subprocess.Popen(
71
73
  [sys.executable, "-m", "egse.tempcontrol.keithley.daq6510_sim", "start"],
@@ -81,7 +83,7 @@ def stop_daq6510_sim():
81
83
  """Stop the DAQ6510 Simulator."""
82
84
  rich.print("Terminating the DAQ6510 simulator.")
83
85
 
84
- out = open(Path("~/.daq6510_sim.stop.out").expanduser(), "w")
86
+ out = redirect_output_to_log(".daq6510_sim.stop.log")
85
87
 
86
88
  subprocess.Popen(
87
89
  [sys.executable, "-m", "egse.tempcontrol.keithley.daq6510_sim", "stop"],
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "lakeshore-tempcontrol"
3
- version = "0.16.1"
3
+ version = "0.16.2"
4
4
  description = "Lakeshore Temperature Control for CGSE"
5
5
  authors = [
6
6
  {name = "IVS KU Leuven"}
@@ -37,7 +37,7 @@ def start_lakeshore336(
37
37
 
38
38
  if background:
39
39
  location = get_log_file_location()
40
- output_filename = "lakeshore336_cs.start.out"
40
+ output_filename = ".lakeshore336_cs.start.log"
41
41
  output_path = Path(location, output_filename).expanduser()
42
42
 
43
43
  rich.print(f"Starting the LakeShore336 Control Server ({device_id}) – {simulator = }")
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "symetrie-hexapod"
3
- version = "0.16.1"
3
+ version = "0.16.2"
4
4
  description = "Symetrie Hexapod implementation for CGSE"
5
5
  authors = [
6
6
  {name = "IvS KU Leuven"}
@@ -1,15 +1,13 @@
1
1
  import subprocess
2
2
  import sys
3
3
  import textwrap
4
- from pathlib import Path
5
4
  from typing import Annotated
6
- from typing import TextIO
7
5
 
8
6
  import rich
9
7
  import typer
10
8
 
11
- from egse.env import get_log_file_location
12
9
  from egse.system import all_logging_disabled
10
+ from egse.system import redirect_output_to_log
13
11
 
14
12
  puna = typer.Typer(name="puna", help="PUNA Positioning Hexapod, Symétrie")
15
13
 
@@ -18,25 +16,12 @@ zonda = typer.Typer(name="zonda", help="ZONDA Positioning Hexapod, Symétrie")
18
16
  joran = typer.Typer(name="joran", help="JORAN Positioning Hexapod, Symétrie")
19
17
 
20
18
 
21
- def redirect_output_to(output_fn: str) -> TextIO:
22
- """Open file in the log folder where process output will be redirected."""
23
-
24
- location = get_log_file_location()
25
- output_path = Path(location, output_fn).expanduser()
26
-
27
- rich.print(f"Output will be redirected to {output_path!s}")
28
-
29
- out = open(output_path, "w")
30
-
31
- return out
32
-
33
-
34
19
  def start_hexapod_cs_process(device_name, device_id, simulator):
35
20
  """Generic function to start the hexapod control server in the background."""
36
21
 
37
22
  rich.print(f"Starting the {device_name} hexapod control server for {device_id} – {simulator = }")
38
23
 
39
- out = redirect_output_to(f"{device_name.lower()}_cs.{device_id.lower()}.start.out")
24
+ out = redirect_output_to_log(f".{device_name.lower()}_cs.{device_id.lower()}.start.log")
40
25
 
41
26
  cmd = [sys.executable, "-m", f"egse.hexapod.symetrie.{device_name.lower()}_cs", "start", device_id]
42
27
  if simulator:
@@ -50,7 +35,7 @@ def stop_hexapod_cs_process(device_name, device_id):
50
35
 
51
36
  rich.print(f"Terminating hexapod {device_name} control server for {device_id}...")
52
37
 
53
- out = redirect_output_to(f"{device_name.lower()}_cs.{device_id.lower()}.stop.out")
38
+ out = redirect_output_to_log(f".{device_name.lower()}_cs.{device_id.lower()}.stop.log")
54
39
 
55
40
  cmd = [sys.executable, "-m", f"egse.hexapod.symetrie.{device_name.lower()}_cs", "stop", device_id]
56
41
 
@@ -114,7 +99,7 @@ def start_puna_sim(device_id: str):
114
99
 
115
100
  rich.print("Starting service PUNA Simulator")
116
101
 
117
- out = redirect_output_to(f"puna_sim.{device_id.lower()}.start.out")
102
+ out = redirect_output_to_log(f".puna_sim.{device_id.lower()}.start.log")
118
103
 
119
104
  subprocess.Popen(
120
105
  [sys.executable, "-m", "egse.hexapod.symetrie.puna_sim", "start", device_id],
@@ -130,7 +115,7 @@ def stop_puna_sim(device_id: str):
130
115
  """Stop the PUNA Hexapod Simulator."""
131
116
  rich.print("Terminating the PUNA simulator.")
132
117
 
133
- out = redirect_output_to(f"puna_sim.{device_id.lower()}.stop.out")
118
+ out = redirect_output_to_log(f".puna_sim.{device_id.lower()}.stop.log")
134
119
 
135
120
  subprocess.Popen(
136
121
  [sys.executable, "-m", "egse.hexapod.symetrie.puna_sim", "stop", device_id],
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "plato-fits"
3
- version = "0.16.1"
3
+ version = "0.16.2"
4
4
  description = "FITS Persistence implementation for CGSE"
5
5
  authors = [
6
6
  {name = "IvS KU Leuven"}
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "plato-hdf5"
3
- version = "0.16.1"
3
+ version = "0.16.2"
4
4
  description = "HDF5 Persistence sub-class for CGSE"
5
5
  authors = [
6
6
  {name = "IvS KU Leuven"}
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "plato-spw"
3
- version = "0.16.1"
3
+ version = "0.16.2"
4
4
  description = "SpaceWire implementation for CGSE"
5
5
  authors = [
6
6
  {name = "IvS KU Leuven"}
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "cgse"
3
- version = "0.16.1"
3
+ version = "0.16.2"
4
4
  description = "Generic Common-EGSE: Commanding and monitoring lab equipment"
5
5
  authors = [
6
6
  {name = "IvS KU Leuven"}
index 00a5666..381e0be 100644
Binary file
index 68e7673..bb6524b 100644
Binary file
index 024b632..df8af3d 100644
Binary file
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
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